@font-face{font-family:Archivo Narrow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-narrow-latin-700-normal-DtADLsoy.woff2)format("woff2"),url(/assets/archivo-narrow-latin-700-normal-DxmyBkwC.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}:root{--paper:#0e3a6b;--paper-deep:#0a2e57;--grid:#d6e6ff12;--ink:#eaf2ff;--ink-soft:#a8c0e0;--ink-faint:#7f9cc4;--line:#eaf2ff66;--accent:#ffc857;--danger:#ff9b85;--warn:#ffb36b;--font-display:"Archivo Narrow", "Arial Narrow", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--ease-swing:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--cut:10px;--chamfer:polygon(var(--cut) 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, var(--cut) 100%, 0 calc(100% - var(--cut)), 0 var(--cut));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background-color:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--font-mono);margin:0;font-size:15px;line-height:1.5}body:before{content:"";z-index:-2;background-image:linear-gradient(#d6e6ff12 1px, transparent 1px), linear-gradient(90deg, #d6e6ff12 1px, transparent 1px), linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);pointer-events:none;background-size:96px 96px,96px 96px,16px 16px,16px 16px;animation:90s linear infinite drift;position:fixed;inset:-96px}body:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 50% 35%,#0000 45%,#04122480);position:fixed;inset:0}.svg-defs{width:0;height:0;position:absolute}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{justify-content:center;min-height:100dvh;display:flex}.app{flex-direction:column;gap:16px;width:100%;max-width:440px;padding:12px 16px 24px;display:flex}.label{letter-spacing:1.5px;color:var(--ink-soft);font-size:12px;font-weight:500}.muted{color:var(--ink-soft);margin:0;font-size:13px}.header{z-index:20;min-height:44px;transition:background-color .2s, border-color .2s, box-shadow .2s, translate .25s var(--ease-out);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;margin:-12px -16px 0;padding:12px 16px 6px;display:flex;position:sticky;top:0}.header[data-scrolled=true]{border-bottom-color:var(--line);background-color:#0a2e57f0;box-shadow:0 6px 16px #04122459}@media (width<=1023px){.header[data-hidden=true]{box-shadow:none;translate:0 -100%}}.brand{color:inherit;flex-direction:column;gap:1px;text-decoration:none;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:5px;font-size:26px;font-weight:700;line-height:1}.brand-tagline{letter-spacing:2px;color:var(--ink-soft);font-size:9px}.header-actions{gap:2px;display:flex}.icon-button{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.icon-button:hover{color:var(--accent)}.icon-button:active{scale:.9}.icon-button svg *{transform-box:fill-box;transform-origin:50%;transition:rotate .5s var(--ease-swing), scale .3s var(--ease-swing)}.icon-button:hover .icon-frame{rotate:45deg;scale:.84}.icon-button:hover .icon-bolt{rotate:60deg}.sound-control{align-items:center;display:flex;position:relative}.sound-panel{display:none}@media (hover:hover) and (pointer:fine){.sound-panel{z-index:30;border:1.5px solid var(--line);background:var(--paper-deep);opacity:0;visibility:hidden;transition:opacity .18s, translate .25s var(--ease-swing), visibility 0s .25s;flex-direction:column;align-items:center;gap:6px;padding:12px 10px 8px;display:flex;position:absolute;top:100%;left:50%;translate:-50% -6px}.sound-panel:before{content:"";height:10px;position:absolute;inset:-10px 0 auto}.sound-control:hover .sound-panel,.sound-control:focus-within .sound-panel{opacity:1;visibility:visible;transition:opacity .18s, translate .25s var(--ease-swing);translate:-50%}}.sound-panel-value{letter-spacing:1px;color:var(--ink-soft);font-size:10px}.volume-slider{--fill:linear-gradient(var(--accent), var(--accent));appearance:none;background:var(--fill) 0 50% / calc(var(--level) * 100%) 3px no-repeat, repeating-linear-gradient(90deg, var(--ink-faint) 0 1px, transparent 1px 10%) 0 100% / 100% 6px no-repeat, linear-gradient(var(--ink-faint), var(--ink-faint)) 0 50% / 100% 1px no-repeat;cursor:pointer;width:100%;height:24px;margin:0}.volume-slider[data-vertical=true]{writing-mode:vertical-lr;background:var(--fill) 50% 100% / 3px calc(var(--level) * 100%) no-repeat, repeating-linear-gradient(0deg, var(--ink-faint) 0 1px, transparent 1px 10%) 0 0 / 6px 100% no-repeat, linear-gradient(var(--ink-faint), var(--ink-faint)) 50% 0 / 1px 100% no-repeat;direction:rtl;width:24px;height:110px}.volume-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);width:10px;height:18px}.volume-slider[data-vertical=true]::-webkit-slider-thumb{clip-path:polygon(0 0,70% 0,100% 50%,70% 100%,0 100%);width:18px;height:10px}.volume-slider::-moz-range-thumb{background:var(--accent);border:0;border-radius:0;width:10px;height:18px}.volume-slider:focus-visible{outline-offset:4px}.settings-volume{flex-direction:column;gap:6px;display:flex}.sound-wave{transition:opacity .2s, translate .3s var(--ease-swing)}.sound-wave[data-on=false]{opacity:.2}.icon-button:hover .sound-wave[data-on=true]{animation:.9s ease-in-out infinite wave-out}.icon-button:hover .sound-wave-far[data-on=true]{animation-delay:.15s}.progress{justify-content:space-between;align-items:center;display:flex}.progress-boxes{gap:6px;margin:0;padding:0;list-style:none;display:flex}.progress-box{justify-content:center;align-items:center;width:26px;height:26px;font-size:10px;font-weight:600;display:flex}.progress-box[data-state=done]{background:var(--accent);color:var(--paper)}.progress-box[data-state=current]{border:2px solid var(--ink);animation:1.6s ease-in-out infinite breathe}.progress-box[data-fresh=true]{animation:flip-in .45s var(--ease-swing) 1.2s backwards}.progress-box[data-state=todo]{border:1.5px dashed var(--ink-faint)}.sheet{animation:sheet-in .5s var(--ease-out) backwards;border:1.5px solid var(--ink);background:#0e3a6b99;flex-direction:column;gap:6px;margin:0;padding:12px 14px;display:flex;container-type:inline-size}.sheet-canvas{height:66.6667cqw;transition:height .5s var(--ease-out);justify-content:center;align-items:center;padding:8px;display:flex;position:relative}.sheet-art{pointer-events:none;position:absolute}.sheet-art-window{width:100%;animation:1.1s cubic-bezier(.37,0,.63,1) .15s backwards plot;position:absolute;inset:0 auto 0 0;overflow:hidden}.sheet-art-window:after{content:"";background:var(--accent);width:2px;box-shadow:0 0 10px 1px var(--accent);opacity:0;animation:1.1s linear .15s both plot-pen;position:absolute;top:0;bottom:0;right:0}.sheet-art img{width:var(--art-width);-webkit-user-select:none;user-select:none;height:100%;position:absolute;top:0;left:0}.stage[data-phase=reveal] .sheet-art{animation:.25s ease-out forwards art-out}.sheet-scale{animation:fade-up .35s var(--ease-out) .12s backwards;justify-content:center;align-items:center;padding:6% 3% 0;display:flex;position:absolute;inset:0}@keyframes art-out{to{opacity:0}}.sheet-readout{letter-spacing:1px;color:var(--accent);opacity:0;white-space:pre;font-size:10px;transition:opacity .2s;position:absolute;bottom:0;right:0}.sheet-canvas[data-tracking=true] .sheet-readout{opacity:.8;z-index:1}.sheet-canvas[data-tracking=true] .sheet-axis{opacity:.9;z-index:1;transition:none}.sheet-axis{pointer-events:none;--dash:repeating-linear-gradient(var(--dir), var(--ink-faint) 0 10px, transparent 10px 14px, var(--ink-faint) 14px 16px, transparent 16px 20px);position:absolute}.sheet-axis-v{--dir:to bottom;top:0;bottom:0;left:var(--cx,50%);transition:left .25s var(--ease-out), opacity .2s;background:var(--dash);opacity:.6;width:1px}.sheet-axis-h{--dir:to right;left:0;right:0;top:var(--cy,50%);transition:top .25s var(--ease-out), opacity .2s;background:var(--dash);opacity:.6;height:1px}.sheet-missing{background:var(--paper);border:1px dashed var(--ink-faint);letter-spacing:1.5px;color:var(--ink-soft);padding:6px 10px;font-size:12px;position:relative}.sheet-dimension{justify-content:center;align-items:center;height:24px;margin:0 12%;display:flex;position:relative}.sheet-dimension-line{background:var(--accent);height:1.2px;position:absolute;inset:50% 0 auto}.sheet-dimension-line:before,.sheet-dimension-line:after{content:"";border:4.5px solid #0000;position:absolute;top:-4px}.sheet-dimension-line:before{border-right:9px solid var(--accent);border-left:0;left:0}.sheet-dimension-line:after{border-left:9px solid var(--accent);border-right:0;right:0}.sheet-dimension:before,.sheet-dimension:after{content:"";background:var(--accent);width:1.2px;position:absolute;top:0;bottom:0}.sheet-dimension:before{left:0}.sheet-dimension:after{right:0}.sheet-dimension-label{background:var(--paper);color:var(--accent);padding:0 10px;font-size:13px;font-weight:600;position:relative}.sheet-dimension-label[data-revealed=true]{animation:pop .5s var(--ease-swing)}.sheet-caption{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding-top:8px;display:flex}.sheet-caption h1{font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;margin:0;font-size:28px;font-weight:700;line-height:1.1}.sheet-caption span{max-width:55%;color:var(--ink-soft);text-align:right;flex:0 auto;font-size:12px}.guess{flex-direction:column;gap:10px;display:flex}.guess-field{border:1.5px solid var(--ink);background:#0e3a6bcc;align-items:center;gap:12px;height:60px;padding:0 16px;transition:border-color .2s;display:flex;position:relative}.guess-field:before,.guess-field:after{content:"";border:2px solid var(--accent);opacity:0;width:12px;height:12px;transition:opacity .2s, translate .35s var(--ease-swing);pointer-events:none;position:absolute}.guess-field:before{border-bottom:0;border-right:0;top:-7px;left:-7px;translate:-6px -6px}.guess-field:after{border-top:0;border-left:0;bottom:-7px;right:-7px;translate:6px 6px}.guess-field:focus-within:before,.guess-field:focus-within:after{opacity:1;translate:0}.guess-field:focus-within{border-color:var(--accent)}.guess-field[data-invalid=true]{border-color:var(--danger)}.guess-field input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:28px;font-weight:500}.guess-field input::placeholder{color:var(--ink-faint)}.guess-unit{color:var(--accent);white-space:nowrap;animation:pop .35s var(--ease-swing);font-size:20px;font-weight:600}.guess-error{min-height:1.5em;color:var(--danger);margin:-4px 0 0;font-size:13px}.unitbar{border:1.5px solid var(--ink-faint);background-image:repeating-linear-gradient(90deg, var(--ink-faint) 0 1px, transparent 1px 8px), repeating-linear-gradient(90deg, var(--ink-soft) 0 1px, transparent 1px 40px);background-position:0 100%,0 100%;background-repeat:no-repeat;background-size:100% 6px,100% 11px;height:52px;display:flex;position:relative}.unitbar-card{background-clip:content-box;background-color:var(--accent);transition:transform .42s var(--ease-swing);padding:0 3px;position:absolute;top:3px;bottom:3px;left:0}.unitbar-option{cursor:pointer;letter-spacing:1px;flex:1;justify-content:center;align-items:center;font-size:16px;font-weight:500;transition:color .2s;display:flex;position:relative}.unitbar-option[data-active=true]{color:var(--paper);font-weight:600}.unitbar-option input{opacity:0;pointer-events:none;position:absolute}.unitbar-option:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:-6px}.unitbar-option:not([data-active=true]):hover{color:var(--accent)}.button-primary,.button-secondary{isolation:isolate;height:56px;clip-path:var(--chamfer);font-family:var(--font-display);letter-spacing:3px;cursor:pointer;width:100%;transition:scale .12s var(--ease-out), filter .2s;border:0;justify-content:center;align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex;position:relative;overflow:hidden}.button-primary{background:var(--accent);color:var(--paper)}.button-secondary{--cut:9px;background:var(--accent);color:var(--accent)}.button-secondary:before{content:"";z-index:-1;background:var(--paper);clip-path:var(--chamfer);transition:background-color .2s;position:absolute;inset:1.5px}.button-primary:after,.button-secondary:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff59,#0000);width:40%;position:absolute;inset:0 auto 0 0;translate:-120%}.button-primary:hover:not(:disabled):after,.button-secondary:hover:after{transition:translate .6s var(--ease-out);translate:260%}.button-secondary:hover:before{background:#123f73}.button-primary svg,.button-secondary svg{transition:translate .3s var(--ease-swing)}.button-primary:hover:not(:disabled) svg,.button-secondary:hover svg{translate:5px}.button-primary:active:not(:disabled),.button-secondary:active{scale:.97}.button-primary[data-ready=true]:not(:hover,:disabled){animation:1.8s ease-in-out infinite ready}.button-primary:disabled{opacity:.6;cursor:progress}.stage{flex-direction:column;gap:16px;display:flex}.stage[data-phase=reveal][data-settled=false]{cursor:pointer}.stage[data-settled=true] *,.stage[data-settled=true] :before,.stage[data-settled=true] :after{animation-duration:1ms!important;animation-delay:0s!important}.stage[data-phase=reveal] .sheet-canvas{animation:.26s ease-out 1.3s thud}.reveal{flex-direction:column;gap:12px;display:flex}.scale{fill:none;width:100%;height:auto;stroke:var(--ink);stroke-width:1.5px;stroke-linejoin:round;display:block;overflow:visible}.scale-axis{stroke:var(--ink-faint);stroke-width:1px;stroke-dasharray:10 4 2 4;opacity:.6}.scale-tick{stroke:var(--ink-soft);stroke-width:1px}.scale-plate,.scale-weight{fill:var(--paper-deep)}.scale-weight{stroke:var(--accent)}.scale-pivot{fill:var(--paper);stroke:var(--accent);stroke-width:2px}.scale-beam{transform-box:view-box;transform-origin:180px 44px;rotate:var(--tilt);animation:1.4s ease-out backwards swing}.scale-pan{transform-box:fill-box;transform-origin:50% 0;rotate:calc(var(--tilt) * -1);animation:1.4s ease-out backwards counter-swing}.reveal-numbers{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin:0;display:grid}.reveal-numbers>div{flex-direction:column;gap:2px;min-width:0;display:flex}.reveal-numbers dd{overflow-wrap:anywhere;margin:0;font-size:22px;font-weight:600;line-height:1.2}.reveal-actual{color:var(--accent)}.reveal-numbers dd[data-long=true]{font-size:17px}.reveal-score dd{align-items:baseline;gap:4px;display:flex}.reveal-score strong{font-family:var(--font-display);color:var(--accent);font-variant-numeric:tabular-nums;font-size:42px;font-weight:700;line-height:.9}.reveal-score dd span{color:var(--ink-soft);font-size:13px;font-weight:400}.reveal-near{letter-spacing:1px;color:var(--accent);animation:fade-up .4s var(--ease-out) 1.45s backwards;margin-left:auto;font-size:12px;font-weight:600}.reveal-next{animation:fade-up .4s var(--ease-out) 1.3s backwards}.odometer{flex-wrap:wrap;align-items:flex-start;column-gap:.3em;line-height:1.25em;display:inline-flex}.odometer-group{white-space:pre;display:inline-flex}.odometer-wheel{height:1.25em;overflow:hidden}.odometer-strip{translate:0 calc(-1.25em * (10 + var(--digit)));animation:roll calc(.7s + var(--order) * 90ms) cubic-bezier(.2, .6, .3, 1) .15s backwards;flex-direction:column;display:flex}.stamp{z-index:2;pointer-events:none;animation:.38s cubic-bezier(.5,0,.75,0) 1.1s backwards stamp;position:absolute;top:10%;right:4%;rotate:-12deg}.stamp-ink{font-family:var(--font-display);letter-spacing:3px;text-align:center;filter:url(#ink);opacity:.92;background:#0e3a6bb3;border:3px double;padding:5px 12px 3px;font-size:24px;font-weight:700;line-height:1.1;display:block}.stamp[data-tier=certified],.stamp[data-tier=approved]{color:var(--accent)}.stamp[data-tier=certified] .stamp-ink{background:var(--accent);color:var(--paper);border-color:var(--paper);outline:2px solid var(--accent)}.stamp[data-tier=tolerance]{color:var(--ink);max-width:9em}.stamp[data-tier=tolerance] .stamp-ink{font-size:18px}.stamp[data-tier=revise]{color:var(--warn)}.stamp[data-tier=rejected]{color:var(--danger)}.stamp-spark{background:var(--accent);opacity:0;width:2px;height:10px;animation:spark .6s var(--ease-out) 1.4s;margin:-5px 0 0 -1px;position:absolute;top:50%;left:50%}.stamp[data-tier=certified] .stamp-spark{height:14px}.finished-next{animation:fade-up .4s var(--ease-out) backwards;display:flex}.finished-next .button-primary{text-decoration:none}.play[data-layout=phone] .finished-next{z-index:10;background:linear-gradient(transparent, var(--paper) 20px);margin:-8px -16px;padding:16px 16px 12px;position:sticky;bottom:0}.finished-share-outline.button-primary{--cut:9px;color:var(--accent)}.finished-share-outline.button-primary:before{content:"";z-index:-1;background:var(--paper);clip-path:var(--chamfer);position:absolute;inset:1.5px}.finished-head .label{white-space:nowrap}.finished-head{border-bottom:1px solid var(--line);animation:fade-up .4s var(--ease-out) backwards;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:6px;display:flex}.finished-title{font-family:var(--font-display);white-space:nowrap;letter-spacing:3px;margin:0;font-size:26px;line-height:1.1}.finished-dial{flex-direction:column;align-items:center;display:flex;position:relative}.finished-readout{align-items:center;gap:16px;margin-top:-18px;display:flex}.finished-dial .stamp{animation-delay:1.7s;position:relative;top:auto;right:auto}.finished-dial .stamp-ink{letter-spacing:2px;font-size:18px}.finished-dial .stamp[data-tier=tolerance] .stamp-ink{font-size:14px}.finished-dial .stamp-spark{animation-delay:2s}.finished-total{align-items:baseline;gap:6px;margin:0;display:flex}.finished-total strong{font-family:var(--font-display);color:var(--accent);font-variant-numeric:tabular-nums;font-size:64px;font-weight:700;line-height:1}.finished-total span{color:var(--ink-soft)}.gauge{fill:none;width:100%;max-width:340px;display:block;overflow:visible}.gauge-track{stroke:var(--ink);stroke-width:1.5px}.gauge-fill{stroke:var(--accent);stroke-width:5px;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--fill));animation:1.4s cubic-bezier(.3,.7,.3,1) .2s backwards gauge-fill}.gauge-zone{stroke-width:4px;opacity:.55}.gauge-zone[data-zone=rejected]{stroke:var(--danger)}.gauge-zone[data-zone=revise]{stroke:var(--warn)}.gauge-zone[data-zone=tolerance]{stroke:var(--ink-soft)}.gauge-zone[data-zone=approved]{stroke:var(--accent)}.gauge-tick{stroke:var(--ink-soft);stroke-width:1px}.gauge-tick[data-major=true]{stroke:var(--ink);stroke-width:1.5px}.gauge-label{fill:var(--ink-soft);font-family:var(--font-mono);text-anchor:middle;font-size:11px}.gauge-needle{fill:var(--accent);transform-box:view-box;transform-origin:160px 170px;rotate:var(--needle);filter:drop-shadow(0 0 4px #ffc85780);animation:1.6s cubic-bezier(.3,.7,.3,1) .2s backwards needle}.gauge-hub{fill:var(--paper);stroke:var(--accent);stroke-width:2px}.gauge-hub-dot{fill:var(--accent)}.finished-stats{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px;margin:0;display:grid}.plate{--cut:8px;isolation:isolate;background:var(--ink-faint);clip-path:var(--chamfer);animation:pop .45s var(--ease-swing) 1.9s backwards;padding:8px 12px;position:relative}.plate+.plate{animation-delay:2s}.plate:before{content:"";z-index:-1;background:var(--paper);clip-path:var(--chamfer);position:absolute;inset:1.5px}.plate dd{font-family:var(--font-display);letter-spacing:1.5px;margin:0;font-size:22px;font-weight:700}.finished-dist{animation:fade-up .35s var(--ease-out) 2s backwards;flex-direction:column;gap:6px;margin:0;display:flex}.finished-dist .histogram-bar{transform-box:fill-box;transform-origin:bottom;animation:bar-rise .42s var(--ease-out) calc(2.1s + var(--i) * 40ms) backwards}.finished-dist .histogram-bar[data-you=true]{animation:bar-rise .42s var(--ease-out) calc(2.1s + var(--i) * 40ms) backwards, bar-you .4s ease-out 2.65s backwards}.finished-dist .histogram-you{animation:fade-up .3s var(--ease-out) 2.75s backwards}@keyframes bar-rise{0%{scale:1 0}}@keyframes bar-you{0%{fill:var(--ink-faint)}}.finished-rows{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.finished-row{border-bottom:1px solid var(--line);animation:fade-up .35s var(--ease-out) calc(2.7s + var(--row) * 90ms) backwards;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 0;display:grid}.finished-thumb{border:1px dashed var(--ink-faint);height:38px;position:relative}.finished-thumb img{object-fit:contain;width:calc(100% - 4px);height:calc(100% - 4px);position:absolute;inset:2px}.finished-item{flex-direction:column;min-width:0;display:flex}.finished-name{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:700;overflow:hidden}.finished-masses{color:var(--ink-soft);font-size:12px}.finished-masses b{color:var(--accent);font-weight:600}.finished-score{text-align:center;min-width:40px;font-family:var(--font-display);border:2px solid;padding:2px 6px;font-size:18px;font-weight:700}.finished-score[data-tier=certified],.sheet-list-score[data-tier=certified]{background:var(--accent);border-color:var(--accent);color:var(--paper)}.finished-score[data-tier=approved],.sheet-list-score[data-tier=approved]{color:var(--accent)}.finished-score[data-tier=tolerance],.sheet-list-score[data-tier=tolerance]{color:var(--ink)}.finished-score[data-tier=revise],.sheet-list-score[data-tier=revise]{color:var(--warn)}.finished-score[data-tier=rejected],.sheet-list-score[data-tier=rejected]{color:var(--danger)}.finished-share{animation:fade-up .4s var(--ease-out) .6s backwards}.finished-share-label{animation:pop .3s var(--ease-swing)}.career{animation:fade-up .4s var(--ease-out) 2.1s backwards;flex-direction:column;gap:6px;display:flex}.career-title{align-items:baseline;gap:10px;display:flex}.career-title strong{font-family:var(--font-display);letter-spacing:2px;font-size:22px}.career-promoted{border:2px solid var(--accent);color:var(--accent);font-family:var(--font-display);letter-spacing:2px;filter:url(#ink);margin-left:auto;padding:1px 8px;font-weight:700;animation:.38s cubic-bezier(.5,0,.75,0) 2.8s backwards stamp;rotate:-4deg}.career-bar{border:1.5px solid var(--ink-faint);background:repeating-linear-gradient(90deg, transparent 0 calc(10% - 1px), var(--ink-faint) calc(10% - 1px) 10%);height:12px;position:relative}.career-bar span{width:calc((100% - 4px) * var(--to));background:var(--accent);animation:bar-fill 1.1s var(--ease-out) 2.3s backwards;position:absolute;inset:2px auto 2px 2px;box-shadow:0 0 8px #ffc85780}.career-next{letter-spacing:1px;color:var(--ink-soft);font-size:12px}.career-patents{--cut:7px;height:40px;font-size:15px}.certificate{--cut:10px;isolation:isolate;background:var(--accent);clip-path:var(--chamfer);flex-direction:column;gap:2px;padding:12px 14px;display:flex;position:relative}.certificate:before{content:"";z-index:-1;background:repeating-linear-gradient(45deg, transparent 0 6px, #ffc8570d 6px 7px), var(--paper-deep);clip-path:var(--chamfer);position:absolute;inset:1.5px}.certificate[data-earned=false]{background:var(--ink-faint);opacity:.55}.certificate[data-fresh=true]{animation:cert-in .6s var(--ease-swing) calc(2.6s + var(--cert) * .25s) backwards;margin-top:8px}.certificate strong{font-family:var(--font-display);letter-spacing:1.5px;text-transform:uppercase;font-size:20px}.certificate[data-earned=true] strong{color:var(--accent)}.certificate-banner{letter-spacing:2px;color:var(--accent);font-size:11px;font-weight:600}.certificate-no,.certificate-how{color:var(--ink-soft);font-size:11px}.certificate-how{margin-right:84px}.certificate-seal{letter-spacing:1px;color:var(--accent);border:1.5px solid;padding:1px 6px;font-size:10px;position:absolute;bottom:10px;right:12px;rotate:-8deg}.certificate[data-earned=false] .certificate-seal{color:var(--ink-faint)}.patents{scrollbar-width:thin;scrollbar-color:var(--ink-faint) transparent;flex-direction:column;gap:8px;max-height:60dvh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.countdown{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.countdown-time{letter-spacing:3px;font-variant-numeric:tabular-nums;font-size:34px;font-weight:600}.flag-button{width:32px;height:32px;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;transition:color .2s;display:inline-flex}.flag-button:hover,.flag-button[data-sent=true]{color:var(--accent)}.flag-cloth{transform-box:fill-box;transform-origin:0}.flag-button:hover .flag-cloth{animation:.7s ease-in-out infinite wave}.reveal-actual-label{align-items:center;gap:2px;display:flex}.reveal-actual-label .flag-button{width:24px;height:18px;animation:fade-up .3s var(--ease-out)}.report{flex-direction:column;gap:12px;display:flex}.report p{margin:0}.report textarea{border:1.5px solid var(--ink-faint);background:var(--paper-deep);width:100%;color:var(--ink);font:inherit;resize:vertical;padding:10px 12px;font-size:14px}.report textarea:focus{border-color:var(--accent);outline:none}.footer{color:var(--ink-faint);flex-wrap:wrap;justify-content:center;gap:4px 12px;margin-top:auto;padding-top:24px;font-size:11px;display:flex}.footer-link{color:var(--ink-soft);font-size:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.footer-link:hover{color:var(--accent)}.about{max-width:440px;color:var(--ink-faint);margin:0 auto;padding:40px 16px 48px;font-size:12px;line-height:1.6}.about h1{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);margin:0 0 8px;font-size:15px;font-weight:600}.about h2{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);margin:14px 0 4px;font-size:12px;font-weight:600}.about p{margin:0 0 8px}.about ul{margin:0 0 14px;padding-left:18px}.about li{margin-bottom:2px}.about a{color:var(--ink-soft);text-underline-offset:3px}.about a:hover{color:var(--accent)}.status{text-align:center;color:var(--ink-soft);flex-direction:column;gap:12px;margin:48px 0;display:flex}.modal{border:1.5px solid var(--ink);background:var(--paper);width:min(400px,100vw - 32px);color:var(--ink);padding:0}.modal::backdrop{background:#041224bf}.modal-body{flex-direction:column;gap:16px;padding:16px 20px 20px;display:flex}.modal-head{justify-content:space-between;align-items:center;margin-right:-12px;display:flex}.modal-head h2{font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;margin:0;font-size:24px}.steps{flex-direction:column;gap:8px;margin:0;padding-left:1.4em;display:flex}.steps li::marker{color:var(--accent);font-weight:600}.choice{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.choice legend{margin-bottom:8px}.choice-row{flex-direction:row}.choice-row .choice-option{flex:1;justify-content:center}.choice-option{border:1.5px solid var(--ink-faint);cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:0 12px;display:flex}.choice-option:has(input:checked){border-color:var(--accent);color:var(--accent)}.choice-option input{accent-color:var(--accent)}@keyframes pop{0%{opacity:0;transform:scale(.6)}}@keyframes drift{to{translate:96px 96px}}@keyframes breathe{50%{opacity:.45}}@keyframes flip-in{0%{transform:perspective(200px)rotateX(90deg)}}@keyframes sheet-in{0%{opacity:0;translate:32px;rotate:1.5deg}}@keyframes plot{0%{width:0}}@keyframes plot-pen{0%,96%{opacity:1}}@keyframes ready{50%{filter:brightness(1.12);scale:1.012}}@keyframes fade-up{0%{opacity:0;translate:0 8px}}@keyframes swing{0%{rotate:0deg}20%{rotate:calc(var(--tilt) * 1.3 + var(--kick))}42%{rotate:calc(var(--tilt) * .75 - var(--kick) * .6)}62%{rotate:calc(var(--tilt) * 1.1 + var(--kick) * .3)}82%{rotate:calc(var(--tilt) * .97 - var(--kick) * .1)}}@keyframes counter-swing{0%{rotate:0deg}20%{rotate:calc((var(--tilt) * 1.3 + var(--kick)) * -1)}42%{rotate:calc((var(--tilt) * .75 - var(--kick) * .6) * -1)}62%{rotate:calc((var(--tilt) * 1.1 + var(--kick) * .3) * -1)}82%{rotate:calc((var(--tilt) * .97 - var(--kick) * .1) * -1)}}@keyframes roll{0%{translate:0}}@keyframes stamp{0%{opacity:0;rotate:-4deg;scale:2.6}}@keyframes thud{30%{translate:0 2px}60%{translate:0 -1px}}@keyframes spark{0%{opacity:1;transform:rotate(var(--angle)) translateY(-30px) scaleY(.4)}to{opacity:0;transform:rotate(var(--angle)) translateY(-70px) scaleY(1)}}@keyframes gauge-fill{0%{stroke-dashoffset:1px}}@keyframes needle{0%{rotate:-90deg}70%{rotate:calc(var(--needle) + 5deg)}86%{rotate:calc(var(--needle) - 1.5deg)}}@keyframes wave{50%{transform:skewY(-8deg)scaleX(.9)}}@keyframes bar-fill{0%{width:calc((100% - 4px) * var(--from))}}@keyframes cert-in{0%{opacity:0;rotate:-3deg;scale:.7}}@keyframes wave-out{50%{opacity:.5;translate:1.5px}}.streak{height:44px;color:var(--ink-faint);cursor:default;align-items:center;gap:3px;padding:0 6px;display:flex}.streak[data-lit=true]{color:var(--accent)}.streak-days{font-family:var(--font-display);font-size:20px;font-weight:700;line-height:1}.streak-flame{transform-box:fill-box;transform-origin:50% 100%}.streak:hover .streak-flame{animation:.6s ease-in-out flicker}.streak[data-flare=true] svg{animation:flare 1.1s var(--ease-swing)}@keyframes flicker{30%{scale:1.06 .94}60%{scale:.95 1.07}}@keyframes flare{30%{filter:drop-shadow(0 0 6px var(--accent));scale:1.45}}.icon-bars{transform-box:fill-box;transform-origin:50% 100%}.icon-button:hover .icon-bars{animation:bars-up .5s var(--ease-swing)}@keyframes bars-up{0%{scale:1 .3}}.brand{white-space:nowrap;flex-shrink:0}@media (width<=400px){.header-actions{gap:0}.header-actions .icon-button{width:34px}.streak{padding:0 3px}}.guess-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.system-switch{border:1px solid var(--line);display:flex}.system-switch button{color:var(--ink-faint);letter-spacing:1.5px;cursor:pointer;background:0 0;border:0;padding:2px 8px;font-size:10px}.system-switch button:hover{color:var(--ink)}.system-switch button[aria-checked=true]{background:var(--accent);color:var(--paper);cursor:default;font-weight:600}.play{flex-direction:column;gap:16px;display:flex}@media (width>=1024px){.app{max-width:1180px;padding:12px 32px 24px}.header{margin:-12px -32px 0;padding:12px 32px 6px}}.play[data-layout=desk]{grid-template-columns:250px clamp(340px,150dvh - 667.5px,480px) 250px;justify-content:center;align-items:start;gap:40px;display:grid}.play[data-layout=desk]:has(>.finished){grid-template-columns:250px 480px 250px}.rail{flex-direction:column;gap:14px;padding-top:4px;display:flex;position:sticky;top:76px}.play:not(:has(>.finished)) .rail .career{animation-delay:.15s}.play:not(:has(>.finished)) .rail .career-bar span{animation-delay:.4s}.play:not(:has(>.finished)) .rail .career-promoted{animation-delay:.9s}.play:not(:has(>.finished)) .rail .certificate{animation-delay:calc(.6s + var(--cert) * .25s)}.play[data-layout=desk] .guess{grid-template-columns:minmax(0,1fr) 180px;gap:10px 12px;display:grid}.play[data-layout=desk] .guess>.guess-label,.play[data-layout=desk] .guess>.unitbar,.play[data-layout=desk] .guess>.guess-error{grid-column:1/-1}.play[data-layout=desk] .guess>.guess-field{grid-area:2/1}.play[data-layout=desk] .guess>.button-primary{grid-area:2/2;height:auto}.sheet-list ol{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sheet-list li{border:1px solid var(--line);grid-template-columns:20px 52px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:48px;padding:6px 8px;font-size:12px;display:grid}.sheet-list li[data-now=true]{border:1.5px solid var(--ink)}.sheet-list li[data-state=todo]{color:var(--ink-faint);border-style:dashed}.sheet-list-no{color:var(--ink-faint);font-size:10px}.sheet-list-thumb{justify-content:center;align-items:center;height:34px;display:flex}.sheet-list-thumb img{max-width:100%;max-height:100%}.sheet-list-item{flex-direction:column;min-width:0;display:flex}.sheet-list-name{text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:1px;overflow:hidden}.sheet-list-masses{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.sheet-list-masses b{color:var(--accent);font-weight:600}.sheet-list-score{text-align:center;border:1.5px solid;min-width:30px;padding:0 4px;font-weight:600}.sheet-list .flag-button{width:22px;height:22px;margin-left:-6px}.sheet-list li[data-fresh=true] .sheet-list-score,.sheet-list li[data-fresh=true] .sheet-list-masses{animation:flip-in .45s var(--ease-swing) 1.2s backwards}.results-head{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.results-head div{flex-direction:column;display:flex}.results-head dd{font-family:var(--font-display);letter-spacing:1px;margin:0;font-size:22px;font-weight:700}.results-you{color:var(--accent)}.histogram{width:100%;overflow:visible}.histogram-hit{fill:#0000}.histogram-bar{fill:var(--ink-faint);transition:fill .15s}.histogram-bar[data-hover=true]{fill:var(--ink)}.histogram-bar[data-you=true]{fill:var(--accent)}.histogram-grid{stroke:var(--line);stroke-width:.5px;stroke-dasharray:2 4;opacity:.5}.histogram-axis{stroke:var(--ink-soft);stroke-width:1px}.histogram-avg{stroke:var(--ink);stroke-width:1px;stroke-dasharray:4 3}.histogram-note,.histogram-tick{font-family:var(--font-mono);letter-spacing:1px;fill:var(--ink-soft);font-size:10px}.histogram-you{fill:var(--accent);font-weight:600}.histogram-readout{min-height:1.5em;color:var(--ink-soft);margin:-8px 0 0;font-size:12px}.skeleton{animation:.2s ease-out .3s both skeleton-in}.skeleton-desk{flex-direction:column;gap:16px;display:flex}.skeleton-box{border:1.5px dashed var(--line);display:block;position:relative;overflow:hidden}.skeleton-box:after{content:"";background:linear-gradient(90deg,#0000,#eaf2ff1a,#0000);animation:1.4s ease-in-out infinite sweep;position:absolute;inset:0;translate:-100%}.skeleton-line{height:26px}.skeleton-sheet{aspect-ratio:3/2.5}.skeleton-field{height:60px}.skeleton-short{height:52px}.skeleton-row{height:48px}@keyframes skeleton-in{0%{opacity:0}}@keyframes sweep{to{translate:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.archive-link{border:1.5px dashed var(--line);color:var(--ink-soft);letter-spacing:2px;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 10px;padding:12px;font-size:12px;text-decoration:none;transition:color .15s,border-color .15s;display:flex}.archive-link b{font-family:var(--font-display);letter-spacing:3px;color:var(--ink);font-size:18px;transition:color .15s}.archive-link svg{transition:translate .3s var(--ease-swing)}.archive-link:hover,.archive-link:focus-visible{border-color:var(--accent);color:var(--accent);border-style:solid}.archive-link:hover b,.archive-link:focus-visible b{color:var(--accent)}.archive-link:hover svg{translate:4px}.archive-button[aria-current=page]{color:var(--accent)}.archive-button-page{transition:translate .25s var(--ease-swing)}.archive-button:hover .archive-button-page{translate:0 -1.5px}.archive-ribbon{border:1.5px solid var(--accent);width:100%;min-height:44px;animation:fade-up .4s var(--ease-out) backwards;background:repeating-linear-gradient(-45deg,#ffc85729 0 8px,#ffc8570d 8px 16px);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding-left:14px;display:grid}.archive-ribbon-tag{font-family:var(--font-display);letter-spacing:3px;color:var(--accent);font-size:18px;font-weight:700}.archive-ribbon-day{letter-spacing:1.5px;min-width:0;font-size:12px;line-height:1.3}.archive-ribbon-day small{letter-spacing:1px;color:var(--ink-soft);font-size:10px;display:block}.archive-ribbon-back{border-left:1.5px solid var(--accent);color:var(--accent);letter-spacing:1.5px;background:#0e3a6bd9;align-self:stretch;align-items:center;gap:6px;padding:0 14px;font-size:11px;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.archive-ribbon-back:hover{background:var(--accent);color:var(--paper)}@media (width>=1024px){.app:has(>.archive-ribbon){--sheet-width:clamp(340px, calc((100dvh - 505px) * 1.5), 480px)}.app:has(>.archive-ribbon) .play[data-layout=desk]:not(:has(>.finished)){grid-template-columns:250px var(--sheet-width) 250px}.app>.archive-ribbon{max-width:calc(250px + 40px + var(--sheet-width) + 40px + 250px);margin:0 auto}.app:has(>.archive-ribbon):has(.finished)>.archive-ribbon{max-width:1060px}}@media (width<=640px){.archive-ribbon{gap:10px;min-height:36px;padding-left:10px}.archive-ribbon-tag{letter-spacing:1.5px;font-size:14px}.archive-ribbon-back{padding:0 11px}.archive-ribbon-day{letter-spacing:1px;font-size:11px}.archive-ribbon-day small{letter-spacing:.5px;font-size:9px}.archive-ribbon-long,.archive-ribbon-back span{display:none}}
