
:root{--bg:#f2ede1;--sf:#fbf8ef;--ink:#1d1c1a;--mu:#6a6355;--ln:#d8cfb9;--ai:#1e3a5f;--af:#f6f2e8;--sh:#b8322a;--ok:#3c6e47;--oks:#e1ebd9;--ng:#a3342d;--ngs:#f3dcd6;--wr:#9a6414;--jp:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP",serif;--bd:"Hiragino Sans","Yu Gothic UI","Meiryo",system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}
@media(prefers-color-scheme:dark){:root:not([data-t=light]){--bg:#14161a;--sf:#1c1f25;--ink:#ece6d6;--mu:#a39d8d;--ln:#343840;--ai:#9db8dc;--af:#12161c;--sh:#d9594e;--ok:#7fc08b;--oks:#1d3224;--ng:#ee8f86;--ngs:#3a2321;--wr:#e2b25d;color-scheme:dark}}
:root[data-t=dark]{--bg:#14161a;--sf:#1c1f25;--ink:#ece6d6;--mu:#a39d8d;--ln:#343840;--ai:#9db8dc;--af:#12161c;--sh:#d9594e;--ok:#7fc08b;--oks:#1d3224;--ng:#ee8f86;--ngs:#3a2321;--wr:#e2b25d;color-scheme:dark}
*{box-sizing:border-box}html{scroll-padding-top:env(safe-area-inset-top,0)}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 var(--bd);padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0);-webkit-text-size-adjust:100%}
h1,h2,h3,p{margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}
:focus-visible{outline:2px solid var(--ai);outline-offset:2px}
.w{max-width:760px;margin:auto;padding:0 max(16px,env(safe-area-inset-left,0))}
header{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--ln)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0}
.br{display:flex;align-items:center;gap:12px}.mk{display:grid;place-items:center;width:40px;height:40px;background:var(--sh);color:#fff;font:800 24px var(--jp);border-radius:3px;flex:none}
h1{font:800 19px/1.2 var(--jp);letter-spacing:.04em}.br small{display:block;color:var(--mu);font-size:12px}
.gh{background:none;border:1px solid var(--ln);border-radius:3px;padding:6px 12px;font-size:13px;color:var(--mu)}.gh:hover{border-color:var(--ai);color:var(--ai)}
main{padding:16px 0;display:flex;flex-direction:column;gap:14px}
.lvs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.lv{display:flex;flex-direction:column;align-items:center;padding:7px 2px;background:var(--sf);border:1px solid var(--ln);border-radius:3px}
.lv b{font:800 20px var(--jp)}.lv i{font-size:11px;color:var(--mu);font-style:normal}.lv[aria-pressed=true]{background:var(--ai);border-color:var(--ai);color:var(--af)}.lv[aria-pressed=true] i{color:var(--af);opacity:.8}
.hd{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.hd h2{font:800 40px/1.1 var(--jp)}.hd span{color:var(--sh);font:700 16px var(--jp)}.hd small{color:var(--mu)}
.pb{display:flex;height:6px;background:var(--ln);border-radius:1px;overflow:hidden}.pb i{background:var(--ok)}.pb u{background:var(--wr)}
.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}
.tab{flex:none;padding:6px 14px;background:var(--sf);border:1px solid var(--ln);border-radius:3px;display:flex;flex-direction:column;align-items:center;line-height:1.3;font:700 15px var(--jp)}.tab small{font:11px var(--bd);color:var(--mu)}
.tab[aria-selected=true]{border-color:var(--sh);box-shadow:inset 0 -3px 0 var(--sh)}
.ch{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.chip{padding:4px 12px;background:var(--sf);border:1px solid var(--ln);border-radius:99px;font-size:13px}.chip[aria-pressed=true]{background:var(--ai);color:var(--af);border-color:var(--ai)}
.btn{padding:9px 16px;background:var(--sf);border:1px solid var(--ln);border-radius:3px;font-weight:600}.btn.p{background:var(--ai);color:var(--af);border-color:var(--ai)}.btn:disabled{opacity:.5}
.row{display:flex;gap:8px;flex-wrap:wrap}.row>.btn{flex:1}
.card{position:relative;background:var(--sf);border:1px solid var(--ln);border-radius:4px;padding:28px 18px;text-align:center;display:flex;flex-direction:column;gap:6px;min-height:230px;justify-content:center}
.card .s{position:absolute;top:10px;left:10px;background:var(--sh);color:#fff;font:700 12px var(--jp);padding:2px 7px;border-radius:2px}.card .c{position:absolute;top:10px;right:12px;color:var(--mu);font-size:12px}
.e{font:700 clamp(2rem,9vw,3rem)/1.2 var(--bd)}.k{color:var(--mu);font-size:16px}.j{font:600 22px var(--jp)}
.mask{background:var(--ln);color:transparent!important;border-radius:3px;cursor:pointer;user-select:none}
.st{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.st button{padding:9px;border:1px solid var(--ln);background:var(--sf);border-radius:3px}.st .on{background:var(--oks);border-color:var(--ok);font-weight:700}
.hub{display:grid;gap:10px}.mode,.it{background:var(--sf);border:1px solid var(--ln);border-radius:4px;padding:14px;display:flex;flex-direction:column;gap:8px}.mode h3{font:700 17px var(--jp)}.mode p,.n{color:var(--mu);font-size:13px}
.opts{display:grid;gap:8px}.opt{padding:12px;background:var(--sf);border:1px solid var(--ln);border-radius:3px;text-align:left}.opt.ok{background:var(--oks);border-color:var(--ok)}.opt.no{background:var(--ngs);border-color:var(--ng)}
.inp{width:100%;padding:11px;background:var(--sf);border:1px solid var(--ln);border-radius:3px}
.fb{padding:10px;border-radius:3px;background:var(--oks)}.fb.no{background:var(--ngs)}
details{background:var(--sf);border:1px solid var(--ln);border-radius:4px}summary{padding:12px 14px;cursor:pointer;font-weight:700;list-style:none}summary::-webkit-details-marker{display:none}
.bd{padding:0 14px 14px;display:flex;flex-direction:column;gap:8px}.hl{background:#e8c9c5;color:#1d1c1a;padding:0 2px;border-radius:2px}
.sen{display:flex;gap:8px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--ln)}.sen:first-of-type{border:0}.sen>div{flex:1}.sp{flex:none;width:38px;height:38px;border:1px solid var(--ln);background:var(--sf);border-radius:50%}
.ja{color:var(--mu);font:14px var(--jp)}
.row2{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--ln)}

.nt{border-left:3px solid var(--sh);padding:6px 10px;background:var(--bg);font-size:14px;margin-top:6px}
.sheet{background:var(--bg);width:100%;max-width:560px;max-height:88vh;overflow:auto;padding:16px;border-radius:8px 8px 0 0;display:flex;flex-direction:column;gap:14px}.sheet h3{font:700 16px var(--jp)}.sheet section{display:flex;flex-direction:column;gap:10px}.sr{display:grid;grid-template-columns:5.5em 1fr 3.5em;gap:8px;align-items:center;font-size:14px}.sr output{text-align:right;color:var(--mu)}
.lvs.s7{gap:4px}.lvs.s7 .lv b{font:800 14px var(--jp)}.lvs.s7 .lv i{font-size:10px}
footer{padding:8px 0 28px;color:var(--mu);font-size:12px;display:flex;flex-direction:column;gap:8px}footer h2{font:700 14px var(--jp);color:var(--ink)}
#t{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ai);color:var(--af);padding:8px 16px;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .2s}#t.on{opacity:1}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
