/* GIA Lynx visual identity: https://lynx.gia.institute/_lynx-brand/lynx-brand.css */
:root{--ink:#1f2328;--muted:#656d76;--line:#d8d4cf;--paper:#fff;--canvas:#f8f6f4;--deep:#454545;--purple:#0b6e69;--magenta:#af9a5a;--blue:#48bdb5;--success:#0b6e69;--danger:#b42318;--warning:#8a6416;--soft:#d9f0ee;--cream:#e9dfc0;--primary-dark:#075b57;--shadow:0 12px 32px rgba(31,35,40,.08)}
*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(30px,4vw,46px);line-height:1.08;letter-spacing:-.035em}h2{margin-bottom:4px;font-size:20px}h3{margin:0;font-size:15px}.hidden{display:none!important}
.topbar{min-height:72px;padding:10px max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:28px;background:var(--deep);color:#fff}.brand{display:inline-flex;align-items:center;gap:14px;color:#fff;text-decoration:none;white-space:nowrap}.brand img{width:168px;height:44px;object-fit:contain;object-position:left center}.brand strong{font-size:18px}.main-nav{display:flex;align-items:center;gap:8px;margin-left:auto}.main-nav a{padding:9px 11px;border-radius:8px;color:#f8f6f4;text-decoration:none;font-size:13px}.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.12);color:#fff}.account{display:flex;align-items:center;gap:10px;color:#f8f6f4;font-size:12px}.text-button{border:0;background:transparent;color:#fff;cursor:pointer;text-decoration:underline}.workspace{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:40px 0 56px}.hero{min-height:175px;padding:28px 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:30px;border-radius:16px;background:linear-gradient(120deg,var(--deep),var(--primary-dark));color:#fff;box-shadow:var(--shadow)}.hero p{margin-bottom:0;color:#f8f6f4}.eyebrow{margin-bottom:8px;color:var(--magenta);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hero .eyebrow{color:var(--cream)}.health-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #8a8a8a;border-radius:999px;font-size:12px;white-space:nowrap}.health-dot{width:8px;height:8px;border-radius:50%;background:#aaa}.health-badge.ok .health-dot{background:#48bdb5}.health-badge.bad .health-dot{background:#ff8077}.dashboard-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(430px,1.1fr);gap:22px;margin-top:22px;align-items:start}.card{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 9px 32px rgba(31,35,40,.055)}.card-heading{display:flex;gap:12px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--line)}.card-heading p{margin-bottom:0;color:var(--muted);font-size:13px}.runs-heading{display:grid;grid-template-columns:auto 1fr auto}.step-number{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:var(--soft);color:var(--purple);font-size:11px;font-weight:800}
form{display:grid;gap:8px;padding-top:20px}label{margin-top:8px;color:#454545;font-size:12px;font-weight:700}label span,.field-help{color:var(--muted);font-weight:400}.field-help{margin:2px 0 4px;font-size:12px}input,select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #d0d7de;border-radius:8px;outline:0;background:#fff;color:var(--ink)}input:focus,select:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(11,110,105,.16)}input[type=file]{padding:8px}.file-drop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0 4px}.file-dropzone{position:relative;min-height:150px;margin:0;padding:20px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:2px dashed #b7b1aa;border-radius:12px;background:#f8f6f4;text-align:center;cursor:pointer;transition:border-color .2s,background-color .2s,transform .2s}.file-dropzone:hover,.file-dropzone:focus-within{border-color:var(--purple);background:var(--soft)}.file-dropzone.drag-active{border-color:var(--purple);background:#b7e1de;transform:translateY(-2px)}.file-dropzone input{position:absolute;width:1px;height:1px;min-height:1px;padding:0;opacity:0;overflow:hidden}.file-drop-title{color:var(--ink);font-size:14px;font-weight:750}.file-drop-title small{font-weight:500}.file-drop-copy{font-size:12px}.file-drop-copy strong{color:var(--purple)}.file-drop-name{max-width:100%;padding-top:4px;color:var(--purple)!important;font-size:11px;overflow-wrap:anywhere}.file-dropzone.has-file{border-style:solid;border-color:var(--purple);background:var(--soft)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-row.three{grid-template-columns:.6fr .6fr 1.8fr}.field-row>div{display:grid;gap:8px}.primary-button,.secondary-button{min-height:44px;margin-top:12px;padding:10px 15px;border-radius:8px;font-weight:720;cursor:pointer;text-decoration:none;text-align:center}.primary-button{display:flex;justify-content:space-between;align-items:center;border:0;background:linear-gradient(90deg,var(--purple),var(--primary-dark));color:#fff}.secondary-button{display:inline-grid;place-items:center;border:1px solid #b7b1aa;background:#fff;color:var(--deep)}button:disabled{opacity:.55;cursor:wait}.form-status{min-height:22px;margin:4px 0 0;color:var(--success);font-size:13px}.form-status.error{color:var(--danger)}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:20px;cursor:pointer}.runs{display:grid;gap:10px;padding-top:16px}.run{padding:15px 16px;border:1px solid var(--line);border-radius:11px;background:#fff;color:inherit;text-decoration:none}.run:hover{border-color:var(--purple);box-shadow:0 8px 22px rgba(31,35,40,.07)}.run-head,.finding-head,.detail-header,.section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.run-meta,.muted{color:var(--muted)}.run-meta{font-size:12px}.owner-tag{display:inline-block;margin-top:8px;padding:3px 7px;border-radius:999px;background:var(--soft);color:var(--purple);font-size:11px}.status{padding:4px 8px;border-radius:999px;background:#f1efec;color:#555;font-size:10px;font-weight:800;text-transform:uppercase}.status.completed{background:#d9f0ee;color:var(--success)}.status.running,.status.queued{background:#f8f0d9;color:var(--warning)}.status.failed{background:#fff0ee;color:var(--danger)}.loading-state,.empty-state{min-height:150px;display:grid;place-items:center;align-content:center;color:var(--muted);text-align:center}.spinner{width:24px;height:24px;border:3px solid #b7e1de;border-top-color:var(--purple);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{margin:18px 0;padding:12px 14px;border-radius:9px}.error-notice,.inline-error{border:1px solid #fac7c2;background:#fff0ee;color:var(--danger)}.inline-error{padding:15px;border-radius:9px}
.back-link{display:inline-block;margin-bottom:16px;color:var(--purple);text-decoration:none}.report-card{padding:32px}.detail-header{padding-bottom:24px;border-bottom:1px solid var(--line)}.detail-header h1{font-size:30px}.detail-section{padding-top:24px}.section-title{align-items:center;margin-bottom:12px}.section-title span{color:var(--muted);font-size:12px}.pipeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.stage{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#f8f6f4}.stage strong,.stage span{display:block}.stage strong{color:var(--purple);font-size:11px}.stage span{font-size:12px}.stage.completed{border-left:3px solid var(--success)}.stage.failed{border-left:3px solid var(--danger)}.finding{margin-top:10px;padding:18px;border:1px solid var(--line);border-radius:11px}.finding p{margin:10px 0 0}.finding-head>div{display:flex;align-items:center;gap:10px}.severity{padding:4px 8px;border-radius:999px;background:#f1efec;font-size:10px;font-weight:800;text-transform:uppercase}.severity.critical,.severity.high{background:#fff0ee;color:var(--danger)}.severity.medium{background:#f8f0d9;color:var(--warning)}.severity.low,.severity.info{background:#d9f0ee;color:var(--success)}.recommendation{padding:10px 12px;border-left:3px solid var(--purple);background:var(--soft);font-size:13px}.finding-meta{color:var(--muted);font-size:11px}.trash-button{width:36px;height:36px;border:1px solid #efc6c2;border-radius:8px;background:#fff;color:var(--danger);font-size:18px;cursor:pointer}
.finding.needs-revision{background:var(--cream)}
.findings-title{align-items:flex-end}.findings-title>div{display:grid;gap:2px}.findings-title>div>span{display:block}.clear-useless-facts{min-height:40px;padding:8px 14px;border:1px solid #b7b1aa;border-radius:8px;background:#fff;color:var(--deep);font-weight:750;cursor:pointer}.clear-useless-facts:not(:disabled):hover{border-color:var(--danger);color:var(--danger)}.clear-useless-facts:disabled{opacity:.45;cursor:not-allowed}.findings-footer-actions{display:flex;justify-content:flex-end;padding-top:18px}.finding-shell{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}.feedback-flag{min-width:78px;padding:5px 8px;border-radius:999px;background:#f8f0d9;color:var(--warning);font-size:10px;font-weight:850;letter-spacing:.04em;text-align:center;text-transform:uppercase}.feedback-good .feedback-flag{background:var(--soft);color:var(--success)}.feedback-incorrect .feedback-flag,.feedback-irrelevant .feedback-flag,.feedback-duplicated .feedback-flag{background:#eceae7;color:#68635e}.finding-body{min-width:0}.feedback-actions{display:flex;align-items:center;gap:12px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.approve-finding{min-height:38px;padding:7px 13px;border:1px solid var(--success);border-radius:8px;background:#fff;color:var(--success);font-weight:800;cursor:pointer}.approve-finding[aria-pressed="true"]{background:var(--success);color:#fff}.approve-finding span{font-size:17px}.negative-feedback{display:flex;flex-wrap:wrap;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff}.negative-feedback label{display:inline-flex;align-items:center;gap:4px;margin:0;padding:3px 5px;color:var(--deep);font-size:12px;font-weight:650;cursor:pointer}.negative-feedback input{width:15px;min-height:15px;margin:0;padding:0;accent-color:#6f6a65}.finding.feedback-incorrect,.finding.feedback-irrelevant,.finding.feedback-duplicated{border-color:#d6d2cd;background:#f2f0ed}.finding.feedback-incorrect .finding-body>p,.finding.feedback-incorrect .finding-head,.finding.feedback-irrelevant .finding-body>p,.finding.feedback-irrelevant .finding-head,.finding.feedback-duplicated .finding-body>p,.finding.feedback-duplicated .finding-head{opacity:.55;filter:saturate(.45)}.finding.feedback-incorrect .recommendation,.finding.feedback-irrelevant .recommendation,.finding.feedback-duplicated .recommendation{background:#e8e5e1;border-left-color:#aaa39b}.finding.feedback-incorrect .feedback-actions,.finding.feedback-irrelevant .feedback-actions,.finding.feedback-duplicated .feedback-actions{opacity:1;filter:none}
.recovery-panel{max-width:680px;margin:34px auto 12px;padding:22px;border:1px solid #efc6c2;border-left:4px solid var(--danger);border-radius:11px;background:#fff8f7}.recovery-panel h3{margin-bottom:8px}.recovery-panel p{margin-bottom:12px}.retry-button{width:min(260px,100%);margin:16px 0 12px}.recovery-help{color:var(--muted);font-size:12px}.recovery-help code{overflow-wrap:anywhere;color:var(--deep)}
.page-heading{margin-bottom:22px}.page-heading p{color:var(--muted)}.admin-layout{display:grid;grid-template-columns:220px 1fr;gap:22px}.side-nav{display:grid;gap:6px;align-content:start;position:sticky;top:20px}.side-nav button{padding:12px 14px;border:0;border-radius:9px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.side-nav button.active{background:var(--deep);color:#fff}.table-wrap{overflow:auto;margin-top:18px}table{width:100%;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}th{background:#f8f6f4;color:#454545}.compact-form{padding-bottom:22px;border-bottom:1px solid var(--line)}.user-list{display:grid;gap:8px;padding-top:20px}.user-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:9px}.user-row strong,.user-row span{display:block}.user-row>div>span{color:var(--muted);font-size:12px}.row-actions{display:flex;gap:6px}.row-actions button{padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.row-actions .danger-link{color:var(--danger)}
.auth-page{background:var(--deep)}.auth-shell{width:min(980px,calc(100% - 32px));min-height:calc(100vh - 80px);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.auth-brand{color:#fff}.auth-brand img{width:300px;max-width:100%;max-height:90px;object-fit:contain;object-position:left center}.auth-brand p{color:#f8f6f4}.auth-card{padding:30px;border-radius:16px;background:#fff;box-shadow:var(--shadow)}.tab-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tab{padding:10px;border:0;border-radius:7px;background:#f8f6f4;color:var(--muted);cursor:pointer}.tab.active{background:var(--deep);color:#fff}.auth-page footer{color:#f8f6f4;border-color:#666}
fieldset.call-details{min-width:0;margin:10px 0 0;padding:15px;border:1px solid var(--line);border-radius:10px}fieldset.call-details legend{padding:0 6px;color:var(--deep);font-size:12px;font-weight:800}fieldset.call-details:disabled{background:#f8f6f4;color:var(--muted)}fieldset.call-details:disabled input{background:#eeece9;color:var(--muted)}.analysis-dropzone{min-height:175px;margin-top:8px}.url-field-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.compact-button{min-width:94px;margin-top:0}.disabled-link{opacity:.5;pointer-events:none;cursor:not-allowed}
.stage.active{border-left:3px solid var(--magenta);background:#fbf7ea}.stage-status{margin-top:6px;color:var(--warning);font-size:10px;font-weight:800;text-transform:uppercase}.progress-empty{gap:10px}.progress-empty p{margin:0}
footer{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:20px 0 28px;border-top:1px solid #d8d4cf;color:var(--muted);font-size:12px}
@media(max-width:900px){.dashboard-grid,.admin-layout,.auth-shell{grid-template-columns:1fr}.file-drop-grid{grid-template-columns:1fr 1fr}.file-dropzone:last-child{grid-column:1/-1}.main-nav{order:3;width:100%;overflow:auto}.topbar{flex-wrap:wrap}.account{margin-left:auto}.side-nav{position:static;grid-template-columns:repeat(3,1fr)}.auth-shell{padding:28px 0;gap:20px}.auth-brand{text-align:center}.auth-brand img{width:260px;max-height:70px;object-position:center}.auth-brand h1{margin:4px 0}.auth-brand p:last-child{display:none}}
@media(max-width:620px){.workspace{width:calc(100% - 24px);padding-top:22px}.hero,.card,.report-card{padding:20px;border-radius:12px}.hero{align-items:flex-start;flex-direction:column}.field-row,.field-row.three,.file-drop-grid{grid-template-columns:1fr}.file-dropzone:last-child{grid-column:auto}.user-row{grid-template-columns:1fr}.row-actions{flex-wrap:wrap}.side-nav{grid-template-columns:1fr}.brand img{width:142px}.brand strong{font-size:16px}.main-nav a{font-size:12px}.finding-shell{grid-template-columns:1fr}.feedback-flag{width:max-content}.feedback-actions{align-items:stretch;flex-direction:column}.negative-feedback{justify-content:space-between}.findings-title{align-items:stretch;flex-direction:column}.findings-title .clear-useless-facts{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
