body:has(.ct){margin:0;background:#14191a;overscroll-behavior:none}body:has(.ct) .masthead,body:has(.ct) .colophon{display:none}.ct{--bg: #14191a;--panel: #1e2527;--panel2: #262f31;--line: #35413f;--ink: #f4efe4;--mute: #a39b8c;--red: #e4574a;--gold: #e8bd3e;--teal: #4fb3a9;--blue: #6ea8d9;display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:560px;margin:0 auto;padding:env(safe-area-inset-top) 10px calc(env(safe-area-inset-bottom) + 8px);box-sizing:border-box;color:var(--ink);background:var(--bg);font-family:var(--gothic, "Noto Sans JP", sans-serif);-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;touch-action:manipulation}.ct [hidden]{display:none!important}.ct button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}.ct-bar{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:48px;margin:0 -10px 4px;padding:0 10px;border-bottom:2px solid var(--machine);overflow:hidden}.ct-bar:before{content:"";position:absolute;inset:0;background:var(--cover) center / cover no-repeat;opacity:.28;pointer-events:none}.ct-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14191a8c,#14191ae6 60%);pointer-events:none}.ct-bar>*{position:relative;z-index:1}.ct-bar a{color:var(--mute);font-size:13px;font-weight:800;text-decoration:none;padding:8px 0}.ct-bar h1{margin:0;font-size:15px;font-weight:900;letter-spacing:.02em}.ct-bar h1 small{display:block;color:var(--machine);font-size:9px;letter-spacing:.14em;text-align:center}.ct-reset{justify-self:end;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--mute);font-size:12px;font-weight:800;padding:6px 12px}.ct-start{display:grid;align-content:center;gap:14px;flex:1;padding:0 6px;text-align:center}.ct-start-kicker{margin:0;color:var(--gold);font-size:13px;font-weight:900}.ct-start strong{font-size:22px;line-height:1.35}.ct-start p{margin:0;color:var(--mute);font-size:13px;line-height:1.7}.ct-start-button{min-height:60px;border:0;border-radius:14px;background:var(--red);color:#fff;font-size:18px;font-weight:900}.ct-help{text-align:left;border:1px solid var(--line);border-radius:10px;padding:10px 12px}.ct-help summary{color:var(--mute);font-size:13px;font-weight:800}.ct-help p{margin:8px 0 0;font-size:12px}.ct-body{display:flex;flex-direction:column;flex:1;min-height:0;gap:8px;position:relative}.ct-upper{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.ct-upper::-webkit-scrollbar{display:none}.ct-upper>*{flex:0 0 auto}.ct-input{flex:0 0 auto}.ct-next{border-radius:14px;background:var(--panel);padding:10px 12px 8px}.ct-next-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.ct-next-head span{color:var(--mute);font-size:13px;font-weight:800}.ct-next-head strong{font-size:20px;font-weight:900;color:var(--mute)}.ct-next-head strong.is-judgment{color:var(--red)}.ct-odds{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.ct-odds>div{display:grid;justify-items:center;gap:1px;padding:8px 6px;border-radius:10px;background:var(--panel2);border:1px solid transparent}.ct-odds span{color:var(--mute);font-size:12px;font-weight:800}.ct-odds>div>b{font-size:30px;line-height:1.1;font-weight:900;letter-spacing:-.01em}.ct-odds small{font-size:11px;color:var(--mute)}.ct-roles{list-style:none;margin:4px 0 0;padding:4px 0 0;width:100%;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;justify-content:center;column-gap:8px;row-gap:1px}.ct-roles li{display:inline-flex;gap:3px;font-size:10px;color:var(--mute);font-weight:800;white-space:nowrap}.ct-roles li b{font-size:11px;font-weight:900;color:inherit}.ct-odds>div[data-state=high]>b{color:var(--gold)}.ct-odds>div[data-state=low]>b{color:var(--blue)}.ct-odds.is-split>div[data-state=high]{border-color:var(--gold)}.ct-odds.is-split>div[data-state=low]{border-color:var(--blue)}.ct-odds:not(.is-split)>div{opacity:.72}.ct-next-note{margin:6px 0 0;color:var(--mute);font-size:11px;line-height:1.4}.ct-score{border-radius:14px;background:var(--panel);padding:10px 14px;display:grid;gap:6px}.ct-score-main{display:flex;align-items:baseline;gap:10px}.ct-score-main span{color:var(--mute);font-size:12px;font-weight:800}.ct-score-main strong{font-size:30px;font-weight:900;color:var(--red);line-height:1}.ct-score-main strong i{font-style:normal;font-size:16px;margin-left:1px}.ct-score-main em{margin-left:auto;font-style:normal;font-size:13px;font-weight:800;color:var(--blue)}.ct-meter-bar{height:10px;border-radius:999px;background:var(--blue);overflow:hidden}.ct-meter-bar i{display:block;height:100%;width:50%;background:var(--red);transition:width .25s}.ct-score-sub{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--mute);font-weight:800}.ct-score-sub [data-side=six]{color:var(--red)}.ct-score-sub [data-side=low]{color:var(--blue)}.ct-hist{display:grid;gap:4px;min-height:0;flex:0 0 auto}.ct-chips{min-height:44px}.ct-hist-head{display:flex;align-items:center;gap:8px;min-height:28px;color:var(--mute);font-size:12px;font-weight:800;padding:0 2px}.ct-edit-label{color:var(--gold)}.ct-hist-head button{margin-left:auto;border:1px solid var(--line);border-radius:999px;background:transparent;padding:3px 10px;font-size:12px;font-weight:800}.ct-hist-head button.ct-delete{margin-left:0;color:var(--red);border-color:var(--red)}.ct-chips{list-style:none;margin:0;padding:2px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}.ct-chips::-webkit-scrollbar{display:none}.ct-chips li{flex:0 0 auto;scroll-snap-align:end}.ct-chips button{display:grid;justify-items:center;gap:0;min-width:48px;padding:4px 6px;border-radius:9px;border:1px solid var(--line);background:var(--panel)}.ct-chips b{font-size:12px;font-weight:900}.ct-chips small{font-size:10px;color:var(--mute)}.ct-chips button[data-outcome=hit]{border-color:var(--red);background:#3a211f}.ct-chips button[data-outcome=miss]{border-color:var(--blue)}.ct-chips button.is-editing{outline:2px solid var(--gold);outline-offset:1px}.ct-input{margin-top:auto;display:grid;gap:8px}.ct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.r{display:grid;align-content:center;justify-items:center;gap:2px;min-height:64px;border:0;border-radius:14px;background:var(--panel2);color:var(--ink);padding:6px 4px}.r:active{transform:scale(.97);filter:brightness(1.15)}.r:disabled{opacity:.45}.r b{font-size:16px;font-weight:900;line-height:1.15}.r span{font-size:10px;color:var(--mute)}.r.hit{background:#4a2420;box-shadow:inset 0 0 0 1px var(--red)}.r.hit b{color:#ffb4aa}.r.miss{background:#1f2d33;box-shadow:inset 0 0 0 1px var(--blue)}.r.replay{background:#1f3330;box-shadow:inset 0 0 0 1px var(--teal)}.r.bonus{background:#3a3117;box-shadow:inset 0 0 0 1px var(--gold)}.r.bonus b{color:var(--gold)}.r.quiet{background:var(--panel)}.ct-undo{min-height:44px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--mute);font-size:14px;font-weight:900}.ct-undo:disabled{opacity:.35}.ct-pause{margin-top:auto;display:grid;gap:10px;text-align:center;border-radius:14px;background:var(--panel);padding:20px 16px}.ct-pause strong{font-size:22px;color:var(--gold)}.ct-pause p{margin:0;color:var(--mute);font-size:13px;line-height:1.6}.ct-pause button{min-height:56px;border:0;border-radius:12px;background:var(--gold);color:#1a1a1a;font-size:16px;font-weight:900}.ct-status{position:absolute;left:0;right:0;top:0;display:flex;justify-content:center;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;background:#14191aeb;color:var(--mute);font-size:12px;font-weight:800}.ct-status.is-error{color:#ffb4aa}.ct-status button{border:0;border-radius:999px;background:var(--red);color:#fff;padding:4px 12px;font-size:12px;font-weight:900}@media(max-height:820px){.ct-odds>div>b{font-size:26px}.ct-roles{margin-top:4px;padding-top:4px}.r{min-height:56px}.ct-next-note{display:none}}@media(max-height:740px){.ct-odds>div>b{font-size:22px}.ct-odds small{display:none}.ct-score-main strong{font-size:24px}.r{min-height:50px}.r b{font-size:15px}.ct-undo{min-height:40px}}
