:root{font-family:Noto Sans SC,Microsoft YaHei,sans-serif;color:#26312b;background:#ede8dc;font-synthesis:none;--ink: #26312b;--moss: #314b3c;--moss-soft: #617465;--clay: #a44e32;--clay-dark: #793725;--sand: #ede8dc;--paper: #f8f5ed;--line: #d8d0c1;--muted: #756f64;--danger: #a13f30;--shadow: 0 16px 45px rgba(52, 44, 32, .09)}*{box-sizing:border-box}html{min-width:320px;background:var(--sand)}body{margin:0;min-height:100vh}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Noto Serif SC","Source Han Serif SC",SimSun,serif;letter-spacing:-.025em}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{min-height:100vh;background:linear-gradient(rgba(67,76,65,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(67,76,65,.035) 1px,transparent 1px),var(--sand);background-size:28px 28px}.topbar{height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5vw;background:#f8f5edf0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:12px;width:fit-content}.brand strong{display:block;font-family:"Noto Serif SC",serif;font-size:22px;letter-spacing:.12em}.brand small{display:block;margin-top:2px;color:var(--muted);font-size:11px;letter-spacing:.08em}.brand-mark{width:34px;height:34px;display:grid;gap:3px;transform:rotate(-8deg)}.brand-mark i{display:block;background:var(--clay);border-radius:6px 2px}.brand-mark i:nth-child(2){width:78%;margin-left:auto;background:#c48555}.brand-mark i:nth-child(3){width:90%;background:var(--moss)}.topbar-note{color:var(--muted);font-size:13px;display:flex;align-items:center;gap:9px}.signal-dot{width:8px;height:8px;background:#5f7d68;border-radius:50%;box-shadow:0 0 0 5px #5f7d681f}.account{justify-self:end;display:flex;align-items:center;gap:20px;font-size:13px}.main-content{min-height:calc(100vh - 76px)}.page{width:min(1420px,92vw);margin:0 auto;padding:46px 0 80px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:34px}.page-heading.compact{align-items:center}.page-heading h1,.results-hero h1{font-size:clamp(34px,4vw,54px);margin-bottom:10px;font-weight:650}.page-heading p,.results-hero p{color:var(--muted);margin-bottom:0}.section-kicker{color:var(--clay);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px}.breadcrumb{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:30px}.breadcrumb a:hover{color:var(--clay)}.breadcrumb b{color:var(--ink)}.primary-button,.secondary-button{border:0;border-radius:5px;padding:12px 20px;font-weight:700;cursor:pointer;transition:.2s ease}.primary-button{background:var(--clay);color:#fffaf2;box-shadow:0 8px 20px #a44e3233}.primary-button:hover:not(:disabled){background:var(--clay-dark);transform:translateY(-1px)}.secondary-button{background:#e8e2d5;border:1px solid #cfc5b4;color:var(--ink)}.secondary-button:hover:not(:disabled){background:#ddd3c2}.text-button,.danger-text{border:0;padding:4px;background:none;cursor:pointer;font-size:13px;font-weight:700}.text-button{color:var(--moss)}.danger-text{color:var(--danger)}.wide{width:100%}.small{padding:8px 13px;font-size:12px}input,select{border:1px solid #cfc7b9;border-radius:5px;background:#fffdf7;color:var(--ink);padding:11px 13px;outline:none;transition:.2s}input:focus,select:focus{border-color:var(--moss-soft);box-shadow:0 0 0 3px #314b3c1a}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:5px;padding:0;border:0;border-radius:99px;background:#d5cbbb}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--clay);border:4px solid #fff8ed;box-shadow:0 1px 5px #8f6c59}.form-error{color:var(--danger)!important;font-size:13px;line-height:1.6}.success-note{color:var(--moss);font-size:13px;font-weight:700}.muted{color:var(--muted)}.empty-state{min-height:240px;display:grid;place-content:center;justify-items:center;text-align:center;color:var(--muted);border:1px dashed #c9bfaf;background:#f8f5ed8c}.empty-state h3{color:var(--ink);margin:18px 0 8px}.empty-state p{margin:0}.empty-stone{width:66px;height:32px;border-radius:55% 45% 50% 40%;background:#a68d6e;box-shadow:inset -10px -8px #4d3c2b21;transform:rotate(-7deg)}@media(max-width:850px){.topbar{grid-template-columns:1fr auto;padding:0 20px}.topbar-note{display:none}.page{width:min(94vw,720px);padding-top:30px}.page-heading{align-items:flex-start;flex-direction:column}}.settings-panel{position:sticky;top:100px}.threshold-control{display:grid;gap:15px;padding:18px;background:#eee7da}.threshold-control span{display:flex;justify-content:space-between;align-items:center;font-size:13px}.threshold-control b{font-family:serif;color:var(--clay);font-size:30px}.threshold-control small{color:var(--muted)}.advanced-toggle{width:100%;display:flex;justify-content:space-between;margin:16px 0 8px;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;font-weight:700}.advanced-toggle b{color:var(--clay);font-size:12px}.weight-editor{display:grid;gap:11px;margin:16px 0}.weight-row{display:grid;grid-template-columns:105px 1fr 38px;align-items:center;gap:8px;font-size:11px}.weight-row output{text-align:right;font-weight:800}.weight-total{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:12px;font-size:12px}.weight-total.invalid strong{color:var(--danger)}.start-button{margin-top:10px}.scope-note{margin-top:18px;padding:14px;border-left:3px solid var(--moss-soft);background:#eef0e9;font-size:12px}.scope-note p{color:var(--muted);margin:5px 0 0}.results-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:10px 0 30px;border-bottom:1px solid #cfc6b7}.retention-stamp{text-align:right;border:1px solid #b6aa98;padding:13px 16px;transform:rotate(-1deg)}.retention-stamp span,.retention-stamp strong{display:block}.retention-stamp span{color:var(--muted);font-size:10px}.retention-stamp strong{font-size:12px;margin-top:5px}.summary-rack{display:grid;grid-template-columns:repeat(6,1fr);background:#f8f4eb;border:1px solid var(--line);margin:28px 0 18px}.summary-rack>div{padding:20px;border-right:1px solid var(--line)}.summary-rack>div:last-child{border-right:0}.summary-rack span{display:block;color:var(--muted);font-size:11px}.summary-rack strong{display:block;font-family:serif;font-size:31px;margin-top:7px}.summary-rack .accent strong{color:var(--clay)}.summary-rack .success strong{color:var(--moss)}.result-controls{display:grid;grid-template-columns:minmax(420px,1fr) auto;gap:30px;align-items:center;background:#303f36;color:#f6f0e6;padding:17px 20px}.result-threshold{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;align-items:center;gap:14px;font-size:12px}.result-threshold b{color:#e2a475;font-size:23px;margin-left:7px}.result-controls .text-button{color:#e6b185}.filters{display:flex;gap:8px}.filters input{width:150px}.calibration-band{margin:18px 0 30px;padding:18px 22px;border:1px solid var(--line);background:#f8f5edcc;display:flex;justify-content:space-between;align-items:center}.calibration-band h2{font-size:18px;margin-bottom:5px}.calibration-band p{margin:0;color:var(--muted);font-size:12px}.pair-list{display:grid;gap:24px}.pair-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.pair-header{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:19px 22px;border-bottom:1px solid var(--line)}.score-disc{width:78px;height:78px;display:grid;place-content:center;text-align:center;border:2px solid var(--clay);border-radius:50%;transform:rotate(-2deg)}.score-disc strong{font-family:serif;color:var(--clay);font-size:30px;line-height:1}.score-disc span{font-size:9px;color:var(--muted);margin-top:3px}.pair-title{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.pair-title>span{font-family:serif;font-size:23px;font-weight:700}.pair-title i{color:#a49682;font-style:normal}.pair-title small{width:100%;color:var(--muted);font-size:11px}.review-badge{font-size:11px;font-weight:800;padding:7px 10px;border-radius:99px;background:#e8e0d4}.review-confirmed{background:#dbe9dd;color:#315b3c}.review-excluded{background:#eadfda;color:#79483d}.comparison-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:9px 20px;background:#eae3d7;font-size:10px}.comparison-toolbar input{width:130px}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.photo-evidence{min-width:0;background:#272c28}.photo-canvas{height:clamp(360px,48vw,680px);overflow:auto;display:grid;place-items:center}.zoom-layer{position:relative;transform-origin:center;transition:transform .18s ease;max-width:100%;max-height:100%}.zoom-layer img{display:block;max-width:100%;max-height:clamp(360px,48vw,680px);object-fit:contain}.match-box{position:absolute;border:3px solid #e53d28;box-shadow:0 0 0 1px #ffffffb3,inset 0 0 18px #e53d281f;pointer-events:none}.match-box b{position:absolute;left:-3px;top:-26px;min-width:24px;height:23px;display:grid;place-items:center;background:#e53d28;color:#fff;font-size:11px}.photo-evidence footer{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;color:#f5eee3}.photo-evidence footer b,.photo-evidence footer small{display:block}.photo-evidence footer small{color:#9fa8a1;margin-top:3px;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-evidence footer a{color:#e2a475;font-size:11px}.evidence-footer{display:grid;grid-template-columns:1fr auto;gap:32px;padding:20px 22px}.feature-bars{display:grid;grid-template-columns:1fr 1fr;gap:9px 28px}.feature-row{display:grid;grid-template-columns:90px 1fr 30px;gap:8px;align-items:center;font-size:10px}.feature-row i{height:5px;background:#ddd5c8;overflow:hidden}.feature-row i b{display:block;height:100%;background:var(--moss-soft)}.feature-row output{text-align:right;font-weight:800}.review-actions p{margin:0 0 8px;font-size:10px;color:var(--muted)}.review-actions button{border:1px solid var(--line);background:#f5f0e6;padding:8px 10px;cursor:pointer;font-size:11px}.review-actions button.active{background:#d8cabb;border-color:#a99b89}.review-actions .confirm.active{background:var(--moss);color:#fff}.review-actions .exclude.active{background:#875043;color:#fff}.direct-note{margin:0;padding:10px 22px;background:#eee7da;color:var(--muted);font-size:10px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#1a1f1bb8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.proposal-modal{width:min(520px,90vw);background:var(--paper);padding:34px;box-shadow:0 30px 80px #0000004d}.proposal-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin:25px 0}.proposal-compare div{padding:18px;background:#eee7da}.proposal-compare span,.proposal-compare small{display:block}.proposal-compare strong{font-family:serif;font-size:34px}.proposal-compare .recommended{background:#dfe8df}.modal-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:24px}@media(max-width:1050px){.summary-rack{grid-template-columns:repeat(3,1fr)}.result-controls{grid-template-columns:1fr}}@media(max-width:760px){.results-hero,.calibration-band{align-items:flex-start;flex-direction:column}.summary-rack{grid-template-columns:repeat(2,1fr)}.result-threshold{grid-template-columns:auto 1fr}.result-threshold button{grid-column:1 / -1}.filters{flex-wrap:wrap}.comparison-grid{grid-template-columns:1fr}.pair-header{grid-template-columns:auto 1fr}.review-badge{grid-column:1 / -1;width:fit-content}.evidence-footer,.feature-bars{grid-template-columns:1fr}}.login-page{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:7vw;padding:7vw;overflow:hidden;position:relative;background:#26352d;color:#f7f0e4}.login-page:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.16;pointer-events:none;background-image:radial-gradient(#dac8a6 .7px,transparent .7px);background-size:8px 8px}.strata{position:absolute;border:1px solid rgba(225,203,170,.19);border-radius:50%;transform:rotate(-12deg)}.strata-one{width:60vw;height:24vw;left:-17vw;bottom:-7vw;box-shadow:0 0 0 50px #d5976009,0 0 0 100px #d5976006}.strata-two{width:34vw;height:13vw;right:-12vw;top:-3vw}.login-intro,.login-card{position:relative;z-index:1}.login-intro .eyebrow{color:#d8a271;font-size:11px;letter-spacing:.24em;font-weight:800;margin-bottom:30px}.login-intro h1{max-width:780px;font-size:clamp(38px,5vw,72px);line-height:1.16;margin-bottom:30px}.login-intro h1 em{color:#deb58b;font-style:normal}.login-intro>p{max-width:660px;color:#bdc4bd;line-height:1.9}.method-strip{display:flex;align-items:center;gap:14px;margin-top:42px;color:#e8dfcf;font-size:13px}.method-strip b{color:#b8704f}.login-card{justify-self:end;width:min(420px,100%);padding:42px;color:var(--ink);background:#f7f1e5;box-shadow:0 30px 80px #0000004d;border-radius:4px}.login-card h2{font-size:30px;margin-bottom:8px}.login-card label{display:grid;gap:7px;margin-top:24px;font-size:13px;font-weight:700}.login-card .primary-button{margin-top:22px}.security-note{display:block;color:var(--muted);text-align:center;margin-top:17px}.core-rings{width:72px;height:18px;background:#9c6047;border-radius:50%;position:absolute;right:38px;top:35px;box-shadow:inset 0 0 0 4px #b77b5f,inset 0 0 0 8px #85503a;opacity:.78}.queue-seal{text-align:right;border-left:1px solid var(--line);padding-left:28px}.queue-seal strong{display:block;font-family:serif;font-size:40px;color:var(--clay);line-height:1}.queue-seal span{color:var(--muted);font-size:12px}.create-band{background:var(--moss);color:#f6f0e6;display:grid;grid-template-columns:1fr minmax(360px,.8fr);gap:25px 45px;align-items:center;padding:28px 34px;margin-bottom:44px;border-radius:5px;box-shadow:var(--shadow)}.create-band h2{margin-bottom:7px}.create-band p{color:#bdc6bf;margin:0;font-size:13px}.create-band form{display:grid;grid-template-columns:1fr auto;gap:9px}.create-band .form-error{grid-column:2}.task-section,.panel{background:#f8f5eddb;border:1px solid var(--line);box-shadow:var(--shadow)}.task-section{padding:30px}.section-title-row,.panel-heading{display:flex;justify-content:space-between;align-items:center}.section-title-row{margin-bottom:24px}.section-title-row h2,.panel-heading h2{margin:0}.task-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.task-card{text-align:left;border:1px solid var(--line);padding:22px;background:#fffdf8;cursor:pointer;min-height:235px;transition:.25s;display:flex;flex-direction:column;position:relative;overflow:hidden}.task-card:after{content:"";position:absolute;width:90px;height:13px;right:-16px;top:52px;background:#e7dfd0;transform:rotate(-7deg)}.task-card:hover{transform:translateY(-4px);border-color:#ad9e89;box-shadow:0 15px 30px #3c312314}.task-card-top{display:flex;justify-content:space-between;align-items:center}.task-card time{color:var(--muted);font-size:11px}.task-card h3{font-size:21px;margin:26px 0 20px;position:relative;z-index:1}.status-pill{padding:5px 9px;border-radius:99px;background:#e9e3d7;font-size:11px;font-weight:800}.status-completed{background:#dce8dd;color:#355b40}.status-failed,.status-cancelled{background:#f0dcd5;color:#873d2c}.status-queued,.status-preprocessing,.status-screening,.status-verifying{background:#f0dfc4;color:#7a4e24}.task-stats{display:flex;gap:25px}.task-stats span{color:var(--muted);font-size:11px}.task-stats strong{display:block;color:var(--ink);font-size:16px}.task-card>p{color:var(--muted);font-size:12px;margin:14px 0 0}.card-arrow{margin-top:auto;padding-top:18px;color:var(--clay);font-size:12px;font-weight:800}.mini-progress,.progress-track{height:5px;border-radius:9px;background:#ded6c8;overflow:hidden}.mini-progress{margin-top:16px}.mini-progress i,.progress-track i{display:block;height:100%;background:var(--clay);transition:width .35s}.heading-actions{display:flex;align-items:center;gap:20px}.analysis-banner{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:#303f36;color:#fff;padding:24px 28px;margin-bottom:24px}.analysis-banner h2{margin:0 0 13px;font-size:21px}.progress-orbit{width:70px;height:70px;border-radius:50%;border:5px solid #8a9b8d;display:grid;place-content:center;text-align:center}.progress-orbit strong{font-size:22px;line-height:1}.progress-orbit span{font-size:9px;color:#bdcabf}.detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,.7fr);gap:22px;align-items:start}.panel{padding:28px}.panel-heading{margin-bottom:24px}.count-chip{background:#e9e1d4;padding:7px 12px;font-size:12px;border-radius:99px}.upload-zone{border:1px dashed #b9ad99;background:#f2ede3;text-align:center;margin-bottom:22px}.upload-zone>input{position:absolute;opacity:0;pointer-events:none}.upload-zone>label{padding:28px;display:grid;place-items:center;cursor:pointer}.upload-symbol{font-size:28px;color:var(--clay)}.upload-zone small{color:var(--muted);margin-top:5px}.selected-files{border-top:1px solid var(--line);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.photo-table{border:1px solid var(--line);max-height:520px;overflow:auto}.photo-row{display:grid;grid-template-columns:1fr 1.3fr .5fr;gap:12px;align-items:center;padding:11px 13px;border-bottom:1px solid #e5ded1;font-size:12px}.photo-row>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted)}.photo-row input{min-width:0;padding:6px 8px}.table-head{position:sticky;top:0;background:#eae3d7;font-weight:800;z-index:2}.empty-row{padding:35px;text-align:center;color:var(--muted)}@media(max-width:1050px){.task-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}}@media(max-width:760px){.login-page{grid-template-columns:1fr;padding:42px 6vw}.login-card{justify-self:stretch}.create-band,.task-grid{grid-template-columns:1fr}.analysis-banner{grid-template-columns:auto 1fr}.analysis-banner button{grid-column:1 / -1}}
