:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1a1024;--card:#2a1c38;--ink:#f5e6c8;--dim:#b9a98f;--gold:#f2c94c;--red:#eb5757;--green:#6fcf97;--blue:#56ccf2}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.45 system-ui,-apple-system,sans-serif}body{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}main{max-width:480px;padding:12px 16px calc(24px + env(safe-area-inset-bottom));margin:0 auto}header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}h1{margin:4px 0;font-size:22px}h1 span{color:var(--dim);font-weight:400}h2{flex:1;margin:0;font-size:16px}.pos{gap:4px;display:flex}.pos button{color:var(--dim);font:inherit;background:0 0;border:1px solid #4a3a5c;border-radius:999px;padding:6px 12px;font-size:14px}.pos button.on{background:var(--gold);color:#2a1a00;border-color:var(--gold);font-weight:700}.card{background:var(--card);border-radius:16px;margin-top:12px;padding:16px}.small{color:var(--dim);font-size:13px}.big{background:var(--gold);color:#2a1a00;border:0;border-radius:999px;width:100%;padding:16px;font:700 20px system-ui,sans-serif}.status-row{align-items:center;gap:12px;margin-top:12px;display:flex}#gauge{flex:none;width:96px;height:96px}#gauge .track{fill:none;stroke:#3a2c4a;stroke-width:9px}#gauge .min{fill:none;stroke:#6a5a7c;stroke-width:9px;stroke-dasharray:1.5 3}#gauge .arc{fill:none;stroke:var(--blue);stroke-width:9px;stroke-linecap:round}#gauge.valid .arc{stroke:var(--green)}#gauge text{fill:var(--ink);text-anchor:middle;font:700 18px system-ui,sans-serif}.status{flex:1;min-width:0}#state{font-size:22px;font-weight:700}#state.ready{color:var(--green)}.grade{border-radius:999px;margin-top:4px;padding:2px 10px;font-size:14px;font-weight:700;display:inline-block}.grade:empty{display:none}.grade.too-soft,.grade.fail{background:var(--red);color:#fff}.grade.soft{color:#2a1a00;background:#f2994a}.grade.good{background:var(--green);color:#0b2a17}.grade.strong{background:var(--gold);color:#2a1a00}.result{color:var(--gold);min-height:1.4em;margin-top:4px;font-size:18px;font-weight:700}#wheel{aspect-ratio:1;touch-action:none;width:100%;margin-top:8px;display:block}.raw{color:var(--dim);text-align:center;font:12px ui-monospace,monospace}details{background:var(--card);border-radius:12px;margin-top:12px;padding:10px 14px}summary{font-weight:700}details label{margin-top:10px;font-size:14px;display:block}details input[type=range]{width:100%;display:block}details label.check{align-items:center;gap:8px;display:flex}.small-btn{color:var(--ink);font:inherit;background:0 0;border:1px solid #4a3a5c;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:13px}.log-head{align-items:center;gap:8px;margin-top:16px;display:flex}.log-head .small-btn{margin-top:0}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:6px;font-size:13px}th,td{text-align:left;border-bottom:1px solid #3a2c4a;padding:4px}th{color:var(--dim);font-weight:600}.steps{margin:0 0 8px;padding-left:20px}.steps li{margin:6px 0}.axes-row{align-items:center;gap:10px;margin-top:12px;display:flex}#axes{flex:none;width:132px;height:132px}#axes .guide{fill:none;stroke:#4a3a5c;stroke-width:3px;stroke-dasharray:4 4}#axes .guide-head{fill:#4a3a5c}#axes .body{fill:#3a2c4a;stroke:var(--ink);stroke-width:2px}#axes .screen{fill:#1a1024}#axes .ax{stroke-width:3px}#axes .ax.x,#axes .head.x{stroke:var(--red);fill:var(--red)}#axes .ax.y,#axes .head.y{stroke:var(--green);fill:var(--green)}#axes .zring{fill:none;stroke:var(--blue);stroke-width:2.5px}#axes .zdot{fill:var(--blue)}#axes .lbl{text-anchor:middle;font:700 11px system-ui,sans-serif}#axes .lbl.x{fill:var(--red)}#axes .lbl.y{fill:var(--green)}#axes .lbl.z{fill:var(--blue)}b.x{color:var(--red)}b.y{color:var(--green)}b.z{color:var(--blue)}.axes-table{flex:1;margin:0;font-size:15px}.axes-table td:nth-child(2),.axes-table td:nth-child(3),.axes-table th:nth-child(2),.axes-table th:nth-child(3){text-align:right}.axes-table tr.ok td:last-child{color:var(--green);font-weight:700}.axes-table tr.warn td:last-child{color:#f2994a;font-weight:700}.status{min-height:92px;margin-top:8px}.hint{color:#f2994a;margin-top:4px;font-size:14px}.hint:empty{display:none}#wheel{width:78%;margin:4px auto 0}.pad-space{height:150px}.pad{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));border:3px dashed var(--gold);width:min(448px,100% - 32px);height:120px;color:var(--gold);touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:#2a1c38;border-radius:24px;font:800 22px system-ui,sans-serif;position:fixed;transform:translate(-50%)}.pad.down{background:var(--gold);color:#2a1a00;border-style:solid}
