:root{--color-bg: #121116;--color-surface: #1b1a21;--color-surface-muted: #24222c;--color-border: #38343f;--color-border-strong: #5a5466;--color-text: #f3f1f8;--color-text-muted: #b6afc6;--color-text-inverse: #121116;--color-brand: #a82fc4;--color-brand-hover: #8f27a8;--color-brand-on: #ffffff;--color-brand-text: #d985f2;--color-brand-text-hover: #ecb5f7;--color-accent: #ef4ad9;--color-accent-on: #14101a;--ink: #08070b;--tone-dot: rgba(217, 133, 242, .1);--color-success: #6fd58f;--color-warning: #e6b14a;--color-danger: #f0676b;--color-info: #66b2f0;--color-success-soft-bg: #16301f;--color-success-soft-border: #2f6b44;--color-success-soft-text: #9fe0b4;--color-info-soft-bg: #142a3c;--color-info-soft-border: #2f5a82;--color-info-soft-text: #a9d4f5;--color-warning-soft-bg: #33280f;--color-warning-soft-border: #7a5e1e;--color-warning-soft-text: #f0d28a;--color-danger-soft-bg: #381b1e;--color-danger-soft-border: #7a3036;--color-danger-soft-text: #f3aeb1;--color-danger-strong-hover: #d4474c;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--font-family-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-serif: "Yusei Magic", ui-serif, Georgia, "Times New Roman", serif;--font-family-sfx: "Bangers", var(--font-family-sans);--font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.25rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 4px 12px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 28px rgba(0, 0, 0, .6);--focus-ring-color: #d8c8ff;--focus-ring-offset: 2px;--focus-ring-width: 2px;--container-max-width: 72rem;--header-height: 4rem}html{color-scheme:dark}@font-face{font-family:Yusei Magic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/yusei-magic-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bangers;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/bangers-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.g-card{background:var(--color-surface);border:3px solid var(--ink);border-radius:var(--radius-md);box-shadow:5px 5px 0 var(--ink)}.g-card--pad-none{padding:0}.g-card--pad-sm{padding:var(--space-3)}.g-card--pad-md{padding:var(--space-4)}.g-card--pad-lg{padding:var(--space-5)}.g-tag{display:inline-flex;align-items:center;padding:.25em var(--space-4);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);border-radius:var(--radius-pill);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);text-transform:uppercase;letter-spacing:.04em}.g-tag--neutral{background:var(--color-surface-muted);color:var(--color-text-muted)}.g-tag--brand{background:var(--color-brand);color:var(--color-brand-on)}.g-tag--success{background:var(--color-success-soft-bg);color:var(--color-success-soft-text)}.g-tag--warning{background:var(--color-warning-soft-bg);color:var(--color-warning-soft-text)}.g-tag--danger{background:var(--color-danger-soft-bg);color:var(--color-danger-soft-text)}.g-banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.g-banner__title{margin:0 0 var(--space-1) 0;font-weight:var(--font-weight-semibold)}.g-banner__body{font-size:var(--font-size-md)}.g-banner--info{background:var(--color-info-soft-bg);color:var(--color-info-soft-text)}.g-banner--success{background:var(--color-success-soft-bg);color:var(--color-success-soft-text)}.g-banner--warning{background:var(--color-warning-soft-bg);color:var(--color-warning-soft-text)}.g-banner--danger{background:var(--color-danger-soft-bg);color:var(--color-danger-soft-text)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-family-sans);font-size:100%;line-height:var(--line-height-normal);color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;display:flex;flex-direction:column;background-image:radial-gradient(var(--tone-dot) 1.1px,transparent 1.3px);background-size:9px 9px;background-attachment:fixed}a{color:var(--color-brand-text);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--color-brand-text-hover)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}img{max-width:100%;height:auto}main{flex:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:0;background:var(--color-brand);color:var(--color-brand-on);padding:var(--space-2) var(--space-4);border-radius:0 0 var(--radius-md) 0;transform:translateY(-100%);transition:transform .12s ease-out;z-index:1000}.skip-link:focus-visible{transform:translateY(0)}.site-footer[data-astro-cid-zizlwfnu]{background:var(--color-surface-muted);border-top:3px solid var(--ink);padding:var(--space-5) 0;margin-top:var(--space-7)}.site-footer__inner[data-astro-cid-zizlwfnu]{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--space-5);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm)}.site-footer__copy[data-astro-cid-zizlwfnu]{margin:0;font-weight:var(--font-weight-semibold);color:var(--color-text)}.site-footer__inner[data-astro-cid-zizlwfnu] nav[data-astro-cid-zizlwfnu]{display:flex;gap:var(--space-4)}.site-footer__inner[data-astro-cid-zizlwfnu] a[data-astro-cid-zizlwfnu]{color:var(--color-text-muted)}.site-header[data-astro-cid-mwoppcd7]{position:sticky;top:0;z-index:100;background:var(--color-surface);border-bottom:3px solid var(--ink);box-shadow:var(--shadow-md);height:var(--header-height);display:flex;align-items:center}@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)){.site-header[data-astro-cid-mwoppcd7]{background:color-mix(in srgb,var(--color-surface) 82%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.site-header__inner[data-astro-cid-mwoppcd7]{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--space-5);width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.site-header__brand[data-astro-cid-mwoppcd7]{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:.01em;color:var(--color-text);text-decoration:none}.site-header__nav[data-astro-cid-mwoppcd7]{display:flex;gap:var(--space-5);align-items:center}.site-header__nav[data-astro-cid-mwoppcd7] a[data-astro-cid-mwoppcd7]{color:var(--color-text);text-decoration:none;font-weight:var(--font-weight-medium);padding:var(--space-1) 0;border-bottom:3px solid transparent}.site-header__nav[data-astro-cid-mwoppcd7] a[data-astro-cid-mwoppcd7][aria-current=page]{border-bottom-color:var(--color-brand-text);color:var(--color-brand-text)}@media(max-width:640px){.site-header__nav[data-astro-cid-mwoppcd7]{gap:var(--space-3);font-size:var(--font-size-sm)}}.g-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:2px solid var(--ink);border-radius:var(--radius-md);box-shadow:3px 3px 0 var(--ink);font-weight:var(--font-weight-semibold);cursor:pointer;transition:transform .1s ease,box-shadow .1s ease,background-color .12s ease,color .12s ease,border-color .12s ease;text-decoration:none}.g-button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.g-button:active:not(:disabled){transform:translate(3px,3px);box-shadow:0 0 0 var(--ink)}.g-button:disabled{cursor:not-allowed;opacity:.55}@media(prefers-reduced-motion:reduce){.g-button:hover:not(:disabled),.g-button:active:not(:disabled){transform:none}}.g-button--sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);min-height:2rem}.g-button--md{padding:var(--space-2) var(--space-4);font-size:var(--font-size-md);min-height:2.5rem}.g-button--lg{padding:var(--space-3) var(--space-5);font-size:var(--font-size-lg);min-height:3rem}.g-button--primary{background:var(--color-brand);color:var(--color-brand-on)}.g-button--primary:hover:not(:disabled){background:var(--color-brand-hover)}.g-button--secondary{background:var(--color-surface);color:var(--color-text)}.g-button--secondary:hover:not(:disabled){background:var(--color-surface-muted)}.g-button--ghost{background:transparent;color:var(--color-text);border-color:transparent;box-shadow:none}.g-button--ghost:hover:not(:disabled){background:var(--color-surface-muted);transform:none;box-shadow:none}.g-button--ghost:active:not(:disabled){transform:none}.g-button--danger{background:var(--color-danger);color:var(--color-text-inverse)}.g-button--danger:hover:not(:disabled){background:var(--color-danger-strong-hover)}.g-button__spinner{width:1em;height:1em;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:g-button-spin .7s linear infinite}.g-button__label--loading{opacity:.7}@keyframes g-button-spin{to{transform:rotate(360deg)}}.g-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-5);text-align:center;background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg)}.g-empty__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.g-empty__desc{margin:0;color:var(--color-text-muted);max-width:36rem}.g-empty__action{margin-top:var(--space-2)}.g-skeleton{display:inline-block;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-muted) 0%,var(--color-border) 50%,var(--color-surface-muted) 100%);background-size:200% 100%;animation:g-skeleton-shimmer 1.4s ease-in-out infinite}.g-skeleton--text{display:block;width:100%;height:1em}.g-skeleton--title{display:block;width:14rem;max-width:100%;height:1.4em}.g-skeleton--block{display:block;width:100%;height:5rem}.g-skeleton--row{display:block;width:100%;height:4.5rem}.g-skeleton--card{display:block;width:100%;height:14rem}@keyframes g-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.g-skeleton{animation:none}}.cover{--cover-hue: 270;--cover-from: hsl(var(--cover-hue) 48% 22%);--cover-to: hsl(calc(var(--cover-hue) + 18) 52% 9%);--cover-accent: hsl(var(--cover-hue) 70% 72%);position:relative;display:block;width:100%;aspect-ratio:2 / 3;overflow:hidden;container-type:size;background:linear-gradient(160deg,var(--cover-from),var(--cover-to))}.cover--h0{--cover-hue: 0}.cover--h1{--cover-hue: 30}.cover--h2{--cover-hue: 60}.cover--h3{--cover-hue: 90}.cover--h4{--cover-hue: 120}.cover--h5{--cover-hue: 150}.cover--h6{--cover-hue: 180}.cover--h7{--cover-hue: 210}.cover--h8{--cover-hue: 240}.cover--h9{--cover-hue: 270}.cover--h10{--cover-hue: 300}.cover--h11{--cover-hue: 330}.cover__fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3cqh;padding:9cqw;box-sizing:border-box;text-align:center;border:max(2px,.6cqw) solid color-mix(in srgb,var(--cover-accent, var(--color-brand-text)) 50%,transparent)}.cover__title{font-family:var(--font-family-serif);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text);font-size:clamp(.55rem,13cqw,3rem);overflow-wrap:anywhere}.cover__label{font-family:var(--font-family-sans);font-weight:var(--font-weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--cover-accent, var(--color-brand-text));font-size:clamp(.5rem,7cqw,1.25rem)}.cover__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:inherit}.cover__img[hidden]{display:none}.cart-trigger{appearance:none;background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;font:inherit;color:inherit;font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-3);display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);position:fixed;top:calc(var(--header-height) + var(--space-3));right:var(--space-4);z-index:70;box-shadow:var(--shadow-sm)}.cart-trigger:hover,.cart-trigger:focus-visible{background:var(--color-surface-muted)}.cart-trigger__badge{background:var(--color-brand);color:var(--color-brand-on);border-radius:var(--radius-pill);font-size:var(--font-size-xs);padding:0 var(--space-2);min-width:1.5em;text-align:center;font-weight:var(--font-weight-semibold)}.cart-drawer__scrim{position:fixed;inset:0;background:#0006;z-index:110}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);background:var(--color-surface);box-shadow:var(--shadow-lg);z-index:120;display:flex;flex-direction:column;transform:translate(100%);transition:transform .2s ease-in-out}.cart-drawer.is-open{transform:translate(0)}@media(prefers-reduced-motion:reduce){.cart-drawer{transition:none}}.cart-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5);border-bottom:1px solid var(--color-border)}.cart-drawer__header h2{margin:0;font-family:var(--font-family-serif);font-size:var(--font-size-xl)}.cart-drawer__close{appearance:none;background:none;border:none;cursor:pointer;font-size:1.6rem;line-height:1;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--color-text)}.cart-drawer__close:hover,.cart-drawer__close:focus-visible{background:var(--color-surface-muted)}.cart-drawer__body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.cart-drawer__error{background:var(--color-surface-muted);color:var(--color-danger);border-left:3px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-3);margin:0}.cart-drawer__lines{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-4)}.cart-drawer__line{display:grid;grid-template-columns:60px 1fr auto;gap:var(--space-3);align-items:start}.cart-drawer__cover{flex:0 0 auto;width:60px;height:90px;border-radius:var(--radius-sm)}.cart-drawer__line-series{margin:0;text-transform:uppercase;font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.04em}.cart-drawer__line-title{margin:var(--space-1) 0;font-weight:var(--font-weight-medium)}.cart-drawer__line-plan{margin:0;font-size:var(--font-size-sm);color:var(--color-brand-text)}.cart-drawer__line-controls{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.cart-drawer__qty{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.cart-drawer__qty input{width:4ch;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit}.cart-drawer__remove{appearance:none;background:none;border:none;color:var(--color-text-muted);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.cart-drawer__remove:hover,.cart-drawer__remove:focus-visible{color:var(--color-danger)}.cart-drawer__line-total{font-weight:var(--font-weight-semibold)}.cart-drawer__footer{padding:var(--space-5);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-3)}.cart-drawer__subtotal{display:flex;justify-content:space-between;font-size:var(--font-size-lg)}.cart-drawer__hint{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.page[data-astro-cid-5hce7sga]{max-width:var(--container-max-width);margin:0 auto;padding:var(--space-6) var(--space-5)}
