.checksum-page{padding:56px 0 108px}.checksum-hero{max-width:850px;margin-bottom:38px}.checksum-hero h1{letter-spacing:-.05em;margin:16px 0;font-size:clamp(2.75rem,5vw,4.75rem);font-weight:560;line-height:.98}.checksum-hero>p:last-child{max-width:750px;color:var(--muted);margin:0;font-size:1rem;line-height:1.65}.checksum-shell{color:var(--ink)}.checksum-toolbar{align-items:center;gap:24px;min-height:50px;margin-bottom:16px;display:flex}.checksum-tabs{border:1px solid var(--line);background:#00000029;border-radius:6px;width:max-content;padding:4px;display:flex}.checksum-tabs button{min-width:110px;min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:10px 16px;font-size:.875rem;font-weight:740}.checksum-tabs button[aria-selected=true]{color:#05070c;background:var(--accent)}.checksum-tabs button:disabled{cursor:wait;opacity:.72}.checksum-notice{color:var(--accent-cool);margin:0;font-size:.75rem;line-height:1.45}.local-processing-note{border:1px solid #4f9fff47;border-left:3px solid var(--accent);color:var(--accent);background:#4f9fff12;align-items:center;gap:13px;margin-bottom:16px;padding:15px 18px;display:flex}.local-processing-note>span{filter:drop-shadow(0 0 5px var(--accent));font-size:.55rem}.local-processing-note strong{margin-bottom:2px;font-size:.8rem;display:block}.local-processing-note p{color:var(--muted);margin:0;font-size:.75rem;line-height:1.45}.checksum-setup-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.checksum-card{border:1px solid var(--line);background:var(--panel)}.checksum-input-card,.file-selection-card{min-height:420px;padding:30px 32px}.checksum-card h2{letter-spacing:-.035em;margin:12px 0 24px;font-size:clamp(1.55rem,2.6vw,2.15rem);font-weight:570;line-height:1.08}.checksum-field-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font:650 .7rem/1.4 ui-monospace,Consolas,monospace;display:block}.checksum-input-card textarea{resize:vertical;width:100%;min-height:148px;color:var(--ink);overflow-wrap:anywhere;background:#060a12;border:1px solid #263b59;border-radius:2px;padding:13px 14px;font:.8rem/1.55 ui-monospace,Consolas,monospace}.checksum-input-card textarea:hover{border-color:#405f89}.checksum-input-card textarea:focus{border-color:var(--accent);outline:1px solid var(--accent);outline-offset:0}.checksum-input-card textarea::placeholder{color:#60728a}.inline-actions{align-items:center;gap:12px;margin-top:9px;display:flex}.inline-actions>span{color:var(--faint);font-size:.68rem}.secondary-action,.quiet-action,.result-actions button,.copy-result{min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #314b70;padding:9px 13px;font-size:.73rem;font-weight:680}.secondary-action:hover,.quiet-action:hover,.result-actions button:hover,.copy-result:hover{border-color:var(--accent);color:var(--accent)}button:disabled{cursor:not-allowed;opacity:.48}.parse-summary{color:var(--accent-cool);margin:15px 0 0;font-size:.75rem}.checksum-error,.checksum-warning{color:#ffd3ce;background:#8e1f1524;border:1px solid #ff7f7266;border-left:3px solid #ff7f72;margin-top:14px;padding:12px 14px;font-size:.78rem;line-height:1.5}.checksum-warning{color:#ffe0a8;background:#804b0021;border-color:#ffba596b #ffba596b #ffba596b #ffba59}.legacy-warning{background:#804b0017;border:1px solid #ffba594d;margin-top:17px;padding:15px}.legacy-warning>strong{color:#ffcc82;font-size:.8rem}.legacy-warning>p{color:var(--muted);margin:6px 0 12px;font-size:.74rem;line-height:1.5}.legacy-warning label{color:var(--ink);align-items:center;gap:9px;font-size:.76rem;font-weight:650;display:flex}.legacy-warning input,.algorithm-options input{width:18px;height:18px;accent-color:var(--accent);flex:none}.algorithm-options{border:0;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;display:grid}.algorithm-options legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.algorithm-options label{cursor:pointer;background:#060a12;border:1px solid #263b59;align-items:center;gap:11px;min-height:54px;padding:10px 12px;display:flex}.algorithm-options label:has(input:checked){background:#4f9fff14;border-color:#4f9fffb8}.algorithm-options label:last-child{grid-column:1/-1}.algorithm-options span{align-items:center;gap:8px;display:flex}.algorithm-options strong{font:650 .8rem/1.4 ui-monospace,Consolas,monospace}.algorithm-options small,.hash-row small{color:#ffcc82;text-transform:uppercase;border:1px solid #ffba5959;padding:2px 5px;font:650 .58rem/1.2 ui-monospace,Consolas,monospace}.field-help{color:var(--faint);margin:13px 0 0;font-size:.72rem;line-height:1.55}.file-drop-zone{text-align:center;background:repeating-linear-gradient(135deg,#4f9fff04,#4f9fff04 8px,#0000 8px 16px);border:1px dashed #38577f;align-content:center;place-items:center;gap:8px;min-height:220px;padding:28px;display:grid}.file-drop-zone>strong{font-size:1rem}.file-drop-zone>span{color:var(--faint);font-size:.75rem}.file-choice-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:13px;display:flex}.file-choice-actions button{border:1px solid var(--accent);min-height:44px;color:var(--accent);cursor:pointer;background:#4f9fff0f;padding:10px 16px;font-size:.76rem;font-weight:720}.file-choice-actions button:hover{color:#05070c;background:var(--accent)}.queue-card,.progress-card,.results-card{margin-top:16px;padding:25px 32px 30px}.card-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.card-heading h2{margin:9px 0 0;font-size:1.45rem}.card-heading>strong{color:var(--accent);font:700 1rem/1.3 ui-monospace,Consolas,monospace}.empty-state{border:1px dashed var(--line);color:var(--faint);text-align:center;margin:0;padding:28px 18px;font-size:.8rem}.file-queue{margin:0;padding:0;list-style:none}.file-queue li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:58px;padding:9px 0;display:grid}.file-queue li:last-child{border-bottom:1px solid var(--line)}.file-identity{min-width:0}.file-identity strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font:600 .79rem/1.45 ui-monospace,Consolas,monospace;display:block;overflow:hidden}.file-identity span{color:var(--faint);margin-top:2px;font-size:.68rem;display:block}.status-pill{width:max-content;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#ffffff06;border:1px solid #40546f;padding:4px 7px;font:700 .61rem/1.2 ui-monospace,Consolas,monospace}.status-processing{color:var(--accent);border-color:#4f9fff80}.status-match,.status-calculated{color:#7fe5bd;background:#16704c1f;border-color:#44c8927a}.status-mismatch,.status-error,.status-cancelled{color:#ffaaa2;background:#8e1f151f;border-color:#ff7f727a}.status-not-listed{color:#c1aee9;border-color:#ab8be473}.remove-file{min-height:40px;color:var(--faint);cursor:pointer;background:0 0;border:1px solid #0000;padding:7px 9px;font-size:.7rem}.remove-file:hover{color:#ffaaa2;border-color:#ff7f7266}.missing-entries{background:#804b0012;border:1px solid #ffba5947;margin-top:16px;padding:15px}.missing-entries>strong{color:#ffcc82;font-size:.77rem}.missing-entries ul{color:var(--muted);margin:9px 0 0;padding-left:19px;font-size:.72rem;line-height:1.55}.start-actions{align-items:center;gap:15px;margin-top:22px;display:flex}.start-actions>span{color:var(--faint);font-size:.7rem}.primary-action,.danger-action{border:1px solid var(--accent);color:#05070c;background:var(--accent);cursor:pointer;min-height:46px;padding:11px 18px;font-size:.78rem;font-weight:780}.primary-action:hover{background:#79b7ff}.danger-action{color:#ffd3ce;background:#8e1f152e;border-color:#ff7f72}.danger-action:hover{background:#8e1f1552}.progress-card label{color:var(--faint);text-transform:uppercase;justify-content:space-between;margin:12px 0 6px;font-size:.68rem;font-weight:650;display:flex}.progress-card progress{appearance:none;background:#050912;border:1px solid #263e61;border-radius:0;width:100%;height:13px;overflow:hidden}.progress-card progress::-webkit-progress-bar{background:#050912}.progress-card progress::-webkit-progress-value{background:var(--accent)}.progress-card progress::-moz-progress-bar{background:var(--accent)}.progress-metrics{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin:20px 0 0;display:grid}.progress-metrics div{padding:14px 12px 0 0}.progress-metrics dt{color:var(--faint);margin-bottom:4px;font-size:.67rem}.progress-metrics dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font:600 .75rem/1.4 ui-monospace,Consolas,monospace}.results-heading{align-items:flex-end}.result-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.result-list{gap:12px;display:grid}.checksum-result{border:1px solid var(--line);background:#070c14;padding:18px}.checksum-result.result-match{border-left:3px solid #44c892}.checksum-result.result-mismatch,.checksum-result.result-error{border-left:3px solid #ff7f72}.checksum-result.result-calculated{border-left:3px solid var(--accent)}.checksum-result.result-missing{border-left:3px solid #ffba59}.checksum-result header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.checksum-result header>div{align-items:center;gap:10px;min-width:0;display:flex}.checksum-result h3{overflow-wrap:anywhere;min-width:0;margin:0;font:630 .82rem/1.45 ui-monospace,Consolas,monospace}.checksum-result header>span{color:var(--faint);flex:none;font-size:.68rem}.result-explanation,.result-error,.match-warning{color:var(--muted);margin:14px 0 0;font-size:.73rem;line-height:1.55}.result-error{color:#ffaaa2}.match-warning{color:#ffcc82}.hash-row{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:13px;padding-top:13px;display:grid}.hash-row>div{gap:4px;display:grid}.hash-row>div>strong{align-items:center;gap:7px;font:680 .72rem/1.4 ui-monospace,Consolas,monospace;display:flex}.hash-row>div>span{color:var(--faint);overflow-wrap:anywhere;font-size:.64rem}.hash-row code{color:var(--accent-cool);overflow-wrap:anywhere;word-break:break-all;font:570 .71rem/1.5 ui-monospace,Consolas,monospace}.hash-row>button{min-width:56px;min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #314b70;font-size:.68rem}.hash-row>button:hover{color:var(--accent);border-color:var(--accent)}.copy-result{margin-top:15px}.integrity-note{background:#804b000e;border:1px solid #ffba5938;grid-template-columns:.8fr 1.2fr;align-items:start;gap:24px 60px;margin-top:16px;padding:30px 32px;display:grid}.integrity-note .mono-label{grid-column:1/-1}.integrity-note h2{letter-spacing:-.035em;margin:0;font-size:1.75rem;font-weight:570}.integrity-note>p:last-child{color:var(--muted);margin:0;font-size:.8rem;line-height:1.65}@media (width<=900px){.checksum-setup-grid{grid-template-columns:1fr}.checksum-input-card,.file-selection-card{min-height:0}.hash-row{grid-template-columns:130px minmax(0,1fr) auto}}@media (width<=700px){.checksum-page{padding:40px 0 76px}.checksum-toolbar{flex-direction:column;align-items:stretch;gap:8px}.checksum-tabs{width:100%}.checksum-tabs button{flex:1;min-height:44px}.checksum-input-card,.file-selection-card,.queue-card,.progress-card,.results-card{padding:24px 20px}.secondary-action,.quiet-action,.result-actions button,.copy-result{min-height:44px}.file-queue li{grid-template-columns:minmax(0,1fr) auto}.remove-file{grid-column:1/-1;width:100%}.start-actions{flex-direction:column;align-items:stretch}.primary-action,.danger-action{width:100%;min-height:48px}.progress-metrics{grid-template-columns:1fr 1fr}.results-heading{flex-direction:column;align-items:flex-start}.result-actions{justify-content:flex-start}.checksum-result header{flex-direction:column;gap:8px}.hash-row{grid-template-columns:1fr auto}.hash-row>div{grid-column:1/-1}.hash-row code{min-width:0}.hash-row>button{min-height:44px}.integrity-note{grid-template-columns:1fr;gap:14px;padding:25px 20px}}@media (width<=460px){.checksum-hero h1{font-size:clamp(2.4rem,13vw,3.2rem)}.algorithm-options{grid-template-columns:1fr}.algorithm-options label:last-child{grid-column:auto}.inline-actions{flex-direction:column;align-items:flex-start}.file-drop-zone{padding:24px 14px}.file-choice-actions,.file-choice-actions button{width:100%}.card-heading{flex-direction:column;align-items:flex-start}.quiet-action{width:100%}.progress-metrics{grid-template-columns:1fr}.checksum-result header>div{flex-direction:column;align-items:flex-start}.hash-row{grid-template-columns:1fr}.hash-row>button{width:100%}}@media (prefers-reduced-motion:reduce){.progress-card progress::-webkit-progress-value{transition:none}}
