/*
 * STAR PARK 1.0 visual system.
 * CSS-only atmosphere keeps the site fast while unifying every template.
 */
:root{--violet:#8f7dff;--coral:#ff7b6b;--shadow-soft:0 10px 26px rgb(3 8 24/.12)}
body{background:radial-gradient(circle at 14% 5%,rgb(37 220 255/.12),transparent 30rem),radial-gradient(circle at 92% 28%,rgb(143 125 255/.1),transparent 38rem),var(--night)}
::selection{color:#06101b;background:var(--cyan)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--amber);outline-offset:3px}

/* Global gate and navigation. */
.site-header:after{position:absolute;right:0;bottom:-1px;left:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--cyan) 32%,var(--violet) 68%,transparent);opacity:.38}
.site-header__inner{gap:28px}
.site-brand{font-size:.92rem;letter-spacing:.08em}
.site-brand__mark{position:relative;overflow:hidden;border-radius:13px;box-shadow:0 0 24px rgb(37 220 255/.18),inset 0 0 18px rgb(255 255 255/.06)}
.site-brand__mark:after{position:absolute;right:-6px;bottom:-8px;width:20px;aspect-ratio:1;content:"";background:var(--magenta);border-radius:50%;filter:blur(10px);opacity:.65}
.primary-navigation a{position:relative;padding-block:25px;font-size:.9rem}
.primary-navigation a:after{position:absolute;right:50%;bottom:18px;left:50%;height:2px;content:"";background:var(--cyan);border-radius:999px;transition:right .18s ease,left .18s ease}
.primary-navigation a:hover:after,.primary-navigation a:focus-visible:after,.primary-navigation .current-menu-item>a:after{right:0;left:0}
.site-main{position:relative}
.breadcrumbs{overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.breadcrumbs::-webkit-scrollbar{display:none}
.breadcrumbs ol{width:max-content;max-width:none}

/* Archive and cards. */
.archive-header{position:relative;overflow:hidden;padding:clamp(24px,5vw,44px);background:linear-gradient(145deg,#fff,#f0f7ff)}
.archive-header:after{position:absolute;top:0;right:30px;width:82px;height:4px;content:"";background:linear-gradient(90deg,var(--cyan),var(--magenta));border-radius:0 0 7px 7px}
.archive-header h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.035em}
.article-card{position:relative;border-color:rgb(37 220 255/.16);box-shadow:var(--shadow-soft)}
.article-card:after{position:absolute;top:0;right:22px;width:54px;height:3px;content:"";background:linear-gradient(90deg,var(--cyan),var(--violet));border-radius:0 0 5px 5px}
.article-card__body{padding:20px}
.article-card__body h2 a:hover,.article-card__body h3 a:hover{color:#087f9b}

/* Long-form guides. */
.entry{border-color:rgb(37 220 255/.25);box-shadow:0 24px 60px rgb(0 0 0/.25)}
.entry-header{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;min-height:240px;overflow:hidden;background:radial-gradient(circle at 100% 0,rgb(143 125 255/.2),transparent 25rem),linear-gradient(135deg,#111b35,#0d1328 72%)}
.entry-header:before{position:absolute;z-index:-1;inset:0;content:"";background-image:linear-gradient(rgb(37 220 255/.055) 1px,transparent 1px),linear-gradient(90deg,rgb(37 220 255/.055) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent,#000)}
.entry-header:after{position:absolute;top:0;right:clamp(20px,6vw,60px);width:96px;height:5px;content:"";background:linear-gradient(90deg,var(--cyan),var(--magenta));border-radius:0 0 8px 8px}
.entry-header h1{max-width:780px;font-size:clamp(2rem,4vw,3.15rem);line-height:1.25;letter-spacing:-.035em;text-wrap:pretty}
.entry-kicker{margin:0 0 12px;font-size:.84rem;font-weight:900;letter-spacing:.06em}
.entry-meta{margin:14px 0 0;flex-wrap:wrap}
.entry-hero{border-bottom:1px solid var(--line)}
.entry-content{color:#242b3e;line-height:1.9}
.entry-content>p{margin-block:1.25em}
.entry-content a{font-weight:700}
.entry-content h2{position:relative;margin-top:2.6em;padding:.72em .9em;background:linear-gradient(100deg,#101a34,#172445);border-left:0;border-radius:12px;box-shadow:0 9px 20px rgb(10 21 50/.12)}
.entry-content h2:after{position:absolute;top:0;right:20px;width:54px;height:3px;content:"";background:var(--cyan);border-radius:0 0 5px 5px}
.entry-content h3{padding-left:.7em;border-bottom:1px solid var(--line);border-left:3px solid var(--magenta)}
.entry-content table{font-size:.94rem;box-shadow:0 7px 18px rgb(20 35 65/.05)}
.entry-content th{color:#16223d;background:linear-gradient(135deg,#e8faff,#eef2ff)}
.entry-content tr:nth-child(even) td{background:#fafcff}
.entry-content figure img,.entry-content>.wp-caption img{border-radius:10px}
.entry-content blockquote{border-radius:0 12px 12px 0}
.entry-footer{padding-top:0}
.tag-list a{display:inline-flex;margin:4px 5px 4px 0;padding:5px 10px;color:#34415b;background:#edf3fa;border-radius:999px;font-size:.78rem;text-decoration:none}
.button,.search-form button{box-shadow:0 8px 20px rgb(37 220 255/.18);transition:transform .18s ease,box-shadow .18s ease}
.button:hover,.search-form button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgb(37 220 255/.25)}

/* Home attractions. */
.park-hero{border-bottom:1px solid rgb(37 220 255/.12)}
.park-hero:after{position:absolute;top:-32%;right:10%;width:min(54vw,760px);aspect-ratio:1;content:"";border:1px solid rgb(37 220 255/.08);border-radius:50%;box-shadow:0 0 120px rgb(37 220 255/.05);pointer-events:none}
.park-signal{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.park-hero h1,.park-section__header h2{text-wrap:balance}
.park-button{position:relative;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.park-button:hover{transform:translateY(-2px);border-color:var(--cyan);box-shadow:0 12px 28px rgb(37 220 255/.14)}
.park-status{box-shadow:0 12px 30px rgb(0 0 0/.16)}
.park-status strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.zone-card{position:relative;isolation:isolate;overflow:hidden}
.zone-card:after{position:absolute;z-index:-1;right:-42px;bottom:-56px;width:150px;aspect-ratio:1;content:"";background:radial-gradient(circle,rgb(37 220 255/.14),transparent 68%);border-radius:50%}
.zone-card--magenta:after{background:radial-gradient(circle,rgb(255 79 163/.13),transparent 68%)}
.zone-card--amber:after{background:radial-gradient(circle,rgb(255 216 61/.12),transparent 68%)}
.zone-card--lime:after{background:radial-gradient(circle,rgb(140 255 104/.11),transparent 68%)}
.character-ticket a{position:relative;overflow:hidden;border-color:rgb(37 220 255/.18);transition:transform .18s ease,border-color .18s ease}
.character-ticket a:after{position:absolute;right:-24px;bottom:-36px;width:92px;aspect-ratio:1;content:"";border:1px solid rgb(37 220 255/.16);border-radius:50%}
.character-ticket a:hover{transform:translateY(-3px);border-color:var(--cyan)}
.home-news-card{position:relative;box-shadow:var(--shadow-soft);transition:transform .18s ease}
.home-news-card:hover{transform:translateY(-3px)}
.home-news-card:after{position:absolute;top:0;right:18px;width:50px;height:3px;content:"";background:linear-gradient(90deg,var(--cyan),var(--magenta));border-radius:0 0 5px 5px}

/* Character gate. */
.archive-header--portal{color:#fff;background:radial-gradient(circle at 100% 0,rgb(37 220 255/.18),transparent 25rem),linear-gradient(145deg,#111b35,#0c1227)}
.archive-header--portal:before{position:absolute;inset:0;content:"";background-image:linear-gradient(rgb(37 220 255/.05) 1px,transparent 1px),linear-gradient(90deg,rgb(37 220 255/.05) 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(90deg,transparent,#000)}
.archive-header--portal>*{position:relative}
.archive-header--portal .eyebrow{color:var(--cyan)}
.archive-header--portal>p:not(.eyebrow){max-width:720px;color:#becae0}
.archive-header--portal .character-filter label,.archive-header--portal .character-filter p{color:#aab8d0}
.archive-header--portal .character-filter input{color:#fff;background:rgb(255 255 255/.08);border-color:rgb(255 255 255/.2)}
.archive-header--portal .character-filter input::placeholder{color:#8e9bb3}
.brawler-card{position:relative;box-shadow:var(--shadow-soft);transition:transform .18s ease,border-color .18s ease}
.brawler-card:after{position:absolute;top:0;right:16px;width:45px;height:3px;content:"";background:linear-gradient(90deg,var(--cyan),var(--magenta));border-radius:0 0 5px 5px}
.brawler-card:hover{transform:translateY(-4px);border-color:var(--cyan)}
.brawler-card__portrait{overflow:hidden}
.brawler-card__portrait img{transition:transform .2s ease}
.brawler-card:hover .brawler-card__portrait img{transform:scale(1.025)}
.brawler-card__taxonomy{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}
.brawler-card__action{color:#087f9b}

/* Footer control deck. */
.site-footer{position:relative;overflow:hidden;padding-top:54px;background:radial-gradient(circle at 82% 0,rgb(37 220 255/.1),transparent 26rem),#050812}
.site-footer:before{position:absolute;top:0;right:0;left:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--cyan),var(--magenta),transparent)}
.site-footer__grid{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}
.site-footer__brand{display:flex;gap:13px;align-items:center}
.site-footer__brand p{display:grid;margin:0;color:#fff;letter-spacing:.08em}
.site-footer__brand p span{color:#8f9db7;font-size:.72rem;font-weight:500;letter-spacing:0}
.site-footer__nav ul{display:flex;gap:10px 22px;justify-content:flex-end;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.site-footer__nav a{color:#dbe5fb;font-size:.82rem;text-decoration:none}
.site-footer__nav a:hover{color:var(--cyan)}
.site-disclaimer{margin-top:38px;padding-top:22px;border-top:1px solid rgb(255 255 255/.08)}
.site-footer__copyright{display:flex;justify-content:space-between;margin-top:24px;color:#71809a}
.site-footer__copyright span{font:700 .65rem/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em}

@media(max-width:900px){.primary-navigation a{padding-block:8px}.primary-navigation a:after{display:none}.site-footer__grid{grid-template-columns:1fr}.site-footer__nav ul{justify-content:flex-start}}
@media(max-width:640px){.archive-header--portal{padding:28px 24px}.archive-header--portal h1{font-size:2.1rem}.brawler-card:hover{transform:none}.brawler-card__body h2{font-size:1.05rem}.brawler-card__description{display:none}.brawler-card__action{font-size:.78rem}}
@media(max-width:600px){.site-brand{font-size:.84rem}.site-brand__mark{width:38px}.site-main{padding-bottom:54px}.breadcrumbs{margin-inline:-2px}.breadcrumbs ol{margin-bottom:16px}.entry{border-radius:16px}.entry-header{min-height:0;padding:30px 22px 32px}.entry-header h1{font-size:clamp(1.7rem,7.5vw,2.15rem);line-height:1.3;letter-spacing:-.025em}.entry-meta{gap:6px 14px;font-size:.76rem}.entry-content{padding:25px 20px;font-size:1rem}.entry-content h2{margin-inline:-4px;padding:.72em .78em;font-size:1.35rem;line-height:1.45}.entry-content h3{font-size:1.18rem;line-height:1.5}.article-card:hover{transform:none}.park-hero h1{font-size:clamp(2.1rem,10vw,2.65rem)}.park-hero__lead{line-height:1.8}.park-status p{padding:14px 4px}.zone-card:hover,.character-ticket a:hover,.home-news-card:hover{transform:none}.site-footer__grid{gap:26px}.site-footer__nav ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__copyright{display:grid;gap:6px}.mobile-dock{box-shadow:0 -10px 24px rgb(0 0 0/.26)}.mobile-dock a{gap:2px}.mobile-dock a:hover,.mobile-dock a:focus-visible{color:var(--cyan)}}
@media(prefers-reduced-motion:reduce){.primary-navigation a:after,.park-button,.character-ticket a,.home-news-card,.brawler-card,.brawler-card__portrait img{transition:none}}
