:root{--void:#05070a;--ink:#05070a;--panel:#0b0f14;--steel:#171c22;--paper:#e8e4dc;--fog:#a7adb5;--dim:#6c737c;--sith-red:#8e2c2f;--signal-red:#b13a3e;--copper:#b26d50;--crimson:#5e1e23;--line:rgba(232,228,220,.2)}
*{box-sizing:border-box}html{background:var(--void)}body{margin:0;background:var(--void);color:var(--paper);font:16px/1.5 Aptos,"Segoe UI",sans-serif}.site-header{position:absolute;z-index:2;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:28px 4.2vw}.brand{color:var(--paper);font:700 19px/1 Consolas,monospace;letter-spacing:.08em;text-decoration:none}.brand span{color:var(--paper);font-weight:400}.site-nav{display:flex;align-items:center;gap:18px}.header-link,.database-status{display:inline-flex;align-items:center;font:12px/1 Consolas,monospace;letter-spacing:.08em;white-space:nowrap}.header-link{gap:8px;color:var(--sith-red);text-decoration:none;transition:color .2s ease}.header-link:hover,.header-link:focus-visible{color:var(--signal-red)}.nav-arrow{color:var(--sith-red);font-size:16px}.database-status{gap:7px;border-left:1px solid rgba(232,228,220,.22);padding-left:18px;color:var(--fog);font-size:10px;letter-spacing:.12em}.status-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--signal-red);box-shadow:0 0 0 3px rgba(177,58,62,.14)}.hero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:100svh;overflow:hidden;padding:clamp(128px,19vh,185px) 4.2vw 8vh}.hero-image,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-image{background:url("/swu-tw-assets/hero-space.png") center/cover no-repeat;transform:scale(1.025);animation:hero-drift 18s ease-in-out infinite alternate}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,7,10,.96) 0%,rgba(5,7,10,.8) 37%,rgba(5,7,10,.16) 75%),linear-gradient(0deg,rgba(5,7,10,.72),transparent 40%)}.hero-copy{max-width:660px;animation:hero-in .8s .1s both}.kicker,.section-label,footer{margin:0;color:var(--sith-red);font:12px/1.2 Consolas,monospace;letter-spacing:.16em}.hero h1{margin:20px 0 23px;font:400 clamp(5rem,13vw,11rem)/.72 Georgia,"Iowan Old Style",serif;letter-spacing:-.09em}.hero h1 em{color:var(--paper);font-style:normal}.intro{max-width:34ch;margin:0;color:var(--paper);font-size:clamp(1rem,1.5vw,1.2rem)}.primary-action{display:inline-flex;gap:42px;align-items:center;margin-top:38px;border-bottom:1px solid var(--sith-red);padding-bottom:10px;color:var(--paper);font-weight:700;text-decoration:none;transition:gap .2s ease,color .2s ease}.primary-action:hover{gap:52px;color:var(--signal-red)}.primary-action span{color:var(--sith-red);font-size:22px}.hero-index{position:absolute;right:4.2vw;bottom:8vh;margin:0;color:var(--dim);font:12px Consolas,monospace;letter-spacing:.12em;writing-mode:vertical-rl}.mission,.route{padding:clamp(80px,12vw,160px) 4.2vw}.mission{background:var(--panel);color:var(--paper)}.mission-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:clamp(35px,10vw,180px);align-items:end;max-width:1260px;margin:42px auto 0}.mission h2,.route h2{margin:0;font:400 clamp(2.5rem,5vw,5.5rem)/.95 Georgia,"Iowan Old Style",serif;letter-spacing:-.06em}.mission-grid p{max-width:32ch;margin:0;color:var(--fog)}.route{border-top:1px solid var(--steel)}.route-head{display:flex;gap:30px;justify-content:space-between;align-items:end;max-width:1260px;margin:42px auto 64px}.route-head a{color:var(--paper);text-decoration:none;white-space:nowrap}.route-head a span{color:var(--sith-red);font-size:20px}.archive-link{display:grid;grid-template-columns:80px minmax(0,1.4fr) minmax(170px,.8fr) auto;gap:20px;align-items:center;max-width:1260px;margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;color:var(--paper);text-decoration:none;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.archive-link:hover{border-color:var(--signal-red);background:linear-gradient(90deg,rgba(94,30,35,.28),transparent 55%);color:var(--paper)}.archive-number{color:var(--sith-red);font:12px Consolas,monospace}.archive-name{font:400 clamp(1.5rem,3vw,2.8rem)/1 Georgia,serif;letter-spacing:-.04em}.archive-detail{color:var(--fog);font-size:14px}.archive-arrow{color:var(--sith-red);font-size:24px}footer{padding:24px 4.2vw;border-top:1px solid var(--steel);color:var(--dim);font-size:10px}@keyframes hero-in{from{opacity:0;transform:translateY(20px)}}@keyframes hero-drift{to{transform:scale(1.08) translateX(-1.2%)}}@media(max-width:700px){.site-header{padding:22px 24px}.site-nav{gap:0}.database-status{display:none}.hero{padding:130px 24px 60px}.hero-index{right:24px;bottom:40px}.mission,.route{padding:76px 24px}.mission-grid,.route-head{display:block}.mission-grid p{margin-top:30px}.route-head a{display:inline-block;margin-top:28px}.route-head{margin-bottom:42px}.archive-link{grid-template-columns:42px 1fr auto;gap:14px}.archive-detail{grid-column:2/4}.archive-arrow{grid-column:3;grid-row:1}.hero-shade{background:linear-gradient(90deg,rgba(5,7,10,.94),rgba(5,7,10,.3)),linear-gradient(0deg,rgba(5,7,10,.78),transparent 50%)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Shared SWU Taiwan expansion */
.desktop-nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,34px)}.desktop-nav a{color:var(--paper);font:12px/1 Consolas,monospace;letter-spacing:.06em;text-decoration:none;transition:color .2s ease}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--copper)}.mobile-nav{display:none}.site-header-solid{position:relative;background:var(--ink);border-bottom:1px solid #292d34}.light-section{background:var(--paper);color:var(--ink)}.light-section .route-head a,.light-section .section-label{color:#9e583d}.home-feed{padding:clamp(80px,12vw,160px) 4.2vw}.editorial-list,.city-list{max-width:1260px;margin:auto}.feed-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:24px;align-items:start;border-top:1px solid currentColor;padding:22px 0;color:inherit}.feed-row:last-child{border-bottom:1px solid currentColor}.feed-row h3,.feed-row p{margin:0}.feed-row h3{font:400 clamp(1.35rem,2.5vw,2.25rem)/1.05 Georgia,serif;letter-spacing:-.04em}.feed-row p:not(.feed-date){margin-top:6px;color:inherit;opacity:.65}.feed-date{font:11px/1.4 Consolas,monospace;letter-spacing:.1em;color:var(--copper)!important;opacity:1!important}.feed-link{text-decoration:none;transition:color .2s ease}.feed-link:hover{color:var(--copper)}.city-list{display:flex;flex-wrap:wrap;border-top:1px solid var(--line)}.city-list a{width:33.333%;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;color:var(--paper);font:400 clamp(1.25rem,2.8vw,2.5rem)/1 Georgia,serif;text-decoration:none}.city-list a:nth-child(3n){border-right:0}.city-list a span{color:var(--copper)}.empty-note{margin:0;color:var(--fog)}.light-section .empty-note{color:#555961}.community-cta{padding:clamp(80px,12vw,140px) 4.2vw;background:#10141a}.community-cta h2{max-width:1260px;margin:35px auto;font:400 clamp(2.5rem,5vw,5.5rem)/.95 Georgia,serif;letter-spacing:-.06em}.community-links{display:flex;gap:18px;max-width:1260px;margin:auto}.community-links a,.submission a{border-bottom:1px solid var(--copper);padding-bottom:8px;color:var(--paper);text-decoration:none}.editorial-page,.utility-page{background:var(--ink)}.page-intro{max-width:1260px;margin:auto;padding:clamp(85px,13vw,160px) 4.2vw clamp(70px,9vw,120px)}.page-intro h1{margin:20px 0;color:var(--paper);font:400 clamp(4rem,10vw,9rem)/.78 Georgia,serif;letter-spacing:-.08em}.page-intro h1 em{color:var(--copper);font-style:normal}.page-intro>p:last-child{max-width:39ch;margin:0;color:var(--fog);font-size:clamp(1rem,1.5vw,1.2rem)}.feature-block{display:grid;grid-template-columns:minmax(100px,.35fr) minmax(0,1fr);gap:clamp(30px,8vw,120px);max-width:1260px;margin:auto;border-top:1px solid var(--line);padding:clamp(38px,6vw,80px) 4.2vw}.feature-block h2{margin:0;color:var(--paper);font:400 clamp(2.3rem,5vw,5rem)/.92 Georgia,serif;letter-spacing:-.06em}.feature-block div>p{max-width:48ch;margin:24px 0 0;color:var(--fog);font-size:clamp(1rem,1.4vw,1.16rem)}.feature-number{margin:5px 0;color:var(--copper);font:12px Consolas,monospace;letter-spacing:.14em}.emphasis-block{background:#11161d}.format-section{margin-top:70px;padding:clamp(70px,10vw,130px) 4.2vw;background:var(--paper);color:var(--ink)}.format-section h2{max-width:1260px;margin:38px auto;font:400 clamp(2.4rem,5vw,5.5rem)/.95 Georgia,serif;letter-spacing:-.06em}.format-list,.starter-list{display:grid;grid-template-columns:repeat(4,1fr);max-width:1260px;margin:auto;border-top:1px solid #8f918f}.format-list span{padding:18px 0;border-bottom:1px solid #8f918f;font:400 clamp(1.2rem,2vw,2rem) Georgia,serif}.starter-list{grid-template-columns:repeat(3,1fr);gap:28px}.starter-list h3{margin:18px 0 8px;font:400 1.6rem Georgia,serif}.starter-list p{margin:0;color:#555961}.page-cta{max-width:1260px;margin:0 auto;padding:80px 4.2vw 110px}.page-cta a{border-bottom:1px solid var(--copper);padding-bottom:9px;color:var(--paper);font-size:1.15rem;text-decoration:none}.utility-page{min-height:calc(100vh - 100px)}.utility-list{max-width:1260px;margin:0 auto;padding:0 4.2vw 100px}.utility-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:28px;align-items:start;border-top:1px solid var(--line);padding:28px 0}.utility-row h2{margin:4px 0 0;color:var(--paper);font:400 clamp(1.7rem,3vw,3.2rem)/1 Georgia,serif;letter-spacing:-.04em}.utility-row p{margin:8px 0 0;color:var(--fog)}.utility-index,.utility-meta{margin:0!important;color:var(--copper)!important;font:11px/1.5 Consolas,monospace!important;letter-spacing:.1em}.utility-description{max-width:52ch}.row-action,.row-links a{color:var(--paper);font-size:14px;text-decoration:none}.row-action:hover,.row-links a:hover{color:var(--copper)}.row-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:end}.location-group,.tool-group{margin-bottom:72px}.location-group>.section-label,.tool-group>.section-label{margin-bottom:18px}.submission{max-width:1260px;margin:auto;border-top:1px solid var(--line);padding:65px 4.2vw 105px}.submission h2{margin:18px 0 30px;font:400 clamp(2rem,4vw,4rem)/.95 Georgia,serif}
@media(max-width:700px){.desktop-nav{display:none}.mobile-nav{display:block;color:var(--paper);font:12px Consolas,monospace;letter-spacing:.1em}.mobile-nav summary{cursor:pointer;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:24px;top:58px;display:grid;min-width:220px;padding:12px;background:#12161d;border:1px solid var(--line)}.mobile-nav nav a{padding:10px;color:var(--paper);text-decoration:none}.feed-row,.utility-row{grid-template-columns:1fr;gap:8px}.feed-row>span{display:none}.city-list a{width:50%;padding:18px 0}.city-list a:nth-child(3n){border-right:1px solid var(--line)}.city-list a:nth-child(2n){border-right:0}.community-links{flex-wrap:wrap}.feature-block{grid-template-columns:1fr;gap:4px}.format-list,.starter-list{grid-template-columns:1fr}.format-list span{padding:12px 0}.row-links{justify-content:start}.page-intro{padding-inline:24px}.utility-list{padding-inline:24px}.feature-block{padding-inline:24px}.page-cta{padding-inline:24px}}
.starter-list-title{color:#05070a}

/* Getting started: a visual first-game walkthrough. */
.getting-page{background:var(--ink)}.getting-wrap{width:min(1260px,100%);margin:auto;padding-inline:4.2vw}.getting-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:calc(100svh - 78px);overflow:hidden}.getting-hero-art,.getting-hero-shade{position:absolute;inset:0;z-index:-2}.getting-hero-art{background:url("/swu-tw-assets/hero-space.png") center/cover no-repeat;transform:scale(1.04);animation:hero-drift 18s ease-in-out infinite alternate}.getting-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,7,10,.96),rgba(5,7,10,.78) 43%,rgba(5,7,10,.18)),linear-gradient(0deg,rgba(5,7,10,.8),transparent 48%)}.getting-hero-copy{padding-block:clamp(86px,12vw,150px)}.getting-hero h1,.getting-section h2,.getting-final h2{margin:18px 0 22px;color:var(--paper);font:400 clamp(3.4rem,8vw,7.2rem)/.83 Georgia,"Iowan Old Style",serif;letter-spacing:-.075em}.getting-hero h1 em{color:var(--copper);font-style:normal}.getting-hero-copy>p:not(.section-label){max-width:39ch;margin:0;color:var(--paper);font-size:clamp(1rem,1.5vw,1.2rem)}.getting-hero-copy .win-condition{margin-top:19px;color:var(--paper);font-weight:700}.getting-actions{display:flex;flex-wrap:wrap;gap:18px 30px;align-items:center;margin-top:38px}.getting-primary,.getting-secondary{display:inline-flex;align-items:center;gap:22px;min-height:44px;color:var(--paper);text-decoration:none}.getting-primary{border-bottom:1px solid var(--copper);font-weight:700}.getting-primary span{color:var(--copper);font-size:22px;transition:transform .2s ease}.getting-primary:hover span{transform:translateX(8px)}.getting-secondary{color:var(--fog);font-size:.92rem}.getting-secondary:hover{color:var(--paper)}.getting-section{padding-block:clamp(78px,11vw,140px)}.section-heading{margin-bottom:clamp(40px,6vw,72px)}.getting-section h2,.getting-final h2{max-width:14ch;margin-bottom:0;font-size:clamp(2.8rem,5.8vw,5.7rem);line-height:.9}.section-heading>p:last-child{max-width:42ch;margin:25px 0 0;color:var(--fog)}.why-section{background:#10141a}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.why-feature{min-width:0;padding:28px clamp(20px,3vw,44px) 0;border-right:1px solid var(--line)}.why-feature:first-child{padding-left:0}.why-feature:last-child{border-right:0}.why-feature h3,.play-steps h3,.deck-paths h3{margin:27px 0 12px;color:var(--paper);font:400 clamp(1.55rem,2.4vw,2.25rem)/1 Georgia,serif;letter-spacing:-.04em}.why-feature p{max-width:30ch;margin:0;color:var(--fog)}.leader-visual,.turn-visual,.arena-visual{height:164px;border-bottom:1px solid var(--line)}.leader-visual{display:flex;gap:12px;align-items:center;justify-content:center;overflow:hidden}.leader-visual img,.leader-card-face{width:88px;height:126px;border:1px solid rgba(232,228,220,.42);border-radius:5px;object-fit:cover;box-shadow:0 12px 24px rgba(0,0,0,.25)}.leader-card-face{display:grid;place-items:center;background:linear-gradient(150deg,#6d2d2f,#171c22);color:var(--paper);font:10px/1.2 Consolas,monospace;letter-spacing:.12em;text-align:center}.leader-card-face.deployed{background:linear-gradient(150deg,#304e54,#171c22)}.leader-transform{color:var(--copper);font-size:22px}.turn-visual{display:flex;gap:10px;align-items:center;justify-content:center;font:10px Consolas,monospace;letter-spacing:.08em}.turn-visual span{color:var(--paper)}.turn-visual i{width:16px;height:1px;background:var(--copper)}.arena-visual{display:grid;grid-template-rows:1fr 1fr}.arena-visual>div{display:flex;gap:7px;align-items:center;border-bottom:1px solid var(--line)}.arena-visual>div:last-child{border:0}.arena-visual strong{width:54px;color:var(--copper);font:10px Consolas,monospace;letter-spacing:.08em}.mini-card{width:29px;height:43px;border:1px solid #76828e;border-radius:3px;background:linear-gradient(145deg,#35495e,#10141a);transform:rotate(-5deg)}.mini-card.offset{transform:translateY(6px) rotate(6deg)}.mini-card.ground{background:linear-gradient(145deg,#6a4633,#15171b)}.play-section{border-top:1px solid var(--steel)}.play-steps{margin-block:0;padding-block:0;list-style:none}.play-steps li{display:grid;grid-template-columns:minmax(85px,.17fr) minmax(0,1fr);gap:clamp(20px,5vw,80px);border-top:1px solid var(--line);padding:clamp(30px,4.4vw,62px) 0}.play-steps li:last-child{border-bottom:1px solid var(--line)}.play-steps>li>span{color:var(--copper);font:12px Consolas,monospace;letter-spacing:.14em}.play-steps h3{margin:0}.play-steps p{max-width:53ch;margin:15px 0 0;color:var(--fog)}.play-steps b{color:var(--paper)}.play-steps ul{display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0 0;padding:0;list-style:none;color:var(--paper);font-size:.9rem}.play-steps li li::before{content:"/ ";color:var(--copper)}.play-steps small{display:block;max-width:53ch;margin-top:16px;color:var(--dim)}.deck-section{background:var(--paper);color:var(--ink)}.deck-section h2{color:var(--ink)}.deck-paths{display:grid;grid-template-columns:repeat(3,1fr);padding-block:0;border-top:1px solid #8f918f}.deck-paths article{display:flex;flex-direction:column;min-height:300px;padding:28px clamp(22px,3vw,45px) 0;border-right:1px solid #8f918f}.deck-paths article:first-child{padding-left:0}.deck-paths article:last-child{border-right:0}.deck-paths p{margin:0;color:#9e583d;font:11px Consolas,monospace;letter-spacing:.09em}.deck-paths h3{color:var(--ink)}.deck-paths span{max-width:28ch;color:#555961}.deck-paths a{margin-top:auto;padding-top:30px;color:var(--ink);font-weight:700;text-decoration:none}.deck-paths a:hover{color:#9e583d}.resources-section{padding-block:clamp(62px,8vw,100px);border-bottom:1px solid var(--steel)}.resources-inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(300px,1.2fr);gap:60px;align-items:end}.resources-inner h2{font-size:clamp(2.5rem,4.5vw,4.6rem)}.resources-inner nav{border-top:1px solid var(--line)}.resources-inner a{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);color:var(--paper);text-decoration:none}.resources-inner a:hover{color:var(--copper)}.resources-inner a span{color:var(--copper)}.getting-final{padding:clamp(80px,12vw,150px) 0;background:#10141a}.getting-final>div>p:not(.section-label){max-width:38ch;margin:25px 0 0;color:var(--fog);font-size:1.08rem}.getting-final .getting-actions{margin-top:35px}
@media(max-width:700px){.getting-wrap{padding-inline:24px}.getting-hero{min-height:calc(100svh - 68px)}.getting-hero-copy{padding-block:76px}.getting-hero h1{font-size:clamp(3.3rem,17vw,5.3rem)}.getting-hero-shade{background:linear-gradient(90deg,rgba(5,7,10,.94),rgba(5,7,10,.35)),linear-gradient(0deg,rgba(5,7,10,.82),transparent 55%)}.getting-actions{display:grid;gap:9px;justify-items:start}.why-grid,.deck-paths,.resources-inner{grid-template-columns:1fr}.why-feature,.why-feature:first-child,.deck-paths article,.deck-paths article:first-child{padding:28px 0 0;border-right:0;border-bottom:1px solid var(--line)}.why-feature:last-child,.deck-paths article:last-child{border-bottom:0}.why-feature p{padding-bottom:29px}.deck-paths article{min-height:0;padding-bottom:29px}.deck-paths a{margin-top:0;padding-top:26px}.play-steps li{grid-template-columns:48px 1fr;gap:16px}.resources-inner{gap:35px}.getting-section h2,.getting-final h2{max-width:11ch}.leader-visual,.turn-visual,.arena-visual{height:142px}}
.leader-visual img{width:108px;height:154px;object-fit:contain}.leader-visual img:first-child{width:154px;height:108px}
.leader-visual,.conversation-visual,.arena-visual{height:244px}.conversation-visual{display:grid;gap:6px;align-content:center;border-bottom:1px solid var(--line)}.conversation-message{display:grid;justify-self:start;gap:2px;max-width:82%;padding:5px 8px;border:1px solid rgba(232,228,220,.2);border-radius:8px 8px 8px 2px;background:#171c22;color:var(--paper);font-size:10px;line-height:1.25}.conversation-message b{color:var(--copper);font:8px/1 Consolas,monospace;letter-spacing:.08em}.conversation-message.is-opponent{justify-self:end;border-color:rgba(178,109,80,.38);border-radius:8px 8px 2px;background:rgba(94,30,35,.35)}
.cards-section{background:#0b0e13;border-top:1px solid var(--steel);border-bottom:1px solid var(--steel)}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}.card-type{display:grid;grid-template-rows:230px auto auto 1fr;align-content:start;min-width:0;padding:0 clamp(20px,3vw,44px) 30px;border-right:1px solid var(--line)}.card-type:first-child{padding-left:0}.card-type:last-child{border-right:0}.card-type-art{display:flex;align-items:flex-end;justify-content:center;min-height:0;overflow:hidden;border-bottom:1px solid var(--line)}.card-type-art img{display:block;width:auto;height:205px;max-width:86%;object-fit:contain;filter:drop-shadow(0 14px 14px rgba(0,0,0,.42));transform:translateY(16px) rotate(-2deg);transition:transform .24s ease}.card-type:nth-child(2) img{transform:translateY(16px) rotate(2deg)}.card-type:hover .card-type-art img{transform:translateY(8px) rotate(0deg)}.card-type-label{margin:26px 0 0;color:var(--copper);font:11px/1 Consolas,monospace;letter-spacing:.12em}.card-type h3{margin:15px 0 12px;color:var(--paper);font:400 clamp(1.85rem,3vw,2.7rem)/.95 Georgia,serif;letter-spacing:-.05em}.card-type-core{margin:0;color:var(--paper);font-size:clamp(1.05rem,1.35vw,1.24rem);font-weight:700;line-height:1.35}.card-type-core+p{max-width:31ch;margin:14px 0 0;color:var(--fog);line-height:1.65}
@media(max-width:700px){.cards-grid{grid-template-columns:1fr}.card-type,.card-type:first-child{grid-template-columns:120px 1fr;grid-template-rows:auto auto auto;column-gap:22px;padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.card-type:last-child{border-bottom:0}.card-type-art{grid-row:1 / span 3;align-self:stretch;min-height:178px;border-bottom:0}.card-type-art img{height:162px;max-width:100%;transform:translateY(10px) rotate(-2deg)}.card-type:nth-child(2) img{transform:translateY(10px) rotate(2deg)}.card-type-label{margin:3px 0 0}.card-type h3{margin:9px 0 8px}.card-type-core{margin:0}.card-type-core+p{grid-column:2;margin-top:13px}.card-type:hover .card-type-art img{transform:translateY(5px) rotate(0deg)}}
@media(min-width:701px){.play-section .section-heading h2{max-width:none;font-size:clamp(2.8rem,5vw,5.2rem);white-space:nowrap}}
.conversation-message{justify-self:end;border-color:rgba(178,109,80,.38);border-radius:8px 8px 2px 8px;background:rgba(94,30,35,.35)}.conversation-message.is-opponent{justify-self:start;border-color:rgba(232,228,220,.2);border-radius:8px 8px 8px 2px;background:#171c22}
.arena-visual{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr;gap:14px;padding:10px 0}.arena-visual figure{display:grid;gap:8px;justify-items:center;align-content:center;margin:0}.arena-visual strong{width:auto}.arena-visual img{width:auto;height:188px;max-width:100%;border:1px solid rgba(232,228,220,.42);border-radius:4px;object-fit:contain;box-shadow:0 12px 24px rgba(0,0,0,.25)}
.arena-visual figure+figure{border-left:1px solid var(--line);padding-left:14px}
.getting-hero-art{background-image:url("/swu-tw-assets/getting-started-hero.jpg")}
.play-steps li.play-step-core{border-color:rgba(178,109,80,.52);padding-block:clamp(46px,6vw,84px)}.play-step-core>span{font-size:16px}.play-step-core h3{font-size:clamp(2.8rem,5.4vw,5rem)}.play-strategy{max-width:52ch;margin-top:32px;border-left:2px solid var(--copper);padding:18px 22px 20px;background:linear-gradient(90deg,rgba(94,30,35,.38),transparent)}.play-strategy .strategy-label{margin:0;color:var(--copper);font:10px/1 Consolas,monospace;letter-spacing:.12em}.play-strategy h4{margin:13px 0 0;color:var(--paper);font:400 clamp(1.45rem,2.5vw,2.1rem)/1 Georgia,serif;letter-spacing:-.035em}.play-strategy p:last-child{margin-top:12px}.play-strategy strong{display:block;margin-top:9px;color:var(--paper)}
.action-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;max-width:800px;margin:25px 0}.action-option{grid-column:span 2;min-width:0;min-height:116px;padding:16px;border:1px solid rgba(232,228,220,.2);background:#11161d}.action-option:nth-child(4){grid-column:2 / span 2}.action-option h4{margin:0;color:var(--paper);font:400 clamp(1.2rem,2vw,1.65rem)/1.05 Georgia,serif;letter-spacing:-.03em}.action-option h4 small{display:block;margin-top:5px;color:var(--copper);font:9px/1 Consolas,monospace;letter-spacing:.06em}.play-steps .action-option p{margin:11px 0 0;color:var(--fog);font-size:.84rem;line-height:1.35}
@media(max-width:700px){.action-options{grid-template-columns:1fr;margin-block:22px}.action-option,.action-option:nth-child(4){grid-column:auto;min-height:0}.play-steps li.play-step-core{padding-block:42px}.play-step-core h3{font-size:clamp(2.5rem,12vw,3.7rem)}}
.regroup-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:26px}.regroup-step{position:relative;min-width:0;padding:17px 16px 18px;border:1px solid rgba(232,228,220,.2);background:rgba(23,28,34,.55)}.regroup-step:not(:last-child)::after{position:absolute;z-index:1;top:50%;right:-22px;content:"→";color:var(--copper);font-size:18px;transform:translateY(-50%)}.regroup-step>span{color:var(--copper);font:10px/1 Consolas,monospace;letter-spacing:.12em}.regroup-step h4{margin:14px 0 0;color:var(--paper);font:400 clamp(1.2rem,2vw,1.65rem)/1 Georgia,serif;letter-spacing:-.03em}.play-steps .regroup-step p{margin:10px 0 0;color:var(--fog);font-size:.88rem;line-height:1.35}.regroup-next{display:flex;gap:10px;align-items:center;margin-top:18px!important;color:var(--paper)!important;font-weight:700}.regroup-next span{color:var(--copper);font-size:20px}.regroup-step-row small{margin-top:20px}
@media(max-width:700px){.regroup-flow{grid-template-columns:1fr;gap:24px}.regroup-step:not(:last-child)::after{top:auto;right:auto;bottom:-22px;left:50%;content:"↓";transform:translateX(-50%)}}
.play-steps h3,.play-step-core h3{font-size:clamp(1.55rem,2.4vw,2.25rem)}.play-steps .phase-eyebrow{margin:0 0 12px;color:var(--copper);font:11px/1 Consolas,monospace;letter-spacing:.1em}

/* SWU Taiwan player portal homepage */
.home-hero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:100svh;overflow:hidden;padding:clamp(132px,19vh,190px) 4.2vw 8vh}.home-hero-image,.home-hero-shade{position:absolute;inset:0;z-index:-2}.home-hero-image{background:url("/swu-tw-assets/hero-space.png") center/cover no-repeat;transform:scale(1.025);animation:hero-drift 18s ease-in-out infinite alternate}.home-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,7,10,.97),rgba(5,7,10,.82) 42%,rgba(5,7,10,.18) 78%),linear-gradient(0deg,rgba(5,7,10,.75),transparent 46%)}.home-hero-copy{max-width:690px;animation:hero-in .8s .1s both}.home-hero h1{margin:20px 0 24px;color:var(--paper);font:400 clamp(5rem,13vw,11rem)/.72 Georgia,"Iowan Old Style",serif;letter-spacing:-.09em}.home-hero h1 em{font-style:normal}.home-hero-promise{margin:0 0 18px;color:var(--copper);font:400 clamp(1.4rem,2.4vw,2.3rem)/1.05 Georgia,serif;letter-spacing:-.035em}.home-hero-actions{display:flex;flex-wrap:wrap;gap:26px;align-items:center}.secondary-action{display:inline-flex;gap:12px;align-items:center;color:var(--paper);font-size:.95rem;text-decoration:none;transition:color .2s ease,gap .2s ease}.secondary-action:hover,.secondary-action:focus-visible{gap:18px;color:var(--copper)}.secondary-action span,.section-action span{color:var(--copper);font-size:1.25em}.home-section{padding:clamp(76px,10vw,140px) 4.2vw}.section-heading{max-width:1260px;margin:0 auto 54px}.section-heading h2,.community-cta h2{max-width:900px;margin:18px 0;color:var(--paper);font:400 clamp(2.7rem,5.6vw,6rem)/.92 Georgia,"Iowan Old Style",serif;letter-spacing:-.065em}.section-heading>p:last-child{max-width:43ch;margin:0;color:var(--fog);font-size:clamp(1rem,1.4vw,1.16rem)}.why-swu{background:var(--panel);border-top:1px solid var(--steel)}.why-grid,.tool-grid,.start-steps,.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1260px;margin:auto;border-top:1px solid var(--line)}.why-card,.tool-card,.start-steps li{min-width:0;padding:28px clamp(20px,3vw,43px) 34px;border-right:1px solid var(--line)}.why-card:first-child,.tool-card:first-child,.start-steps li:first-child{padding-left:0}.why-card:last-child,.tool-card:last-child,.start-steps li:last-child{border-right:0}.card-index,.step-number{margin:0;color:var(--copper);font:11px/1 Consolas,monospace;letter-spacing:.14em}.why-card h3,.tool-card h3,.start-steps h3,.event-card h3{margin:50px 0 12px;color:var(--paper);font:400 clamp(1.75rem,3vw,2.8rem)/.96 Georgia,serif;letter-spacing:-.05em}.why-card>p:last-child,.tool-card>p:nth-of-type(2),.start-steps li>p:nth-of-type(2){max-width:30ch;margin:0;color:var(--fog);line-height:1.65}.start-here{background:var(--void)}.start-steps{padding:0;list-style:none}.start-steps li{display:flex;flex-direction:column;min-height:310px}.start-steps h3{margin-top:46px}.start-steps a,.tool-card a,.event-card a{display:inline-flex;gap:9px;align-items:center;margin-top:auto;padding-top:30px;color:var(--paper);font-weight:700;text-decoration:none;transition:color .2s ease,gap .2s ease}.start-steps a:hover,.tool-card a:hover,.event-card a:hover{gap:15px;color:var(--copper)}.section-action{display:inline-flex;gap:18px;align-items:center;max-width:1260px;margin:50px auto 0;border-bottom:1px solid var(--copper);padding-bottom:8px;color:var(--paper);font-weight:700;text-decoration:none;transition:gap .2s ease,color .2s ease}.section-action:hover,.section-action:focus-visible{gap:26px;color:var(--copper)}.tools-section{background:var(--paper);color:var(--ink)}.tools-section .section-heading h2,.tools-section .tool-card h3,.tools-section .tool-card a{color:var(--ink)}.tools-section .section-heading>p:last-child,.tools-section .tool-card>p:nth-of-type(2){color:#555961}.tools-section .tool-grid{border-color:#8f918f}.tools-section .tool-card{border-color:#8f918f}.tools-section .tool-card a:hover{color:#9e583d}.upcoming-events{background:#10141a}.section-heading-inline{display:flex;justify-content:space-between;gap:28px;align-items:end}.event-card{display:flex;flex-direction:column;min-width:0;min-height:245px;padding:28px clamp(20px,3vw,43px) 32px;border-right:1px solid var(--line)}.event-card:first-child{padding-left:0}.event-card:last-child{border-right:0}.event-date,.event-type{margin:0;color:var(--copper);font:11px/1.3 Consolas,monospace;letter-spacing:.12em}.event-type{margin-top:40px}.event-card h3{margin:10px 0}.event-card h3+p{margin:0;color:var(--fog)}.event-grid>.empty-note{grid-column:1/-1;padding:36px 0}.community-cta{padding:clamp(80px,12vw,145px) 4.2vw;background:#080b0f}.community-cta>p:not(.section-label):not(.disclaimer){max-width:39ch;margin:0;color:var(--fog);font-size:1.08rem}.community-cta .disclaimer{max-width:560px;margin:64px 0 0;color:var(--dim);font-size:.82rem;line-height:1.6}.community-cta .section-action{margin-left:0}
@media(max-width:700px){.home-hero{min-height:calc(100svh - 0px);padding:124px 24px 56px}.home-hero h1{font-size:clamp(4.25rem,19vw,6.3rem)}.home-hero-promise{font-size:1.35rem}.home-hero-actions{display:grid;justify-items:start;gap:22px}.home-section,.community-cta{padding-inline:24px}.section-heading{margin-bottom:38px}.section-heading-inline{display:block}.section-heading-inline .secondary-action{margin-top:25px}.why-grid,.tool-grid,.start-steps,.event-grid{grid-template-columns:1fr}.why-card,.why-card:first-child,.tool-card,.tool-card:first-child,.start-steps li,.start-steps li:first-child,.event-card,.event-card:first-child{min-height:0;padding:27px 0 31px;border-right:0;border-bottom:1px solid var(--line)}.why-card:last-child,.tool-card:last-child,.start-steps li:last-child,.event-card:last-child{border-bottom:0}.why-card h3,.tool-card h3,.start-steps h3{margin-top:34px}.start-steps li{min-height:0}.start-steps a,.tool-card a{margin-top:28px;padding-top:0}.tools-section .tool-card{border-color:#8f918f}.event-type{margin-top:30px}.event-card a{margin-top:28px;padding-top:0}.community-cta .disclaimer{margin-top:52px}.home-hero-shade{background:linear-gradient(90deg,rgba(5,7,10,.95),rgba(5,7,10,.42)),linear-gradient(0deg,rgba(5,7,10,.84),transparent 55%)}}

/* Keep the homepage as a concise portal; learning details belong to Getting Started. */
.home-brand{margin:20px 0 24px;color:var(--paper);font:400 clamp(5rem,13vw,11rem)/.72 Georgia,"Iowan Old Style",serif;letter-spacing:-.09em}.home-brand em{font-style:normal}.home-hero h1{max-width:620px;margin:0 0 18px;color:var(--copper);font:400 clamp(2rem,3.65vw,3.75rem)/.96 Georgia,"Iowan Old Style",serif;letter-spacing:-.055em}.home-hero h1 em{font-style:normal}.home-hero .intro{max-width:42ch}.hero-text-link{display:inline-flex;gap:9px;align-items:center;margin-top:27px;color:var(--fog);font-size:.9rem;text-decoration:none}.hero-text-link:hover,.hero-text-link:focus-visible{color:var(--paper)}.explore-section{background:var(--panel);border-top:1px solid var(--steel)}.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1260px;margin:auto;border-top:1px solid var(--line)}.explore-card{display:flex;flex-direction:column;min-width:0;min-height:310px;padding:29px clamp(20px,3vw,43px) 34px;border-right:1px solid var(--line);transition:background-color .2s ease}.explore-card:first-child{padding-left:0}.explore-card:last-child{border-right:0}.explore-card:hover{background:linear-gradient(180deg,rgba(94,30,35,.25),transparent 75%)}.explore-card h3{margin:48px 0 13px;color:var(--paper);font:400 clamp(1.85rem,3vw,3rem)/.95 Georgia,serif;letter-spacing:-.055em}.explore-card>p:nth-of-type(2){max-width:29ch;margin:0;color:var(--fog);line-height:1.65}.explore-card a{display:inline-flex;gap:9px;align-items:center;margin-top:auto;padding-top:29px;color:var(--paper);font-weight:700;text-decoration:none;transition:color .2s ease,gap .2s ease}.explore-card a:hover,.explore-card a:focus-visible{gap:15px;color:var(--copper)}.why-swu{background:var(--void)}.why-card h3{margin:0 0 13px}.why-card>p:last-child{max-width:31ch}.upcoming-events .empty-note a{display:inline-block;margin-top:18px;color:var(--paper);font-weight:700;text-decoration:none}.upcoming-events .empty-note a:hover{color:var(--copper)}
@media(max-width:700px){.home-brand{font-size:clamp(4.25rem,19vw,6.3rem)}.home-hero h1{font-size:clamp(2rem,9vw,3.15rem)}.explore-grid{grid-template-columns:1fr}.explore-card,.explore-card:first-child{min-height:0;padding:27px 0 31px;border-right:0;border-bottom:1px solid var(--line)}.explore-card:last-child{border-bottom:0}.explore-card h3{margin-top:34px}}

.construction-notice{display:inline-block;margin:26px 0 0!important;border:1px solid var(--copper);padding:7px 11px!important;color:var(--copper)!important;font:11px/1 Consolas,monospace!important;letter-spacing:.14em}

/* Resource index: compact, scan-first page heading. */
body[data-page="tools"] .page-intro h1{font-size:clamp(3.1rem,7vw,6rem);line-height:.9;letter-spacing:-.065em}
body[data-page="tools"] .page-intro{padding-bottom:clamp(20px,2.5vw,36px)}
body[data-page="tools"]{scroll-behavior:smooth}
.resource-jump-nav{position:relative;z-index:1;display:flex;gap:22px;overflow-x:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 4.2vw;background:rgba(5,7,10,.94);scrollbar-width:none}.resource-jump-nav::-webkit-scrollbar{display:none}.resource-jump-nav a{flex:0 0 auto;color:var(--fog);font:11px/1.2 Consolas,monospace;letter-spacing:.08em;text-decoration:none;transition:color .2s ease}.resource-jump-nav a:hover,.resource-jump-nav a:focus-visible{color:var(--copper)}.tool-group{scroll-margin-top:32px}body[data-page="tools"] .utility-list{padding-top:28px}
.event-format-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 68px}.event-format-tabs button{border:1px solid var(--line);padding:10px 15px;background:transparent;color:var(--fog);font:12px/1 Consolas,monospace;letter-spacing:.08em;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.event-format-tabs button:hover,.event-format-tabs button:focus-visible{border-color:var(--copper);color:var(--paper)}.event-format-tabs button.is-active{border-color:var(--copper);background:var(--copper);color:var(--ink)}body[data-page="events"] .page-intro{padding-bottom:clamp(48px,6vw,78px)}body[data-page="events"] .page-intro h1{font-size:clamp(2.8rem,6vw,5.4rem);line-height:.88;letter-spacing:-.065em}.event-region{margin-bottom:76px}.event-region>.section-label{margin:0 0 18px;font-size:18px;letter-spacing:.14em}.event-calendar-row{grid-template-columns:180px minmax(0,1fr);gap:32px}.event-calendar-row .utility-index,.event-calendar-row .utility-meta{font-size:16px!important;line-height:1.45!important}.event-calendar-row h2{max-width:24ch;margin-top:8px;font-size:clamp(1.2rem,2.1vw,2.25rem)}.event-calendar-row h2 a{border-bottom:1px solid currentColor;color:var(--paper);text-decoration:none;transition:color .2s ease}.event-calendar-row h2 a:hover,.event-calendar-row h2 a:focus-visible{color:var(--copper)}.event-calendar-row h2 span{color:var(--copper);font-size:.65em;vertical-align:middle}
@media(max-width:700px){.resource-jump-nav{gap:18px;padding-inline:24px}.tool-group{scroll-margin-top:24px}body[data-page="tools"] .utility-list{padding-top:22px}}
@media(max-width:700px){.event-format-tabs{gap:8px;margin-bottom:48px}.event-format-tabs button{padding:9px 12px}.event-calendar-row{grid-template-columns:1fr;gap:8px}.event-calendar-row .utility-index,.event-calendar-row .utility-meta{font-size:14px!important}.event-region>.section-label{font-size:16px}}
