body.tool-page{padding-block:0 120px}.hero{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;padding-block:28px 22px;display:flex}.hero h1{font-family:var(--f-display);letter-spacing:.03em;font-size:clamp(26px,4.4vw,38px);font-weight:400;line-height:1.25}.hero p{color:var(--muted);max-width:62ch;margin:6px 0 0;font-size:14px}.staffmark{width:120px;height:26px;color:var(--brass);flex:none;display:block}.inapp{background:var(--danger-soft);color:var(--danger);border-radius:10px;margin:16px 0 0;padding:12px 16px;font-size:14px;font-weight:500}.step{border-bottom:1px solid var(--line);grid-template-columns:64px minmax(0,1fr);gap:8px 20px;padding-block:30px;display:grid}.num{font-family:var(--f-display);color:var(--brass);font-size:34px;line-height:1}.step h2{margin-bottom:4px;font-size:20px;font-weight:700}.lead{color:var(--muted);max-width:68ch;margin:0 0 16px}.body{min-width:0}@media (width<=640px){.step{grid-template-columns:1fr}.num{font-size:26px}}.srcrow{margin-bottom:14px}.srctabs{border:1px solid var(--line);border-radius:10px;margin-bottom:14px;display:inline-flex;overflow:hidden}.srctabs button{background:var(--surface);cursor:pointer;border:none;border-right:1px solid var(--line);padding:8px 16px;font-size:14px;font-weight:500}.srctabs button:last-child{border-right:none}.srctabs button[aria-selected=true]{background:var(--ink);color:var(--bg)}.drop{border:2px dashed var(--grid-3);background:var(--surface);cursor:pointer;border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px 20px;padding:20px;transition:border-color .15s,background .15s;display:flex;position:relative}.drop:hover,.drop.over{border-color:var(--brass);background:var(--brass-soft)}.drop input{opacity:0;width:1px;height:1px;position:absolute}.drop strong{font-size:16px}.drop .hint{color:var(--muted);font-size:13px}.drop .pick{margin-left:auto}.rec{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:16px;padding:20px;display:grid}.recrow{flex-wrap:wrap;align-items:center;gap:14px 20px;display:flex}.recbtn{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;height:48px;padding:0 22px;font-size:15px;font-weight:700;display:inline-flex}.recbtn .dot{background:#fff;border-radius:50%;width:12px;height:12px}.recbtn.on .dot{border-radius:2px}.recbtn:disabled{opacity:.5;cursor:wait}.meter{background:var(--surface-2);border-radius:5px;flex:160px;max-width:320px;height:10px;overflow:hidden}.meter i{background:var(--ok);width:0;height:100%;transition:width 50ms linear;display:block}.meter.clip i{background:var(--danger)}.live{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.livenote{font-family:var(--f-display);min-width:4.5em;font-size:28px;line-height:1}.livecents{color:var(--muted);font-size:13px}.recstate{font-size:14px;font-weight:700}.recstate.count{color:var(--brass)}.recstate.live-rec{color:var(--danger)}.rechint{color:var(--muted);max-width:72ch;margin:0;font-size:13px}.current{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:14px;display:flex}.progress{background:var(--surface-2);border-radius:2px;height:4px;margin-top:12px;overflow:hidden}.progress i{background:var(--brass);width:0;height:100%;transition:width .1s;display:block}details.tips{margin-top:14px;font-size:14px}details.tips summary{cursor:pointer;color:var(--brass);font-weight:500}details.tips ul{color:var(--muted);max-width:70ch;margin:8px 0 0;padding-left:1.3em}.fields{flex-wrap:wrap;align-items:flex-end;gap:14px 18px;display:flex}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field>span{color:var(--muted);letter-spacing:.04em;font-size:12px}.field input[type=text],.field input[type=number],.field select{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;max-width:100%;height:38px;padding:0 10px}.field input[type=number]{width:84px;font-family:var(--f-mono);font-variant-numeric:tabular-nums}.inline{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.check{cursor:pointer;align-items:center;gap:8px;height:38px;font-size:14px;display:flex}.check input{width:18px;height:18px;accent-color:var(--brass)}.info{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.rollbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.rollbar .sep{background:var(--line);width:1px;height:24px;margin:0 4px}.selinfo{min-height:1.6em;margin:0 0 10px;font-size:14px}.selinfo b{color:var(--brass)}#rollWrap{border:1px solid var(--line);background:var(--surface);border-radius:10px;position:relative;overflow:auto hidden}#rollInner{position:relative}#roll{touch-action:pan-x pan-y;display:block;position:sticky;top:0;left:0}.keys{color:var(--muted);max-width:80ch;margin:10px 0 0;font-size:13px}kbd{font-family:var(--f-mono);border:1px solid var(--line);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:12px}.scorehead{flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 10px;display:flex}.sheet{background:var(--sheet);border:1px solid var(--line);color:#111;border-radius:6px;min-height:160px;padding:8px 4px;overflow-x:auto}#scoreMsg{color:#444;padding:20px;font-size:14px}.why{color:var(--muted);max-width:72ch;margin:10px 0 0;font-size:14px}.export{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-top:22px;padding:18px}.export h3{margin-bottom:10px;font-size:16px}.parts{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 16px;margin-bottom:14px;display:grid}.parts label{cursor:pointer;align-items:center;gap:8px;min-height:30px;font-size:14px;display:flex}.parts input{width:17px;height:17px;accent-color:var(--brass)}.exbtns{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.exnote{color:var(--muted);margin:10px 0 0;font-size:13px}.more{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px 40px;padding-block:40px 0;display:grid}.more h2{margin-bottom:10px;font-size:18px}.more ul{color:var(--muted);margin:0;padding-left:1.2em}.more li{margin-bottom:6px}.more .reads{padding:0;list-style:none}.more .reads a{color:var(--ink);font-weight:500}.transport{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));position:fixed;bottom:0;left:0;right:0}.transport .in{flex-wrap:wrap;align-items:center;gap:10px 16px;max-width:1180px;margin:0 auto;display:flex}.playbtn{background:var(--brass);width:46px;height:46px;color:var(--on-brass);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;display:grid}.playbtn svg{width:18px;height:18px}.seg{border:1px solid var(--line);border-radius:8px;display:inline-flex;overflow:hidden}.seg label{position:relative}.seg input{opacity:0;pointer-events:none;position:absolute}.seg span{cursor:pointer;border-right:1px solid var(--line);padding:6px 12px;font-size:13px;display:block}.seg label:last-child span{border-right:none}.seg input:checked+span{background:var(--ink);color:var(--bg)}.seg input:focus-visible+span{outline:2px solid var(--brass);outline-offset:-2px}.pos{color:var(--muted);margin-left:auto;font-size:13px}.toast{background:var(--ink);color:var(--bg);z-index:30;border-radius:10px;max-width:min(92vw,560px);padding:10px 16px;font-size:14px;position:fixed;bottom:90px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000002e}#stage{background:#fff;width:820px;position:absolute;top:0;left:-20000px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
