:root{--bg:#eef1f6;--bg-strong:#e4e8ef;--paper:rgba(255,255,255,0.95);--paper-strong:#ffffff;--ink:#111827;--ink-soft:#4b5563;--line:rgba(0,0,0,0.12);--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:rgba(37,99,235,0.1);--warn:#b45309;--warn-soft:rgba(180,83,9,0.1);--bad:#dc2626;--bad-soft:rgba(220,38,38,0.08);--good:#059669;--good-soft:rgba(5,150,105,0.1);--shadow-sm:0 1px 2px rgba(0,0,0,0.06);--shadow:0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.12),0 4px 6px -2px rgba(0,0,0,0.06);--radius-xl:16px;--radius-lg:12px;--radius-md:8px;--radius-sm:6px;--font-display:"Inter","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;--font-body:"Inter","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;--transition:150ms cubic-bezier(0.4,0,0.2,1)}*{box-sizing:border-box}html{min-height:100%;background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,html{color:var(--ink)}body{margin:0;min-height:100vh;font-family:var(--font-body);font-size:.9375rem;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%}.brand-block h1{margin:.3rem 0 .15rem;font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.3;letter-spacing:-.01em}.nav-link{display:flex;align-items:center;padding:.55rem .75rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;transition:all var(--transition)}.page-stack{display:grid;grid-gap:1.25rem;gap:1.25rem}.page-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.5rem 1.75rem;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper-strong);box-shadow:var(--shadow)}.page-hero__eyebrow,.panel__eyebrow{margin:0 0 .25rem;color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:600}.page-hero h1,.panel h2,.panel h3,.project-card h3,.result-row h3{margin:0;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}.page-hero h1{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25}.page-hero__description{max-width:64ch;margin:.4rem 0 0;color:var(--ink-soft);font-size:.875rem;line-height:1.7}.page-hero__actions{display:flex;align-items:flex-start;flex-shrink:0}.page-hero__actions:empty{display:none}.content-grid,.metric-grid{display:grid;grid-gap:.75rem;gap:.75rem}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.9fr)}.content-grid--wide{grid-template-columns:minmax(0,1.7fr) minmax(300px,.85fr)}.upload-screen__grid{align-items:start;grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr)}.upload-screen__documents,.upload-screen__intake{min-width:0}.login-card,.metric-card,.panel,.state-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-strong);box-shadow:var(--shadow)}.metric-card{padding:1rem 1.1rem;transition:box-shadow var(--transition),transform var(--transition)}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.metric-card p{margin:0;color:var(--ink-soft);font-size:.8rem;font-weight:500}.metric-card strong{display:block;margin-top:.4rem;font-size:1rem;font-weight:700;line-height:1.2;letter-spacing:-.02em}.upload-screen__status-metric .status-chip{padding:.3rem .75rem;font-size:.95rem;font-weight:700}.metric-card--good{border-left:3px solid var(--good)}.metric-card--warn{border-left:3px solid var(--warn)}.metric-card--bad{border-left:3px solid var(--bad)}.panel{padding:1.25rem}.panel--accent{background:linear-gradient(135deg,rgba(37,99,235,.02),rgba(255,255,255,1));border-color:rgba(37,99,235,.12)}.panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel__hint{margin:.75rem 0 0;color:var(--ink-soft);font-size:.85rem;line-height:1.6}.action-row,.filter-row,.login-card__footer,.login-card__header,.project-card__actions,.project-card__outputs,.scenario-selector,.scenario-selector__group{display:flex;gap:.5rem}.filter-row,.scenario-selector{flex-wrap:wrap}.scenario-selector{justify-content:flex-end}.scenario-selector__group{align-items:center;padding:.4rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-strong);font-size:.8rem}.scenario-selector__group span{color:var(--ink-soft);font-size:.78rem}.badge,.button,.flag-pill,.pill-button,.status-chip{border-radius:var(--radius-sm)}.button,.pill-button{border:none;cursor:pointer;transition:all var(--transition)}.pill-button{padding:.4rem .7rem;background:transparent;color:var(--ink-soft);font-size:.85rem;font-weight:500}.pill-button--active,.pill-button:hover{background:var(--accent-soft);color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md)}.button:disabled{cursor:not-allowed;opacity:.5}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.button:active:not(:disabled){transform:translateY(0)}.button--primary{background:var(--accent);color:#ffffff}.button--primary:hover:not(:disabled){background:var(--accent-hover)}.button--success{background:var(--good);color:#ffffff}.button--success:hover:not(:disabled){background:#047857}.button--danger{background:rgba(220,38,38,.12);color:#991b1b}.button--danger:hover:not(:disabled){background:rgba(220,38,38,.18)}.button--ghost{border:1px solid var(--line);background:var(--paper-strong);color:var(--ink)}.button--ghost:hover:not(:disabled){background:var(--bg);border-color:rgba(0,0,0,.12)}.button--full{width:100%}.danger-zone{margin-top:.85rem;padding-top:.85rem;border-top:1px dashed rgba(148,163,184,.6)}.danger-zone--compact{margin-top:0}.danger-zone__summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer;color:var(--ink-soft);font-size:.8rem;font-weight:700;list-style:none}.danger-zone__summary::-webkit-details-marker{display:none}.danger-zone__summary:after{content:"開く";font-size:.72rem;font-weight:600;color:#991b1b}.danger-zone[open] .danger-zone__summary:after{content:"閉じる"}.danger-zone__body{display:grid;grid-gap:.65rem;gap:.65rem;margin-top:.65rem;padding:.8rem;border:1px solid rgba(220,38,38,.14);border-radius:var(--radius-md);background:rgba(220,38,38,.04)}.danger-zone__note{margin:0;color:var(--ink-soft);font-size:.82rem;line-height:1.6}.stack-form{display:grid;grid-gap:.75rem;gap:.75rem}.login-form label,.stack-form label{display:grid;grid-gap:.3rem;gap:.3rem}.login-form span,.stack-form span{font-size:.85rem;font-weight:500;color:var(--ink)}input,select,textarea{width:100%;padding:.55rem .75rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--radius-md);background:var(--paper-strong);color:var(--ink);font-size:.875rem;transition:border-color var(--transition),box-shadow var(--transition)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.1)}input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none;box-shadow:none;border-color:rgba(0,0,0,.12)}input::placeholder,textarea::placeholder{color:#9ca3af}textarea{min-height:90px;resize:vertical}.document-list,.output-list,.project-list{display:grid;grid-gap:.6rem;gap:.6rem}.document-card,.output-card,.project-card,.result-row,.review-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper-strong);transition:box-shadow var(--transition),border-color var(--transition)}.document-card:hover,.output-card:hover,.project-card:hover{box-shadow:var(--shadow-md);border-color:rgba(0,0,0,.1)}.document-card,.output-card,.project-card,.result-row{padding:1rem}.document-card__header,.output-card,.project-card__header,.result-row__heading,.review-card dl div,.review-queue__item{display:flex;justify-content:space-between;gap:.8rem}.document-card__meta dd,.document-card__meta dt,.form-error,.form-note,.project-card__description,.project-card__id,.result-row__empty,.result-row__mf,.result-row__reason,.review-card dd,.review-card dt,.review-card p{margin:0}.project-card__id{color:var(--ink-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:500}.form-note,.project-card__description,.result-row__reason,.review-card p{color:var(--ink-soft);font-size:.85rem;line-height:1.6}.project-card__next-action-label{margin:.85rem 0 0;color:var(--ink-soft);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.document-card__meta,.project-card__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.6rem;gap:.6rem;margin:.75rem 0;padding:.6rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.document-card__meta{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-screen__documents .panel__header{flex-wrap:wrap}.upload-screen__documents .document-card__header>div,.upload-screen__documents .panel__header>div{min-width:0}.upload-screen__documents .document-card__header{align-items:flex-start;flex-wrap:wrap}.upload-screen__documents .document-card dd,.upload-screen__documents .document-card h3,.upload-screen__documents .document-card p{overflow-wrap:anywhere;word-break:break-word}.upload-screen__documents .document-card__meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.document-card__meta dt,.project-card__meta dt,.review-card dt{color:var(--ink-soft);font-size:.75rem;font-weight:500}.document-card__meta dd,.project-card__meta dd{margin:0;font-size:.85rem;font-weight:600}.project-card__outputs{font-size:.8rem;color:var(--ink-soft);gap:.75rem}.project-card__next-action{margin:.2rem 0 .75rem;color:var(--ink);font-size:.92rem;font-weight:600}.project-card__actions{flex-wrap:wrap}.project-card__actions .button:first-child{min-width:128px}.badge,.flag-pill,.status-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-sm);white-space:nowrap}.badge{background:var(--bg-strong);color:var(--ink-soft)}.badge--active,.status-chip--good{background:var(--good-soft);color:var(--good)}.badge--generating,.status-chip--neutral{background:var(--accent-soft);color:var(--accent)}.badge--stale,.status-chip--muted{background:var(--bg-strong);color:var(--ink-soft)}.status-chip--warn{background:var(--warn-soft);color:var(--warn)}.badge--ready{background:var(--good-soft);color:var(--good)}.status-chip--bad{background:var(--bad-soft);color:var(--bad)}.output-card__description{display:block;margin-top:.3rem;color:var(--ink-soft);font-size:.78rem;line-height:1.5}.results-screen__next-step,.upload-screen__analysis-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.8)}.upload-screen__analysis-card .button{min-width:220px;min-height:52px;padding:.8rem 1.4rem;font-size:.95rem}.results-screen__next-step-label,.upload-screen__analysis-label{margin:0;color:var(--ink-soft);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.results-screen__next-step strong,.upload-screen__analysis-card strong{display:block;margin-top:.2rem;font-size:1rem;font-weight:700;line-height:1.3}.upload-screen__analysis-note{margin:.35rem 0 0;color:var(--ink-soft);font-size:.85rem;line-height:1.55}.upload-screen__analysis-card .form-note{margin-top:.5rem}.upload-screen__dropzone{position:relative;display:block;cursor:default;padding:1rem;border:1px dashed rgba(37,99,235,.55);border-radius:var(--radius-md);background:var(--paper);color:var(--ink-soft)}.upload-screen__dropzone--active{border-color:var(--accent);background:var(--accent-soft)}.upload-screen__dropzone input[type=file]{display:none;width:100%;height:100%}.upload-screen__dropzone-button{width:-moz-fit-content;width:fit-content;margin:.55rem 0 .4rem}.upload-screen__dropzone-main{margin:.5rem 0 0;color:var(--ink);font-size:.9rem}.upload-screen__file-list{list-style:none;margin:.75rem 0 0;padding:0;color:var(--ink);font-size:.84rem;line-height:1.5;max-height:min(50vh,360px);overflow:auto;display:grid;grid-gap:.65rem;gap:.65rem}.upload-screen__bulk-config{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:.9rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.72)}.upload-screen__bulk-title{margin:0;font-size:.9rem;font-weight:700;color:var(--ink)}.upload-screen__bulk-note{margin:.3rem 0 0;font-size:.8rem;color:var(--ink-soft);line-height:1.5}.upload-screen__bulk-actions{display:grid;grid-gap:.65rem;gap:.65rem;grid-template-columns:repeat(2,minmax(260px,1fr));align-items:start}.upload-screen__bulk-group{display:grid;grid-gap:.65rem;gap:.65rem;grid-template-columns:minmax(0,1fr) auto;align-items:end}.upload-screen__bulk-actions label{margin:0;gap:.25rem}.upload-screen__bulk-actions select{width:100%}.upload-screen__bulk-group .button{min-width:132px}.upload-screen__file-item{display:grid;grid-gap:.65rem;gap:.65rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-md)}.upload-screen__file-name{margin:0;font-size:.84rem;font-weight:600;color:var(--ink);word-break:break-all}.upload-screen__file-config{display:grid;grid-gap:.45rem;gap:.45rem;grid-template-columns:1fr}.upload-screen__file-config label{margin:0;gap:.25rem}.upload-screen__file-config select{width:100%}.upload-screen__file-remove{width:-moz-fit-content;width:fit-content}.upload-screen__file-list--more{color:var(--ink-soft)}@media (min-width:1200px){.upload-screen__file-config{grid-template-columns:minmax(0,1.2fr) minmax(110px,1fr) auto;align-items:end}.upload-screen__file-config label{margin:0}.upload-screen__file-remove{width:auto;justify-self:end;margin-bottom:.1rem}}@media (max-width:1199px){.upload-screen__bulk-actions{grid-template-columns:1fr}.upload-screen__bulk-group{grid-template-columns:1fr auto}.upload-screen__bulk-config{flex-direction:column;align-items:stretch}}@media (max-width:720px){.upload-screen__bulk-group{grid-template-columns:1fr}.upload-screen__bulk-group .button{width:100%}}.results-table{display:grid;grid-gap:.6rem;gap:.6rem}.result-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(220px,.6fr);grid-gap:.75rem;gap:.75rem;align-items:start;min-width:0}.result-row--clickable{text-decoration:none;color:inherit;padding:.6rem .75rem;border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);background:var(--bg-strong)}.result-row--clickable:hover{border-color:var(--accent);background:var(--paper-strong);box-shadow:var(--shadow-md)}.result-row--clickable:focus-visible{outline:2px solid rgba(37,99,235,.25);outline-offset:2px}.result-value{display:grid;grid-gap:.2rem;gap:.2rem;padding:.6rem .75rem;border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--line)}.result-value div{display:flex;justify-content:space-between;gap:.5rem}.result-row__evidence small,.result-value small,.result-value span{color:var(--ink-soft);font-size:.78rem}.results-screen__summary-group{display:grid;grid-gap:.85rem;gap:.85rem;margin-bottom:1rem}.results-screen__aside{display:grid;align-content:start;grid-gap:.9rem;gap:.9rem}.results-screen__aside .output-list,.results-screen__aside .panel__header,.results-screen__next-step{margin:0}.review-layout{display:grid;grid-template-columns:300px minmax(0,1fr);grid-gap:.75rem;gap:.75rem}.review-queue__items{display:grid;grid-gap:.35rem;gap:.35rem}.review-queue__item{display:flex;justify-content:space-between;width:100%;align-items:center;padding:.65rem .75rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-strong);text-align:left;cursor:pointer;transition:all var(--transition)}.review-queue__item:hover{background:var(--bg);border-color:rgba(0,0,0,.1)}.review-queue__item p,.review-queue__item span{margin:0}.review-queue__item p{font-weight:600;font-size:.875rem}.review-queue__item span{display:block;margin-top:.15rem;color:var(--ink-soft);font-size:.78rem}.review-queue__status{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;flex-shrink:0}.review-queue__item--active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.review-detail__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.review-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.review-summary,.review-summary--compact{margin-bottom:.75rem}.review-summary__breakable{overflow-wrap:anywhere;word-break:break-word;line-height:1.45}.review-summary__item{padding:.75rem;border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--line)}.review-summary__item span,.review-summary__item strong{display:block}.review-summary__item span{color:var(--ink-soft);font-size:.76rem}.review-summary__item strong{margin-top:.25rem;font-size:.95rem;font-weight:700}.review-detail__status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.review-card{padding:1rem}.review-card--pdf-sync{display:flex;flex-direction:column;justify-content:flex-start}.review-card__pdf-meta{display:grid;grid-gap:.5rem;gap:.5rem;min-height:11.5rem}.review-card--decision,.review-card--pdf-preview,.review-card--snippet{grid-column:1/-1}.review-card__pdf-block{display:grid;grid-gap:.5rem;gap:.5rem;min-height:18.5rem;margin-top:auto}.review-card h3{margin:0 0 .6rem;font-size:.9rem;font-weight:700;color:var(--ink)}.review-card dl{display:grid;grid-gap:.5rem;gap:.5rem}.candidate-list{padding-left:1rem;margin:.6rem 0 0}.candidate-list li{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.35rem;font-size:.85rem}.flag-list{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}.flag-pill{background:var(--warn-soft);color:var(--warn);font-size:.72rem;padding:.15rem .5rem}.snippet-frame{position:relative;overflow:hidden;min-height:340px;border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.snippet-frame__button{position:relative;width:100%;min-height:340px;border:0;padding:0;margin:0;border-radius:var(--radius-md);background:transparent;cursor:zoom-in}.snippet-frame__image{object-fit:contain;object-position:center;width:100%;height:100%}.snippet-frame__button:focus-visible{outline:2px solid rgba(37,99,235,.65);outline-offset:2px}.snippet-lightbox{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgba(15,23,42,.72);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:1rem;flex-direction:column}.snippet-lightbox__content{width:min(95vw,1100px);display:grid;grid-gap:.75rem;gap:.75rem}.snippet-lightbox__frame{position:relative;width:min(95vw,1100px);height:min(80vh,760px);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);overflow:hidden}.snippet-lightbox__frame,.snippet-lightbox__frame--draggable{cursor:-webkit-grab;cursor:grab}.snippet-lightbox__frame--draggable:active{cursor:-webkit-grabbing;cursor:grabbing}.snippet-lightbox__image{object-fit:contain;object-position:center;width:100%;height:100%;will-change:transform;pointer-events:none}.snippet-lightbox__toolbar{display:grid;grid-gap:.35rem;gap:.35rem;padding:.55rem .65rem;border-radius:var(--radius-md);background:rgba(15,23,42,.85);border:1px solid rgba(255,255,255,.12)}.snippet-lightbox__toolbar-label{display:flex;justify-content:space-between;align-items:center;color:#f1f5f9;font-size:.83rem;letter-spacing:.03em}.snippet-lightbox__toolbar-label span{color:rgba(226,232,240,.8)}.snippet-lightbox__toolbar-label strong{color:#f8fafc;font-size:.92rem}.snippet-lightbox__slider{width:100%}.snippet-lightbox__reset{justify-self:end;width:-moz-fit-content;width:fit-content;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);color:#f8fafc;padding:.34rem .7rem;border-radius:999px;font-size:.75rem;font-weight:600}.snippet-lightbox__close{position:fixed;top:1rem;right:1rem;width:2rem;height:2rem;border:1px solid var(--line);border-radius:50%;background:rgba(15,23,42,.85);color:#f1f5f9;font-size:1rem;font-weight:700;cursor:pointer}.state-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem}.state-panel h2,.state-panel p{margin:0}.state-panel h2{font-size:1rem;font-weight:700}.state-panel p{margin-top:.2rem;color:var(--ink-soft);font-size:.85rem}.state-panel--error{border-color:rgba(220,38,38,.2);background:linear-gradient(135deg,rgba(220,38,38,.02),var(--paper-strong))}.state-panel__pulse{width:40px;height:40px;border-radius:50%;background:var(--accent);opacity:.15;animation:pulse 1.8s ease-in-out infinite;flex-shrink:0}.login-layout{display:grid;min-height:100vh;place-items:center;padding:2rem;background:linear-gradient(135deg,#e0e7ff 0,var(--bg) 50%,#ede9fe 100%)}.login-card{width:min(460px,100%);padding:2rem}.login-card__footer,.login-card__header{flex-direction:column}.login-card__header p,.login-card__header span{margin:0;color:var(--ink-soft);font-size:.85rem}.login-card__header h1{margin:.25rem 0 0;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:-.02em}.login-form{display:grid;grid-gap:.75rem;gap:.75rem;margin:1.25rem 0}.login-card__lead{display:block;margin-top:.6rem;line-height:1.6}.login-card__description{margin:0;color:var(--ink-soft);font-size:.92rem;line-height:1.7}.form-error{color:var(--bad);font-size:.85rem;font-weight:500}.login-card__footer{gap:.5rem;padding-top:1rem;border-top:1px solid var(--line)}.login-card__footer strong{font-size:.85rem}.login-card__footer p{margin:0;color:var(--ink-soft);font-size:.8rem;line-height:1.6}@keyframes pulse{0%,to{transform:scale(.85);opacity:.1}50%{transform:scale(1);opacity:.2}}@media (max-width:1100px){.content-grid,.content-grid--wide,.result-row,.review-detail__grid,.review-layout,.review-summary,.upload-screen__grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-detail{order:-1}}@media (max-width:760px){.app-main,.login-card,.login-layout,.metric-card,.page-hero,.panel{padding:1rem}.page-hero{flex-direction:column}.document-card__meta,.metric-grid,.project-card__meta{grid-template-columns:1fr}.action-row,.filter-row,.project-card__actions,.results-screen__next-step,.scenario-selector,.upload-screen__analysis-card{flex-direction:column}.results-screen__next-step .button,.upload-screen__analysis-card .button{width:100%;min-width:0}.review-preview-frame{min-height:180px}.review-card--pdf-sync .review-preview-frame{min-height:200px}.review-card__pdf-block{min-height:12rem}.snippet-frame,.snippet-frame__button{min-height:220px}}.app-main--review{max-width:none;padding:1rem 1.25rem 1.5rem}.review-toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.review-mode-queue{padding:1rem 1.1rem}.review-queue-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,260px);grid-gap:.75rem;gap:.75rem;overflow-x:auto;padding-bottom:.35rem}.review-queue-pill{display:grid;grid-gap:.6rem;gap:.6rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-strong);text-align:left;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition)}.review-queue-pill:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.review-queue-pill--active{border-color:rgba(37,99,235,.45);background:linear-gradient(180deg,rgba(37,99,235,.08),rgba(255,255,255,.98))}.review-queue-pill>div{display:grid;grid-gap:.15rem;gap:.15rem}.review-queue-pill strong{font-size:.96rem;line-height:1.35}.review-queue-pill span{color:var(--ink-soft);font-size:.8rem}.review-workbench{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.95fr);grid-gap:1rem;gap:1rem;align-items:start}.review-workbench--secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.review-card,.review-preview-panel{padding:1rem 1.1rem}.review-preview-meta{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;margin:.5rem 0 .75rem;color:var(--ink-soft);font-size:.82rem}.review-preview-meta span{overflow-wrap:anywhere;word-break:break-word}.review-preview-frame{position:relative;min-height:260px;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--paper-strong)}.review-preview-frame__embed{width:100%;height:100%;border:0;display:block;background:var(--paper-strong);min-height:inherit}.review-preview-frame__cta{position:absolute;top:.75rem;right:.75rem;z-index:1;padding:.35rem .7rem;border-radius:999px;background:rgba(15,23,42,.82);color:#f8fafc;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-decoration:none;transition:background var(--transition),transform var(--transition)}.review-preview-frame__cta:hover{background:rgba(15,23,42,.94);transform:translateY(-1px)}.review-preview-frame__cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.review-preview-frame--large{min-height:620px}.review-card--pdf-sync .review-preview-frame{min-height:320px}.review-snippet-stage{position:relative;min-height:620px;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--line);background:radial-gradient(circle at top,rgba(37,99,235,.14),transparent 38%),linear-gradient(180deg,#fffef7,#f7f2e8)}.review-data-list{display:grid;grid-gap:.7rem;gap:.7rem;margin:0}.review-data-list div{display:grid;grid-gap:.2rem;gap:.2rem}.review-data-list dt{color:var(--ink-soft);font-size:.76rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.review-data-list dd{margin:0;font-size:.95rem;line-height:1.5}@media (max-width:1180px){.review-workbench,.review-workbench--secondary{grid-template-columns:minmax(0,1fr)}.review-preview-frame--large,.review-snippet-stage{min-height:460px}}@media (max-width:720px){.app-main--review{padding:.85rem .85rem 1.25rem}.review-queue-strip{grid-auto-columns:minmax(200px,220px)}.review-preview-frame--large,.review-snippet-stage{min-height:340px}}.app-shell{display:flex;min-height:100vh;flex-direction:column}.app-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:grid;grid-gap:.85rem;gap:.85rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-sm)}.app-topbar__row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-block--topbar{display:grid;grid-gap:.05rem;gap:.05rem;padding:0;border:0;background:transparent}.brand-block--topbar p,.brand-block--topbar span{color:var(--ink-soft)}.brand-block--topbar h1{color:var(--ink)}.app-topbar__content{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.app-topbar__nav{display:flex;gap:.45rem;flex-wrap:wrap}.app-topbar__nav--secondary{padding-left:1rem;border-left:1px solid var(--line)}.app-topbar .nav-link{color:var(--ink-soft)}.app-topbar .nav-link--active,.app-topbar .nav-link:hover{background:var(--accent-soft);color:var(--accent)}.app-topbar__note{margin-left:auto;padding:.55rem .8rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-strong);font-size:.78rem}.app-topbar__note p,.app-topbar__note span,.app-topbar__note strong{margin:0}.app-topbar__note p{color:var(--ink-soft);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.app-topbar__note span{display:block;color:var(--ink-soft);font-size:.78rem;margin-top:.2rem}.app-topbar__note .nav-link{margin-top:.45rem;padding:0}.app-topbar__toggle{display:none;align-items:center;justify-content:center;padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-strong);color:var(--ink);font-size:.82rem;font-weight:700}.app-main{width:100%;max-width:none;padding:1.25rem 1.5rem 1.75rem}@media (max-width:760px){.app-topbar{padding:.75rem 1rem}.app-topbar__toggle{display:inline-flex}.app-topbar__content{display:none;align-items:stretch;flex-direction:column}.app-topbar--open .app-topbar__content{display:flex}.app-topbar__nav{width:100%;flex-direction:column}.app-topbar__nav--secondary{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:.75rem}.app-topbar .nav-link{width:100%}.app-topbar__note{width:100%;margin-left:0}}