*,:before,:after{box-sizing:border-box}html{background:var(--color-background)}body{background:var(--color-background);min-height:100vh;color:var(--color-foreground);font-family:var(--font-sans);flex-direction:column;margin:0;font-size:1.0625rem;line-height:1.55;display:flex}#content{flex:1}img{max-width:100%;height:auto}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:1.15}h1{margin:0 0 1rem;font-size:clamp(2.1rem,4.4vw,3.4rem)}h2{margin:2rem 0 .6rem;font-size:1.45rem}p{margin:0 0 1rem}a{color:var(--color-accent)}a:hover{color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}::selection{background:var(--color-primary);color:var(--color-primary-foreground)}.wrap{width:min(1080px,100% - 2rem);margin-inline:auto}.skip-link{z-index:10;background:var(--color-primary);color:var(--color-primary-foreground);border-radius:var(--radius);padding:.5rem .75rem;text-decoration:none;position:absolute;top:0;left:1rem;transform:translateY(-140%)}.skip-link:focus{transform:none}.site-header{background:var(--color-background)}.site-header[data-variant=bar],.site-header[data-variant=center]{background:var(--color-card);border-bottom:1px solid var(--color-border)}.site-header[data-variant=bar]{box-shadow:inset 0 4px 0 var(--color-primary)}.header-inner{gap:1rem 1.5rem;display:flex}.site-header[data-variant=bar] .header-inner{justify-content:space-between;align-items:center;min-height:4.5rem}.site-header[data-variant=center] .header-inner{text-align:center;flex-direction:column;align-items:center;padding-block:1.6rem 1.2rem}.site-header[data-variant=plain] .header-inner{flex-wrap:wrap;align-items:baseline;padding-block:1.4rem .4rem}.brand{color:inherit;font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:.7rem;font-size:1.2rem;font-weight:600;text-decoration:none;display:inline-flex}.site-header[data-variant=plain] .brand{letter-spacing:.12em;text-transform:uppercase;font-size:.95rem}.brand img{width:2rem;height:2rem}nav ul,.social{flex-wrap:wrap;gap:.35rem 1.15rem;margin:0;padding:0;list-style:none;display:flex}.site-header[data-variant=center] nav ul{justify-content:center}.site-header nav a,.site-footer nav a,.social a{color:var(--color-foreground);text-decoration:none}.site-header nav a:hover,.site-footer nav a:hover,.social a:hover{color:var(--color-primary)}.site-header[data-variant=plain] nav a{color:var(--color-muted-foreground)}.home,.page{padding-block:2.75rem 4.5rem}.todo-flag,.kicker{font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .85rem;font-size:.75rem;font-weight:700}.todo-flag{color:var(--color-primary-foreground);background:var(--color-primary);border-radius:var(--radius);padding:.3rem .55rem;display:inline-block}.kicker{color:var(--color-primary)}.lede{max-width:40rem;color:var(--color-muted-foreground);font-size:1.25rem}.todo-panel{border:1px dashed var(--color-primary);border-radius:var(--radius);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-card));max-width:44rem;margin-top:1.5rem;padding:1rem 1.15rem}.todo-panel p:last-child{margin-bottom:0}.page-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.page-list li{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.05rem .4rem}.page-list a{color:inherit;font-family:var(--font-display);font-weight:600;text-decoration:none}.page-list p{color:var(--color-muted-foreground)}.crumbs ol{color:var(--color-muted-foreground);flex-wrap:wrap;gap:.35rem .4rem;margin:0 0 1.25rem;padding:0;font-size:.92rem;list-style:none;display:flex}.crumbs a{color:inherit}.crumbs li:not(:last-child):after{content:"/";margin-left:.4rem}.prose{max-width:68ch}.prose ul{margin:0 0 1rem;padding-left:1.2rem}.prose li+li{margin-top:.35rem}.template-note,.note{color:var(--color-muted-foreground)}.template-note{border-left:3px solid var(--color-primary);padding-left:.8rem}.button{background:var(--color-primary);color:var(--color-primary-foreground);border-radius:var(--radius);padding:.7rem 1rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover{color:var(--color-primary-foreground);filter:brightness(1.08)}button.button{cursor:pointer;font:inherit;border:0}.stack-form{gap:.8rem;max-width:36rem;display:grid}.stack-form label{gap:.3rem;font-weight:600;display:grid}.stack-form input,.stack-form textarea{font:inherit;color:var(--color-foreground);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:.6rem .7rem}.form-note,.module-panel{margin:1.5rem 0}.form-note{color:var(--color-muted-foreground)}.faq details{border-top:1px solid var(--color-border);padding:.8rem 0}.faq details:last-child{border-bottom:1px solid var(--color-border)}.faq summary{cursor:pointer;font-weight:600}.site-footer{background:var(--color-card);border-top:1px solid var(--color-border);color:var(--color-muted-foreground);padding-block:2rem 2.4rem}.site-footer[data-variant=columns]{border-top:4px solid var(--color-primary)}.footer-grid{gap:1.5rem;display:grid}.site-footer[data-variant=columns] .footer-grid{grid-template-columns:1.4fr .8fr 1fr}.site-footer[data-variant=inline] .footer-grid{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.site-footer[data-variant=stack]{text-align:center}.site-footer[data-variant=stack] .footer-grid,.site-footer[data-variant=stack] nav ul,.site-footer[data-variant=stack] .social{justify-content:center}.site-footer[data-variant=stack] .footer-grid{justify-items:center}.footer-name,.legal-line,.copyright{margin:0 0 .45rem}.footer-name{color:var(--color-foreground);font-family:var(--font-display);font-size:1.15rem;font-weight:600}.legal-line{color:var(--color-foreground)}.site-footer[data-variant=stack] .legal-line{color:var(--color-primary);font-size:1.05rem}.site-footer nav ul{flex-direction:column;gap:.4rem}.site-footer[data-variant=inline] nav ul,.site-footer[data-variant=stack] nav ul{flex-direction:row}@media (max-width:760px){.site-header[data-variant=bar] .header-inner{flex-direction:column;align-items:flex-start;padding-block:.95rem}.site-footer[data-variant=columns] .footer-grid,.page-list{grid-template-columns:1fr}}.site-header nav ul{max-width:100%}.home-hero{padding-block:1.25rem 2.5rem}.home-hero h1{font-size:clamp(1.45rem,5.2vw,2.4rem)}.home-board{gap:1rem;max-width:40rem;margin:0 auto 1.5rem;display:grid}[data-duel-root]{min-height:min(100vw,36rem)}.entry-cards,.strategy-points,.buy-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin:1rem 0 2rem;padding:0;list-style:none;display:grid}.entry-cards li,.strategy-points li,.buy-cards li{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.05rem .85rem}.entry-icon{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.35rem;font-size:.75rem;display:block}.illustration{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-card);width:min(100%,36rem);height:auto;display:block}.rank-table{border-collapse:collapse;width:100%;margin:1rem 0 1.5rem;font-size:.95rem}.rank-table th,.rank-table td{border:1px solid var(--color-border);text-align:left;padding:.45rem .5rem}.rank-table th{background:var(--color-muted)}.disclaimer,.site-footer .disclaimer{color:var(--color-muted-foreground);font-size:.92rem}.duel{gap:.75rem;max-width:40rem;display:grid}.duel[aria-busy=true] .duel-board button{pointer-events:none}.duel-controls{flex-wrap:wrap;gap:.45rem;display:flex}.duel-controls .button,.duel-controls button{min-height:44px}.button-quiet{color:var(--color-foreground);border:1px solid var(--color-border);background:0 0}.button-quiet:hover{color:var(--color-foreground)}.duel-tray{flex-wrap:wrap;gap:.35rem;width:100%;display:flex}.duel-tray-item{font:inherit;border:1px solid var(--color-border);background:var(--color-card);color:var(--color-foreground);cursor:pointer;border-radius:4px;padding:.35rem .5rem;font-size:.8rem}.duel-tray-item.is-on{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 18%, var(--color-card))}.duel-status,.duel-note,.duel-combat{margin:0;font-size:.95rem}.duel-combat{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:.7rem .8rem}.duel-board{aspect-ratio:1;border:1px solid var(--color-border);background:var(--color-muted);grid-template-columns:repeat(10,minmax(0,1fr));width:min(100%,36rem);max-width:100%;display:grid}.duel-cell{aspect-ratio:1;background:var(--color-card);min-width:0;min-height:0;color:var(--color-foreground);cursor:pointer;border:0;border-radius:2px;place-items:center;margin:0;padding:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:clamp(.58rem,2.5vw,.95rem);font-weight:600;line-height:1;display:grid;position:relative}.duel-cell.is-alt{background:color-mix(in srgb, var(--color-muted) 70%, var(--color-card))}.duel-cell.is-lake{cursor:default;background:#3a5154}.duel-cell.is-red{box-shadow:inset 0 -3px #b85c3a}.duel-cell.is-blue{box-shadow:inset 0 3px #4d6f7c}.duel-cell.is-move{outline:2px solid var(--color-primary);outline-offset:-2px;background:color-mix(in srgb, var(--color-primary) 28%, var(--color-card))}.duel-cell.is-selected{outline:2px solid var(--color-accent);outline-offset:-2px}.duel-cell.is-enemy{color:var(--color-muted-foreground)}.duel-shape{font-size:.55em;line-height:1;position:absolute;top:1px;right:1px}.duel-inventories{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.duel-army{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:.7rem .8rem}.duel-army h3,.duel-army-title{font-size:1rem;font-weight:600;font-family:var(--font-display);margin:0 0 .4rem}.duel-army ul{margin:0;padding-left:1.1rem;font-size:.88rem}@media (max-width:760px){.entry-cards,.strategy-points,.buy-cards,.duel-inventories{grid-template-columns:1fr}.home,.page{padding-block:1.2rem 3rem}}@media (prefers-reduced-motion:reduce){.duel-cell{transition:none}}
