:root{--eba-blue: #243e5e;--eba-blue-80: #50657e;--eba-blue-60: #7c8b9e;--eba-blue-40: #a7b2bf;--eba-gold: #eccf52;--eba-gold-80: #f0d975;--eba-gold-60: #f4e297;--eba-gold-40: #f7ecba;--deep-blue: #234156;--eba-blue-mid: #59798f;--light-blue: #f6f9fb;--tag-blue: #e3eaef;--white: #ffffff;--dark-grey: #7f7f7f;--success: #418a69;--warning: #eea03f;--danger: #d0634d;--secondary-purple: #994eb9;--secondary-red: #c8482e;--secondary-green: #1f754e;--secondary-grey-blue: #7497ad;--surface: var(--white);--surface-alt: var(--light-blue);--ink: var(--eba-blue);--ink-muted: var(--eba-blue-80);--border: var(--eba-blue-60);--border-subtle: var(--tag-blue);--action: var(--eba-blue);--action-hover: var(--eba-blue-mid);--focus-ring: var(--eba-blue);--shadow-card: 0 1px 3px rgba(36, 62, 94, .16);--shadow-overlay: 0 8px 24px rgba(36, 62, 94, .24);--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--sans: "Open Sans", Calibri, Arial, sans-serif;--page-max: 1200px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{font-family:var(--sans);font-size:15px;line-height:1.5;color:var(--ink);background:var(--surface-alt);-webkit-font-smoothing:antialiased;overflow-x:hidden}body.no-scroll{overflow:hidden}h1,h2,h3{margin:0;color:var(--ink)}h1{font-size:28px;line-height:36px;font-weight:800;letter-spacing:-.01em}h2{font-size:22px;line-height:30px;font-weight:600}h3{font-size:18px;line-height:26px;font-weight:600}p{margin:0}a{color:var(--eba-blue)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--ink-muted)}.small{font-size:13px;line-height:20px}.center{text-align:center}.icon{flex-shrink:0}.app-header{background:var(--deep-blue);color:var(--white);border-bottom:4px solid var(--eba-gold);position:sticky;top:0;z-index:50}.app-header-inner{max-width:var(--page-max);margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:20px;min-height:60px}.brand{display:flex;align-items:center;gap:10px;color:var(--white);text-decoration:none;font-weight:700}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--eba-gold);color:var(--eba-blue);font-weight:800;font-size:14px;letter-spacing:.02em}.brand-name{font-size:17px;letter-spacing:-.01em;white-space:nowrap}.app-header :focus-visible{outline-color:var(--eba-gold)}.crumbs{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--eba-blue-40);min-width:0;padding-left:20px;border-left:1px solid rgba(255,255,255,.2)}.crumbs a{color:var(--white);text-decoration:none}.crumbs a:hover{text-decoration:underline}.crumbs span[aria-current]{color:var(--white);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-spacer{flex:1}.profile{position:relative}.profile-btn{display:flex;align-items:center;gap:10px;padding:4px 10px 4px 4px;background:#ffffff14;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-md);color:var(--white);cursor:pointer}.profile-btn:hover{background:#ffffff29}.profile-text{display:flex;flex-direction:column;line-height:1.15;text-align:left}.profile-name{font-size:14px;font-weight:600;white-space:nowrap}.profile-role{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--eba-gold);font-weight:600}.profile-pop{position:absolute;right:0;top:calc(100% + 8px);width:280px;max-height:75vh;overflow:auto;background:var(--white);color:var(--ink);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);padding:8px;z-index:60}.profile-note{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--ink-muted);background:var(--surface-alt);padding:6px 8px;margin-bottom:6px}.profile-group+.profile-group{border-top:1px solid var(--border-subtle);margin-top:4px;padding-top:4px}.profile-group-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);padding:6px 8px 2px;font-weight:600}.profile-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:0;background:none;text-align:left;cursor:pointer;border-radius:var(--radius-md);font-size:14px}.profile-item:hover,.profile-item:focus-visible{background:var(--tag-blue)}.profile-item.active{background:var(--eba-gold-40);font-weight:600}.profile-check{margin-left:auto}.avatar{display:inline-grid;place-items:center;flex-shrink:0;border-radius:9999px;color:var(--white);font-weight:700;letter-spacing:.02em}.page{max-width:var(--page-max);margin:0 auto;padding:32px 24px 80px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:24px}.page-head h1{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-head .link{margin-top:6px}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600;margin-bottom:4px}.page-head h1+.lead{margin-top:4px}.lead{color:var(--ink-muted)}.kpis{display:flex;gap:8px;flex-wrap:wrap}.kpi{background:var(--white);box-shadow:var(--shadow-card);padding:10px 16px;min-width:104px;display:flex;flex-direction:column;border-top:4px solid var(--eba-gold)}.kpi-value{font-size:24px;font-weight:800;line-height:1.2}.kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600}.kpi-alert{border-top-color:var(--danger)}.kpi-alert .kpi-value{color:var(--secondary-red)}.code-tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.04em;padding:1px 6px;margin-left:8px;background:var(--tag-blue);border-radius:var(--radius-sm);vertical-align:middle}.code-tag-lg{font-size:14px;margin-left:0;padding:2px 8px}.panel{background:var(--white);box-shadow:var(--shadow-card)}.panel-title{font-size:18px}.skeleton-panel{display:grid;place-items:center;min-height:200px}.skeleton-line{display:inline-block;width:280px;max-width:60vw;height:30px;background:var(--tag-blue)}.deleted-panel{padding:16px 20px;margin-bottom:16px;border-left:0;border-top:4px solid var(--warning)}.plain-list{list-style:none;margin:8px 0 0;padding:0}.plain-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--border-subtle);flex-wrap:wrap}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.toolbar-spacer{flex:1}.search{position:relative;flex:1 1 260px;max-width:420px}.search .icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ink-muted);pointer-events:none}.search input{width:100%;height:40px;padding:0 12px 0 36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);padding:2px}.segmented button{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:6px 12px;font-size:14px;font-weight:600;color:var(--ink-muted);cursor:pointer;border-radius:var(--radius-sm)}.segmented button[aria-pressed=true]{background:var(--eba-blue);color:var(--white)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--radius-md);border:1px solid transparent;font-size:15px;font-weight:600;line-height:1;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-sm{height:32px;padding:0 12px;font-size:14px}.btn-block{width:100%}.btn-primary{background:var(--action);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--action-hover)}.btn-secondary{background:var(--white);color:var(--eba-blue);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--tag-blue);border-color:var(--eba-blue)}.btn-ghost{background:transparent;color:var(--eba-blue)}.btn-ghost:hover:not(:disabled),.btn-ghost.pressed{background:var(--tag-blue)}.btn-danger{background:var(--secondary-red);color:var(--white)}.btn-danger:hover:not(:disabled){background:#a63a24}.btn-gold{background:var(--eba-gold);color:var(--eba-blue)}.btn-gold:hover{background:var(--eba-gold-80)}.icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:0;background:transparent;border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;text-decoration:none}.icon-btn:hover{background:var(--tag-blue);color:var(--eba-blue)}.link{background:none;border:0;padding:0;color:var(--eba-blue);text-decoration:underline;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-weight:600}.table-panel{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600;padding:10px 14px;border-bottom:2px solid var(--eba-blue);background:var(--white);white-space:nowrap}.table td{padding:12px 14px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.table .num{text-align:right}.th-sort{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.table th.num .th-sort{flex-direction:row-reverse}.row-link{cursor:pointer}.row-link:hover td{background:var(--surface-alt)}.row-title{font-weight:700;text-decoration:none;color:var(--eba-blue)}.row-title:hover{text-decoration:underline}.actions-col{width:48px;text-align:right}.table-foot{margin-top:8px}.truncate{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty{background:var(--white);box-shadow:var(--shadow-card);padding:48px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;border-top:4px solid var(--eba-gold)}.empty p{color:var(--ink-muted);max-width:460px}.alert{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;font-size:14px;border-left:4px solid}.alert .icon{margin-top:2px}.alert-error{background:#f9ece9;border-color:var(--danger);color:var(--secondary-red)}.alert-error .link{color:var(--secondary-red);margin-left:auto}.alert-success{background:#ecf3f0;border-color:var(--success);color:var(--secondary-green)}.alert-warning{background:#fdf1e2;border-color:var(--warning);color:var(--eba-blue)}.alert-info{background:var(--surface-alt);border-color:var(--eba-blue-60);color:var(--eba-blue)}.page>.alert{margin-bottom:16px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-subtle);margin-bottom:20px;overflow-x:auto}.tab{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;font-weight:600;font-size:15px;color:var(--ink-muted);border-bottom:4px solid transparent;margin-bottom:-1px;white-space:nowrap}.tab.active{color:var(--eba-blue);border-bottom-color:var(--eba-gold)}.tab.disabled{cursor:not-allowed;opacity:.75}.tab-soon{font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:var(--tag-blue);padding:1px 6px;border-radius:var(--radius-sm)}.status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;letter-spacing:.02em;border:1px solid;border-radius:var(--radius-sm);white-space:nowrap;line-height:18px}.status-in_design{color:var(--eba-blue-80);background:var(--white);border-color:var(--eba-blue-40)}.status-in_development{color:var(--eba-blue);background:#fdf1e2;border-color:var(--warning)}.status-internal_qa{color:#7a3e94;background:#f5edf8;border-color:var(--secondary-purple)}.status-ready_for_review{color:var(--white);background:var(--eba-blue);border-color:var(--eba-blue)}.status-client_review{color:var(--eba-blue);background:var(--eba-gold);border-color:#d4b53a}.status-approved{color:var(--secondary-green);background:#ecf3f0;border-color:var(--success)}.status-compact{padding:1px 8px}.status-picker{display:flex;flex-wrap:wrap;gap:8px}.status-option{cursor:pointer;padding:3px;border:2px solid transparent;border-radius:var(--radius-md)}.status-option.checked{border-color:var(--eba-blue)}.status-option:focus-within{outline:3px solid var(--focus-ring);outline-offset:1px}.modules{display:flex;flex-direction:column;gap:12px}.module{background:var(--white);box-shadow:var(--shadow-card)}.module-head{display:flex;align-items:center;gap:12px;padding:14px 16px 14px 0;border-left:4px solid transparent}.module.open .module-head{border-left-color:var(--eba-gold)}.module-toggle{display:flex;align-items:center;gap:16px;flex:1;min-width:0;background:none;border:0;text-align:left;padding:0 0 0 16px;cursor:pointer}.module-code{display:grid;place-items:center;flex-shrink:0;min-width:48px;height:48px;padding:0 6px;background:var(--eba-blue);color:var(--white);font-weight:800;font-size:16px}.module-text{display:flex;flex-direction:column;min-width:0}.module-title{font-size:18px;font-weight:600;line-height:24px}.module-desc{font-size:14px;color:var(--ink-muted)}.module-side{display:flex;align-items:center;gap:8px;flex-shrink:0}.module-progress{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-right:8px;color:var(--ink-muted)}.progress{display:block;height:8px;background:var(--tag-blue);overflow:hidden}.progress-thin{width:110px;height:4px}.progress-fill{display:block;height:100%;background:var(--deep-blue);transition:width .2s ease}.chevron{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border-subtle);background:var(--white);color:var(--ink-muted);cursor:pointer;transition:transform .2s ease;border-radius:var(--radius-md)}.module.open .chevron{transform:rotate(90deg);color:var(--eba-blue);border-color:var(--border)}.module-body{border-top:1px solid var(--border-subtle);padding:4px 16px 12px}.module-empty{padding:12px 0}.add-row{display:flex;align-items:center;gap:6px;width:100%;margin-top:8px;padding:10px;border:1px dashed var(--eba-blue-40);background:none;color:var(--ink-muted);font-weight:600;font-size:14px;cursor:pointer;justify-content:center}.add-row:hover{border-color:var(--eba-blue);color:var(--eba-blue);background:var(--surface-alt)}.activity{display:grid;align-items:center;border-bottom:1px solid var(--border-subtle);position:relative}.activity:last-of-type{border-bottom:0}.activity:hover{background:var(--surface-alt)}.activity.dragging{opacity:.4}.activity.drop-target{box-shadow:inset 0 3px 0 var(--eba-gold)}.drag-handle{color:var(--eba-blue-40);cursor:grab;display:grid;place-items:center;width:18px}.activity-name{display:flex;align-items:baseline;gap:10px;min-width:0}.activity-code{font-weight:700;font-size:14px;color:var(--ink-muted);min-width:32px}.activity-title{font-weight:600;overflow:hidden;text-overflow:ellipsis}.activity-meta{display:flex;align-items:center;gap:10px}.activity-meta .status{min-width:170px;justify-content:center}.date-chip{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ink-muted);white-space:nowrap;min-width:82px}.date-chip.overdue{color:var(--secondary-red);font-weight:700}.incident-count{font-size:13px;white-space:nowrap}.designer-none{display:inline-grid;place-items:center;width:26px;height:26px;color:var(--eba-blue-40);border:1px dashed var(--eba-blue-40);border-radius:9999px;font-size:12px}.activity-open{display:flex;align-items:center;gap:6px;justify-content:flex-end;min-width:240px}.version-select{height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;font-size:13px;min-width:150px}.activity-menu{display:flex;justify-content:flex-end}.view-grid .module-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:16px}.view-grid .activity{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:16px;border:1px solid var(--border-subtle);border-top:4px solid var(--sc, var(--eba-blue-40))}.view-grid .activity:hover{background:var(--white);box-shadow:var(--shadow-card)}.view-grid .activity[data-status=under_development]{--sc: var(--warning)}.view-grid .activity[data-status=internal_qa]{--sc: var(--secondary-purple)}.view-grid .activity[data-status=ready_for_review]{--sc: var(--eba-blue)}.view-grid .activity[data-status=feedback_implementation]{--sc: var(--eba-gold)}.view-grid .activity[data-status=final]{--sc: var(--success)}.view-grid .drag-handle{position:absolute;top:10px;right:44px}.view-grid .activity-menu{position:absolute;top:6px;right:6px}.view-grid .activity-name{flex-direction:column;gap:2px;padding-right:48px}.view-grid .activity-title{white-space:normal}.view-grid .activity-meta{flex-wrap:wrap}.view-grid .activity-meta .status{min-width:0;order:-1;width:100%}.view-grid .activity-open{min-width:0;justify-content:stretch;margin-top:auto}.view-grid .version-select{flex:1;max-width:none}.view-grid .add-row{margin:0;min-height:120px}.menu{position:relative}.menu-pop{position:absolute;right:0;top:calc(100% + 4px);min-width:220px;background:var(--white);box-shadow:var(--shadow-overlay);padding:6px;z-index:40;border-top:4px solid var(--eba-gold)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;background:none;text-align:left;font-size:14px;cursor:pointer;border-radius:var(--radius-sm);color:var(--eba-blue)}.menu-item:hover:not(:disabled),.menu-item:focus-visible{background:var(--tag-blue)}.menu-item:disabled{opacity:.4;cursor:not-allowed}.menu-item.danger{color:var(--secondary-red)}.menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2341568c;display:grid;place-items:center;padding:16px;z-index:100;animation:fade .15s ease}.dialog{background:var(--white);width:100%;max-width:560px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);border-radius:0;outline:none;animation:rise .2s ease}.dialog-wide{max-width:900px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 12px}.dialog-sub{font-size:14px;color:var(--ink-muted);margin-top:2px}.dialog-body{padding:4px 24px 20px;overflow-y:auto}.dialog-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 24px;border-top:1px solid var(--border-subtle);background:var(--surface-alt);flex-wrap:wrap}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px;border:0;padding:0;margin:0;min-width:0;flex:1}.field-label{font-size:14px;font-weight:600;padding:0}.field-row{display:flex;gap:12px;flex-wrap:wrap}.field-row>.field{min-width:180px}.field-row>.field-code{flex:0 0 120px;min-width:120px}.field-help{font-size:13px;color:var(--ink-muted)}.field-error{color:var(--secondary-red);font-size:13px;display:flex;gap:4px;align-items:center;margin-top:6px}.req{color:var(--secondary-red)}.optional{font-weight:400;color:var(--ink-muted);font-size:13px}.field input:not([type=radio]):not([type=checkbox]):not([type=file]),.field select,.field textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.field textarea{resize:vertical}.field input:disabled,.field textarea:disabled{background:var(--surface-alt)}.choice-list{display:flex;flex-direction:column;gap:8px}.choice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer}.choice>span{display:flex;flex-direction:column;gap:2px}.choice.checked{background:var(--eba-gold-40);border-color:var(--eba-blue)}.choice input{margin-top:4px;accent-color:var(--eba-blue)}.dropzone{border:2px dashed var(--eba-blue-60);background:var(--surface-alt);transition:background .15s ease,border-color .15s ease}.dropzone.over{border-color:var(--eba-blue);background:var(--eba-gold-40)}.dropzone.has-file{border-style:solid;background:var(--white)}.dropzone.disabled{opacity:.7}.dropzone-empty{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;padding:28px 16px;background:none;border:0;cursor:pointer;text-align:center;color:var(--eba-blue)}.dropzone.compact .dropzone-empty{padding:16px}.dropzone-file{display:flex;align-items:center;gap:12px;padding:12px 14px}.dropzone-file>div{display:flex;flex-direction:column;flex:1;min-width:0}.dropzone-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-block{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--surface-alt)}.progress-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.progress-block .progress-fill{background:var(--eba-blue)}.facts{display:flex;gap:24px;margin:0}.facts div{display:flex;flex-direction:column}.facts dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600}.facts dd{margin:0;font-size:20px;font-weight:700}.history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px}.history-head{display:flex;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.history-meta{display:flex;flex-direction:column;flex:1;min-width:200px;font-size:14px}.history-actions{display:flex;align-items:center;gap:4px}.version-chip{display:inline-grid;place-items:center;min-width:44px;height:28px;padding:0 8px;font-weight:800;font-size:14px}.version-chip.released{background:var(--eba-blue);color:var(--white)}.version-chip.internal{background:#f5edf8;color:#7a3e94;border:1px solid var(--secondary-purple)}.builds-table td,.builds-table th{padding:8px 10px}.row-actions{display:flex;justify-content:flex-end;gap:2px}.tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:1px 6px;margin-left:8px;border-radius:var(--radius-sm);white-space:nowrap}.tag-released{background:var(--eba-gold);color:var(--eba-blue)}.tag-warning{background:#fdf1e2;color:var(--eba-blue);border:1px solid var(--warning);cursor:help}.toasts{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:200;width:min(520px,calc(100vw - 32px))}.toast{display:flex;align-items:center;gap:10px;padding:10px 8px 10px 14px;background:var(--deep-blue);color:var(--white);box-shadow:var(--shadow-overlay);border-left:4px solid var(--eba-gold);animation:rise .2s ease}.toast span{flex:1;font-size:14px}.toast-error{border-left-color:var(--danger)}.toast .icon-btn{color:var(--eba-blue-40)}.toast .icon-btn:hover{background:#ffffff1a;color:var(--white)}.boot-message,.viewer-message{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center}.viewer-message p{color:var(--ink-muted);max-width:460px}.viewer-message-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.spinner{width:32px;height:32px;border:3px solid var(--tag-blue);border-top-color:var(--eba-blue);border-radius:9999px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--deep-blue)}.viewer-frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:var(--white)}.viewer-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:6px 6px 6px 14px;background:var(--eba-blue);color:var(--white);box-shadow:var(--shadow-overlay);font-size:14px;z-index:5;max-width:calc(100vw - 24px)}.viewer-banner-internal{background:#fdf1e2;color:var(--eba-blue);border:1px solid var(--warning)}.viewer-banner .icon-btn{color:inherit;width:28px;height:28px}.viewer-banner .icon-btn:hover{background:#7f7f7f26;color:inherit}.viewer-panel{position:absolute;top:50%;transform:translateY(-50%);z-index:6}.viewer-panel.corner-left{left:0}.viewer-panel.corner-right{right:0}.viewer-pill{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 5px;background:var(--deep-blue);color:var(--white);border:0;box-shadow:var(--shadow-overlay);cursor:pointer;opacity:.8;transition:opacity .15s ease,padding .15s ease}.corner-left .viewer-pill{border-right:3px solid var(--eba-gold)}.corner-right .viewer-pill{border-left:3px solid var(--eba-gold)}.viewer-pill:hover,.viewer-panel.open .viewer-pill{opacity:1;padding-left:8px;padding-right:8px}.viewer-pill:focus-visible{outline-color:var(--eba-gold);opacity:1}.viewer-pill-code{font-weight:800;font-size:13px}.viewer-pill .version-chip{height:22px;min-width:36px;font-size:12px;padding:0 4px}.viewer-pill .version-chip.released{background:var(--eba-gold);color:var(--eba-blue)}.viewer-pill .icon{transform:rotate(-90deg)}.corner-right .viewer-pill .icon{transform:rotate(90deg)}.viewer-pop{position:absolute;top:50%;transform:translateY(-50%);width:300px;background:var(--white);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);padding:14px;display:flex;flex-direction:column;gap:12px}.corner-left .viewer-pop{left:calc(100% + 8px)}.corner-right .viewer-pop{right:calc(100% + 8px)}.viewer-pop-head{display:flex;flex-direction:column}.viewer-pop-head .eyebrow{margin:0;font-size:11px}.viewer-pop-actions{display:flex;gap:4px;flex-wrap:wrap}@media (max-width: 720px){.app-header-inner{padding:8px 16px;gap:12px}.brand-name,.profile-text{display:none}.crumbs{padding-left:12px}.page{padding:20px 16px 64px}h1{font-size:24px;line-height:30px}.kpis{width:100%}.kpi{min-width:0;flex:1;padding:8px 10px}.kpi-value{font-size:20px}.kpi-label{font-size:10px;letter-spacing:.04em;overflow-wrap:anywhere}.search{max-width:none;flex-basis:100%}.module-progress{display:none}.module-head{padding-right:8px}.module-toggle{gap:12px;padding-left:12px}.module-code{min-width:40px;height:40px;font-size:14px}.module-body{padding:4px 12px 12px}.projects-table thead{display:none}.projects-table,.projects-table tbody,.projects-table tr,.projects-table td{display:block;width:100%}.projects-table tr{padding:12px 14px;border-bottom:1px solid var(--border-subtle);position:relative}.projects-table td{padding:2px 0;border:0;text-align:left!important}.projects-table td[data-label]:not(:first-child):before{content:attr(data-label) ": ";color:var(--ink-muted);font-size:13px}.projects-table .actions-col{position:absolute;top:8px;right:8px;width:auto}.builds-table thead{display:none}.builds-table,.builds-table tbody,.builds-table tr,.builds-table td{display:block;width:100%}.builds-table tr{padding:8px 0;border-bottom:1px solid var(--border-subtle)}.builds-table td{border:0;padding:2px 0;text-align:left!important}.truncate{max-width:100%}.dialog-head,.dialog-body,.dialog-foot{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.builds-table{table-layout:fixed}.builds-table th:nth-child(1){width:26%}.builds-table th:nth-child(2){width:32%}.builds-table th:nth-child(4){width:20%}.builds-table th:nth-child(5){width:84px}.menu-pop.up{top:auto;bottom:calc(100% + 4px);border-top:0;border-bottom:4px solid var(--eba-gold)}.viewer.capturing .drawer,.viewer.capturing .fab,.viewer.capturing .viewer-panel,.viewer.capturing .viewer-banner{visibility:hidden}.fab{position:absolute;z-index:7;display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 18px 0 14px;background:var(--eba-gold);color:var(--eba-blue);border:0;box-shadow:var(--shadow-overlay);font-weight:700;font-size:15px;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:var(--radius-md);transition:transform .15s ease,background .15s ease}.fab:hover{background:var(--eba-gold-80)}.fab:focus-visible{outline:3px solid var(--eba-blue);outline-offset:2px}.fab.dragging{cursor:grabbing;transition:none;opacity:.9}.fab-br{right:20px;bottom:20px}.fab-bl{left:20px;bottom:20px}.fab-tr{right:20px;top:20px}.fab-tl{left:20px;top:20px}.fab-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;background:var(--eba-blue);color:var(--white);font-size:12px;border-radius:9999px}.drawer{position:absolute;top:0;right:0;bottom:0;width:min(420px,100vw);z-index:8;background:var(--surface-alt);display:flex;flex-direction:column;box-shadow:var(--shadow-overlay);border-left:4px solid var(--eba-gold);animation:slideIn .2s ease}@keyframes slideIn{0%{transform:translate(24px);opacity:0}}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:14px 12px 10px 16px;background:var(--deep-blue);color:var(--white)}.drawer-head .eyebrow{color:var(--eba-gold);margin:0;font-size:11px}.drawer-head strong{font-size:15px;line-height:20px}.drawer-head .icon-btn{color:var(--eba-blue-40)}.drawer-head .icon-btn:hover{color:var(--white);background:#ffffff1a}.drawer-head :focus-visible{outline-color:var(--eba-gold)}.drawer-title{display:flex;flex-direction:column;min-width:0}.drawer-version{display:flex;gap:8px;padding:10px 16px;background:var(--white);border-bottom:1px solid var(--border-subtle)}.drawer-version select{flex:1;min-width:0;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;font-size:14px}.drawer-banner{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 16px;background:#fdf1e2;border-bottom:1px solid var(--warning);font-size:13px}.drawer-scroll{position:relative;flex:1;overflow-y:auto;padding:12px 16px 32px;display:flex;flex-direction:column;gap:10px}.drawer-section{display:flex;align-items:center;gap:8px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin-top:8px}.drawer-section .count{background:var(--tag-blue);color:var(--eba-blue);padding:0 6px;font-size:12px;border-radius:var(--radius-sm);letter-spacing:0}.drawer-note{margin-top:-6px}.drawer-empty{display:grid;place-items:center;padding:32px}.drawer-empty-text{color:var(--ink-muted);font-size:14px;padding:12px;background:var(--white);border:1px dashed var(--eba-blue-40)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip-filter{border:1px solid var(--border);background:var(--white);padding:3px 10px;font-size:13px;font-weight:600;color:var(--ink-muted);cursor:pointer;border-radius:9999px}.chip-filter.active{background:var(--eba-blue);color:var(--white);border-color:var(--eba-blue)}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:13px;font-weight:600;border-radius:9999px;border:1px solid transparent;max-width:100%}.chip-media{background:var(--eba-blue);color:var(--white);cursor:pointer;font-variant-numeric:tabular-nums}button.chip-media:hover{background:var(--eba-blue-mid)}.chip-muted{background:var(--white);color:var(--ink-muted);border-color:var(--border-subtle);font-weight:400}.chip-x{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:-4px;border:0;border-radius:9999px;background:#fff3;color:inherit;cursor:pointer}.spinner-sm{width:14px;height:14px;border-width:2px}.composer{background:var(--white);box-shadow:var(--shadow-card);border-top:4px solid var(--eba-blue);padding:14px;display:flex;flex-direction:column;gap:12px}.composer-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.composer textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;resize:vertical;min-height:96px}.composer-context{display:flex;gap:6px;flex-wrap:wrap}.composer-context:empty{display:none}.composer .field input,.composer .field select{min-height:36px;padding:6px 8px}.shot-buttons{display:flex;gap:6px;flex-wrap:wrap}.shot-preview{display:flex;flex-direction:column;gap:6px}.shot-actions{display:flex;gap:4px}.composer-checks{display:flex;flex-direction:column;gap:6px}.check{display:flex;align-items:flex-start;gap:8px;font-size:14px;cursor:pointer}.check input{margin-top:4px;accent-color:var(--eba-blue);width:16px;height:16px}.composer-foot{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--border-subtle);padding-top:12px}.incident{background:var(--white);box-shadow:var(--shadow-card);padding:12px;display:flex;flex-direction:column;gap:8px;border-left:4px solid var(--secondary-red)}.incident.resolved{border-left-color:var(--success);opacity:.8}.incident.flash{animation:flash 1.6s ease 2}@keyframes flash{50%{box-shadow:0 0 0 3px var(--eba-gold)}}.incident-head{display:flex;align-items:center;gap:10px}.incident-who{display:flex;flex-direction:column;line-height:1.3;flex:1;min-width:0;font-size:14px}.avatar-none{width:28px;height:28px;background:var(--tag-blue)}.istatus{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:var(--radius-sm);white-space:nowrap}.istatus-open,.istatus-reopened{background:#f9ece9;color:var(--secondary-red)}.istatus-in_progress{background:#fdf1e2;color:var(--eba-blue)}.istatus-fixed{background:var(--tag-blue);color:var(--eba-blue)}.istatus-closed{background:#ecf3f0;color:var(--secondary-green)}.istatus-rejected,.istatus-deferred{background:var(--surface-alt);color:var(--ink-muted)}.incident-tags{display:flex;gap:4px;flex-wrap:wrap}.incident-tags:empty{display:none}.incident-tags .tag{margin-left:0}.tag-type{background:var(--tag-blue);color:var(--eba-blue)}.tag-nice{background:var(--eba-gold-40);color:var(--eba-blue)}.tag-internal{background:#f5edf8;color:#7a3e94}.tag-version{background:var(--eba-blue);color:var(--white)}.incident-body{white-space:pre-wrap;font-size:15px;line-height:22px;overflow-wrap:anywhere}.incident-context{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.where{display:inline-flex;gap:4px;align-items:center;font-size:13px;color:var(--ink-muted);min-width:0}.incident-foot{display:flex;align-items:center;gap:4px;border-top:1px solid var(--border-subtle);padding-top:6px}.danger-text{color:var(--secondary-red)}.annotated{position:relative;display:block;width:100%;padding:0;border:1px solid var(--border-subtle);background:var(--surface-alt);line-height:0}button.annotated{cursor:zoom-in}button.annotated:hover{border-color:var(--eba-blue)}.annotated img{display:block;width:100%;height:auto}.annotated canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.incident-shot img{max-height:220px;object-fit:contain}.annotator{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#14212ff5;display:flex;flex-direction:column;color:var(--white)}.annotator-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 16px;background:var(--deep-blue);border-bottom:4px solid var(--eba-gold)}.annotator-title{font-size:15px}.annotator-tools{display:flex;align-items:center;gap:6px}.annotator-spacer{flex:1}.swatch{width:26px;height:26px;border-radius:9999px;border:2px solid rgba(255,255,255,.4);cursor:pointer}.swatch.active{border-color:var(--white);box-shadow:0 0 0 2px var(--eba-gold)}.pen-size{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.3);background:none;cursor:pointer;border-radius:var(--radius-md)}.pen-size span{background:var(--white);border-radius:9999px}.pen-size.active{background:#ffffff26;border-color:var(--eba-gold)}.btn-ghost-inverse{background:transparent;color:var(--white);border-color:#ffffff59}.btn-ghost-inverse:hover:not(:disabled){background:#ffffff1f}.annotator :focus-visible{outline-color:var(--eba-gold)}.annotator-stage{flex:1;display:grid;place-items:center;padding:16px;min-height:0}.annotator-canvas{position:relative;box-shadow:0 0 0 1px #fff3,var(--shadow-overlay)}.annotator-canvas img{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none}.annotator-canvas canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.annotator-hint{text-align:center;font-size:13px;color:var(--eba-blue-40);padding:0 16px 12px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#14212feb;display:grid;place-items:center;padding:48px 24px 24px}.lightbox>div{max-width:min(1400px,100%);width:100%}.lightbox-img{cursor:default;border:0}.lightbox-img img{max-height:calc(100vh - 96px);object-fit:contain}.lightbox-close{position:absolute;top:10px;right:10px;color:var(--white)}.lightbox-close:hover{background:#ffffff1a;color:var(--white)}@media (max-width: 720px){.drawer{border-left:0}.fab span:not(.fab-badge){display:none}.fab{padding:0 14px}}button.tab{background:none;border:0;border-bottom:4px solid transparent;cursor:pointer;font-family:inherit}button.tab:hover:not(.active){color:var(--eba-blue)}.tab-count{background:var(--secondary-red);color:var(--white);font-size:11px;padding:0 6px;border-radius:9999px;line-height:18px}.kpi-link{border:0;text-align:left;cursor:pointer;font-family:inherit;color:inherit;border-top:4px solid var(--secondary-red)}.kpi-link:hover{background:var(--surface-alt)}.issue-pill{font-size:12px;font-weight:700;color:var(--secondary-red);background:#f9ece9;padding:2px 8px;border-radius:9999px;white-space:nowrap}.incident-count{font-size:13px;white-space:nowrap;color:var(--ink-muted);text-decoration:none}.incident-count:hover{text-decoration:underline}.incident-count.has-open,.remaining-open{color:var(--secondary-red);font-weight:700}.remaining-zero{color:var(--secondary-green);font-weight:700}.tracker{padding-bottom:72px}.tracker-toolbar{margin-bottom:10px}.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.filters select{height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;font-size:14px;max-width:220px}.tracker-summary{display:flex;gap:16px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.select-all{font-size:13px}.igroup{margin-bottom:16px;background:var(--white);box-shadow:var(--shadow-card)}.igroup-head{display:flex;align-items:baseline;gap:10px;font-size:15px;padding:10px 16px;border-bottom:2px solid var(--eba-blue);border-left:4px solid var(--eba-gold)}.igroup-head .count{background:var(--tag-blue);padding:0 6px;font-size:12px;border-radius:var(--radius-sm);margin-left:auto}.irows{list-style:none;margin:0;padding:0}.irow{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-subtle)}.irow:last-child{border-bottom:0}.irow:hover,.irow.current{background:var(--surface-alt)}.irow.current{box-shadow:inset 4px 0 0 var(--eba-gold)}.irow-check{margin-top:6px;width:16px;height:16px;accent-color:var(--eba-blue)}.irow-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:inherit}.irow-top{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.irow-top .tag{margin-left:0}.irow-ref{font-weight:800;font-size:13px}.irow-body{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:20px}.irow-side{display:flex;align-items:center;gap:10px;color:var(--ink-muted);font-size:12px;flex-shrink:0;padding-top:2px}.irow-side>span{display:inline-flex;align-items:center;gap:2px}.tag-triage{background:var(--white);color:var(--ink-muted);border:1px dashed var(--eba-blue-40)}.chip-xs{font-size:11px;padding:0 8px}.stars{color:var(--eba-blue-40);letter-spacing:1px;white-space:nowrap}.stars .on{color:#d4a514}.bulkbar{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:60;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;background:var(--deep-blue);color:var(--white);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);max-width:calc(100vw - 32px)}.bulkbar select{height:32px;border-radius:var(--radius-sm);border:0;padding:0 8px;font-size:14px;color:var(--eba-blue)}.bulkbar .btn-ghost{color:var(--white)}.bulkbar .btn-ghost:hover{background:#ffffff1f}.side-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#23415640;z-index:80}.side-panel{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--white);z-index:90;box-shadow:var(--shadow-overlay);border-left:4px solid var(--eba-gold);display:flex;flex-direction:column;animation:slideIn .2s ease}.detail{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--white)}.detail-loading{display:grid;place-items:center;min-height:200px}.detail-head{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.detail-ref{font-size:18px;font-weight:800}.detail-scroll{flex:1;overflow-y:auto;padding:14px 16px 32px;display:flex;flex-direction:column;gap:12px}.detail-where{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:14px}.detail-where .tag{margin-left:0}.detail-author{display:flex;gap:10px;align-items:center;font-size:14px}.detail-links{display:flex;gap:8px;flex-wrap:wrap}.detail-fact{display:flex;gap:6px;align-items:center;font-size:14px;color:var(--secondary-green)}.detail-rating{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;background:#ecf3f0;border-left:4px solid var(--success)}.detail-rating p{width:100%}.detail-actions{display:flex;gap:6px;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.action-form{width:100%;display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--surface-alt);border-top:4px solid var(--eba-blue)}.action-form textarea,.action-form select{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;background:var(--white)}.action-form-foot{display:flex;justify-content:flex-end;gap:6px}.star-input{display:flex;align-items:center;gap:2px}.star-input button{background:none;border:0;font-size:30px;line-height:1;color:var(--eba-blue-40);cursor:pointer;padding:0 2px}.star-input button.on{color:#d4a514}.star-input button:focus-visible{outline-offset:0}.star-label{margin-left:8px;font-weight:600;font-size:14px}.detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0}.detail-fields dt{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600;margin-bottom:4px}.detail-fields dd{margin:0;font-size:14px}.detail-fields select{width:100%;height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 6px;font-size:14px}.detail-checks{grid-column:1 / -1;display:flex;gap:16px;flex-wrap:wrap}.detail-section{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border-subtle);padding-top:12px}.detail-section h4{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);display:flex;gap:6px;align-items:center}.detail-section h4 .count{background:var(--tag-blue);color:var(--eba-blue);padding:0 6px;border-radius:var(--radius-sm);font-size:12px}.attachments{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.attachments li{display:flex;align-items:center;gap:8px;font-size:14px}.attachments a{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.thread{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.thread-system{display:flex;gap:6px;font-size:13px;color:var(--ink-muted);align-items:flex-start}.thread-system .icon{margin-top:3px}.thread-note{display:block;color:var(--eba-blue);white-space:pre-wrap;margin-top:2px}.thread-reply{display:flex;gap:10px;font-size:14px}.thread-reply p{white-space:pre-wrap;margin-top:2px;overflow-wrap:anywhere}.reply-box{display:flex;gap:8px;align-items:flex-end}.reply-box textarea{flex:1;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px;resize:vertical}.detail-danger{border-top:1px solid var(--border-subtle);padding-top:10px}.drawer .detail{background:var(--surface-alt)}.drawer .detail-head{background:var(--white)}.check-waiting{border-left-color:var(--eba-gold)!important}@media (max-width: 720px){.detail-fields{grid-template-columns:1fr}.irow{flex-wrap:wrap}.irow-side{width:100%;justify-content:flex-end}.filters select{flex:1 1 140px;max-width:none}}.drawer .detail{flex:1;min-height:0;height:auto}.carryover{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface-alt);border-top:4px solid var(--eba-gold)}.carryover-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto}.carryover-list .check{font-size:14px}.drawer-scroll[hidden]{display:none}.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--deep-blue)}.auth-card{width:100%;max-width:440px;background:var(--white);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold)}.auth-brand{display:flex;align-items:center;gap:10px;padding:16px 24px;font-weight:700;border-bottom:1px solid var(--border-subtle)}.auth-body{padding:24px;display:flex;flex-direction:column;gap:16px}.auth-body h1{font-size:24px;line-height:32px}.auth-foot{padding:12px 24px;background:var(--surface-alt);font-size:13px;color:var(--ink-muted)}.auth-foot a,.auth-body a{color:var(--eba-blue);font-weight:600}.auth-switch{width:100%}.auth-switch button{flex:1;justify-content:center}.passcode-input{font-size:20px!important;letter-spacing:.04em;text-align:center}.profile-me{display:flex;flex-direction:column;padding:8px 10px 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.profile-note a{color:var(--eba-blue);font-weight:600}.people{display:flex;flex-direction:column;gap:28px}.people-section{display:flex;flex-direction:column;gap:12px}.section-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.person{display:flex;align-items:center;gap:10px}.secret{display:flex;align-items:center;gap:2px}.secret code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:14px;background:var(--eba-gold-40);padding:2px 8px;margin-right:4px;min-width:140px}.mstatus{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:var(--radius-sm)}.mstatus-invited{background:#fdf1e2;color:var(--eba-blue)}.mstatus-active{background:#ecf3f0;color:var(--secondary-green)}.mstatus-revoked{background:var(--surface-alt);color:var(--ink-muted)}.row-muted td{opacity:.6}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.team-card{display:flex;gap:12px;align-items:center;background:var(--white);box-shadow:var(--shadow-card);padding:12px 14px}.input-with-button{display:flex;gap:8px;align-items:center}.input-with-button input{flex:1}.link-box{width:100%;padding:8px 10px;border:1px solid var(--border);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px}.release-round{display:flex;flex-direction:column;gap:16px}.release-list li{display:flex;flex-direction:column;gap:4px;padding:6px 0;border-bottom:1px solid var(--border-subtle)}.release-list .version-chip{height:22px;min-width:32px;font-size:12px;margin-left:4px}.build-pick{display:flex;gap:6px;align-items:center;padding-left:26px;color:var(--ink-muted)}.build-pick select{height:28px;border:1px solid var(--border);border-radius:var(--radius-sm)}.recipient-list{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:4px}.email-preview{display:flex;flex-direction:column;gap:6px}.email-preview iframe{width:100%;height:460px;border:1px solid var(--border-subtle);background:var(--surface-alt)}@media (max-width: 720px){.people-table thead{display:none}.people-table,.people-table tbody,.people-table tr,.people-table td{display:block;width:100%}.people-table tr{padding:10px 14px;border-bottom:1px solid var(--border-subtle);position:relative}.people-table td{border:0;padding:3px 0}.people-table .actions-col{position:absolute;top:8px;right:8px;width:auto}}.activity{grid-template-columns:22px minmax(220px,1fr) 170px 190px 96px 92px 72px 40px;gap:8px 12px;padding:10px 6px}.activity:not(:has(.drag-handle)){grid-template-columns:22px minmax(220px,1fr) 170px 190px 96px 92px 72px 40px}.activity>.col{display:flex;justify-content:center;align-items:center;text-align:center;min-width:0}.activity .col .status{min-width:0;width:100%;justify-content:center}.activity-header{padding-top:6px;padding-bottom:6px;border-bottom:2px solid var(--eba-blue)!important;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.activity-header:hover{background:none}.activity-header .col-title{padding-left:42px}.col-handle,.col-menu{display:flex;justify-content:center}.activity-link{color:var(--eba-blue);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.activity-link .icon{opacity:0;transition:opacity .15s ease;color:var(--ink-muted)}.activity-link:hover{text-decoration:underline}.activity-link:hover .icon,.activity-link:focus-visible .icon{opacity:1}.assign-select{width:100%;height:32px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--white);padding:0 6px;font-size:13px;text-align:center;text-align-last:center;color:var(--eba-blue)}.assign-select:hover{border-color:var(--border)}.assigned{font-size:13px;font-weight:600}.assigned-client{background:var(--eba-gold-40);padding:3px 8px;border-radius:var(--radius-sm);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity .date-chip{min-width:0;justify-content:center}.version-text{font-weight:800;font-size:14px;padding:2px 10px;background:var(--eba-blue);color:var(--white)}.version-text.internal{background:#f5edf8;color:#7a3e94;border:1px solid var(--secondary-purple)}.issue-count{font-size:14px;font-weight:700;color:var(--ink-muted);text-decoration:none;font-variant-numeric:tabular-nums}a.issue-count:hover{text-decoration:underline}.issue-count.has-open{color:var(--secondary-red)}.viewer-version{position:absolute;top:10px;left:10px;z-index:6;display:flex;align-items:center;gap:2px;background:var(--deep-blue);padding:3px;box-shadow:var(--shadow-overlay);border-bottom:3px solid var(--eba-gold);opacity:.88;transition:opacity .15s ease}.viewer-version:hover,.viewer-version:focus-within{opacity:1}.viewer-version select{height:28px;border:0;background:var(--white);color:var(--eba-blue);font-weight:700;font-size:13px;padding:0 6px;border-radius:var(--radius-sm);max-width:240px}.viewer-back{display:inline-grid;place-items:center;width:28px;height:28px;color:var(--white);border-radius:var(--radius-sm)}.viewer-back:hover{background:#ffffff26}.viewer-version :focus-visible{outline-color:var(--eba-gold)}@media (max-width: 1180px){.activity,.activity:not(:has(.drag-handle)){grid-template-columns:18px minmax(160px,1fr) 150px 160px 76px 64px 56px 36px;gap:8px}}@media (max-width: 860px){.activity,.activity:not(:has(.drag-handle)){grid-template-columns:0 minmax(0,1fr) auto auto 36px;row-gap:6px}.activity-header{display:none!important}.activity>.col-title{grid-column:2 / 5;grid-row:1}.activity>.col-menu{grid-column:5;grid-row:1}.activity>.col{justify-content:flex-start;grid-row:auto}.activity>.col-phase{grid-column:2 / 4}.activity>.col-assigned{grid-column:4 / 6}.activity>.col-delivery{grid-column:2}.activity>.col-version{grid-column:3}.activity>.col-issues{grid-column:4 / 6}}.irow{align-items:center}.irow-line{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;font-size:13px;color:var(--ink-muted)}.irow-line>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.irow-ref{font-weight:800;color:var(--eba-blue);font-size:14px;min-width:76px}.irow-lock{color:#7a3e94}.irow-type{font-weight:600;color:var(--eba-blue)}.irow-type.unclassified{font-weight:400;font-style:italic;color:var(--ink-muted)}.irow-version{font-weight:700;color:var(--eba-blue)}.irow-time{font-variant-numeric:tabular-nums}.irow-status{margin-left:auto}.irow-status .istatus{font-size:12px;padding:3px 10px}.irow-body{color:var(--eba-blue);-webkit-line-clamp:1}.irow.done .irow-body{color:var(--ink-muted)}.stats{display:flex;flex-direction:column;gap:16px}.stats-filters{background:var(--white);box-shadow:var(--shadow-card);padding:10px 12px;margin:0}.filter-field{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-muted)}.filter-field input{height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 6px}.stat-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.stat-tile{background:var(--white);box-shadow:var(--shadow-card);border-top:4px solid var(--eba-gold);padding:12px 14px;display:flex;flex-direction:column;gap:2px}.stat-tile.alert{border-top-color:var(--danger)}.stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--ink-muted)}.stat-value{font-size:26px;font-weight:800;line-height:1.2}.stat-value.star{color:var(--eba-blue)}.stat-sub{font-size:12px;color:var(--ink-muted)}.stat-tiles-small{grid-template-columns:repeat(3,1fr)}.stat-tiles-small .stat-tile{box-shadow:none;background:var(--surface-alt)}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chart-card{background:var(--white);box-shadow:var(--shadow-card);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.chart-card.wide{grid-column:1 / -1}.chart-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.chart-head h3{font-size:16px;line-height:22px}.chart-tools{display:flex;gap:12px;flex-shrink:0}.chart-empty{color:var(--ink-muted);font-size:14px;padding:24px 0;text-align:center}.chart-table td,.chart-table th{padding:6px 10px}.chart-table .num{font-variant-numeric:tabular-nums}.legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px}.legend li{display:inline-flex;align-items:center;gap:6px}.swatch-sq{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;flex-shrink:0}.chart-tip{position:absolute;z-index:20;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);background:var(--deep-blue);color:var(--white);font-size:12px;line-height:18px;padding:6px 10px;white-space:nowrap;box-shadow:var(--shadow-overlay);pointer-events:none}.chart-tip .swatch-sq{border:1px solid rgba(255,255,255,.6)}.hbars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.hbar{position:relative;display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:10px;align-items:center;padding:2px 0;outline-offset:1px}.hbar:hover .hbar-label{color:var(--eba-blue)}.hbar-label{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{display:flex;align-items:center;gap:8px;min-width:0}.hbar-fill{height:12px;border-radius:0 4px 4px 0;flex-shrink:0}.hbar-value{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.columns-chart{display:flex;flex-direction:column;gap:6px;padding-left:28px}.columns-plot{position:relative}.columns-grid span{position:absolute;left:0;right:0;border-top:1px solid var(--border-subtle)}.columns-grid em{position:absolute;left:-28px;top:-8px;width:22px;text-align:right;font-style:normal;font-size:11px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.columns-bars{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;gap:12px;align-items:flex-end;justify-content:space-around}.column{position:relative;flex:1;max-width:64px;height:100%;display:flex;align-items:flex-end;justify-content:center;outline-offset:2px}.column-stack{width:100%;display:flex;flex-direction:column-reverse;gap:2px}.column-seg{display:block;min-height:2px}.column-stack .column-seg:last-child{border-radius:4px 4px 0 0}.column-total{position:absolute;transform:translateY(-2px);font-size:12px;font-weight:700;color:var(--eba-blue)}.columns-labels{display:flex;justify-content:space-around;gap:12px;font-size:12px;color:var(--ink-muted)}.columns-labels span{flex:1;max-width:64px;text-align:center;white-space:nowrap}.donut{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center}.donut-figure{position:relative;width:180px;height:180px}.donut-figure svg{width:180px;height:180px;display:block}.donut-figure .chart-tip{bottom:auto;top:-8px}.donut-centre{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;pointer-events:none}.donut-centre strong{font-size:26px;line-height:1}.donut-centre span{font-size:12px;color:var(--ink-muted)}.donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.donut-key{display:flex;align-items:center;gap:6px;width:100%;padding:4px 6px;border:0;background:none;text-align:left;font-size:14px;cursor:pointer;border-radius:var(--radius-sm)}.donut-key:hover:not(:disabled),.donut-key.active{background:var(--surface-alt)}.donut-key:disabled{cursor:default;opacity:.55}.donut-key-label{flex:1}.donut-key-value{font-weight:700;font-variant-numeric:tabular-nums}.drill{border-top:1px solid var(--border-subtle);padding-top:10px;display:flex;flex-direction:column;gap:8px}.drill h4,.drill-title{margin:6px 0 0;font-size:13px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em}.podium{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.podium li{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--surface-alt)}.podium-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:9999px;background:var(--tag-blue);font-weight:800}.podium-1 .podium-rank{background:var(--eba-gold)}.heatmap{border-collapse:separate;border-spacing:2px;width:100%;font-size:13px}.heatmap th{font-weight:600;text-align:left;padding:4px 8px;color:var(--ink-muted);white-space:nowrap}.heatmap thead th{text-align:center;font-size:12px}.heatmap td{text-align:center;padding:8px;min-width:56px;font-weight:700;font-variant-numeric:tabular-nums;border-radius:2px}.heatmap td:empty{background:var(--surface-alt)!important}.scorecard td,.scorecard th{padding:8px 10px}@media (max-width: 960px){.chart-grid{grid-template-columns:1fr}.donut{grid-template-columns:1fr;justify-items:center}}@media print{.app-header,.tabs,.stats-filters .btn,.chart-tools,.toasts,.page-head .kpis,.page-head .link{display:none!important}body{background:#fff}.chart-card,.stat-tile{box-shadow:none;border:1px solid #ccc;break-inside:avoid}.chart-grid{grid-template-columns:1fr 1fr}}.columns-plot{margin-top:20px}.share-card{background:var(--white);box-shadow:var(--shadow-card);border-top:4px solid var(--eba-gold);padding:16px;display:flex;flex-direction:column;gap:10px}.share-card h2{font-size:18px}.share-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.share-row .link-box{flex:1;min-width:240px;height:40px}.copy-field{display:inline-flex;align-items:center;gap:2px}.copy-field code{font-size:14px;padding:2px 8px;background:var(--surface-alt);border:1px solid var(--border-subtle)}.copy-field.mono code{font-family:ui-monospace,Menlo,Consolas,monospace;background:var(--eba-gold-40);border-color:transparent;font-weight:700}.input-with-button select{height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px}.viewas-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border:1px dashed rgba(255,255,255,.45);border-radius:var(--radius-md);background:transparent;color:var(--eba-blue-40);font-size:13px;cursor:pointer}.viewas-btn:hover{color:var(--white);border-color:var(--white)}.viewas-btn.switched{border-style:solid;border-color:var(--eba-gold);background:#eccf5226;color:var(--white)}.viewas-btn strong{color:var(--eba-gold)}@media (max-width: 720px){.viewas-label{display:none}}.irow.mine{box-shadow:inset 4px 0 0 var(--secondary-red);background:#fdf3f1}.irow.mine:hover,.irow.mine.current{background:#f9e7e3}.mine-tag{color:var(--secondary-red)}.activity,.activity:not(:has(.drag-handle)){grid-template-columns:22px minmax(200px,1fr) 160px 150px 84px 70px 60px 104px 36px}.rating-cell{position:relative}.rate-btn{border:1px solid var(--border);background:var(--white);border-radius:var(--radius-md);padding:3px 8px;font-size:13px;font-weight:600;color:var(--eba-blue);cursor:pointer;white-space:nowrap}.rate-btn:hover{border-color:var(--eba-blue)}.rate-btn.rated{border-color:transparent;background:transparent;letter-spacing:1px}.rating-star{color:#d4a514}.rating-empty{color:var(--eba-blue-40)}.rating-result{font-size:13px;font-weight:700;white-space:nowrap}.rate-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:30;background:var(--white);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);padding:10px 12px;display:flex;flex-direction:column;align-items:center;gap:4px;width:210px}.rate-stars{display:flex}.rate-stars button{background:none;border:0;font-size:28px;line-height:1;padding:0 2px;color:var(--eba-blue-40);cursor:pointer}.rate-stars button.on{color:#d4a514}@media (max-width: 1180px){.activity,.activity:not(:has(.drag-handle)){grid-template-columns:18px minmax(150px,1fr) 140px 130px 70px 56px 50px 92px 32px;gap:6px}}@media (max-width: 860px){.activity>.col-rating{grid-column:2 / 5}}@media (max-width: 860px){.activity,.activity:not(:has(.drag-handle)){grid-template-columns:0 minmax(0,1fr) auto auto 36px;row-gap:6px}}.main-nav{display:flex;align-items:stretch;gap:2px;padding-left:20px;border-left:1px solid rgba(255,255,255,.2);align-self:stretch}.main-nav a{display:flex;align-items:center;padding:10px 14px;color:var(--eba-blue-40);font-weight:600;font-size:15px;text-decoration:none;border-bottom:4px solid transparent;margin-bottom:-14px}.main-nav a:hover{color:var(--white)}.main-nav a.active{color:var(--white);border-bottom-color:var(--eba-gold)}:root{--page-max: 1480px}html{scrollbar-gutter:stable;scroll-behavior:smooth}.page-wide{max-width:var(--page-max)}main.page{animation:pageIn .22s cubic-bezier(.2,.7,.3,1)}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}}.btn,.link,a,.tab,.main-nav a,.icon-btn,input,select,textarea,.crm-table tbody tr,.card{transition:background-color .14s ease,color .14s ease,border-color .14s ease,box-shadow .16s ease,opacity .14s ease}.crm-table tbody,.ted-table tbody{animation:fade .2s ease}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}.crm-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:24px}.crm-tile{background:var(--white);box-shadow:var(--shadow-card);border-top:4px solid var(--eba-gold);padding:12px 16px;display:flex;flex-direction:column;min-height:96px}.crm-tile-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600}.crm-tile-value{font-size:28px;font-weight:800;line-height:1.25;font-variant-numeric:tabular-nums}.crm-tile-sub{font-size:13px;color:var(--ink-muted);font-variant-numeric:tabular-nums}.crm-tile-won{border-top-color:var(--success)}.crm-tile-won .crm-tile-value{color:var(--secondary-green)}.crm-tile-lost{border-top-color:var(--danger)}.crm-tile-lost .crm-tile-value{color:var(--secondary-red)}.crm-tile-loading{background:linear-gradient(90deg,var(--white),var(--surface-alt),var(--white));background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.st-open-0{color:var(--eba-blue-80);background:var(--white);border-color:var(--eba-blue-40)}.st-open-1{color:var(--eba-blue);background:#fdf1e2;border-color:var(--warning)}.st-open-2{color:var(--eba-blue);background:var(--eba-gold);border-color:#d4b53a}.st-won{color:var(--secondary-green);background:#ecf3f0;border-color:var(--success)}.st-lost{color:var(--secondary-red);background:#f9ece9;border-color:var(--danger)}.st-dropped{color:var(--dark-grey);background:var(--surface-alt);border-color:var(--eba-blue-40);border-style:dashed}.crm-table{font-size:13.5px}.crm-table th{padding:10px}.crm-table td{padding:10px;white-space:nowrap}.crm-table td.cell-title{white-space:normal;min-width:220px;max-width:340px}.crm-table .num{font-variant-numeric:tabular-nums}.crm-table tfoot td{font-weight:700;border-top:2px solid var(--eba-blue);border-bottom:0;background:var(--surface-alt)}.row-sub{display:block;font-size:12px;color:var(--ink-muted);margin-top:2px}.row-selected td{background:var(--eba-gold-40)!important}.row-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}.row-muted td{color:var(--ink-muted)}.override-dot{color:var(--warning);font-size:9px;margin-left:3px;vertical-align:super}.danger-text{color:var(--secondary-red);font-weight:700}.person-chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.filters-inline{margin-bottom:0}.chip-filter{white-space:nowrap}.tab-btn{background:none;border:0;border-bottom:4px solid transparent;cursor:pointer}.tab-btn.active{border-bottom-color:var(--eba-gold)}.tabs a.tab{text-decoration:none}.field-narrow{flex:0 0 160px!important;min-width:160px!important}.input-suffix{position:relative;display:flex;align-items:center}.input-suffix input{width:100%;min-height:40px;padding:8px 28px 8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.input-suffix>span{position:absolute;right:10px;color:var(--ink-muted);pointer-events:none}.input-suffix-wide{max-width:160px}.input-suffix-wide input{padding-right:46px}.field [aria-invalid=true],.combo input[aria-invalid=true]{border-color:var(--danger)!important;box-shadow:0 0 0 1px var(--danger)}.check-row{display:flex;align-items:flex-start;gap:8px;font-size:14px;cursor:pointer}.check-row input{margin-top:3px;accent-color:var(--eba-blue);width:16px;height:16px;flex-shrink:0}.form-weighted{margin-right:auto;align-self:center}.inline-form{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--surface-alt);border:1px dashed var(--eba-blue-40)}.inline-form .field-row input{flex:1;min-width:140px;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.inline-form-foot{display:flex;justify-content:flex-end;gap:6px}.field select:disabled{background:var(--surface-alt);color:var(--ink-muted)}.combo{position:relative}.combo input{width:100%;min-height:40px;padding:8px 36px 8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.combo-clear{position:absolute;right:3px;top:3px}.combo-list{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:120;list-style:none;margin:0;padding:4px;background:var(--white);box-shadow:var(--shadow-overlay);border-top:3px solid var(--eba-gold);max-height:280px;overflow-y:auto}.combo-option{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;font-size:14px;border-radius:var(--radius-sm)}.combo-option.active{background:var(--tag-blue)}.combo-new{justify-content:flex-start;color:var(--eba-blue);font-weight:600;border-top:1px solid var(--border-subtle)}.combo-empty{padding:8px 10px;color:var(--ink-muted);font-size:14px}.side-panel{width:min(620px,100vw)}.side-panel:focus{outline:none}.side-panel .drawer-head strong{font-size:17px;line-height:24px}.opp-summary{display:flex;flex-direction:column;gap:12px}.opp-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle)}.opp-facts>div{background:var(--white);padding:10px 12px;display:flex;flex-direction:column}.opp-facts span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600}.opp-facts strong{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.opp-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.status-select{height:32px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);padding:0 8px;font-size:14px;font-weight:600;color:var(--eba-blue);min-width:190px}.opp-fields{padding:12px 0}.opp-fields .fact-wide{grid-column:1 / -1}.contact-line{display:inline-flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.contact-line a{display:inline-flex;align-items:center;gap:4px;color:var(--eba-blue);text-decoration:none}.contact-line a:hover{text-decoration:underline}.pre-wrap{white-space:pre-wrap;font-size:14px}.note-composer{display:flex;flex-direction:column;gap:6px}.note-composer textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);resize:vertical;font-size:14px}.note-composer-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.note-composer-foot .btn{margin-left:auto}.timeline{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.timeline-item{display:flex;gap:10px;align-items:flex-start;font-size:14px}.timeline-item s{color:var(--ink-muted)}.timeline-text{margin-top:4px;padding:8px 10px;background:var(--surface-alt);border-left:3px solid var(--eba-gold);white-space:pre-wrap}.avatar-none{background:var(--tag-blue)}.contact-list{list-style:none;margin:0;padding:0}.contact-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.contact-list li>div{display:flex;flex-direction:column;gap:2px}.client-opps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.client-opp{width:100%;display:flex;flex-direction:column;gap:6px;text-align:left;padding:10px 12px;background:var(--white);border:1px solid var(--border-subtle);cursor:pointer}.client-opp:hover:not(:disabled){border-color:var(--eba-blue);background:var(--surface-alt)}.client-opp:disabled{cursor:default}.client-opp-main{display:flex;align-items:center;gap:8px}.client-opp-main .code-tag{margin-left:0}.client-opp-meta{display:flex;align-items:center;gap:12px;font-size:14px}.section-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 12px}.prob-card+.prob-card{margin:0}.prob-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:16px}.prob-card{padding:16px 20px;border-top:4px solid var(--eba-gold);display:flex;flex-direction:column;gap:6px}.prob-card h3{font-size:16px;margin-bottom:6px}.prob-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}.prob-row .input-suffix{width:96px}.prob-row input:disabled{background:var(--surface-alt);color:var(--ink-muted)}.settings-card{padding:20px;display:flex;flex-direction:column;gap:16px;max-width:560px}@media (max-width: 1100px){.crm-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 720px){.main-nav{padding-left:8px;border-left:0;overflow-x:auto}.main-nav a{padding-left:8px;padding-right:8px;font-size:14px}.crm-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.crm-tile{min-height:0;padding:10px 12px}.crm-tile-value{font-size:22px}.opp-facts strong{font-size:16px}.form-weighted{width:100%}}:root{--stream-fwc: #2a78d6;--stream-tender: #eda100;--stream-other: #4a3aa7}.head-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.stream-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;padding:1px 7px;border-radius:var(--radius-sm);border-left:4px solid;background:var(--surface-alt)}.stream-tag.stream-fwc{border-left-color:var(--stream-fwc)}.stream-tag.stream-tender{border-left-color:var(--stream-tender)}.stream-tag.stream-other{border-left-color:var(--stream-other)}.stream-dot{display:inline-block;width:10px;height:10px;border-radius:2px;flex-shrink:0}.stream-dot.stream-fwc,.stream-bg-fwc{background:var(--stream-fwc)}.stream-dot.stream-tender,.stream-bg-tender{background:var(--stream-tender)}.stream-dot.stream-other,.stream-bg-other{background:var(--stream-other)}.menu-item .menu-hint{margin-left:auto;padding-left:12px}.menu-pop{min-width:280px}.code-text{font-weight:700;font-size:12.5px;letter-spacing:.02em}.due{display:inline-flex;align-items:baseline;gap:6px;font-weight:700}.due-soon{color:#9a5b0b}.due-overdue{color:var(--secondary-red)}.due-note{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0 5px;border-radius:var(--radius-sm)}.due-soon .due-note{background:#fdf1e2;border:1px solid var(--warning)}.due-overdue .due-note{background:#f9ece9;border:1px solid var(--danger)}.toolbar-second{margin-top:-8px}.toolbar-second input[type=date]{height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;font-size:14px}.filter-label{font-size:13px;font-weight:600;color:var(--ink-muted)}.select-client{max-width:260px}.crm-tile-stream.stream-fwc{border-top-color:var(--stream-fwc)}.crm-tile-stream.stream-tender{border-top-color:var(--stream-tender)}.crm-tile-stream.stream-other{border-top-color:var(--stream-other)}.crm-tile-total{border-top-color:var(--deep-blue)}.forecast{margin-bottom:24px}.forecast .chart-tools{align-items:center;flex-wrap:wrap;justify-content:flex-end}.fc-plot{display:flex;align-items:stretch;gap:10px;height:220px;padding-top:4px;border-bottom:1px solid var(--border-subtle)}.fc-col{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;padding-bottom:38px;cursor:default}.fc-col:hover .fc-stack{filter:brightness(1.08);box-shadow:0 0 0 2px var(--eba-gold-60)}.fc-stack{width:min(64px,100%);display:flex;flex-direction:column-reverse;gap:2px;min-height:0}.fc-seg{display:block;min-height:3px;flex-basis:0}.fc-stack .fc-seg:last-child{border-radius:4px 4px 0 0}.fc-total{font-size:12px;font-weight:700;color:var(--eba-blue);margin-bottom:4px;font-variant-numeric:tabular-nums;white-space:nowrap}.fc-label{position:absolute;bottom:0;left:0;right:0;height:34px;display:flex;flex-direction:column;align-items:center;font-size:12px;font-weight:600;color:var(--eba-blue);line-height:16px}.fc-label em{font-style:normal;font-weight:400;color:var(--ink-muted);font-size:11px}.fc-col-muted .fc-label{color:var(--ink-muted)}.fc-col-muted .fc-stack{opacity:.6}@media (max-width: 1100px){.head-actions{width:100%}}@media (max-width: 720px){.fc-plot{gap:4px;height:180px}.fc-total,.fc-label{font-size:10px}.menu-item .menu-hint{display:none}}.totals-summary{margin-left:auto;display:flex;align-items:center;gap:4px 18px;flex-wrap:wrap;font-size:14px;color:var(--ink-muted);font-variant-numeric:tabular-nums;padding:6px 12px;background:var(--white);box-shadow:var(--shadow-card);border-left:4px solid var(--eba-gold);white-space:nowrap}.totals-summary strong{color:var(--eba-blue);font-weight:800}.crm-table td.cell-client-short,.crm-table th.cell-client-short{width:1%;max-width:120px;overflow:hidden;text-overflow:ellipsis}@media (max-width: 720px){.totals-summary{margin-left:0;width:100%}}.ext-link{display:inline-flex;align-items:center;gap:4px;word-break:break-all;color:var(--eba-blue)}.tab-count-muted{background:var(--tag-blue);color:var(--eba-blue)}.scan-line{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;margin:-8px 0 14px;color:var(--ink-muted)}.scan-ai{display:inline-flex;align-items:center;gap:6px}.rel{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:9999px;border:1px solid;white-space:nowrap}.rel-high{color:var(--secondary-green);background:#ecf3f0;border-color:var(--success)}.rel-medium{color:var(--eba-blue);background:var(--eba-gold-40);border-color:#d4b53a}.rel-low{color:var(--dark-grey);background:var(--surface-alt);border-color:var(--eba-blue-40)}.rel-pending{color:var(--ink-muted);border-color:var(--border-subtle);border-style:dashed}.ted-table td{vertical-align:top}.ted-table td.ted-title{min-width:260px;max-width:360px}.ted-client{white-space:normal!important;min-width:150px;max-width:200px}.ted-summary{white-space:normal!important;min-width:280px;max-width:420px;font-size:13px;color:var(--eba-blue-80)}.ted-products{white-space:normal!important;min-width:150px;max-width:200px}.ted-winners{white-space:normal!important;max-width:220px}.ted-actions{white-space:nowrap;text-align:right}.ted-actions .btn+.btn,.ted-actions .btn+.icon-btn{margin-left:4px}.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.clamp-6{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.kw-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.kw-chip{font-size:11px;font-weight:600;padding:0 6px;background:var(--tag-blue);color:var(--eba-blue);border-radius:var(--radius-sm);line-height:18px}.kw-pin{background:#f5edf8;color:#7a3e94}.product-chips{display:flex;flex-wrap:wrap;gap:4px}.product-chip{display:inline-block;font-size:11.5px;padding:1px 7px;margin:0 4px 4px 0;border:1px solid var(--border-subtle);background:var(--white);border-radius:9999px;color:var(--eba-blue);line-height:17px}.ted-deadline{display:inline-flex;flex-direction:column;line-height:1.3}.ted-days{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.ted-deadline.soon .ted-days{color:#9a5b0b}.ted-deadline.past{color:var(--ink-muted)}.ted-deadline.past .ted-days{color:var(--secondary-red)}.ai-box,.award-box{padding:12px 14px;background:var(--surface-alt);border-left:4px solid var(--eba-gold);display:flex;flex-direction:column;gap:8px;font-size:14px}.ai-box h4,.award-box h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);display:flex;align-items:center;gap:6px}.award-box{border-left-color:var(--eba-blue-40)}.award-box.found{border-left-color:var(--success);background:#ecf3f0}.tag-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.tag-input:focus-within{outline:3px solid var(--focus-ring);outline-offset:1px}.tag-input.disabled{background:var(--surface-alt)}.tag-input input{flex:1;min-width:140px;border:0;outline:none;padding:4px;background:transparent;font-size:14px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 9px;background:var(--tag-blue);color:var(--eba-blue);font-size:13px;font-weight:600;border-radius:9999px}.tag-input.disabled .tag-chip{padding-right:9px}.tag-chip button{display:inline-grid;place-items:center;width:18px;height:18px;border:0;border-radius:9999px;background:transparent;color:inherit;cursor:pointer}.tag-chip button:hover{background:#243e5e26}.settings-panel{width:min(680px,100vw)}.set-group{border:0;padding:0 0 14px;margin:0;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--border-subtle)}.set-group legend{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:700;padding:0;margin-bottom:10px}.set-group legend .optional{text-transform:none;letter-spacing:0;font-weight:400}.set-group .field input:not([type=checkbox]),.set-group .field select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white)}.check-row.disabled{opacity:.7;cursor:default}.country-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.country-tools input[type=search]{height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 8px;font-size:13px;margin-left:auto}.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 12px;max-height:220px;overflow-y:auto;padding:8px;border:1px solid var(--border-subtle);background:var(--surface-alt)}.settings-foot{align-items:center}.preview-text{margin-right:auto}.bell-btn{position:relative;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:var(--white);border-radius:var(--radius-md);cursor:pointer}.bell-btn:hover{background:#ffffff29}.bell-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9999px;background:var(--secondary-red);color:var(--white);font-size:11px;font-weight:700;line-height:18px;text-align:center}.bell-pop{width:360px}.bell-head{display:flex;justify-content:space-between;align-items:center;padding:6px 8px 8px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.bell-empty{padding:12px 8px}.bell-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:8px;border:0;background:none;cursor:pointer;border-radius:var(--radius-md);border-left:3px solid transparent}.bell-item:hover{background:var(--tag-blue)}.bell-item.unread{border-left-color:var(--eba-gold);background:var(--eba-gold-40)}.bell-title{font-weight:700;font-size:14px}.bell-body{font-size:13px;color:var(--eba-blue-80)}@media (max-width: 720px){.bell-pop{width:calc(100vw - 32px);right:-60px}}.stats-filters select,.stats-filters input[type=date]{height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;font-size:14px}.stats-note{margin-left:auto;max-width:420px;text-align:right}.chart-grid{margin-top:4px}.chart-card{position:relative}.chart-card h3{font-size:16px}.chart-card .chart-head{align-items:flex-start}.chart-tools{align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:6px}.segmented-sm button{padding:4px 10px;font-size:13px}.viz{position:relative;width:100%;min-width:0}.chart-legend{margin-bottom:8px}.viz-tip{position:absolute;transform:translate(-50%);z-index:20;background:var(--white);border:1px solid var(--border-subtle);box-shadow:var(--shadow-overlay);padding:8px 10px;min-width:140px;pointer-events:none;font-size:13px}.viz-tip-title{font-size:12px;color:var(--ink-muted);font-weight:600;margin-bottom:4px;white-space:nowrap}.viz-tip-row{display:flex;align-items:center;gap:6px;white-space:nowrap;line-height:20px}.viz-tip-row strong{color:var(--eba-blue);font-variant-numeric:tabular-nums}.viz-tip-row span{color:var(--ink-muted)}.viz-tip-key{display:inline-block;width:12px;height:2px;border-radius:1px}.split-pair{display:flex;flex-direction:column;gap:18px}.split-title{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600;margin-bottom:6px}.split-legend{margin-top:8px}.chart-table-wrap{max-height:360px;overflow:auto}.chart-table th{position:sticky;top:0}.mi-grid{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:start}.mi-figure{display:flex;flex-direction:column;gap:4px;padding:12px 16px;background:var(--surface-alt);border-top:4px solid var(--stream-tender)}.mi-value{font-size:48px;font-weight:700;line-height:1.1;color:var(--eba-blue)}.viz svg rect[tabindex]:focus{outline:none}.viz svg rect[tabindex]:focus-visible{outline:2px solid var(--focus-ring)}@media (max-width: 960px){.chart-grid,.mi-grid{grid-template-columns:1fr}.stats-note{margin-left:0;text-align:left}}.chart-card .chart-head{flex-wrap:wrap}.chart-card .chart-head>div:first-child{flex:1 1 240px;min-width:0}@media (max-width: 720px){.chart-card .chart-tools{width:100%;justify-content:flex-start}.chart-card{padding:14px 12px}}.fc-col-current{background:var(--eba-gold-40);box-shadow:inset 0 -3px 0 var(--eba-gold)}.fc-col-current .fc-label{font-weight:800}.fc-now{color:var(--eba-blue)!important;font-weight:700!important;text-transform:uppercase;font-size:9.5px!important;letter-spacing:.04em}.fc-col-past .fc-label{color:var(--ink-muted)}.file-drop{border:1px dashed var(--eba-blue-40);background:var(--surface-alt)}.file-drop.over{border-color:var(--eba-blue);background:var(--eba-gold-40)}.file-drop-btn{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;width:100%;padding:12px 14px;border:0;background:none;cursor:pointer;text-align:left;font-size:14px;color:var(--eba-blue)}.file-drop-btn .muted{width:100%}.file-list{list-style:none;margin:4px 0 0;padding:0}.file-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-subtle);color:var(--ink-muted)}.file-list li>div{flex:1;min-width:0;display:flex;flex-direction:column}.file-name{font-weight:600;color:var(--eba-blue);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name:hover{text-decoration:underline}.gsearch{position:relative;display:flex;align-items:center;gap:6px;height:40px;padding:0 8px 0 10px;width:min(300px,26vw);background:#ffffff14;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-md);color:var(--eba-blue-40)}.gsearch:focus-within{background:var(--white);color:var(--ink-muted);border-color:var(--white)}.gsearch input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--white);font-size:14px}.gsearch:focus-within input{color:var(--ink)}.gsearch input::placeholder{color:var(--eba-blue-40)}.gsearch-kbd{font:inherit;font-size:11px;padding:1px 5px;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm)}.gsearch:focus-within .gsearch-kbd{display:none}.gsearch-pop{position:absolute;right:0;top:calc(100% + 8px);width:min(460px,calc(100vw - 32px));max-height:70vh;overflow-y:auto;background:var(--white);color:var(--ink);box-shadow:var(--shadow-overlay);border-top:4px solid var(--eba-gold);padding:6px;z-index:70}.gsearch-group{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--ink-muted);padding:8px 8px 2px}.gsearch-item{display:flex;flex-direction:column;gap:1px;width:100%;text-align:left;padding:7px 8px;border:0;background:none;cursor:pointer;border-radius:var(--radius-sm)}.gsearch-item.active{background:var(--tag-blue)}.gsearch-title{font-weight:600;font-size:14px;color:var(--eba-blue)}.gsearch-sub{font-size:12px;color:var(--ink-muted)}.gsearch-empty{padding:10px;font-size:14px;color:var(--ink-muted)}.menu-state{margin-left:auto}.digest-preview{background:var(--surface-alt);padding:12px 14px;border-left:4px solid var(--eba-gold);display:flex;flex-direction:column;gap:10px}.digest-group ul{margin:4px 0 0;padding-left:18px;font-size:14px}.settings-stack{display:flex;flex-direction:column;gap:16px;max-width:640px}.settings-card h3{font-size:16px}.settings-card select{height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);padding:0 8px;max-width:160px}.code-tag-warn{background:#fdf1e2;color:var(--eba-blue);border:1px solid var(--warning)}@media (max-width: 1100px){.gsearch{width:40px;padding:0;justify-content:center}.gsearch input,.gsearch-kbd{display:none}.gsearch:focus-within{width:min(300px,60vw);padding:0 8px;justify-content:flex-start}.gsearch:focus-within input{display:block}}.app-header-inner{max-width:1480px;gap:14px}.main-nav a{padding-left:10px;padding-right:10px}.gsearch{width:230px;flex-shrink:1}@media (max-width: 1360px){.brand-name,.gsearch-kbd{display:none}}@media (max-width: 1240px){.profile-text{display:none}}.gear-btn{text-decoration:none}.gear-btn.active{background:#fff3;border-color:var(--eba-gold)}.sq-actions{display:inline-flex;gap:4px}.sq-btn{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);color:var(--eba-blue);cursor:pointer}.sq-btn:hover:not(:disabled){background:var(--tag-blue);border-color:var(--eba-blue)}.sq-btn:disabled{opacity:.6;cursor:default}.sq-primary{background:var(--eba-blue);border-color:var(--eba-blue);color:var(--white)}.sq-primary:hover:not(:disabled){background:var(--action-hover);border-color:var(--action-hover);color:var(--white)}.sq-done{background:var(--eba-gold);border-color:#d4b53a}.sq-done:hover:not(:disabled){background:var(--eba-gold-80)}.sq-warn{border-color:var(--warning);background:#fdf1e2}.sq-ghost{border-color:transparent;color:var(--ink-muted)}.sq-btn[data-tip]:hover:after,.sq-btn[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 6px);z-index:30;white-space:nowrap;background:var(--deep-blue);color:var(--white);font-size:12px;font-weight:600;padding:5px 8px;border-radius:var(--radius-sm);box-shadow:var(--shadow-overlay);pointer-events:none}.ted-products{font-size:13px;color:var(--eba-blue-80)}.qual-page>*{max-width:1040px}.qual-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.qual-top .link{text-decoration:none}.qual-head{margin-bottom:18px}.qual-head h1{font-size:26px;line-height:34px;margin:2px 0 4px}.qual-report{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.qual-snapshot{padding:18px 20px;border-top:4px solid var(--eba-gold)}.qual-snapshot h2,.qual-section h2,.qual-sources h2{font-size:18px;margin-bottom:10px}.qual-snapshot dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0}.qual-snapshot dt{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600}.qual-snapshot dd{margin:2px 0 0;font-size:14px}.qual-fit{margin-top:14px;padding:10px 12px;background:var(--surface-alt);border-left:4px solid var(--stream-tender);font-size:14px}.qual-section{background:var(--white);box-shadow:var(--shadow-card);padding:16px 20px;font-size:14.5px}.qual-section p+p{margin-top:8px}.qual-section ol,.qual-section ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.excerpt+.excerpt{margin-top:14px;padding-top:14px;border-top:1px solid var(--border-subtle)}.excerpt h4{font-size:15px;margin:0 0 4px}.excerpt blockquote{margin:6px 0;padding:8px 12px;background:var(--surface-alt);border-left:3px solid var(--eba-blue-40);font-size:13.5px;white-space:pre-wrap}.excerpt-src{font-size:12px;color:var(--ink-muted)}.spec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.spec-card{border:1px solid var(--border-subtle);padding:12px 14px;border-top:3px solid var(--stream-fwc)}.spec-card h4{font-size:14.5px;margin:0 0 6px}.spec-card ul{font-size:13.5px}.qual-table{margin-top:10px;font-size:13.5px}.qual-table td{vertical-align:top}.demo-flag{display:inline-block;font-size:12px;font-weight:700;padding:1px 8px;border-radius:9999px;border:1px solid;margin-right:6px}.demo-yes{color:var(--secondary-green);background:#ecf3f0;border-color:var(--success)}.demo-no{color:var(--ink-muted);background:var(--surface-alt);border-color:var(--eba-blue-40)}.demo-unclear{color:var(--eba-blue);background:#fdf1e2;border-color:var(--warning)}.gap-list li{color:var(--eba-blue-80)}.qual-sources{padding:16px 20px;display:flex;flex-direction:column;gap:10px}.qual-sources h3{font-size:15px;margin-top:6px}.source-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}.source-list li{display:flex;gap:8px;align-items:flex-start}.source-list .icon{margin-top:3px;color:var(--ink-muted)}@media (max-width: 720px){.qual-snapshot dl{grid-template-columns:1fr}}@media print{.app-header,.no-print,.toasts{display:none!important}body{background:#fff}.page{padding:0;max-width:none}.qual-section,.qual-snapshot{box-shadow:none;border:1px solid #ddd;break-inside:avoid}}.prompt-box{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;line-height:1.5;resize:vertical;background:var(--white)}.prompt-box:disabled{background:var(--surface-alt)}.prev-list{margin:8px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.pw-meter{height:4px;background:var(--surface-alt);border-radius:2px;overflow:hidden}.pw-meter span{display:block;height:100%;background:var(--eba-blue-40);transition:width .16s ease}.pw-meter span.ok{background:var(--eba-gold)}.pw-meter span.good{background:#1baf7a}
