@font-face{font-family:'Cloister Pixel';src:url('./assets/fonts/cloister-pixel.ttf') format('truetype');font-weight:100 900;font-display:swap}
body,button,input,select,textarea,#interface *,#error *,#loading *{font-family:'Cloister Pixel',Georgia,serif!important;font-synthesis:none;letter-spacing:0}
#interface{ text-shadow:2px 2px 0 #081019aa }
#announcement-eyebrow{letter-spacing:.14em}#announcement-title{font-size:clamp(28px,4vw,52px)}
#round-announcement[data-kind=round]{top:25%;padding:12px 20px}
#round-announcement[data-kind=round] #announcement-title{font-size:30px;margin:8px 0}
#round-announcement[data-kind=round] #announcement-score{font-size:22px}
#target{display:none!important}
#vitals-orbs{position:absolute;left:25px;bottom:24px;width:308px;height:152px;image-rendering:pixelated;pointer-events:none}
body:not(.playing) #vitals-orbs{display:none}
#combat-hud .stamina-track,#stamina-caption,#player-health{display:none}
#combat-hud{bottom:54px}#practice-log{left:36px;bottom:194px;max-width:290px;line-height:1.5}
#practice-log small{font-size:12px}#match-hud{top:35px;font-size:14px}#round-score{font-size:28px}
#defense-hud{font-size:13px}#defense-hud small,#help-line{font-size:12px}
.fallen #reticle,.fallen #hitmarker,.fallen #combat-hud,.fallen #help-line{visibility:hidden}
.wordmark{font-size:26px}.achievement-card p{font-size:12px}.achievement-status{font-size:11px}
@media(max-width:850px){#vitals-orbs{left:12px;bottom:20px;width:246px;height:122px}#practice-log{left:22px;bottom:156px;max-width:235px}#match-hud{top:80px}#combat-hud{bottom:62px;left:63%}#defense-hud{bottom:140px}}
@media(max-width:550px){#vitals-orbs{width:200px;height:99px}#combat-hud{display:none}#practice-log{bottom:136px;font-size:11px}#help-line{display:none}}

/* Small pixel instruments leave the blade and opponent unobstructed. */
#vitals-orbs{width:144px;height:152px}
#reticle-stamina{position:absolute;left:50%;top:calc(50% + 21px);transform:translateX(-50%);width:66px;height:5px;padding:1px;background:#101b25bb;box-shadow:0 1px 0 #bcb49a45;opacity:.78;pointer-events:none}
#reticle-stamina-fill{height:3px;background:#658f4b;transform-origin:left;transition:transform .08s linear,background-color .12s;image-rendering:pixelated}
body:not(.playing) #reticle-stamina,.fallen #reticle-stamina{display:none}
#commend-prompt{position:absolute;left:50%;top:calc(25% + 162px);transform:translateX(-50%);color:#d9ceac;font-size:15px;padding:8px 13px;background:#14202bbd;border-bottom:2px solid #7d8c74;text-align:center;white-space:nowrap}
#commend-prompt[data-final=true]{top:calc(47% + 140px)}
#commend-toast{position:absolute;right:34px;top:93px;padding:9px 13px;border-left:3px solid #99b67d;color:#d4dfb8;background:#14242ed9;font-size:15px;z-index:5}
body:not(.playing) #commend-toast{display:none}
#emote-wheel{position:absolute;width:min(360px,70vw);height:min(360px,70vw);left:50%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(3px 3px 0 #080e16aa);pointer-events:none}
#emote-wheel svg{width:100%;height:100%;shape-rendering:crispEdges}
.emote-sector{fill:#15232de8;stroke:#8d876d;stroke-width:1.5}
.emote-diagram{fill:none;stroke:#ddd3b6;stroke-width:1.6;stroke-linejoin:bevel}
.selected .emote-sector{fill:#3a4c49;stroke:#b9cd9f;stroke-width:3}
.selected .emote-diagram{stroke:#f0e2bb}.emote-center{fill:#aaa88c}.emote-cursor{fill:#efe4c7;stroke:#111b28}
.wardrobe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px;margin:12px 0 25px}
.wardrobe-grid .wardrobe-item{aspect-ratio:1;padding:5px;min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:#182b35;border:2px solid #566467;box-shadow:inset 0 0 0 2px #0e1b25;color:#d9d4bc;text-align:center}
.wardrobe-grid .wardrobe-item img{width:100%;height:calc(100% - 28px);object-fit:contain;image-rendering:pixelated}
.wardrobe-grid .wardrobe-item span{font-size:12px;line-height:1.15;min-height:24px;display:grid;place-items:center}
.wardrobe-grid .wardrobe-item.equipped{border-color:#80b86c;box-shadow:inset 0 0 0 2px #41613b,0 0 0 1px #80b86c}
.wardrobe-grid .wardrobe-item.equipped:after{content:'';position:absolute;right:8px;top:8px;width:7px;height:7px;background:#97c682}
.wardrobe-grid .wardrobe-item:hover{background:#263a40}.wardrobe-item:disabled{opacity:.6;cursor:default}
@media(max-width:850px){#vitals-orbs{width:115px;height:122px}}
@media(max-width:550px){#vitals-orbs{width:94px;height:99px}.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#commend-prompt{font-size:12px}}
@media(prefers-reduced-motion:reduce){#reticle-stamina-fill{transition:none}}
#private-invite {pointer-events:auto}
.wardrobe-grid {grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.wardrobe-grid .wardrobe-item {aspect-ratio:1;min-height:200px;display:grid;grid-template-rows:minmax(65px,1fr) auto auto;justify-items:center;width:100%}
.wardrobe-grid .wardrobe-item img {height:100%;min-height:0;max-height:125px}
.wardrobe-grid .wardrobe-item .wardrobe-source {font-size:10px;line-height:1.4;min-height:30px;padding:3px 4px 7px}
@media(max-width:550px){.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wardrobe-grid .wardrobe-item{min-height:196px}}
#match-result,#match-result * {font-family:'Cloister Pixel',Georgia,serif!important}
#match-result h2 {overflow-wrap:anywhere}
#private-invite #copy-invite {margin-right:12px}
.duel-entry {display:flex;flex-wrap:wrap;gap:4px 16px}
.duel-entry .primary,.duel-entry #queue-copy {flex-basis:100%}
@media(min-width:1001px) and (max-height:950px){#profile-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 7px}#profile-stats span{font-size:9px;overflow-wrap:anywhere}}
@media(max-width:650px){body:not(.playing) #interface>header{top:0;left:0;right:0;padding:18px 20px 12px;background:#101d26f5;z-index:5}}
