:root{--ex-surface:#ffffffe0;--ex-border:#d9cfea;--ex-muted:#625976;--ex-solid:#fffefa;--ex-field:#fff}html[data-text-size=large]{font-size:19px}html[data-theme=dark]{--ink:#f3edff;--paper:#181322;--ex-solid:#21192e;--ex-surface:#2a2039ed;--ex-border:#69577e;--ex-muted:#d7cbe6;--ex-field:#21182e;--mood-wash:#2d233e;--purple:#c7b0ff;color-scheme:dark}html[data-theme=dark] body{background:#181322}html[data-theme=dark] header{background:#21192ee8;border-color:#514360}html[data-theme=dark] .button{background:#d3bbff;color:#241832;border-color:#d3bbff}html[data-theme=dark] :is(.card,.up-tile,.up-palette,.up-bundle-item,.up-drawer,.vibes-dialog,.vibes-finder,.vibes-result,.play-pick-stage,.play-picks,.page-tiles>a,.vibes-dialog-copy){background:var(--ex-surface);color:var(--ink);border-color:var(--ex-border)}html[data-theme=dark] :is(.hero-copy>p,.up-intro,.caption,.product-copy>p,.section-heading>p,.page-intro>p){color:var(--ex-muted)}html[data-theme=dark] .up-quiz{background:#342744}html[data-theme=dark] .up-choice{background:#3b2c50;color:#fff}html[data-theme=dark] .mood-dock{background:#2a2039;color:#fff}html[data-theme=dark] .vibes-dialog-media{background:#51415f}html[data-theme=dark] .product-price{color:#e6d6ff}html[data-theme=dark] .ex-callout{background:#36264d}html[data-theme=dark] footer{background:#21192e;color:var(--ink)}html[data-theme=dark] .up-close{color:#241832}
@media(prefers-color-scheme:dark){html[data-theme=auto]{color-scheme:light}}
.ex-button,.ex-toolbar>button,.ex-gift-form button,.ex-page button:not(.button),.ex-page select,.ex-page input,.ex-page textarea{border:1px solid var(--ex-border);border-radius:13px;padding:10px 14px;background:var(--ex-field);color:var(--ink);font:inherit}.ex-button{display:inline-block;font-size:.85rem;font-weight:700;text-align:center}.ex-button:hover,.ex-toolbar>button:hover{background:#e6dcff;color:#302442}.ex-button[aria-pressed=true]{background:#d9f56b;color:#242139}.ex-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:16px 0}.ex-toolbar>input{flex:1;min-width:160px}.ex-toolbar>select,.ex-toolbar>input,.ex-gift-form select{border:1px solid var(--ex-border);border-radius:13px;padding:10px 12px;color:var(--ink);background:var(--ex-field)}.ex-more{position:relative}.ex-more summary{cursor:pointer;white-space:nowrap}.ex-more-menu{position:absolute;top:35px;right:0;min-width:210px;padding:12px;background:var(--ex-solid);border:1px solid var(--ex-border);border-radius:16px;box-shadow:0 12px 40px #24183222;z-index:100}.ex-more-menu a{display:block;padding:8px;border-radius:8px}.ex-more-menu a:hover{background:#ece2fc;color:#302442}.ex-footer-links{display:flex;gap:16px;flex-wrap:wrap;font-size:.8rem;flex-basis:100%}.ex-back-top{position:fixed;right:20px;bottom:95px;width:45px;height:45px;border-radius:50%;background:var(--ex-solid);border:1px solid var(--ex-border);color:var(--ink);z-index:15;font-size:1.4rem;box-shadow:0 6px 18px #32224a15}.ex-back-top[hidden]{display:none}.ex-status{position:fixed;left:50%;bottom:155px;transform:translate(-50%,15px);width:max-content;max-width:90vw;padding:14px 20px;border-radius:16px;color:#fff;background:#302442;opacity:0;pointer-events:none;z-index:1100;transition:.2s}.ex-status.show{opacity:1;transform:translate(-50%,0)}.ex-page{max-width:1280px;margin:30px auto;padding:30px 5% 80px}.ex-page>section{padding:45px 0;border-bottom:1px solid var(--ex-border);scroll-margin-top:100px}.ex-page h1{font-size:clamp(2.6rem,6vw,5rem)}.ex-page h2{font-size:clamp(1.9rem,3.5vw,3rem);line-height:1.1;letter-spacing:-1px}.ex-page h3{line-height:1.3}.ex-page form{max-width:680px;display:grid;gap:14px}.ex-page label:not(.ex-pref){display:grid;gap:7px;font-weight:700}.ex-page :is(input,textarea,select){width:100%;max-width:100%}.ex-page textarea{resize:vertical}.ex-page :is(input[type=checkbox],input[type=radio]){width:auto}.ex-breadcrumb{margin-bottom:35px;font-size:.85rem}.ex-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin:40px 0}.ex-detail-layout h1{font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-2px}.ex-detail-media>img{width:100%;height:560px;object-fit:contain;background:#f0e9fa;border-radius:30px;cursor:zoom-in}.ex-detail-layout details{padding:15px 0;border-bottom:1px solid var(--ex-border)}.ex-detail-layout summary{cursor:pointer;font-weight:700}.ex-detail-layout details p{margin:14px 0 0}.ex-price{font-size:1.8rem;font-weight:800}.ex-dialog{max-width:min(1000px,95vw);max-height:90dvh;border:1px solid var(--ex-border);border-radius:24px;background:var(--ex-solid);color:var(--ink);padding:22px}.ex-dialog::backdrop{background:#24183299;backdrop-filter:blur(5px)}.ex-zoom>img{display:block;width:100%;max-height:68dvh;object-fit:contain;margin:15px 0}.ex-dialog textarea{display:block;width:70vw;max-width:650px;height:220px}.ex-explorer{border:1px solid var(--ex-border);border-radius:25px;background:var(--ex-surface);padding:25px;margin:25px 0}.ex-explorer .up-grid{margin-top:25px}.up-grid[hidden]{display:none}.ex-product-title{display:block;font-size:1.25rem;font-weight:800;line-height:1.3;margin:16px 0}.ex-product-tile .caption{font-size:.75rem}.ex-product-tile .ex-toolbar{margin-bottom:0}.ex-table-wrap{overflow:auto;border:1px solid var(--ex-border);border-radius:18px}.ex-table-wrap table{border-collapse:collapse;width:100%;min-width:600px;background:var(--ex-surface)}.ex-table-wrap td,.ex-table-wrap th{border-bottom:1px solid var(--ex-border);padding:15px;text-align:left;vertical-align:top;max-width:260px}.ex-table-wrap th button{display:block;margin-top:10px;font-size:.8rem!important}.ex-callout{padding:20px;background:#ece3ff;border-radius:20px;margin:18px 0}.ex-callout:has(.up-tile){display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.ex-callout>h3,.ex-callout>p,.ex-callout>button{grid-column:1/-1}.ex-home-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.ex-gift-form{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.ex-gift-form label{display:flex;gap:8px;align-items:center}.ex-gift-form+.ex-button{margin-bottom:24px}.ex-jumps{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.ex-jumps a{border:1px solid var(--ex-border);border-radius:25px;padding:8px 15px;background:var(--ex-surface)}.ex-draft{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;border:1px solid var(--ex-border);border-radius:16px;padding:20px;background:var(--ex-surface)}.ex-letter{display:inline-grid;place-items:center;width:58px;height:58px;border:2px solid #302442;border-bottom-width:7px;border-radius:10px;background:#cdb4f1;color:#302442;font-weight:900;font-size:1.5rem;margin:5px;box-shadow:0 4px 0 #30244222}#letter-demo{margin:20px 0}.ex-pref{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:600px;padding:20px 0;border-bottom:1px solid var(--ex-border)}.ex-pref select{max-width:220px}html[data-contrast=high]{--ex-muted:var(--ink);--ex-border:var(--ink)}html[data-contrast=high] .caption{opacity:1;color:var(--ink)}html[data-simple=yes]{scroll-behavior:auto}html[data-simple=yes] .ambient-art,html[data-simple=yes] .up-float-tags,html[data-simple=yes] .spotlight-glow{display:none}html[data-simple=yes] *,html[data-simple=yes] *::before,html[data-simple=yes] *::after{animation:none!important;transition:none!important}.ex-game{border:1px solid var(--ex-border);background:var(--ex-surface);padding:25px;border-radius:25px;max-width:650px}.ex-game meter{width:100%;height:35px}.ex-game meter::-webkit-meter-bar{background:linear-gradient(90deg,#d5c9eb 0 40%,#b9ed87 40% 60%,#d5c9eb 60%)}#stack-tower{height:160px;display:flex;flex-direction:column-reverse;align-items:center;overflow:hidden;margin-bottom:20px}#stack-tower i{display:block;width:160px;min-height:12px;border:1px solid #30244266;border-radius:4px}.ex-faq-search{margin-bottom:25px}#guide-answers details{padding:15px 0;border-bottom:1px solid var(--ex-border)}#guide-answers summary{cursor:pointer;font-weight:700}#guide-answers details p{margin-top:14px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9a72e9;outline-offset:3px}@media(max-width:700px){header nav{gap:14px;font-size:.8rem;flex-wrap:wrap;justify-content:center}header{gap:12px;flex-wrap:wrap}.ex-detail-layout{grid-template-columns:1fr;gap:25px}.ex-detail-media>img{height:360px}.ex-detail-layout h1{font-size:2.8rem}.ex-page{padding:25px 6% 90px}.ex-explorer{padding:18px}.ex-callout:has(.up-tile){grid-template-columns:1fr}.ex-toolbar>select{max-width:100%}.ex-pref{flex-wrap:wrap}.ex-back-top{right:12px}.ex-home-shortcuts .ex-button{font-size:.75rem}.ex-more-menu{right:0}.ex-letter{width:42px;height:45px;font-size:1.1rem}}
@media print{header,footer,.mood-dock,.ex-back-top,.ex-status,.up-notice,.vibes-toast,.ambient-art,.scroll-progress,button,.ex-jumps,#bulk,#custom,#name-preview,#game,.ex-faq-search{display:none!important}body{background:white!important;color:black!important}.ex-page{padding:0;margin:0}a{text-decoration:underline}.up-grid{display:block}.up-tile{break-inside:avoid;box-shadow:none}details{display:block}}
.ex-search-trigger{background:none;border:0;color:inherit;font:inherit;font-weight:700;padding:0}.ex-site-search{width:min(650px,94vw)}.ex-site-search input{display:block;width:100%;margin:20px 0;padding:14px;border:1px solid var(--ex-border);border-radius:14px;background:var(--ex-field);color:var(--ink)}.ex-search-results{max-height:55dvh;overflow:auto}.ex-search-results a{display:block;padding:12px;border-bottom:1px solid var(--ex-border)}.ex-search-results a:hover{background:#e6dcff;color:#302442}header .brand-logo img{animation:ex-logo-in .65s ease-out}@keyframes ex-logo-in{from{clip-path:inset(100% 0 0 0);opacity:.2}to{clip-path:inset(0);opacity:1}}@media(prefers-reduced-motion:reduce){header .brand-logo img{animation:none}}html[data-motion=paused] header .brand-logo img{animation:none}
.ex-catalogue-count{font-size:.75rem;white-space:nowrap;padding:7px 12px;border:1px solid var(--ex-border);border-radius:25px;color:var(--ink);background:var(--ex-surface)}.ex-compact .up-grid{grid-template-columns:1fr}.ex-compact .up-tile{display:grid;grid-template-columns:100px 1fr;column-gap:18px;padding:16px}.ex-compact .ex-image-link{grid-row:1/5}.ex-compact .up-tile img{height:100px;width:100px}.ex-compact .ex-product-title{margin:0}.ex-compact .up-tile p{margin:4px 0}.ex-budget-panel{border:1px solid var(--ex-border);background:var(--ex-surface);border-radius:22px;padding:24px;margin-top:30px}.ex-budget-panel input{width:110px;padding:10px;border-radius:12px;border:1px solid var(--ex-border);color:var(--ink);background:var(--ex-field);margin:0 12px 15px}.ex-budget-panel label{display:block}
/* Dark appearance: explicit text and surfaces override light-theme component colours. */
html[data-theme=dark]{--ink:#faf7ff;--ex-muted:#e7e0f1;--ex-surface:#2a2138;--ex-border:#897598;--mood-accent:#d8c2ff}
html[data-theme=dark] body::before{opacity:.15}
html[data-theme=dark] .ambient-art i{opacity:.07}
html[data-theme=dark] :is(p,li,label,summary,dt,dd,.caption,.cart-unit-price,.cart-notice,.play-picks-copy>p,.pick-count,.pick-prompt,.steps p,details p,.section-heading p,.new-product .checkout-pending){color:var(--ex-muted)}
html[data-theme=dark] :is(h1,h2,h3,h4,strong,.eyebrow,.product-price,.ex-price,.up-total,.product-copy .number,nav,.text-link){color:var(--ink)}
html[data-theme=dark] :is(.steps>div,.faq,.enquiry,form,.checkout-panel,.cart-summary,.order-total,.product-copy,.play-pick-meta){background:#2a2138;color:var(--ink);border-color:var(--ex-border)}
html[data-theme=dark] :is(input,select,textarea,.checkout-panel input,.checkout-panel select){background:#1e172a;color:var(--ink);border-color:#897598}
html[data-theme=dark] :is(input,textarea)::placeholder{color:#c8bbd7;opacity:1}
html[data-theme=dark] .hero h1 span{background:none;color:#dfc9ff;-webkit-text-fill-color:#dfc9ff}
html[data-theme=dark] .hero-copy>.eyebrow{background:#30243f;border-color:#897598;color:#fff}
html[data-theme=dark] :is(.vibes-quick,.idea,.cart-remove){color:#f3e9ff}
html[data-theme=dark] .vibes-dialog-copy :is(h2,h3,p){color:var(--ink)}
html[data-theme=dark] :is(.vibes-band,.sticker,.ribbon,.copy-button,.carousel-arrow,.concept-product figcaption){color:#242139}
html[data-theme=dark] :is(.sticker strong,.sticker p,.vibes-band span){color:#242139}
html[data-theme=dark] .button.secondary{background:#392b4c;color:#fff;border-color:#a48cbf}
html[data-theme=dark] .up-bundle-item span{color:#faf7ff}
html[data-theme=dark] .steps span{background:#47335f;color:#fff}
html[data-theme=dark] :is(.ex-callout,.up-quiz) p{color:#f5edff}
html[data-theme=dark] .button:hover{background:#eadbff;color:#241832}
