:root{color:#24221f;background:#f4f1ea;font-family:system-ui,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}select,button,input[type=file]{min-height:44px}button{border:1px solid #716b63;border-radius:4px;padding:.65rem .9rem;color:#24221f;background:#fffdf8}button:hover:not(:disabled){background:#ebe6dd}button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #5d4978;outline-offset:2px}button:disabled{opacity:.55}label{display:grid;gap:.35rem;margin-block:.8rem}input,textarea{width:100%;border:1px solid #9b9388;border-radius:3px;padding:.65rem;background:#fffdf8}textarea{min-height:7rem;resize:vertical}.decoder-app{width:min(100%,1440px);margin-inline:auto;padding:clamp(1rem,3vw,2.5rem)}.app-header{max-width:72rem;border-bottom:1px solid #c9c1b6;margin-bottom:1.5rem}.workflow-status{border:1px solid #c9c1b6;background:#fffdf8;padding:1rem;margin-bottom:1.5rem}.workflow-status h2{margin-block:.25rem}.workflow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:0;margin:1rem 0 0;list-style:none}.workflow-steps li{display:flex;align-items:center;gap:.5rem;border-top:2px solid #c9c1b6;padding-top:.6rem;color:#716b63}.workflow-steps .workflow-step-current{border-color:#5d4978;color:#24221f;font-weight:650}.workflow-steps .workflow-step-complete{border-color:#716b63;color:#39352f}.workflow-steps li>span:first-child{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border:1px solid currentColor;border-radius:50%}.app-header h1,h2,h3{color:#39352f}.eyebrow{color:#716b63;letter-spacing:.08em}.decoder-layout{display:grid;grid-template-columns:minmax(18rem,25rem) minmax(0,1fr);gap:1.5rem;align-items:start}.workflow-column{display:grid;gap:1rem}.workflow-card,.analysis-shell,.empty-state,.error-summary{border:1px solid #c9c1b6;background:#fffdf8;padding:1rem}.local-file-drop-zone{display:grid;gap:.3rem;min-height:5.5rem;border:1px dashed #716b63;border-radius:4px;padding:.85rem;cursor:pointer;background:#f8f5ef}.local-file-drop-zone:hover:not([aria-disabled=true]){background:#ebe6dd}.local-file-drop-zone[aria-disabled=true]{cursor:not-allowed;opacity:.55}.local-file-drop-zone:focus-visible{outline:3px solid #5d4978;outline-offset:2px}.file-status{margin-block:.4rem .8rem;color:#716b63;overflow-wrap:anywhere}.result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.result-actions p{margin:0}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.button-row{display:flex;flex-wrap:wrap;gap:.65rem}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem}details{margin-block:.75rem}summary{min-height:44px;cursor:pointer;padding-block:.6rem}summary:focus-visible{outline:3px solid #5d4978;outline-offset:2px}.auxiliary,.phase-status{color:#716b63}.error-summary,.blocked-note,.prototype-warning{border-left:5px solid #5d4978;padding:.8rem 1rem}.tab-list{display:flex;gap:.25rem;overflow-x:auto;border-bottom:1px solid #c9c1b6;padding-bottom:.5rem}.tab-list [aria-selected=true]{border-bottom:4px solid #5d4978}[role=tabpanel]{padding-top:1rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem}.summary-grid div{border:1px solid #ded8cf;padding:.65rem}.summary-grid dt{color:#716b63}.summary-grid dd{margin:.25rem 0 0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}caption{text-align:left;font-weight:600;margin-block:.5rem}th,td{border:1px solid #c9c1b6;padding:.55rem;text-align:left;vertical-align:top}pre{max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f1ea;padding:.65rem}.item-list{display:grid;gap:1rem}.item-card{border-top:1px solid #c9c1b6}.break-anywhere{overflow-wrap:anywhere}@media(max-width:800px){.decoder-layout,.workflow-steps{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
