/* Local display layer: no fonts, libraries, images or network dependencies. */
main{overflow:visible}.sky-layer{overflow:hidden}.navigation{position:sticky;top:0;z-index:1000;margin:-14px -12px 12px;padding:9px 12px 7px;background:linear-gradient(#111528 85%,#111528f5);border-bottom:1px solid #a7865155;box-shadow:0 4px 14px #070a1677}.view-tabs{display:flex;gap:5px;padding:3px;border-radius:12px;background:#080c1a;border:1px solid #9b795955}.view-tabs button{flex:1;border:0;background:transparent;color:#baadbd;font-size:13px;min-height:38px;padding:6px}.view-tabs [aria-selected=true]{color:#4b2c2d;font-weight:700;background:linear-gradient(120deg,#f5dfaf,#d3ae73);box-shadow:inset 0 1px #fff0c9,0 2px 5px #0007}.period-strip{display:flex;margin-top:7px;gap:5px}.period-strip>div{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;padding:3px 0 2px;color:#817b90;border-bottom:2px solid #51475c}.period-strip b{font-size:10px;letter-spacing:1.5px}.period-strip small{font-size:8px;margin-top:1px}.period-strip .is-current{color:#f5d69d;border-bottom-color:#ebc384;background:#bd8c4220;border-radius:4px 4px 0 0}.period-strip em{position:absolute;right:4px;top:4px;font-size:7px;font-style:normal;writing-mode:vertical-rl;color:#fbe2b5}.record-note{font-size:8px;color:#a798af;margin-top:3px}.record-note:empty{display:none}h1{font-size:25px;margin-top:7px}.goal{padding:7px 15px 8px;cursor:pointer}.goal strong{font-size:35px}.goal .goal-target{display:inline-block;margin-top:6px;font:600 10px/1.2 -apple-system,BlinkMacSystemFont,sans-serif;padding-top:5px;border-top:1px solid #b8956555}.goal .goal-link{display:block;font:9px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;color:#8a643f;margin-top:3px}.board-wrap{height:370px}.center-content{padding-top:41px}.pawn-motion{padding:0;border:0;border-radius:0;background:transparent;min-height:0;pointer-events:auto;cursor:pointer;touch-action:manipulation}.pawn-motion:focus-visible{border-radius:10px;outline:2px solid #fff1bb}.cast-name{padding:0;border:0;border-radius:0;background:none;text-align:left;min-height:36px;color:inherit;font-size:12px;flex:1;text-decoration:underline;text-decoration-color:#c7a17888;text-underline-offset:4px}.cast{padding:4px 0}.picker{display:block;color:#e6c78f;font-size:12px}.picker select{display:block;width:100%;margin-top:7px;min-height:46px;background:#1f233b;border-color:#b39463}.selection-note{font-size:9px;color:#bca7ba;margin:5px 0 9px}.detail-view{padding-top:14px}.identity{display:flex;align-items:center;min-height:100px;border:1px solid #c4a16966;border-radius:14px;background:radial-gradient(ellipse at 10% 80%,var(--team-color),transparent 62%),linear-gradient(120deg,#2d2437,#131b2e);padding:4px 13px;gap:12px;box-shadow:inset 0 0 0 3px #b2965633;margin:8px 0 12px}.identity img{object-fit:contain;filter:drop-shadow(0 3px 3px #06091988)}.identity small{color:#e3c89c;font-size:10px}.identity h2{font-size:22px;margin-top:3px;overflow-wrap:anywhere;letter-spacing:.4px}.self-emblem{display:flex;align-items:center;justify-content:center;font-size:39px;width:66px;height:66px;flex-shrink:0;color:#ffe6b4;border:1px solid #ebcc8b;border-radius:50%;background:linear-gradient(140deg,#31213788,#090f29aa);box-shadow:inset 0 0 0 4px #c9ad6133}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.metric{margin:0;padding:12px 10px;border-radius:10px;background:linear-gradient(130deg,#fff2da,#e6c69b);color:#624336;min-height:80px;border:1px solid #ebc987;box-shadow:0 3px 0 #624937}.metric dt{font-size:10px;line-height:1.5}.metric dd{margin:7px 0 0;font-size:24px;font-weight:700;line-height:1.2;letter-spacing:.5px}.metric dd.pending{font-size:17px;font-weight:500;color:#8d725a}.feature-panel{margin-top:15px;padding:12px}.feature-panel h2,.missions h2{font-size:18px}.item-grid{display:flex;gap:8px;margin-top:10px}.item-card{flex:1;text-align:center;background:#131b2c;border:1px solid #7f715b;border-radius:10px;padding:10px 3px}.item-card h3{font-size:11px;font-weight:500;margin:8px 0 6px;color:#eed7ac}.item-card p{font-size:10px;color:#bba4bb}.item-icon{position:relative;display:block;width:32px;height:31px;margin:0 auto;filter:drop-shadow(0 2px 0 #352531)}.item-icon.forward:before,.item-icon.forward:after{content:'';position:absolute;top:3px;width:15px;height:24px;background:linear-gradient(140deg,#ffe6a0,#c98b3b);clip-path:polygon(0 0,50% 0,100% 50%,50% 100%,0 100%,50% 50%)}.item-icon.forward:before{left:1px}.item-icon.forward:after{left:15px}.item-icon.guard{background:linear-gradient(130deg,#dbe5fd,#6480b8);clip-path:polygon(50% 0,94% 13%,85% 69%,50% 100%,15% 69%,6% 13%)}.item-icon.guard:after{content:'';position:absolute;inset:5px;background:#49608c;clip-path:polygon(50% 0,94% 13%,85% 69%,50% 100%,15% 69%,6% 13%);border-left:10px solid #9db4d7}.item-icon.collect{border-radius:8px 8px 12px 12px;background:linear-gradient(135deg,#d2b5ec,#705294);height:24px;margin-top:7px}.item-icon.collect:before{content:'';position:absolute;width:15px;height:10px;border:3px solid #e2c8f1;border-bottom:0;border-radius:9px 9px 0 0;left:8px;top:-7px}.item-icon.collect:after{content:'✦';font-style:normal;position:absolute;left:10px;top:1px;color:#fff0ce;font-size:16px}.member-list{display:flex;flex-wrap:wrap;gap:6px}.member-chip{min-height:38px;padding:6px 12px;border-radius:18px;border-color:#927b6888;background:#272338;color:#ecdcc1;font-size:12px}.empty-slot{padding:18px 8px;text-align:center;color:#ae9aaf;font-size:14px;border:1px dashed #aa8a634d;border-radius:10px;margin-top:9px}.mission-grid{display:flex;gap:7px}.mission-card{flex:1;padding:11px 3px 9px;text-align:center;border:1px solid #71647a77;border-radius:9px;color:#ad9bae;background:#131929}.mission-card b{font-size:11px;letter-spacing:1px}.mission-card small{display:block;font-size:8px;margin-top:3px}.mission-card p{font-size:11px;margin-top:12px}.mission-card.is-current{border-color:#daba7a;color:#efd093;box-shadow:inset 0 0 13px #dbb56c15}.sheet-open{overflow:hidden}.sheet-backdrop{position:fixed;inset:0;background:#070a19c9;z-index:2000;display:flex;align-items:flex-end;justify-content:center;padding-top:24px}.detail-sheet{width:100%;max-width:430px;max-height:92vh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:linear-gradient(145deg,#30283e,#131a2d);border:1px solid #d9b57a;border-radius:22px 22px 0 0;box-shadow:0 -8px 40px #0009;padding:16px 17px max(24px,env(safe-area-inset-bottom))}.sheet-heading{display:flex;gap:10px;align-items:center;justify-content:space-between;padding-bottom:11px;border-bottom:1px solid #ac92604d}.sheet-heading h2{font-size:19px}.sheet-close{font-size:11px;min-height:38px;padding:6px 11px;flex-shrink:0}.sheet-content{padding-top:12px}.ladder-total{color:#f4d797;text-align:center;font-size:19px;font-weight:600;margin-bottom:15px}.ladder-list{padding:0;margin:0;list-style:none;display:flex;flex-direction:column-reverse;gap:7px}.ladder-list li{position:relative;display:flex;align-items:center;padding:13px 12px;border:1px solid #bca07266;border-radius:9px;gap:17px;background:#191f31}.ladder-list li>span{font-size:11px;color:#ae98b0}.ladder-list strong{font-size:18px;color:#ebc990}.ladder-list small{font-size:10px;margin-left:auto}.ladder-list .is-current{background:linear-gradient(100deg,#f7e4b7,#d1a774);color:#4c332b;border-color:#ffe2a5;box-shadow:0 0 12px #dcb2693d}.ladder-list .is-current>span,.ladder-list .is-current strong{color:#634131}.event-layer{position:absolute;inset:0;z-index:650;pointer-events:none;overflow:hidden}.shockwave{position:absolute;left:calc(50% - 120px);top:calc(49% - 120px);width:240px;height:240px;border:3px solid #ffe8b1;border-radius:50%;background:radial-gradient(circle,#f9e4b355,transparent 65%);box-shadow:0 0 24px #efbd7299,inset 0 0 35px #ffdf9a88;animation:shock 1.15s ease-out both}.event-particle{position:absolute;left:50%;top:49%;height:5px;width:5px;border-radius:50%;background:#ffe3a4;box-shadow:0 0 7px #ffe1a0;color:#fff0c6;font-size:15px;font-style:normal;line-height:5px;animation:starScatter 1.2s ease-out both}.event-particle:nth-child(3n){background:transparent}.event-banner{position:absolute;left:11%;right:11%;top:35%;z-index:700;pointer-events:none;padding:15px 10px;text-align:center;border-top:1px solid #fce4ac;border-bottom:1px solid #e1b576;background:linear-gradient(90deg,#20172c00,#382039f5 15%,#3b263df5 85%,#20172c00);filter:drop-shadow(0 4px 10px #110b18);animation:bannerIn .35s ease-out both}.event-banner b{display:block;font:700 33px/1.2 Georgia,serif;letter-spacing:3px;color:#ffe9b0;text-shadow:0 0 16px #facb7399}.event-banner span{display:block;margin-top:8px;font-size:11px;color:#f4debf;line-height:1.6;overflow-wrap:anywhere}.event-award b{font-size:16px;letter-spacing:1px}.event-award span{font-size:25px;font-weight:700}.event-leader b{font-size:24px}.guide.reacting>img{animation:guideReact 1s ease-out both}.guide.reacting .bubble{box-shadow:0 0 24px #efc88788}.lap-flash.flash{animation:lap 1.2s ease-out;background:radial-gradient(ellipse,#fff1bc44 10%,#ffe6a4bb);box-shadow:inset 0 0 45px #fff5ca}.burst:after{inset:-24px;border-width:4px;box-shadow:0 0 18px #ffd789;animation-duration:1.15s}.day-result{border-color:#e0bb7a}.day-result h2{font-size:19px;text-align:center}.result-kicker{text-align:center;font-size:9px;color:#bca7b9;margin-bottom:10px}.winner-name{text-align:center;font-size:29px;line-height:1.4;color:#ffe3a4;margin-top:12px;overflow-wrap:anywhere}.no-particles .event-particle{display:none}.no-special .event-special,.no-six .event-six,.no-leader .event-leader,.no-award .event-award{display:none}.no-lap .guide.reacting>img{animation:none}.no-light .shockwave{display:none}@keyframes shock{0%{opacity:.9;transform:scale(.15)}70%{opacity:.7}100%{opacity:0;transform:scale(1.5)}}@keyframes starScatter{0%{opacity:1;transform:translate(0,0) scale(.5)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rotate)) scale(.9)}}@keyframes bannerIn{from{opacity:0;transform:translateY(8px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes guideReact{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-13px) rotate(-7deg)}65%{transform:translateY(-3px) rotate(5deg)}}@media(prefers-reduced-motion:reduce){.event-layer{display:none}.event-banner,.guide.reacting>img{animation:none!important}}@media(max-width:360px){h1{font-size:23px}.period-strip em{right:2px}.board-wrap{height:350px}.metric dd{font-size:22px}.metric dt{font-size:9px}.identity h2{font-size:20px}.item-grid{gap:5px}}

.board-surface:after{background:radial-gradient(ellipse at 50% 20%,var(--board-tint,#25233f),#10162b 64%,#38283c)}
/* Keep the decorative curtains inside narrow screens while the period bar stays sticky. */
main:before,main:after{top:0;transform:none;max-width:15%}main:before{left:0}main:after{right:0;border-radius:0 0 0 100%}
@media(max-width:360px){.navigation{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}}
