/* Full-screen illustrated entrance. Images and real route controls are separate layers. */
:root{--bg:#18231f;--panel:#24312a;--panel-2:#2d3a30;--line:#485247;--gold:#ddbc78;--gold-soft:#f0d79c;--muted:#bdc5b9}
body{background:#18231f}main{background:transparent}.topbar{background:#16221eed;border-color:#68735355}.content{max-width:1320px}.card,.table-wrap{box-shadow:0 8px 28px #08160e24}
body[data-route=home] .shell{display:block;min-height:0;margin:0;width:100%;max-width:none;border:0;border-radius:0}body[data-route=home] .shell>.sidebar,body[data-route=home] .bottom-nav{display:none!important}body[data-route=home] main{padding:0;min-height:0}body[data-route=home] .content{padding:0;margin:0;max-width:none;width:100%}body[data-route=home] .topbar{position:absolute;top:52px;right:3%;z-index:96;background:transparent;border:0;padding:0;min-height:0;display:block}body[data-route=home] .topbar .guild,body[data-route=home] .topbar .server-clock{display:none!important}body[data-route=home] .account-menu summary{background:#18382ddb;border:1px solid #eee5c688;color:#fff8e5;box-shadow:0 4px 12px #0003}
.alliance-board{position:relative;width:100%;height:calc(100dvh - 38px);min-height:660px;isolation:isolate;overflow:hidden}.board-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.board-paper{position:absolute;left:44%;top:21%;width:42%;height:51%;display:flex;flex-direction:column;align-items:center;color:#513a25}.board-brand{display:flex;align-items:center;gap:8px;color:#624727;text-decoration:none;font:700 12px/1.3 Georgia,serif;letter-spacing:.15em}.board-brand img{object-fit:contain}.board-heading{text-align:center;width:100%;margin:16px 0 20px}.board-heading>span{font:700 11px/1.4 "Segoe UI",sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#7b5d39}.board-heading h2{font:700 clamp(26px,2.6vw,46px)/1.1 Georgia,serif;color:#513a25;margin:7px 0 9px;text-shadow:none;overflow-wrap:anywhere;max-height:3.3em;overflow:auto}.board-heading p{font:italic 14px/1.4 Georgia,serif;margin:0;color:#755a3d}.board-event-link{display:inline-block;color:#5c482b;font:600 13px/1.4 "Segoe UI",sans-serif;margin-top:7px}.board-notes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-content:center;gap:18px 8px;width:100%;margin-top:auto;flex:1;min-height:0}.board-notes .board-note,.board-notes .board-note:hover{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:none;border:0;border-radius:0;box-shadow:none;min-height:85px;padding:4px;color:#513a25;text-align:center;text-decoration:none;transform:none;white-space:normal}.board-note img{width:clamp(48px,4.6vw,80px);height:clamp(48px,4.6vw,80px);object-fit:contain;filter:drop-shadow(2px 6px 3px #66472166);transition:transform .2s,filter .2s}.board-note strong{font:700 clamp(14px,1.2vw,20px)/1.2 Georgia,serif;white-space:normal;text-shadow:0 1px 0 #fff8}.board-note:hover img{transform:translateY(-5px) scale(1.06);filter:drop-shadow(2px 10px 4px #66472166)}.board-note:focus-visible{outline:3px solid #23624b;outline-offset:2px;border-radius:8px}.board-character{position:absolute;left:8%;bottom:10%;width:25%;max-width:440px;text-align:center}.board-character>img{width:100%;height:auto;display:block;filter:drop-shadow(10px 15px 8px #183e4270);transform-origin:50% 92%;animation:kella-idle 4s ease-in-out infinite}.character-motion{margin-top:8px;padding:5px 12px!important;min-height:32px!important;background:#173d2dc9!important;border:1px solid #d4e1ae88!important;border-radius:20px!important;color:#fff3d6!important;font:12px/1.4 "Segoe UI",sans-serif!important;box-shadow:none!important}.character-paused .board-character>img{animation-play-state:paused}@keyframes kella-idle{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-10px) rotate(1.5deg)}}
@media(min-width:901px){.shell,.sidebar-collapsed .shell{display:flex;flex-direction:column}.shell>.sidebar{position:relative;inset:auto;width:100%;height:auto;min-height:76px;padding:12px 32px;display:flex;flex-direction:row;align-items:center;gap:32px;background:#18231f;border:0;border-bottom:1px solid #68735355;overflow:visible;z-index:95}.sidebar .brand{margin:0;min-width:180px}.sidebar .brand>div{display:block!important}.sidebar nav{display:flex;align-items:center;gap:5px;overflow:visible}.sidebar nav a{padding:9px 13px;min-height:42px}.sidebar .nav-icon{display:none}.sidebar-collapsed .sidebar nav a span{display:inline}.sidebar .side-spacer,.sidebar .side-footer{display:none}.sidebar .nav-more{margin:0;position:relative}.sidebar .nav-more summary{padding:10px 14px}.sidebar .nav-more[open]{position:absolute;right:28px;top:20px;width:180px;background:#24312a;box-shadow:0 12px 20px #0005}.sidebar .nav-more[open]>a{display:flex;background:#24312a}.sidebar .nav-section-label{display:none}.topbar{min-height:56px;padding:5px 32px}.topbar .guild{visibility:visible}.guild h1{font-size:12px}.guild #guildTagline{display:none}.content{width:100%;padding-top:28px}}
@media(min-width:901px) and (max-width:1100px){.shell>.sidebar{gap:8px;padding-left:18px}.sidebar .brand{min-width:145px}.sidebar nav a{padding:9px}.sidebar .brand strong{font-size:12px}.sidebar .brand span{font-size:11px}}
@media(max-width:900px){.sidebar,.bottom-nav{background:#18231f}.alliance-board{min-height:760px}.board-paper{left:17%;top:24%;width:66%;height:48%}.board-heading{margin:10px 0}.board-heading h2{font-size:clamp(24px,4vw,36px)}.board-notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 5px}.board-note img{width:52px;height:52px}.board-note strong{font-size:16px}.board-character{width:24%;max-width:165px;left:3%;bottom:2%}.board-brand{font-size:11px}.board-brand img{width:26px;height:26px}.board-heading p{font-size:13px}body[data-route=home] .topbar{top:52px;right:5%}}
@media(max-width:480px){.board-paper{left:16%;width:68%;top:24%;height:49%}.board-notes{gap:5px 2px}.board-notes .board-note{min-height:75px;gap:4px}.board-note img{width:46px;height:46px}.board-note strong{font-size:14px}.board-heading h2{font-size:24px}.board-heading p{font-size:12px}.board-heading>span{font-size:10px}.board-brand{font-size:10px;letter-spacing:.09em}.board-character{width:27%;bottom:1%}.character-motion{font-size:10px!important;min-height:28px!important}.board-heading{margin:8px 0}.board-brand img{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.board-character>img{animation:none}.board-note img{transition:none}.character-motion{display:none}}
/* Reserve room for real event names without moving navigation off the parchment. */
.board-heading h2{max-height:2.2em}
@media(max-width:480px){.board-heading{margin:4px 0}.board-notes .board-note{min-height:67px;padding:2px;gap:3px}.board-note img{width:42px;height:42px}}

/* Original transparent video supplies the motion; no synthetic sway. */
.board-character.has-video{left:3%;width:35%;max-width:580px;bottom:8%}
.board-character video{display:block;width:100%;height:auto;filter:drop-shadow(5px 9px 5px #183e4240);background:transparent;object-fit:contain}
@media(max-width:900px){.board-character.has-video{left:0;bottom:1%;width:33%;max-width:190px}}
@media(max-width:480px){.board-character.has-video{width:34%;max-width:145px;bottom:0}}
@media(prefers-reduced-motion:reduce){.character-motion{display:inline-block}}
/* Board navigation and event framing. */
body[data-route=home] .topbar{display:none!important}
.board-profile{position:absolute;right:-3%;top:-2%;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:50px;min-height:54px;color:#513a25;text-decoration:none;font:700 12px Georgia,serif;z-index:2}
.board-profile img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(2px 4px 3px #6c482666);transition:transform .2s}.board-profile:hover img{transform:scale(1.12)}
.board-heading{position:relative;width:94%;margin:24px 0 14px;padding:16px 22px;border:2px solid #bb8532;border-radius:10px;background:linear-gradient(120deg,#fff2c088,#e6bd6066,#fff1ba77);box-shadow:inset 0 0 0 3px #ffecac,inset 0 0 0 4px #b87e3666,0 4px 8px #6a441f33}
.board-heading:before,.board-heading:after{content:'◆';position:absolute;top:50%;transform:translateY(-50%);color:#b57824;font-size:13px;text-shadow:0 1px #fff4ce}.board-heading:before{left:-7px}.board-heading:after{right:-7px}
.board-heading h2{max-height:none;overflow:visible;margin:8px 0;font-size:clamp(22px,2.3vw,40px);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.board-notes{grid-template-columns:repeat(3,minmax(0,1fr))}.board-flying-icon{position:fixed;object-fit:contain;pointer-events:none;z-index:10000;filter:drop-shadow(0 12px 18px #6b411c77);will-change:transform,opacity}
@media(max-width:900px){.board-profile{top:-3%;right:-3%;font-size:11px;min-width:40px}.board-profile img{width:34px;height:34px}.board-brand{align-self:flex-start;margin-left:0;max-width:78%;font-size:10px}.board-heading{margin:17px 0 8px;padding:12px 14px;width:100%}.board-heading h2{font-size:24px}.board-notes{gap:10px 3px}}
@media(max-width:480px){.board-profile img{width:30px;height:30px}.board-heading{padding:10px;margin:12px 0 8px}.board-heading h2{font-size:22px}.board-heading p{font-size:11px}.board-brand{font-size:9px;letter-spacing:.04em}.board-brand img{width:21px;height:21px}.board-profile{top:-2%;font-size:10px}.board-notes .board-note{min-height:64px}}
@media(prefers-reduced-motion:reduce){.board-profile img{transition:none}}

.board-notes{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.board-notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.board-notes .board-note{min-height:52px;padding:1px}.board-note img{width:40px;height:40px}.board-note strong{font-size:12px}}

.board-character>img.kella-transparent-loop{display:block;width:100%;height:auto;animation:none;transform:none;filter:drop-shadow(5px 9px 5px #183e4240)}

/* Companion and second noticeboard. */
.board-character.has-video{left:auto;right:0;bottom:0;width:14%;max-width:220px;z-index:4;pointer-events:none}
.board-character.has-video video,.board-character>img.kella-transparent-loop{transform:scaleX(-1)}
.showcase-board{position:absolute;left:4.5%;top:13%;width:30%;height:68%;box-sizing:border-box;padding:18px 14px 14px;border:12px solid #855022;border-radius:8px;background:radial-gradient(ellipse at top,#fff3d2,#e9ce98);box-shadow:inset 0 0 0 2px #ffedbb,0 0 0 3px #4c2b12,0 14px 25px #14291c66;display:flex;flex-direction:column;color:#51391e;z-index:2}
.showcase-board header{text-align:center;margin-bottom:12px}.showcase-board header>span{font:700 9px Georgia,serif;letter-spacing:.18em}.showcase-board h2{font:700 clamp(18px,1.6vw,28px)/1.2 Georgia,serif;margin:5px 0 10px;color:#573817}.showcase-board label{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px}.showcase-board select{width:auto;min-height:32px;padding:4px 28px 4px 10px;color:#51391e;background:#fff0ca;border:1px solid #b78b42;border-radius:5px}
.showcase-players{list-style:none;padding:0;margin:0;display:grid;grid-template-rows:repeat(10,minmax(0,1fr));gap:3px;flex:1;min-height:0}
.showcase-player{display:flex;align-items:center;gap:9px;min-width:0;padding:3px 5px;border-bottom:1px solid #b7894938;background:#fff4d125;border-radius:4px}
.champion-rank{width:18px;flex-shrink:0;text-align:center;font:700 14px Georgia,serif}.champion-portrait{position:relative;flex-shrink:0;width:32px;height:32px;border:2px solid #af956a;border-radius:50%;background:#e0c491;box-shadow:0 2px 4px #73532c44}.champion-avatar{display:grid;width:100%;height:100%;place-items:center;object-fit:cover;border-radius:50%;font:bold 16px Georgia,serif;color:#51391e}.champion-info{min-width:0;flex:1}.champion-info strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 clamp(11px,1vw,15px)/1.25 Georgia,serif}.champion-info small{font:11px/1.3 'Segoe UI',sans-serif;color:#705437;display:block}.champion-score{text-align:right;font:700 11px 'Segoe UI',sans-serif;white-space:nowrap}.champion-score small{display:block;font-size:9px;font-weight:400}
.champion-crown{position:absolute;top:-12px;left:5px;width:22px;height:15px;fill:var(--medal);stroke:var(--medal-edge);stroke-width:2;filter:drop-shadow(0 1px 1px #66421d66)}
.showcase-player.gold{--medal:#f5c94f;--medal-edge:#96601b;background:linear-gradient(90deg,#eec15a66,#fff3c144)}.showcase-player.silver{--medal:#e4edf0;--medal-edge:#7d8b97;background:linear-gradient(90deg,#cad5d477,#fff3c144)}.showcase-player.bronze{--medal:#d6945e;--medal-edge:#8c502b;background:linear-gradient(90deg,#c8916266,#fff3c144)}
.showcase-player:is(.gold,.silver,.bronze) .champion-portrait{border:3px double var(--medal-edge);outline:2px solid var(--medal);box-shadow:0 0 0 3px var(--medal-edge),0 3px 5px #70482144}.showcase-player.gold .champion-portrait{border-radius:9px}.showcase-player.gold .champion-avatar{border-radius:5px}.showcase-player.bronze .champion-portrait{border-radius:35%}.showcase-message{grid-row:1/-1;align-self:center;text-align:center;font-size:13px}
@media(max-width:1100px) and (min-width:901px){.showcase-board{left:2%;width:33%;padding:14px 8px;border-width:9px}.showcase-player{gap:5px}.champion-info small{font-size:9px}.champion-score{font-size:9px}}
@media(max-width:900px){.alliance-board{height:auto;min-height:0;padding-top:790px;padding-bottom:145px;background:#294b33}.board-scene{height:840px}.board-paper{top:200px;height:420px}.showcase-board{position:relative;left:auto;top:auto;width:calc(100% - 40px);max-width:540px;height:650px;margin:35px auto 0;padding:20px 18px;border-width:12px}.showcase-board h2{font-size:25px}.showcase-player{gap:12px}.champion-info strong{font-size:15px}.champion-info small{font-size:12px}.champion-portrait{width:36px;height:36px}.champion-score{font-size:12px}.board-character.has-video{left:auto;right:0;bottom:0;width:130px;max-width:130px}.champion-crown{left:7px}}
@media(max-width:480px){.board-paper{top:202px;height:420px}.showcase-board{width:calc(100% - 28px);padding:16px 10px}.showcase-board h2{font-size:23px}.champion-info strong{font-size:14px}}

@media(max-width:900px){.alliance-board{background:#294b33 url('/assets/castle-scenery.png') center bottom/auto 100% no-repeat}}

.showcase-board label{color:#65451f}

/* Polished circular medal settings with engraved rims and jeweled crowns. */
.showcase-player.gold{--metal-light:#fff5b4;--metal-mid:#dfae39;--metal-dark:#80501b;--jewel:#b82f24}
.showcase-player.silver{--metal-light:#ffffff;--metal-mid:#b8c8d5;--metal-dark:#526273;--jewel:#3174b7}
.showcase-player.bronze{--metal-light:#ffe0ad;--metal-mid:#c3834d;--metal-dark:#69381f;--jewel:#347b61}
.showcase-player:is(.gold,.silver,.bronze) .champion-portrait{border:0;padding:4px;border-radius:50%;outline:1px solid var(--metal-dark);background:conic-gradient(from -35deg,var(--metal-light),var(--metal-mid) 12%,var(--metal-dark) 25%,var(--metal-light) 39%,var(--metal-mid) 52%,var(--metal-dark) 67%,var(--metal-light) 83%,var(--metal-mid),var(--metal-light));box-shadow:inset 0 0 0 1px var(--metal-light),inset 0 0 0 2px var(--metal-dark),0 2px 3px #38200e88;isolation:isolate}
.showcase-player:is(.gold,.silver,.bronze) .champion-portrait:after{content:'';position:absolute;inset:2px;border:1px dotted var(--metal-light);border-radius:50%;pointer-events:none;box-shadow:0 0 0 1px #49301944}
.showcase-player:is(.gold,.silver,.bronze) .champion-avatar{border-radius:50%;box-shadow:0 0 0 1px var(--metal-dark),0 0 0 2px var(--metal-light)}
.showcase-player .champion-crown{top:-17px;left:50%;transform:translateX(-50%);width:32px;height:22px;z-index:2;stroke:var(--metal-dark);stroke-width:1.3;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #39261499)}
.champion-crown .crown-engraving{fill:none;stroke:var(--metal-light);stroke-width:1}
.champion-crown .crown-pearls{fill:var(--metal-light)}
.champion-crown .crown-jewel{fill:var(--jewel);stroke:var(--metal-light);stroke-width:.8}

.showcase-player .champion-crown{top:-13px;width:29px;height:18px}
