:root{--page: #F1EFE8;--card: #FFFFFF;--soft: #F7F6F2;--border: #E3E1DA;--text: #2C2C2A;--sub: #5F5E5A;--muted: #888780;--accent-bg: #E6F1FB;--accent: #185FA5;--navy: #16203A;--gold: #D9B45A;--gold-soft: #B8A57A;--ok: #3B6D11;--warn: #854F0B;--unknown: #5F5E5A;--error-bg: #FCECEC;--error: #9B2C2C}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text);font-family:Hiragino Sans,Noto Sans JP,system-ui,sans-serif;line-height:1.7}.wrap{max-width:480px;margin:0 auto;padding:16px}@media(min-width:700px){.wrap{max-width:560px}}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.body{padding:16px}.brand{background:var(--navy);padding:18px 16px 16px}.brand .title{display:flex;align-items:baseline;gap:8px;margin:0}.brand .name{font-family:"Noto Serif JP",Hiragino Mincho ProN,Yu Mincho,serif;font-weight:700;font-size:26px;letter-spacing:.12em;color:var(--gold)}.brand .title .icon{color:var(--gold);align-self:center}.brand .ai{font-size:13px;font-weight:600;color:var(--navy);background:var(--gold);border-radius:4px;padding:0 6px}.brand .lead{color:var(--gold-soft);margin:6px 0 0;font-size:13px}.label{font-size:13px;color:var(--sub);margin-bottom:4px}.label .req{color:var(--error)}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px}select,input[type=number],input[type=text],textarea{width:100%;font:inherit;font-size:14px;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 10px}select:focus,input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.invalid{border-color:var(--error)}.hint{font-size:12px;color:var(--muted);margin:0 0 10px}.done,.ok-check{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--sub);margin-bottom:14px}.done input,.ok-check input{flex:none}.sides{margin:0 0 14px}.sides .label{margin-bottom:6px}.sides label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--sub);margin-bottom:4px}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.tabs label{cursor:pointer}.tabs input{position:absolute;opacity:0;pointer-events:none}.tab{display:block;text-align:center;font-size:13px;padding:8px;border-radius:8px;border:1px solid var(--border);color:var(--sub)}.tabs input:checked+.tab{background:var(--accent-bg);color:var(--accent);border-color:transparent;font-weight:600}.tabs input:focus-visible+.tab{outline:2px solid var(--accent);outline-offset:1px}textarea{min-height:88px;resize:vertical;background:var(--soft)}.count{text-align:right;font-size:12px;color:var(--muted);margin:2px 0 8px}button{width:100%;font:inherit;font-size:15px;font-weight:600;color:#fff;background:var(--text);border:0;border-radius:8px;padding:12px;cursor:pointer}button:disabled{opacity:.5;cursor:default}.left{text-align:center;font-size:12px;color:var(--muted);margin-top:6px}.notice{font-size:13px;border-radius:8px;padding:10px 12px;margin-bottom:12px;background:var(--error-bg);color:var(--error)}.notice.calm{background:var(--soft);color:var(--sub)}.answer{border-top:1px solid var(--border);margin-top:16px;padding-top:14px;scroll-margin-top:8px}.sec{margin-bottom:12px}.sec h2{font-size:13px;font-weight:600;margin:0 0 4px;display:flex;align-items:center;gap:4px}.sec p{font-size:13px;margin:0 0 8px}.src{color:var(--muted);font-size:12px;margin-left:4px;white-space:nowrap}.ok h2{color:var(--ok)}.warn h2{color:var(--warn)}.unk h2{color:var(--unknown)}.spec h2{color:var(--muted)}.spec p{color:var(--sub)}.book{font-size:12px;color:var(--muted);border-top:1px dashed var(--border);padding-top:10px}.book a{color:var(--accent)}.book .note{display:block;margin-top:4px}.book .soon{color:var(--accent)}.book .next{display:flex;gap:10px;align-items:flex-start}.book .cover{border-radius:2px;flex:none;height:auto}.book .price{margin-left:6px}.icon{width:1em;height:1em;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.brand .icon{width:26px;height:26px}.sec .icon{width:16px;height:16px}footer{font-size:12px;color:var(--muted);margin:16px 4px 0;line-height:1.8}footer a{color:var(--sub)}footer p{margin:0 0 6px}.center{min-height:100svh;display:flex;flex-direction:column;justify-content:center}.center h1{font-family:"Noto Serif JP",Hiragino Mincho ProN,serif;font-size:20px;margin:0 0 10px}.center p{font-size:14px;color:var(--sub);margin:0 0 20px}.center a.btn{display:block;text-align:center;text-decoration:none;font-size:15px;font-weight:600;color:#fff;background:var(--text);border-radius:8px;padding:12px}.admin{max-width:760px}.admin-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-bottom:12px}.link{width:auto;background:none;color:var(--accent);padding:0;font-size:12px;font-weight:400}.link:hover{text-decoration:underline}.admin-search{display:grid;gap:8px;margin-bottom:16px}.admin-search input[type=search]{width:100%;font:inherit;font-size:14px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.admin-search .done{margin:0}.admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-plain{display:block;text-align:center;text-decoration:none;font-size:15px;font-weight:600;color:var(--text);background:var(--soft);border:1px solid var(--border);border-radius:8px;padding:12px}.sub{border-top:1px solid var(--border);padding:14px 0}.sub.starred{background:linear-gradient(90deg,rgba(217,180,90,.12),transparent 60%)}.sub-head{display:flex;align-items:flex-start;gap:10px}.sub-head strong{font-size:14px}.star{width:auto;background:none;color:var(--gold);font-size:22px;line-height:1;padding:0 2px;cursor:pointer}.sub-input{font-size:14px;margin:8px 0 6px;white-space:pre-wrap}.sub details{font-size:13px}.sub summary{color:var(--accent);cursor:pointer;font-size:12px}.sub-sec{margin:8px 0}.sub-key{font-size:11px;color:var(--muted);display:block}.sub-sec p{margin:2px 0}.sub-empty{font-size:13px;color:var(--sub);padding:20px 0;text-align:center}.admin-pages{margin-top:16px;font-size:13px}.admin-pages svg{display:none}.volume-echo{display:flex;align-items:center;font-size:12px;color:var(--muted);min-height:1em}.tabs.tabs-3{grid-template-columns:1fr 1fr 1fr}.row.row-echo{grid-template-columns:130px minmax(0,1fr)}.volume-echo.echo-below{margin:5px 0 0}.shelf{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.shelf-lede{font-size:12px;color:var(--muted);margin:0 0 14px}.group{margin-bottom:22px}.group h2{font-family:"Noto Serif JP",serif;font-size:15px;margin:0 0 4px;padding-bottom:5px;border-bottom:1px solid var(--border)}.group-note{font-size:12px;color:var(--muted);margin:0 0 10px}.volumes{list-style:none;display:flex;flex-wrap:wrap;gap:5px;padding:0;margin:0}.volumes a{display:block;min-width:30px;padding:4px 6px;text-align:center;border:1px solid var(--border);border-radius:4px;font-size:12px;text-decoration:none;color:var(--sub);font-variant-numeric:tabular-nums}.volumes a:hover{border-color:var(--accent);color:var(--accent)}.item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--border)}.group .item:last-of-type{border-bottom:0}.item .cover{flex:none;border-radius:2px;height:auto}.item-body{min-width:0}.item-body h3{font-size:14px;margin:0 0 2px}.item-body .meta{font-size:11px;color:var(--muted);margin:0 0 6px}.item-body .blurb{font-size:12.5px;margin:0 0 6px}.item-body>a{font-size:12px}.next-up{border:1px solid var(--accent);border-radius:8px;padding:12px 14px 4px}.next-up h2{border-bottom:0;padding-bottom:0;color:var(--accent)}.back{margin:18px 0 0;font-size:13px}.to-library{font-size:13px;margin:14px 4px 0;text-align:center}.book .why{color:var(--muted);margin-top:2px}.shelf-lede.as-of{color:var(--sub);margin-bottom:4px}.why-tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--accent);background:var(--accent-bg);border-radius:3px;padding:1px 6px;vertical-align:middle}.next-up h2 .why-tag{margin-left:4px}
