.castle-page{max-width:1440px}.castle-nav,.castle-heading,.castle-round,.castle-map-toolbar{display:flex;gap:1.5rem;align-items:center;justify-content:space-between}.castle-nav{max-width:1440px;margin:auto;padding:1.1rem 1.5rem}.castle-heading{margin-bottom:2rem}.castle-heading .app-title{font-size:clamp(2rem,5vw,4rem)}.castle-round{padding:1.6rem;border-color:#8c6b28;margin:1.5rem 0 2rem;background:linear-gradient(120deg,#222617,#111b2d)}.castle-round h2,.castle-notice h2,.castle-map-toolbar h2{font-size:1.5rem;font-weight:800;margin:.4rem 0}.castle-round p{color:#cbd5e1;max-width:660px}.castle-clock{min-width:210px;color:#fcd34d;font-size:.8rem}.castle-clock strong,.castle-clock span{display:block;margin-top:.4rem}.castle-world{overflow:hidden;background:radial-gradient(ellipse at 40% 40%,#17283d,#080f1b)}.castle-map-toolbar{padding:1.5rem;flex-wrap:wrap}.castle-map-toolbar label{min-width:170px}.castle-zoom{display:flex;gap:.4rem}.castle-zoom button{border:1px solid #475569;padding:.5rem .9rem;border-radius:.4rem;color:#e2e8f0;background:#172033}.castle-map-scroll{overflow:auto;max-height:780px}.castle-map-scroll svg{display:block;width:100%;min-width:650px}.castle-tile{transition:opacity .2s;cursor:pointer}.castle-tile:hover polygon,.castle-tile:focus polygon{fill-opacity:.85;stroke:#fff;stroke-width:2}.castle-tile text{fill:#fff;font-size:8px;font-weight:800;paint-order:stroke;stroke:#0b1420;stroke-width:2px;pointer-events:none}.castle-tile image{filter:drop-shadow(0 1px 2px #000)}.castle-inset-label{fill:#94a3b8;font-size:10px;letter-spacing:2px}.castle-map-help{font-size:.8rem;color:#94a3b8;padding:.6rem 1.5rem}.castle-legend{display:flex;gap:1.1rem;flex-wrap:wrap;padding:1rem 1.5rem 1.5rem;font-size:.85rem}.castle-legend i,.castle-school i{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;margin-right:.5rem}.castle-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:2rem;margin-top:2.5rem}.castle-section-title{font-size:1.5rem;font-weight:800;margin:.4rem 0 1.2rem}.castle-fronts{display:grid;gap:1rem}.castle-front{padding:1.3rem}.castle-front-title{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.castle-front-title h3{font-weight:800;font-size:1.1rem}.castle-front-title span:last-child{margin-left:auto;color:#94a3b8;font-size:.8rem}.castle-front form{display:grid;gap:1rem}.castle-front select{max-width:100%;width:100%}.castle-front .app-button{justify-self:start}.castle-small{font-size:.8rem;color:#94a3b8;margin-top:.8rem}.castle-ceasefire{color:#94a3b8;font-weight:700}.castle-pick{font-weight:700;line-height:1.7}.castle-pick span{color:#fbbf24}.castle-standings{overflow:auto}.castle-standings table{width:100%;text-align:left}.castle-standings th{font-size:.75rem;color:#94a3b8;white-space:nowrap}.castle-standings th,.castle-standings td{padding:.9rem;border-bottom:1px solid #293346}.castle-standings td:not(:first-child){font-size:1.1rem;font-weight:800;text-align:right}.castle-standings small{display:block;color:#94a3b8}.castle-rank{color:#fbbf24;display:inline-block;width:1.7rem}.castle-rules{padding:1.3rem;margin-top:1rem}.castle-rules summary{cursor:pointer;font-weight:800}.castle-rules ol{list-style:decimal;padding-left:1.2rem;margin-top:1rem}.castle-rules li{margin:.7rem 0;color:#cbd5e1}.castle-rules p{font-size:.8rem;color:#94a3b8}.castle-notice{padding:1.5rem;margin:1.5rem 0}.castle-notice p{margin:.7rem 0}.castle-incoming{padding:1rem;margin:.6rem 0;color:#fecaca}.castle-battles-title{margin-top:2rem}.castle-battles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.castle-battle-card{padding:1.1rem;overflow:hidden;background:linear-gradient(145deg,#111827,#172033);border-color:#334155}.castle-battle-incoming{border-color:#7f1d1d}.castle-battle-outgoing{border-color:#1d4ed8}.castle-battle-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.castle-battle-head>div{display:grid;gap:.25rem}.castle-battle-head>span{font-size:.72rem;color:#94a3b8;text-align:right}.castle-battle-badge{font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#fbbf24}.castle-battle-matchup{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.7rem}.castle-battle-matchup>div{position:relative;display:grid;gap:.25rem;min-width:0;padding:.8rem;border-radius:.7rem;background:#0b1220}.castle-battle-matchup>div:last-child{text-align:right}.castle-battle-team{font-weight:800;line-height:1.2}.castle-battle-matchup b{font-size:1.65rem}.castle-battle-matchup small{font-size:.62rem;font-weight:900;letter-spacing:.08em;color:#94a3b8}.castle-battle-matchup .castle-attacking-team{outline:1px solid #fbbf24;background:#211d0d}.castle-battle-matchup .castle-attacking-team small{color:#fbbf24}.castle-battle-matchup .castle-target-team{outline:1px solid #7f1d1d}.castle-battle-vs{color:#64748b;font-size:.75rem;font-weight:800}.castle-battle-meta{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.9rem;color:#94a3b8;font-size:.72rem}.castle-battle-meta span{padding:.28rem .45rem;border-radius:.35rem;background:#0b1220}.castle-battle-result{margin-top:.75rem;font-size:.78rem;font-weight:700;color:#cbd5e1}.castle-battle-result.won{color:#6ee7b7}.castle-battle-result.lost{color:#fca5a5}.castle-section{margin-top:2.5rem}.castle-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.7rem}.castle-school{display:flex;gap:.7rem;padding:.85rem;align-items:center;scroll-margin-top:1rem}.castle-school strong{font-size:.85rem}.castle-school p{color:#94a3b8;font-size:.75rem;margin-top:.2rem}.castle-school:target{outline:2px solid #fbbf24}.castle-history article{display:grid;grid-template-columns:160px 1fr 150px;gap:.7rem;padding:1rem;border-bottom:1px solid #293346;font-size:.85rem}.castle-history article>span,.castle-history small{color:#94a3b8}.castle-outcome-won{color:#6ee7b7}.castle-history small{grid-column:2}.castle-dimmed{opacity:.15}.castle-school.castle-dimmed{display:none}@media(max-width:800px){.castle-columns{grid-template-columns:1fr}.castle-heading,.castle-round{align-items:flex-start;flex-direction:column}.castle-clock{border-top:1px solid #475569;padding-top:.8rem;width:100%}.castle-heading .app-button{align-self:flex-start}.castle-history article{grid-template-columns:1fr}.castle-history small{grid-column:1}.castle-nav{font-size:.85rem;flex-wrap:wrap}.castle-map-toolbar{gap:.8rem;padding:1rem}}@media(prefers-reduced-motion:reduce){.castle-tile{transition:none}}
