:root{--canvas: #010102;--surface1: #0f1011;--surface2: #141516;--surface3: #18191a;--hairline: #23252a;--hairline-strong: #34343a;--ink: #f7f8f8;--ink-muted: #d0d6e0;--ink-subtle: #8a8f98;--ink-tertiary: #62666d;--primary: #5e6ad2;--primary-hover: #828fff;--success: #27a644;--danger: #ef6461}*{box-sizing:border-box}body{margin:0;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--canvas);color:var(--ink)}.app{min-height:100vh;background:var(--canvas);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app.light{--canvas: #ffffff;--surface1: #ffffff;--surface2: #f8fafc;--surface3: #f1f5f9;--hairline: #e5e7eb;--hairline-strong: #cbd5e1;--ink: #111827;--ink-muted: #374151;--ink-subtle: #64748b;--ink-tertiary: #94a3b8;--primary: #3658d4;--primary-hover: #2447bd}.page-container{max-width:1280px;margin:0 auto;padding:0 32px}.top-nav{position:sticky;z-index:50;top:0;border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--canvas),transparent 8%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app.light .top-nav{background:#fffffff0}.nav-content,.footer-content,.section-heading.wide,.progress-header,.subtotal-line,.grand-total,.result-file-header,.file-info-bar{display:flex;align-items:center;justify-content:space-between}.nav-content{height:56px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:650;letter-spacing:-.4px}.brand.compact{font-size:14px}.brand a{color:inherit;text-decoration:none}.brand-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--primary);color:#fff;font-weight:700}.nav-actions{display:flex;align-items:center;gap:18px;color:var(--ink-subtle);font-size:13px}.nav-actions a{color:inherit;text-decoration:none}.nav-actions a:hover,.nav-actions a.active{color:var(--ink)}.nav-actions select,.price-bar select{border:1px solid var(--hairline);border-radius:8px;background:var(--surface2);color:var(--ink-muted);padding:7px 10px}.theme-switch{width:42px;height:24px;border:0;border-radius:999px;background:var(--hairline);padding:2px}.theme-switch span{display:block;width:20px;height:20px;border-radius:50%;background:var(--ink);transition:transform .2s ease}.theme-switch.active span{transform:translate(18px)}.hero-section{padding-top:42px;padding-bottom:22px}.hero-copy{max-width:680px;margin:0 auto 24px;text-align:center}.hero-copy h1{margin:0 0 10px;font-size:clamp(30px,4vw,42px);line-height:1.12;letter-spacing:-.8px}.hero-copy p{max-width:600px;margin:0 auto;color:var(--ink-muted);font-size:16px;line-height:1.55}.hero-section.compact{padding-top:26px;padding-bottom:10px}.hero-section.compact .hero-copy h1{font-size:clamp(24px,3vw,32px)}.hero-section.compact .hero-copy p{display:none}.drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:640px;min-height:320px;margin:0 auto;border:2px dashed var(--hairline);border-radius:18px;background:var(--surface1);color:var(--ink-subtle);transition:border-color .2s ease,background .2s ease,transform .2s ease}.hero-section.compact .drop-zone{max-width:760px;min-height:138px;border-radius:12px}.hero-section.compact .upload-icon{width:42px;height:42px;border-radius:10px;font-size:22px}.hero-section.compact .drop-zone strong{margin-top:10px}.hero-section.compact .drop-zone>span,.hero-section.compact .drop-tags,.hero-section.compact .trust-row{display:none}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary),transparent 94%);transform:translateY(-1px)}.drop-zone strong{margin-top:16px;color:var(--ink)}.upload-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:18px;background:var(--surface2);color:var(--primary);font-size:34px}.drop-tags,.trust-row,.action-row,.mode-radio,.subfile-title,.subfile-meta,.range-row,.price-bar,.badges{display:flex;align-items:center;gap:12px}.drop-tags span{margin-top:18px;padding:6px 10px;border-radius:8px;background:var(--surface2);color:var(--ink-tertiary);font-size:12px}.trust-row{justify-content:center;margin-top:26px;color:var(--ink-subtle);font-size:14px}.static-page{padding-top:54px;padding-bottom:64px}.static-hero{max-width:780px}.section-eyebrow{display:block;margin-bottom:12px;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.static-title-row{display:flex;align-items:flex-start;gap:14px;max-width:860px;margin-bottom:16px}.back-icon-button{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;margin-top:6px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface1);color:var(--ink);font-size:22px;line-height:1;text-decoration:none}.back-icon-button:hover{border-color:var(--primary);color:var(--primary)}.static-hero h1{flex:1;max-width:760px;margin:0;font-size:clamp(32px,5vw,54px);line-height:1.08;letter-spacing:-.8px}.static-hero p{max-width:720px;margin:0;color:var(--ink-muted);font-size:18px;line-height:1.65}.static-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;align-items:start;margin-top:52px}.static-main{min-width:0}.static-section{border-top:1px solid var(--hairline);padding:28px 0}.static-section:first-child{padding-top:0;border-top:0}.static-section h2,.static-aside h2,.static-faq h2{margin:0 0 12px;font-size:22px;letter-spacing:-.4px}.static-section p,.faq-item p{margin:0;color:var(--ink-muted);font-size:15px;line-height:1.75}.static-list,.static-aside ul{margin:16px 0 0;padding-left:20px;color:var(--ink-muted);line-height:1.7}.static-list li+li,.static-aside li+li{margin-top:8px}.static-aside{position:sticky;top:82px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface1);padding:18px}.static-aside h2{font-size:16px}.static-aside ul{padding-left:18px;font-size:14px}.static-faq{margin-top:22px;border-top:1px solid var(--hairline);padding-top:42px}.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.faq-item{border:1px solid var(--hairline);border-radius:8px;background:var(--surface1);padding:16px}.faq-item summary{cursor:pointer;color:var(--ink);font-weight:650}.faq-item p{margin-top:12px;font-size:14px}.section{padding-top:42px;padding-bottom:56px}.section.divided{border-top:1px solid var(--hairline)}.section-heading{margin-bottom:22px}.section-heading.wide{gap:16px;flex-wrap:wrap}.section-heading>span,.section-heading div>span{display:block;margin-bottom:8px;color:var(--primary);font-size:12px;font-weight:650;letter-spacing:.5px;text-transform:uppercase}.section-heading h2{margin:0;font-size:22px;letter-spacing:-.5px}.file-queue-section{padding-top:8px;padding-bottom:34px}.file-queue-section .section-heading{margin-bottom:12px}.workflow-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding-bottom:28px}.workflow-metric{min-height:74px;border-left:2px solid var(--hairline);background:color-mix(in srgb,var(--surface1),transparent 20%);padding:12px 14px}.workflow-metric.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary),transparent 94%)}.workflow-metric.complete{border-color:color-mix(in srgb,var(--success),var(--hairline) 35%)}.workflow-metric span{display:block;margin-bottom:8px;color:var(--ink-subtle);font-size:12px;font-weight:650}.workflow-metric strong{display:block;overflow-wrap:anywhere;color:var(--ink);font-size:17px}.recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:920px}.recent-card,.empty-recent,.notice,.table-card,.progress-card,.review-column,.file-info-bar,.subtotal-card,.grand-total,.price-bar{border:1px solid var(--hairline);border-radius:8px;background:var(--surface1)}.recent-card,.empty-recent{display:flex;align-items:center;gap:12px;padding:14px 16px}.recent-card strong{display:block;overflow:hidden;max-width:210px;color:var(--ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.recent-card small,.muted,.file-info-bar span,.footer,.range-row,.subfile-title small,.subfile-meta span{color:var(--ink-subtle)}.pdf-icon,.pdf-dot{display:inline-grid;place-items:center;flex-shrink:0;border-radius:8px;background:color-mix(in srgb,var(--primary),transparent 88%);color:var(--primary);font-size:10px;font-weight:700}.pdf-icon{width:38px;height:38px}.pdf-dot{width:28px;height:28px}.pdf-dot.done{background:color-mix(in srgb,var(--success),transparent 88%);color:var(--success)}.notice{display:flex;justify-content:space-between;margin-bottom:18px;padding:12px 16px;color:var(--ink-muted)}.notice button,.icon-button,.link-button{border:0;background:transparent;color:var(--ink-subtle)}.file-table{width:100%;border-collapse:collapse;table-layout:fixed}.file-table-card{max-height:clamp(360px,calc(100vh - 320px),720px);overflow:auto;scrollbar-gutter:stable}.file-table th,.file-table td{border-bottom:1px solid var(--hairline);padding:10px 12px;text-align:left;vertical-align:middle}.file-table th{position:sticky;z-index:1;top:0;background:var(--surface1);color:var(--ink-subtle);font-size:12px;font-weight:650;letter-spacing:.35px;text-transform:uppercase}.file-table tr:last-child td{border-bottom:0}.file-table tbody tr:hover{background:color-mix(in srgb,var(--primary),transparent 96%)}.file-table th:nth-child(1),.file-table td:nth-child(1){width:64px}.file-table th:nth-child(2),.file-table td:nth-child(2){width:320px}.file-table th:nth-child(3),.file-table td:nth-child(3){width:92px}.file-table th:nth-child(4),.file-table td:nth-child(4){width:150px}.file-table th:nth-child(5),.file-table td:nth-child(5){width:78px}.file-table th:nth-child(6),.file-table td:nth-child(6){width:92px}.file-table th:nth-child(7),.file-table td:nth-child(7){width:138px}.file-table th:nth-child(8),.file-table td:nth-child(8){width:92px}.file-name-cell{width:320px}.file-name{display:flex;align-items:center;gap:10px;min-width:0;max-width:320px}.file-name span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-radio label{display:inline-flex;align-items:center;gap:5px;color:var(--ink-subtle);font-size:12px}.first-page{display:grid;place-items:center;width:36px;height:46px;overflow:hidden;border-radius:6px;background:var(--surface3);color:var(--ink-tertiary);font-size:11px;text-align:center}.first-page img{width:100%;height:100%;object-fit:cover}.status-badge{display:inline-flex;align-items:center;gap:7px;color:var(--ink-subtle);font-size:13px}.status-badge.completed{color:var(--success)}.status-badge.failed{color:var(--danger)}.status-badge.analyzing,.status-badge.reading,.status-badge.paused{color:var(--primary)}.spinner{width:16px;height:16px;border:2px solid var(--hairline);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress-card{margin-top:18px;padding:18px;border-color:color-mix(in srgb,var(--primary),var(--hairline) 55%)}.queue-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px;flex-wrap:wrap}.progress-inline{display:flex;align-items:center;gap:10px;flex:1 1 520px;min-width:0;color:var(--ink-subtle);font-size:12px}.progress-inline:empty{display:block}.progress-inline-meta{display:flex;align-items:baseline;gap:8px;min-width:150px}.progress-inline-meta strong{color:var(--ink-muted)}.progress-file-name{flex-basis:100%;margin:-4px auto 0 160px;color:var(--ink-subtle);font-size:12px;overflow:hidden;max-width:520px;text-overflow:ellipsis;white-space:nowrap}.progress-header span{color:var(--ink-subtle);font-size:13px}.progress-track{height:4px;overflow:hidden;flex:1;min-width:360px;margin:0;border-radius:999px;background:var(--surface3)}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .3s ease}.primary-button,.secondary-button{border-radius:9px;padding:10px 16px;font-weight:650;font-size:14px}.primary-button{border:1px solid var(--primary);background:var(--primary);color:#fff}.primary-button:hover{background:var(--primary-hover)}.secondary-button{border:1px solid var(--hairline);background:var(--surface2);color:var(--ink-muted)}.review-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.batch-confirm-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;border-color:color-mix(in srgb,var(--success),var(--hairline) 45%);background:color-mix(in srgb,var(--success),transparent 92%);color:var(--ink)}.batch-confirm-button:hover:not(:disabled){border-color:var(--success)}.batch-confirm-button small{display:inline-grid;place-items:center;min-height:22px;border-radius:999px;background:var(--surface1);color:var(--ink-subtle);padding:3px 8px;font-size:12px;font-weight:650;line-height:1;white-space:nowrap}.action-row{margin-top:18px}.file-tabs{display:flex;overflow-x:auto;gap:4px;margin-bottom:0}.file-tab{display:flex;align-items:center;gap:8px;flex-shrink:0;border:1px solid var(--hairline);border-bottom:0;border-radius:10px 10px 0 0;background:var(--surface2);color:var(--ink-subtle);padding:10px 14px}.file-tab.active{background:var(--surface1);color:var(--ink);box-shadow:inset 0 -2px 0 var(--primary)}.check{color:var(--success)}.file-info-bar{border-radius:0 0 8px 8px;padding:12px 16px}.file-info-bar div{display:flex;align-items:center;gap:12px}.status-pill{border-radius:999px;background:color-mix(in srgb,var(--primary),transparent 88%);color:var(--primary);padding:5px 9px;font-size:12px;font-weight:650}.results-layout{display:flex;align-items:stretch;gap:16px;margin-top:16px;height:calc(100vh - 280px);min-height:420px}.review-column{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden;padding:14px}.column-header,.column-header>div,.column-stats,.card-meta,.subfile-title,.subtotal-line{display:flex;align-items:center}.column-header{justify-content:space-between;margin-bottom:10px}.column-header>div{gap:8px;flex-wrap:wrap}.column-header h3{margin:0;font-size:15px}.column-header small{color:var(--ink-subtle);font-size:12px}.group-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-subtle)}.group-dot.color{background:var(--primary)}.group-dot.bw{background:var(--ink-subtle)}.insert-button{width:100%;margin-bottom:10px;border:1px dashed var(--hairline-strong);border-radius:10px;background:transparent;color:var(--ink-subtle);padding:10px}.insert-button:hover{border-color:var(--primary);color:var(--primary)}.thumbnail-grid{--review-page-width: 102px;--review-page-height: 136px;--review-single-card-width: 114px;--review-sheet-card-width: 216px;--review-card-height: 148px;display:flex;flex-wrap:wrap;gap:10px;align-items:start;align-content:flex-start;flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.thumbnail-grid.duplex{align-items:start}.thumbnail-card{position:relative;flex:0 0 auto;width:var(--review-single-card-width);height:var(--review-card-height);min-width:0;overflow:hidden;border:1px solid var(--hairline);border-radius:8px;background:var(--surface1);padding:5px;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.thumbnail-card:hover{transform:translateY(-1px)}.thumbnail-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary),transparent 70%)}.thumbnail-card.suspect{border-color:#7a7fad}.thumbnail-card.sheet{width:var(--review-sheet-card-width);height:var(--review-card-height)}.single-preview,.sheet-preview{display:flex;align-items:flex-start;width:var(--review-page-width);height:var(--review-page-height)}.sheet-preview{gap:0;width:calc(var(--review-page-width) * 2)}.preview-page{position:relative;display:grid;place-items:center;width:var(--review-page-width);height:var(--review-page-height);flex:0 0 var(--review-page-width);overflow:hidden;border-radius:5px;background:var(--surface3);color:var(--ink-tertiary);font-size:11px}.preview-page img{width:100%;height:100%;object-fit:contain}.preview-page small{position:absolute;right:0;bottom:0;left:0;padding:4px;background:#0f172aad;color:#fff;font-size:10px;text-align:center}.thumbnail-card.sheet .preview-page+.preview-page{border-left:1px solid var(--hairline);border-top-left-radius:0;border-bottom-left-radius:0}.thumbnail-card.sheet .preview-page:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.blank-page{border:1px dashed var(--hairline-strong)}.thumbnail-check{position:absolute;z-index:2;top:8px;right:8px;width:16px;height:16px;accent-color:var(--primary)}.badges{position:absolute;z-index:3;top:8px;left:8px;right:30px;flex-wrap:wrap;margin-top:0;pointer-events:none}.badge{border:0;border-radius:999px;padding:4px 7px;font-size:10px;pointer-events:auto}.badge.suspect{background:#7a7fad26;color:#9ea5ea}.badge.blank{background:#62666d2e;color:var(--ink-subtle)}.empty-column{flex:1 0 100%;grid-column:1 / -1;display:grid;place-items:center;min-height:160px;border:1px dashed var(--hairline);border-radius:12px;color:var(--ink-tertiary)}.move-controls{display:flex;flex-direction:column;justify-content:center;gap:10px;width:48px}.move-controls button{width:42px;height:42px;border:0;border-radius:10px;background:var(--primary);color:#fff;font-size:24px}.confirm-row{display:flex;justify-content:center;margin-top:26px}.confirm-hint{max-width:620px;margin:14px auto 0;border:1px dashed var(--hairline);border-radius:10px;background:color-mix(in srgb,var(--primary),transparent 95%);color:var(--ink-subtle);padding:12px;text-align:center;font-size:13px}.price-bar{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:20px;padding:10px 12px;gap:12px}.price-bar label{display:inline-flex;align-items:center;gap:8px;color:var(--ink-subtle);font-size:13px}.price-bar input{width:90px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface2);color:var(--ink);padding:7px 9px}.storage-note{flex:1;min-width:260px;color:var(--ink-subtle);font-size:12px;line-height:1.45}.result-list{display:grid;gap:12px;max-width:none}.subtotal-card{padding:14px}.result-file-header{justify-content:flex-start;gap:12px;margin-bottom:12px}.result-file-header span:not(.pdf-dot){color:var(--ink-subtle);font-size:12px}.subfile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.subfile-card{border:1px solid var(--hairline);border-radius:8px;background:var(--surface1);padding:12px}.subfile-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.subfile-title>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;min-width:0}.subfile-title small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.subfile-title .secondary-button{flex-shrink:0;padding:7px 12px}.subfile-meta,.range-row{justify-content:space-between;margin-bottom:12px}.range-row{font-size:12px}.subtotal-line{justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid var(--hairline)}.grand-total{max-width:none;margin-top:24px;padding:18px}.grand-total span{display:block;color:var(--ink-subtle);margin-bottom:6px}.grand-total small{color:var(--ink-tertiary)}.grand-total strong{font-size:26px}.error-box{margin-bottom:12px;border:1px solid color-mix(in srgb,var(--danger),transparent 60%);border-radius:10px;background:color-mix(in srgb,var(--danger),transparent 90%);color:var(--danger);padding:10px 12px}.footer{margin-top:64px;border-top:1px solid var(--hairline);padding:36px 0;color:var(--ink-tertiary)}.footer-content{gap:20px;flex-wrap:wrap}.footer-meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:var(--ink-subtle);font-size:13px}.footer-links{display:flex;align-items:center;gap:16px;font-size:13px}.footer-links a{color:var(--ink-subtle);text-decoration:none}.footer-links a:hover{color:var(--ink)}@media(max-width:900px){.recent-grid,.subfile-grid,.faq-list,.static-layout{grid-template-columns:1fr}.static-aside{position:static}.workflow-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.results-layout{flex-direction:column;height:auto;min-height:0}.review-column{height:min(64vh,560px);min-height:380px}.move-controls{flex-direction:row;width:auto}.table-card{overflow-x:auto}.file-table{min-width:1026px}.review-actions{width:100%;justify-content:flex-start}.batch-confirm-button{justify-content:space-between;min-width:min(100%,260px)}}@media(max-width:720px){.page-container{padding:0 18px}.nav-content{height:auto;min-height:56px;gap:10px;padding:10px 0;flex-wrap:wrap}.nav-actions{width:100%;gap:12px;overflow-x:auto;padding-bottom:2px}.nav-actions a,.nav-actions select,.theme-switch{flex:0 0 auto}.static-page{padding-top:38px}.static-hero h1{font-size:34px}.static-title-row{gap:10px}.back-icon-button{width:36px;height:36px;margin-top:1px;font-size:20px}.static-hero p{font-size:16px}.footer-content{align-items:flex-start;flex-direction:column}}
