/* MASTER roster only: weathered stone tablets and the existing regional artwork.
   The quiz stages, TOP layout, portraits, unlocks and saves are unchanged. */
body.master89-roster-active{
 background:linear-gradient(180deg,#0b1923b8,#0b171eed),url('assets/battle89/kabuto.webp') center top/cover fixed;
 color:#f6f5ec;
}
.master89-roster-active>.site-header{background:#0b1822ed;border-bottom:1px solid #9caa9b;padding:6px max(16px,env(safe-area-inset-left));min-height:57px}
.master89-roster-active>.site-header .brand{color:#f6f5ec;font-size:16px}
.master89-roster-active .header-actions .btn{background:#162831;color:#fff;border:1px solid #b5c0b1;box-shadow:none;min-height:44px;border-radius:4px;font-size:14px;padding:6px 10px}
.master89-roster-active .volume{color:#f5f4e8}
.master89-roster-active main#app{max-width:1160px;padding:24px 24px 0;margin:0 auto}
.master89-roster-active>footer{color:#d9dfd5;background:#101e26b3;border-top:1px solid #7c8b8066;margin-top:30px}
.master89-hub.hand89-hub{border:0;border-radius:0;padding:0;background:none;box-shadow:none;animation:none;color:#faf8ee}
.hand89-hub .hand89-heading{display:block;padding:0;background:none;border:0;color:#f9f6e7;text-align:center;box-shadow:none}
.hand89-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.hand89-toolbar .btn{min-height:48px;background:#14252edb;color:#fff;border:1px solid #c8cdbd;border-radius:4px;box-shadow:inset 0 0 0 2px #25363e;font-size:16px}
.hand89-toolbar>span{font-size:14px;color:#e0e4d7}
.hand89-hub .hand89-kicker{font-size:13px;letter-spacing:.2em;color:#d2d6ac;margin:0 0 8px}
.hand89-heading h1{display:inline-block;margin:0;padding:12px 30px;font-size:clamp(28px,4vw,38px);line-height:1.35;color:#fffbed;border:1px solid #b3baa9;border-radius:3px;background:linear-gradient(115deg,#47534cf2,#25332ff5 50%,#3b4640f5);box-shadow:inset 0 2px 0 #ced3bd66,inset 0 -4px 0 #09151399,0 7px 22px #0004;text-shadow:0 2px 2px #071615}
.hand89-hub .hand89-intro{margin:16px auto 0;max-width:920px;font-size:18px;line-height:1.7;color:#f6f5ed;text-align:center;text-shadow:0 2px 4px #000}
.hand89-hub .hand89-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 0;align-items:stretch}
.hand89-hub .hand89-stone{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:490px;overflow:hidden;padding:20px 18px 18px;border:3px solid #9ba494;border-radius:5px;color:#fbf8ed;background:linear-gradient(135deg,#bfc5ad18 0%,transparent 32%),repeating-linear-gradient(170deg,#ffffff04 0px,#ffffff04 2px,transparent 2px,transparent 11px),linear-gradient(130deg,#3c4741,#26332f 65%,#344139);box-shadow:inset 0 2px 0 #ebebcd80,inset 3px 0 0 #bbc2ab3d,inset -4px -5px 0 #0a171b80,0 7px 18px #0005;text-align:center;gap:6px;font:inherit}
.hand89-hub .hand89-stone::before{content:'';position:absolute;inset:7px;border:1px solid #b3bc9952;border-radius:1px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 0 0,#6d8c4b33,transparent 38%),radial-gradient(ellipse at 100% 100%,#5e77402e,transparent 36%)}
.hand89-hub .hand89-region{display:block;font-size:15px;font-weight:800;letter-spacing:.07em;line-height:1.4;color:#e3e7cb}
.hand89-hub .hand89-stone .master88-portrait{width:100%;max-width:100%;height:215px;flex:none;margin:0;padding:12px;overflow:hidden;background:radial-gradient(ellipse at center,#e5e8bc13,transparent 70%)}
.hand89-hub .hand89-stone .master88-portrait img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center;filter:drop-shadow(0 5px 8px #0713106b)}
.hand89-hub .hand89-stone .master88-fallback{color:#f7edb8;font-size:16px;line-height:1.6}
.hand89-hub .hand89-stone strong,.hand89-hub .hand89-king h2{font-size:26px;color:#fff9e9;line-height:1.4;margin:0;overflow-wrap:anywhere;text-shadow:0 2px 2px #071615}
.hand89-hub .hand89-status{font-size:15px;line-height:1.5;color:#f6e2a7;margin:2px 0;overflow-wrap:anywhere}
.hand89-hub .hand89-knowledge{font-size:13px;line-height:1.5;color:#e0e6d9;margin:0}
.hand89-hub .hand89-trials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0 12px;font-size:13px;color:#e6e9df}
.hand89-trials>span{padding:7px 2px;background:#0a1a20a6;border:1px solid #c1c9b63d;border-radius:3px;line-height:1.4}
.hand89-trials b{display:block;font-size:12px;font-weight:600;margin-top:3px;color:#dce4d7}
.hand89-trials .is-cleared{border-color:#d6c77e99;background:#3f4127a6}.hand89-trials .is-cleared b{color:#fff0a3}
.hand89-hub .hand89-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:10px 8px;border:1px solid #d4d7bd;border-radius:3px;box-shadow:inset 0 1px 0 #ffffff1f;background:#12242fe8;color:#fffbed;font-size:16px;font-weight:700;line-height:1.5;margin-top:auto;white-space:normal}
.hand89-hub .master88-roster-card:hover{background:linear-gradient(130deg,#4c584a,#314135 65%,#3f4e40);border-color:#e7dda7;box-shadow:inset 0 2px 0 #f9f3c980,inset -4px -5px 0 #0a171b80,0 8px 22px #0006}
.hand89-hub .master88-roster-card:active{box-shadow:inset 0 3px 8px #0006;transform:none}
.hand89-hub button:focus-visible{outline:3px solid #ffe38e;outline-offset:4px}
.hand89-hub .hand89-stone.is-cleared{border-color:#cbbd79}
.hand89-hub .hand89-king{background:radial-gradient(ellipse at top,#af9d4833,transparent 60%),repeating-linear-gradient(170deg,#ffffff04 0px,#ffffff04 2px,transparent 2px,transparent 11px),linear-gradient(130deg,#424737,#29362e 70%,#414635);border-color:#d8c88f;box-shadow:inset 0 2px 0 #fff3b999,inset -4px -5px 0 #1b231680,0 7px 22px #0006;gap:6px;margin:0}
.hand89-hub .hand89-king::before{border-color:#daca9266}
.hand89-hub .hand89-king .hand89-region{color:#f6e8ad}
.hand89-hub .hand89-king-body{display:flex;flex:1;flex-direction:column;min-width:0;align-items:stretch;gap:5px}
.hand89-hub .hand89-king-rule{font-size:14px;line-height:1.65;color:#f0f0dd;margin:3px 0}
.hand89-hub .hand89-king-progress{font-size:13px;line-height:1.5;color:#ebd99a;margin:0 0 12px}
.hand89-hub .hand89-king .hand89-action{border-color:#ead593;background:#293122;color:#fff6c5;box-shadow:inset 0 1px 0 #f6e2a533}
.hand89-hub .hand89-king .hand89-action:hover{background:#3d492e;filter:none}
.hand89-hub .notice{background:#172a30;color:#fff8db;border:1px solid #b8bea0}
@media(max-width:1000px){.hand89-hub .hand89-roster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .master89-roster-active main#app{padding:18px 14px 0}
 .hand89-toolbar{margin-bottom:18px}.hand89-toolbar>span{font-size:12px}
 .hand89-heading h1{font-size:28px;padding:12px 18px}
 .hand89-hub .hand89-intro{font-size:16px}.hand89-hub .hand89-kicker{font-size:12px;letter-spacing:.1em}
 .hand89-hub .hand89-roster{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:24px}
 .hand89-hub .hand89-stone{min-height:0;padding:18px 18px 20px}
 .hand89-hub .hand89-stone .master88-portrait{height:230px}
 .hand89-hub .hand89-stone strong,.hand89-hub .hand89-king h2{font-size:27px}
 .hand89-hub .hand89-trials{margin-bottom:16px}
 .hand89-hub .hand89-action{font-size:17px;min-height:50px}
 .hand89-hub .hand89-king-rule{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.hand89-hub *{scroll-behavior:auto}}
