.sandbox{flex-direction:column;min-height:100vh;display:flex}.sandbox .stage{flex:1;padding:clamp(48px,8vh,96px) 0}.sandbox .stage .wrap{max-width:880px}.sandbox .try-head{margin-bottom:clamp(36px,6vh,56px)}.sandbox .try-head .lede{margin-top:20px}.sandbox .dropzone{border:1px dashed var(--graphite);text-align:center;cursor:pointer;padding:clamp(48px,10vh,96px) 32px;transition:border-color .2s,background .2s}.sandbox .dropzone:hover,.sandbox .dropzone.dragover{border-color:var(--ink);background:#f3f3ef}.sandbox .dropzone .dz-title{letter-spacing:-.01em;font-size:19px;font-weight:500}.sandbox .dropzone .dz-sub{font-family:var(--mono);letter-spacing:.06em;color:var(--graphite);margin-top:12px;font-size:12px}.sandbox .dz-note{font-family:var(--mono);letter-spacing:.04em;color:var(--graphite);margin-top:20px;font-size:11.5px}.sandbox .scanning{border:1px solid var(--hairline);padding:40px 36px}.sandbox .scan-file{font-family:var(--mono);letter-spacing:.04em;margin-bottom:24px;font-size:13px}.sandbox .scan-bar{background:var(--hairline);height:2px;margin-bottom:28px;position:relative;overflow:hidden}.sandbox .scan-bar:after{content:"";background:var(--ink);width:38%;height:100%;animation:1.4s ease-in-out infinite scanmove;position:absolute;top:0;left:0}@keyframes scanmove{0%{left:-40%}to{left:100%}}@media (prefers-reduced-motion:reduce){.sandbox .scan-bar:after{width:100%;animation:none}}.sandbox .scan-log{font-family:var(--mono);color:var(--graphite);font-size:12.5px;line-height:2}.sandbox .scan-log div:before{content:"— ";color:var(--signal)}.sandbox .result-top{border-bottom:1px solid var(--hairline);grid-template-columns:auto 1fr;align-items:end;gap:clamp(28px,5vw,64px);margin-bottom:36px;padding-bottom:36px;display:grid}.sandbox .score-num{letter-spacing:-.04em;font-size:clamp(72px,12vw,140px);font-weight:500;line-height:.9}.sandbox .score-num small{color:var(--graphite);letter-spacing:0;font-size:.35em;font-weight:400}.sandbox .score-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--graphite);margin-bottom:14px;font-size:12px}.sandbox .result-meta{color:var(--graphite);font-size:15px;line-height:1.7}.sandbox .result-meta b{color:var(--ink);font-weight:500}.sandbox .scorebar{background:var(--hairline);height:3px;margin-top:18px}.sandbox .scorebar i{background:var(--ink);height:100%;transition:width 1s;display:block}.sandbox .fieldlist{border-top:1px solid var(--hairline)}.sandbox .frow{border-bottom:1px solid var(--hairline);grid-template-columns:1fr 110px 130px;align-items:center;gap:24px;padding:13px 0;font-size:14.5px;display:grid}.sandbox .frow .ftitle{color:#3a3a37;grid-column:1}.sandbox .frow .fstatus{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;grid-column:2;justify-self:start;font-size:10.5px}.sandbox .frow .fstatus.complete{color:#3e7a4e}.sandbox .frow .fstatus.missing{color:var(--signal)}.sandbox .frow .fval{font-family:var(--mono);text-align:right;grid-column:3;justify-self:end;font-size:13px}.sandbox .frow.locked .fval{background:repeating-linear-gradient(90deg,var(--hairline)0 8px,transparent 8px 12px);width:110px;height:12px}.sandbox .lockpanel{background:var(--ink);color:var(--paper);margin-top:48px;padding:clamp(36px,6vh,56px) clamp(28px,5vw,48px)}.sandbox .lockpanel h3{letter-spacing:-.02em;font-size:clamp(24px,3vw,34px);font-weight:500;line-height:1.15}.sandbox .lockpanel p{color:#fafaf8a6;max-width:36em;margin:16px 0 28px;font-size:16px}.sandbox .lockpanel .mono-note{font-family:var(--mono);letter-spacing:.06em;color:#fafaf873;margin-top:20px;font-size:11.5px}.sandbox .lockpanel .access-input{color:var(--paper);border-color:#fafaf847}.sandbox .lockpanel .access-input::placeholder{color:#fafaf880}.sandbox .lockpanel .access-input:focus{border-color:#fafaf8bf}.sandbox .lockpanel .access-error{color:var(--signal)}.sandbox .errorbox{border:1px solid var(--signal);padding:28px 32px}.sandbox .errorbox .etitle{margin-bottom:6px;font-weight:600}.sandbox .errorbox p{color:var(--graphite);font-size:15px}.sandbox .errorbox .btn{margin-top:20px}@media (max-width:680px){.sandbox .result-top{grid-template-columns:1fr}}
