.spinner{display:inline-block;border-radius:var(--radius-full);border:2px solid var(--color-overlay-light);border-top-color:var(--color-accent);animation:spinnerRotate .7s linear infinite;vertical-align:middle}.spinner--sm{width:16px;height:16px}.spinner--md{width:24px;height:24px}.spinner--inline{margin-right:.5rem;border-color:color-mix(in srgb,var(--color-white) 35%,transparent);border-top-color:var(--color-text)}@keyframes spinnerRotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;font-family:var(--font-body);font-weight:700;text-align:center;cursor:pointer;transition:transform .15s;border:none;text-decoration:none}.btn-primary{position:relative;overflow:hidden;z-index:0;background:var(--color-accent);color:var(--color-on-accent);padding:.75rem 2rem;border-radius:var(--radius-md);font-size:var(--font-size-base)}.btn-primary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--color-shine-light) 0%,var(--color-shine-mid) 50%,var(--color-shine-subtle) 100%);mask-image:linear-gradient(to right,black 50%,transparent 50%);-webkit-mask-image:linear-gradient(to right,black 50%,transparent 50%);mask-size:200% 100%;-webkit-mask-size:200% 100%;mask-position:0% 0%;-webkit-mask-position:0% 0%;z-index:-1;transition:mask-position .5s ease,-webkit-mask-position .5s ease}.btn-primary:focus-visible,.btn-outline:focus-visible,.btn-danger:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary:hover:not(:disabled){transform:translateY(-1px)}.btn-primary:hover:not(:disabled):before{mask-position:100% 0%;-webkit-mask-position:100% 0%}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);padding:.75rem 2rem;border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color .2s,background .2s,transform .15s}.btn-secondary:hover{border-color:var(--color-accent);background:var(--color-overlay-light);transform:translateY(-1px)}.btn-secondary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline{background:transparent;color:var(--color-text);border:1px solid var(--color-text-muted);padding:.5rem 1.5rem;border-radius:var(--radius-md);font-size:var(--font-size-md)}.btn-outline:hover{background:var(--color-overlay-light)}.btn-danger{background:var(--color-red);color:var(--color-white);border:1px solid var(--color-red);padding:.75rem 2rem;border-radius:var(--radius-md);font-size:var(--font-size-base);transition:background .2s,transform .15s}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-red) 85%,var(--color-black));transform:translateY(-1px)}.btn-danger:disabled,.btn-outline:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-block{display:flex;width:100%}.btn-loading{cursor:progress}.btn-sm{padding:.5rem 1.25rem;font-size:var(--font-size-md)}.auth-gate-section{display:flex;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:var(--section-pad);padding-top:calc(60px + 3rem)}.auth-gate-inner{max-width:500px}.auth-gate-heading{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:1rem}.auth-gate-message{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6;margin-bottom:2rem}.auth-gate-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.auth-gate-loading{color:var(--color-text-muted);font-size:var(--font-size-base)}@media(max-width:640px){.auth-gate-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem);min-height:70vh}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:420px;position:relative;animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--color-text)}.modal-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.modal-form{display:flex;flex-direction:column}.modal-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin-bottom:.5rem}.modal-subtitle{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:1.5rem;line-height:1.5}.modal-label{font-size:var(--font-size-md);font-weight:700;margin-bottom:.5rem;color:var(--color-text-muted)}.modal-input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);margin-bottom:1rem;transition:border-color .2s}.modal-input::placeholder{color:var(--color-text-muted);opacity:.5}.modal-input:focus{outline:none;border-color:var(--color-accent)}.modal-input-code{text-align:center;font-size:var(--font-size-2xl);letter-spacing:.5em;padding-left:1.5rem}.modal-optin{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:1rem;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.4;text-align:left;cursor:pointer}.modal-optin input{margin-top:.15rem;accent-color:var(--color-accent)}.modal-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.modal-google-hint{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.modal-google-hint p{font-size:var(--font-size-md);color:var(--color-text-muted)}.google-login-btn--sm{font-size:var(--font-size-md);padding:.5rem .75rem;min-height:40px}.modal-form .btn{width:100%;text-align:center;margin-top:.5rem}.modal-form .btn:disabled{opacity:.5;cursor:not-allowed}.modal-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;margin-top:1rem;text-align:center;padding:.5rem;transition:color .2s;font-family:var(--font-body)}.modal-back:hover{color:var(--color-text)}.modal-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.google-login-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .2s,border-color .2s;min-height:44px}.google-login-btn:hover{background:var(--color-surface-mid);border-color:var(--color-text-muted)}.google-login-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.modal-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0}.modal-divider:before,.modal-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.modal-divider span{color:var(--color-text-muted);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.honeypot-field{position:absolute;left:-9999px;opacity:0;pointer-events:none;width:0;height:0;overflow:hidden}@media(max-width:640px){.modal-content{padding:2rem 1.5rem}}.section-heading{font-family:var(--font-title);font-weight:700;line-height:1.15;color:var(--color-text);text-wrap:balance}.section-heading-md{font-size:var(--font-size-title)}.section-heading-sm{font-size:var(--font-size-2xl)}.play-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;text-align:left}.play-options-card{position:relative;display:flex;align-items:flex-end;min-height:340px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;cursor:pointer;color:var(--color-text);text-align:left;background:var(--color-surface);transition:transform .25s ease,box-shadow .25s ease}.play-options-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.play-options-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.play-options-card-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-size:cover;background-position:center;transition:transform .4s ease}.play-options-card:hover .play-options-card-bg{transform:scale(1.08)}.play-options-card-bg--adventure{background-image:url(/images/adventure.webp)}.play-options-card-bg--campaign{background-image:url(/images/campaign.webp)}.play-options-card-bg--arc{background-image:url(/images/arc.webp)}.play-options-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,color-mix(in srgb,var(--color-black) 15%,transparent),color-mix(in srgb,var(--color-black) 55%,transparent) 55%,color-mix(in srgb,var(--color-black) 85%,transparent))}.play-options-card-body{position:relative;z-index:2;display:flex;flex-direction:column;gap:.3rem;padding:1.5rem}.play-options-card-tag{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-xl);letter-spacing:.02em;color:var(--color-text)}.play-options-card-duration{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-gold);margin-bottom:.5rem}.play-options-card-desc{font-size:var(--font-size-md);line-height:1.6;color:color-mix(in srgb,var(--color-white) 85%,transparent)}.play-options-card-cta{margin-top:.85rem;font-weight:700;font-size:var(--font-size-md);color:var(--color-gold)}@media(max-width:900px){.play-options-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}@media(max-width:640px){.play-options-grid--compact{gap:.75rem}.play-options-grid--compact .play-options-card{min-height:132px}.play-options-grid--compact .play-options-card-body{padding:1rem 1.25rem}.play-options-grid--compact .play-options-card-duration{margin-bottom:0}.play-options-grid--compact .play-options-card-desc{display:none}.play-options-grid--compact .play-options-card-cta{margin-top:.35rem}}.booknow-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--color-overlay-modal);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:booknowFadeIn .2s ease}@keyframes booknowFadeIn{0%{opacity:0}to{opacity:1}}.booknow-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:1040px;max-height:90vh;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;position:relative;animation:booknowSlideIn .2s ease;color:var(--color-text);text-align:center}.booknow-content::-webkit-scrollbar{display:none}@keyframes booknowSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.booknow-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.booknow-close:hover{color:var(--color-text)}.booknow-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booknow-heading{margin-bottom:2rem}@media(max-width:640px){.booknow-content{padding:2rem 1.25rem 1.5rem}.booknow-heading{margin-bottom:1.25rem}}.impersonation-banner{position:fixed;bottom:0;left:0;right:0;z-index:300;background:var(--color-accent);color:var(--color-text-dark);box-shadow:0 -4px 16px color-mix(in srgb,var(--color-black) 35%,transparent);border-top:2px solid var(--color-accent-dark)}.impersonation-banner-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px))}.impersonation-banner-icon{display:inline-flex;flex-shrink:0}.impersonation-banner-text{flex:1;margin:0;font-family:var(--font-body);font-size:var(--font-size-md);line-height:1.35;min-width:0;overflow-wrap:anywhere}.impersonation-banner-text strong{font-weight:700}.impersonation-banner-exit{flex-shrink:0;min-height:44px;padding:.4rem 1rem;border:2px solid var(--color-text-dark);border-radius:var(--radius-pill);background:transparent;color:var(--color-text-dark);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:700;cursor:pointer;transition:background var(--transition-base),color var(--transition-base)}.impersonation-banner-exit:hover:not(:disabled){background:var(--color-text-dark);color:var(--color-accent)}.impersonation-banner-exit:focus-visible{outline:3px solid var(--color-text-dark);outline-offset:2px}.impersonation-banner-exit:disabled{opacity:.6;cursor:default}.app--impersonating{padding-bottom:4rem}@media(max-width:640px){.impersonation-banner-inner{flex-wrap:wrap;gap:.5rem .75rem}.impersonation-banner-text{flex:1 1 60%;font-size:var(--font-size-md)}.impersonation-banner-exit{flex:1 1 100%}.app--impersonating{padding-bottom:6rem}}@media(prefers-reduced-motion:reduce){.impersonation-banner-exit{transition:none}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--color-overlay-dark);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--color-border);padding:1rem 2rem;animation:cookieBannerSlideUp .4s ease forwards}@keyframes cookieBannerSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.cookie-banner{animation:none}}.cookie-banner-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.cookie-banner-text{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:1.5;flex:1}.cookie-banner-link{color:var(--color-accent);text-decoration:underline;transition:color .2s}.cookie-banner-link:hover{color:var(--color-text)}.cookie-banner-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.cookie-banner-opt-out{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;padding:.5rem .75rem;transition:color .2s;white-space:nowrap;text-decoration:underline}.cookie-banner-opt-out:hover{color:var(--color-text)}.cookie-banner-opt-out:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}@media(max-width:900px){.cookie-banner-inner{flex-direction:column;text-align:center;gap:1rem}.cookie-banner-text{font-size:var(--font-size-sm)}}@media(max-width:640px){.cookie-banner{padding:.875rem 1rem}.cookie-banner-inner{gap:.75rem}.cookie-banner-actions{width:100%;justify-content:center}}.exit-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:exitPopupFadeIn .25s ease}@keyframes exitPopupFadeIn{0%{opacity:0}to{opacity:1}}.exit-popup-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:420px;position:relative;animation:exitPopupSlideIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes exitPopupSlideIn{0%{transform:translateY(-24px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.exit-popup-form{display:flex;flex-direction:column}.exit-popup-icon{display:flex;justify-content:center;margin-bottom:.75rem;color:var(--color-gold)}.exit-popup-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;text-align:center;margin-bottom:.5rem}.exit-popup-subtitle{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;margin-bottom:1.5rem;line-height:1.5}.exit-popup-label{font-size:var(--font-size-md);font-weight:700;margin-bottom:.5rem;color:var(--color-text-muted)}.exit-popup-input{padding:.75rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);margin-bottom:1rem;transition:border-color var(--transition-base)}.exit-popup-input::placeholder{color:var(--color-text-muted);opacity:.5}.exit-popup-input:focus{outline:none;border-color:var(--color-accent)}.exit-popup-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.exit-popup-input-code{text-align:center;font-size:var(--font-size-2xl);letter-spacing:.5em;padding-left:1.5rem}.exit-popup-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.exit-popup-form .btn{width:100%;text-align:center;margin-top:.5rem}.exit-popup-form .btn:disabled{opacity:.5;cursor:not-allowed}.exit-popup-dismiss{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);font-family:var(--font-body);cursor:pointer;margin-top:1rem;text-align:center;padding:.5rem;transition:color var(--transition-base)}.exit-popup-dismiss:hover{color:var(--color-text)}.exit-popup-dismiss:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.exit-popup-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);font-family:var(--font-body);cursor:pointer;margin-top:1rem;text-align:center;padding:.5rem;transition:color var(--transition-base)}.exit-popup-back:hover{color:var(--color-text)}.exit-popup-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}@media(max-width:640px){.exit-popup-content{padding:2rem 1.5rem}}.mobile-book-bar{display:none}@media(max-width:1024px){.mobile-book-bar{display:block;position:fixed;bottom:0;left:0;right:0;z-index:150;padding:.75rem 1rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));background:var(--color-overlay-dark-heavy);border-top:1px solid var(--color-border);box-shadow:var(--shadow-md)}.mobile-book-bar-btn{width:100%;min-height:44px}.app--book-bar{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px))}}.account-name{display:inline-block;max-width:9ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-boundary{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.error-boundary__inner{max-width:36rem;text-align:center;color:var(--color-text)}.error-boundary__inner h1{font-size:var(--font-size-2xl);margin-bottom:.75rem}.error-boundary__inner p{color:var(--color-text-muted);margin-bottom:1.5rem}.error-boundary__button{background:var(--color-accent);color:var(--color-bg);border:none;border-radius:var(--radius-sm, 6px);padding:.65rem 1.25rem;font-weight:600;cursor:pointer;min-height:44px;min-width:44px}.error-boundary__button:hover,.error-boundary__button:focus-visible{filter:brightness(1.1);outline:2px solid var(--color-accent);outline-offset:2px}.error-boundary__details{margin-top:1.5rem;text-align:left;font-size:var(--font-size-sm);color:var(--color-text-muted);background:color-mix(in srgb,var(--color-black) 25%,transparent);padding:.75rem;border-radius:var(--radius-sm, 6px);overflow-x:auto;white-space:pre-wrap}:root{color-scheme:dark;--color-bg: #15100c;--color-bg-dark: #0d0a07;--color-bg-card: #231c16;--color-surface: #2d241d;--color-surface-mid: #3a2f26;--color-surface-light: #f5ebe0;--color-accent: #FB6107;--color-accent-hover: #e25706;--color-on-accent: #1a1a1a;--color-gold: #e9b25a;--color-red: #c0392b;--color-red-text: #f07a6c;--color-drop-in: var(--color-text);--color-drop-in-hover: #e0d8ce;--color-drop-in-subtle: color-mix(in srgb, var(--color-text) 12%, transparent);--color-accent-subtle: color-mix(in srgb, var(--color-accent) 12%, transparent);--color-text: #f6f0e6;--color-text-muted: #c3b4a2;--color-text-dark: #1a1a1a;--color-text-secondary: #555555;--color-border: #4d4034;--color-field-border: #86735f;--color-white: #ffffff;--color-black: #000000;--color-overlay-light: color-mix(in srgb, var(--color-white) 10%, transparent);--color-overlay-light-subtle: color-mix(in srgb, var(--color-white) 4%, transparent);--color-overlay-modal: color-mix(in srgb, var(--color-black) 60%, transparent);--color-overlay-dark: color-mix(in srgb, var(--color-bg-dark) 85%, transparent);--color-overlay-dark-heavy: color-mix(in srgb, var(--color-bg-dark) 97%, transparent);--color-overlay-dark-top: color-mix(in srgb, var(--color-black) 55%, transparent);--color-overlay-dark-mid: color-mix(in srgb, var(--color-black) 50%, transparent);--color-overlay-dark-bottom: color-mix(in srgb, var(--color-bg-dark) 90%, transparent);--color-accent-glow: color-mix(in srgb, var(--color-black) 15%, transparent);--color-map-terracotta: #c1694f;--map-bg: #14202a;--map-region-fill: #2c3a23;--map-region-stroke: #45593a;--map-coastline: #8aa6b4;--map-border: #c79a52;--map-river: #4f86ad;--map-road: #c1694f;--map-label: #ece0cb;--map-edit-accent: #FB6107;--color-bg-image-fallback: #0a0a0a;--color-purple: #8b5cf6;--color-discord: #5865f2;--color-discord-text: #8b93f8;--color-info: #7cc4e8;--color-success: #4caf50;--color-success-subtle: color-mix(in srgb, var(--color-success) 10%, transparent);--color-gold-subtle: color-mix(in srgb, var(--color-gold) 10%, transparent);--color-gold-light: color-mix(in srgb, var(--color-gold) 15%, transparent);--color-red-subtle: color-mix(in srgb, var(--color-red) 10%, transparent);--color-red-light: color-mix(in srgb, var(--color-red) 15%, transparent);--color-muted-subtle: color-mix(in srgb, var(--color-text-muted) 10%, transparent);--color-discord-subtle: color-mix(in srgb, var(--color-discord) 10%, transparent);--color-danger: #e74c3c;--color-danger-subtle: color-mix(in srgb, var(--color-danger) 10%, transparent);--color-danger-light: color-mix(in srgb, var(--color-danger) 15%, transparent);--color-danger-hover: color-mix(in srgb, var(--color-danger) 20%, transparent);--color-orange: #e8742a;--color-orange-subtle: color-mix(in srgb, var(--color-orange) 10%, transparent);--color-orange-light: color-mix(in srgb, var(--color-orange) 15%, transparent);--color-orange-hover: color-mix(in srgb, var(--color-orange) 20%, transparent);--color-accent-dark: #d45306;--color-accent-border: color-mix(in srgb, var(--color-accent) 30%, transparent);--color-accent-glow-subtle: color-mix(in srgb, var(--color-accent) 8%, transparent);--color-accent-glow-light: color-mix(in srgb, var(--color-accent) 10%, transparent);--color-shine-light: color-mix(in srgb, var(--color-white) 15%, transparent);--color-shine-mid: rgba(255, 138, 61, .4);--color-shine-subtle: color-mix(in srgb, var(--color-white) 5%, transparent);--color-promo-dark: #1a130e;--color-promo-mid: #241a12;--color-promo-light: #2e2016;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-pill: 24px;--radius-full: 50%;--shadow-md: 0 8px 24px color-mix(in srgb, var(--color-black) 30%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, var(--color-black) 50%, transparent);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--font-title: "Sarala", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-3xs: .5625rem;--font-size-2xs: .6875rem;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-lead: clamp(1rem, 1.8vw, 1.125rem);--font-size-title: clamp(1.75rem, 3.5vw, 2.5rem);--font-size-display: clamp(2.25rem, 6vw, 4.5rem);--font-size-jumbo: clamp(5rem, 15vw, 9rem);--max-width: 1200px;--max-width-wide: 1680px;--header-height: 81px;--section-pad: 5rem 2rem;--section-pad-mobile: 3rem 1rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font-body);line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.placeholder-img{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-border) 50%,var(--color-surface) 100%);width:100%;min-height:280px;border-radius:var(--radius-lg)}.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}@keyframes revealFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0}.reveal.is-visible{animation:revealFadeIn .7s ease forwards}.reveal-stagger>*{opacity:0}.reveal-stagger.is-visible>*{animation:revealFadeIn .6s ease forwards}.reveal-stagger.is-visible>*:nth-child(1){animation-delay:.05s}.reveal-stagger.is-visible>*:nth-child(2){animation-delay:.13s}.reveal-stagger.is-visible>*:nth-child(3){animation-delay:.21s}.reveal-stagger.is-visible>*:nth-child(4){animation-delay:.29s}.reveal-stagger.is-visible>*:nth-child(5){animation-delay:.37s}.reveal-stagger.is-visible>*:nth-child(6){animation-delay:.45s}.reveal-stagger.is-visible>*:nth-child(7){animation-delay:.53s}.reveal-stagger.is-visible>*:nth-child(n+8){animation-delay:.6s}@media(prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*{opacity:1}.reveal.is-visible,.reveal-stagger.is-visible>*{animation:none}}.clickable-card{position:relative}.card-cta{display:inline-block;background:var(--color-accent);color:var(--color-on-accent);padding:.5rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:700;text-align:center;border:none;cursor:pointer;transition:background var(--transition-base)}.card-cta.card-stretch:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.card-cta:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.clickable-card:hover .card-cta{background:var(--color-accent-hover)}.clickable-card:focus-within{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-xl)}.card-cta:focus{outline:none}@media(prefers-reduced-motion:reduce){.card-cta{transition:none}}@keyframes routeFadeIn{0%{opacity:0}to{opacity:1}}.route-fade{animation:routeFadeIn .25s ease}@media(prefers-reduced-motion:reduce){.route-fade{animation:none}}.form-group{display:flex;flex-direction:column}.form-label{font-size:var(--font-size-md);font-weight:700;margin-bottom:.5rem;color:var(--color-text-muted)}.form-input{padding:.75rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);transition:border-color .2s}.form-input::placeholder{color:var(--color-text-muted);opacity:.5}.form-input:focus{outline:none;border-color:var(--color-accent)}.form-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.form-input--invalid{border-color:var(--color-red)}.form-input--disabled{opacity:.5;cursor:not-allowed}.field-error{color:var(--color-red-text);font-size:var(--font-size-sm);margin-top:.35rem}.field-hint{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:.35rem}.form-error{color:var(--color-red-text);font-size:var(--font-size-md)}.form-success{color:var(--color-success);font-size:var(--font-size-md)}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--color-overlay-dark);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--color-overlay-light)}.site-nav{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;padding:.875rem 2rem;gap:2rem}.logo{display:flex;align-items:center;white-space:nowrap;text-decoration:none;flex-shrink:0}.logo-img{height:52px;width:auto;display:block;transition:transform .25s ease}.logo:hover .logo-img{transform:scale(.92)}.nav-links{display:flex;gap:2rem;margin-left:auto}.nav-links a{position:relative;color:var(--color-text-muted);font-size:var(--font-size-base);transition:color .2s;white-space:nowrap}.nav-links a:hover{color:var(--color-text)}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:var(--radius-xs);background:var(--color-accent);transform:scaleX(0);transform-origin:center;transition:transform .25s ease}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}.nav-links a.active{color:var(--color-text)}.logo:focus-visible,.nav-links a:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-xs)}@media(prefers-reduced-motion:reduce){.nav-links a:after{transition:none}}@media(max-width:1280px){.site-nav,.nav-links{gap:1.5rem}}.nav-cta,.nav-account{white-space:nowrap;flex-shrink:0}.nav-links a.nav-link--phone,.nav-cta--mobile,.nav-account--mobile{display:none}.menu-toggle{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:none;border:none;cursor:pointer;padding:.5rem;margin-left:auto}.hamburger{display:block;width:24px;height:2px;background:var(--color-text);position:relative;transition:background .2s}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0;width:24px;height:2px;background:var(--color-text);transition:transform .3s}.hamburger:before{top:-7px}.hamburger:after{top:7px}.hamburger.open{background:transparent}.hamburger.open:before{transform:rotate(45deg);top:0}.hamburger.open:after{transform:rotate(-45deg);top:0}.site-footer{background:var(--color-bg-dark);border-top:1px solid var(--color-border);padding:4rem 2rem 2rem}.footer-inner{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1.5fr 2fr auto;gap:3rem;align-items:start}.footer-brand .logo{margin-bottom:1rem}.footer-tagline{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;max-width:280px;margin-bottom:1.25rem}.footer-contact{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;font-style:normal}.footer-contact a{display:inline-flex;align-items:flex-start;gap:.5rem;color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5;transition:color .2s}.footer-contact a:hover{color:var(--color-text)}.footer-contact .icon{flex-shrink:0;margin-top:.15rem;color:var(--color-gold)}.footer-columns{display:flex;gap:4rem}.footer-col{display:flex;flex-direction:column;gap:.5rem}.footer-col-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.5rem}.footer-col a{color:var(--color-text-muted);font-size:var(--font-size-md);transition:color .2s}.footer-col a:hover{color:var(--color-text)}.footer-social{display:flex;gap:1rem;align-items:flex-start}.social-link{color:var(--color-text-muted);transition:color .2s}.social-link:hover{color:var(--color-text)}.footer-legal{max-width:var(--max-width);margin:2rem auto 0;padding-top:1.5rem;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:1.6;text-align:center}@media(max-width:1024px){.menu-toggle{display:inline-flex}.site-header--menu-open{background:var(--color-bg);backdrop-filter:none;-webkit-backdrop-filter:none}.nav-links{position:fixed;top:var(--header-height);left:0;right:0;height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;background:var(--color-bg);flex-direction:column;align-items:stretch;margin-left:0;padding:.5rem 1.5rem calc(2rem + env(safe-area-inset-bottom));gap:0;transform:translateY(-.5rem);opacity:0;visibility:hidden;pointer-events:none;transition:transform .2s,opacity .2s,visibility 0s linear .2s}.nav-links.nav-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition:transform .2s,opacity .2s,visibility 0s}.nav-links a{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);padding:.875rem 0;border-bottom:1px solid var(--color-border)}.nav-links a:after{display:none}.nav-links a.nav-link--phone{display:block}.nav-links a.active{color:var(--color-accent)}.nav-cta--desktop,.nav-account--desktop{display:none}.nav-cta--mobile,.nav-account--mobile{display:inline-flex;width:100%;padding:.875rem 1rem;font-size:var(--font-size-base)}.nav-cta--mobile{margin-top:1.5rem}.nav-account--mobile{margin-top:.75rem}}@media(max-width:1024px)and (prefers-reduced-motion:reduce){.nav-links,.nav-links.nav-open{transform:none;transition:none}}@media(max-width:900px){.footer-inner{grid-template-columns:1fr;gap:2rem}.footer-social{order:-1}}@media(max-width:640px){:root{--section-pad: 3rem 1rem;--header-height: 77px}.site-nav{padding:.75rem 1rem}.site-footer{padding:2.5rem 1rem 1.5rem}.footer-columns{flex-direction:column;gap:1.5rem}}[data-theme=halloween]{--color-bg: #140c05;--color-bg-dark: #0a0603;--color-bg-card: #1b1007;--color-surface: #2b1809;--color-surface-mid: #42200a;--color-accent: #ff7518;--color-accent-hover: #e66306;--color-gold: #f2b134;--color-text-muted: #c3ab92;--color-border: #4a2a12}[data-theme=christmas]{--color-bg: #0a120e;--color-bg-dark: #050b08;--color-bg-card: #0c1712;--color-surface: #0e2119;--color-surface-mid: #102e20;--color-accent: #e8b04b;--color-accent-hover: #d09a36;--color-gold: #f0d08a;--color-text-muted: #b3c4b6;--color-border: #24422f}.page-section{padding:var(--section-pad);text-align:center}.page-section--base{background:var(--color-bg)}.page-section--dark{background:var(--color-bg-dark)}.page-section-header{max-width:640px;margin:0 auto 2.5rem}.page-section-header .section-heading:not(:last-child){margin-bottom:.75rem}.page-section-intro{color:var(--color-text-muted);font-size:var(--font-size-lead);line-height:1.6}@media(max-width:640px){.page-section{padding:var(--section-pad-mobile)}}.card-grid{display:grid;gap:1.5rem;max-width:var(--max-width);margin:0 auto}.card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px}.card-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1100px){.card-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px}}@media(max-width:900px){.card-grid--3{grid-template-columns:minmax(0,1fr);max-width:520px}}@media(max-width:640px){.card-grid--2,.card-grid--4{grid-template-columns:minmax(0,1fr);max-width:520px}}.fade-img{opacity:0;transition:opacity .5s ease}.fade-img--loaded{opacity:1}@media(prefers-reduced-motion:reduce){.fade-img{opacity:1;transition:none}}.card{display:flex;flex-direction:column;height:100%;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;text-align:left;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.card--center{text-align:center}.card.clickable-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--color-field-border)}.card-media{aspect-ratio:16 / 10;overflow:hidden;background:var(--color-surface)}.card-media--custom{aspect-ratio:auto;background:none;display:flex;justify-content:center;padding:1.5rem 1.5rem 0}.card-img{display:block;width:100%;height:100%;object-fit:cover}.card-body{display:flex;flex-direction:column;gap:.5rem;flex:1;padding:1.5rem}.card-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:var(--radius-full);background:var(--color-gold-subtle);border:1px solid color-mix(in srgb,var(--color-gold) 30%,transparent);color:var(--color-gold);margin-bottom:.5rem}.card--center .card-icon{margin-inline:auto}.card-eyebrow{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gold)}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.card--center .card-title-row{justify-content:center}.card-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);line-height:1.3;color:var(--color-text);text-wrap:balance}.card-meta{display:flex;flex-wrap:wrap;gap:.25rem .75rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.card--center .card-meta{justify-content:center}.card-text{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6}.card-text p+p{margin-top:.5rem}.card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.75rem}.card--center .card-actions{justify-content:center}.card-cta:disabled{opacity:.55;cursor:not-allowed}@media(min-width:768px){.card--horizontal{flex-direction:row}.card--horizontal .card-media{flex:0 0 40%;aspect-ratio:auto;min-height:260px}}@media(max-width:640px){.card-body{padding:1.25rem}}@media(prefers-reduced-motion:reduce){.card{transition:none}.card.clickable-card:hover{transform:none}}.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;max-width:960px;margin:0 auto;padding:2.5rem 2rem}.feature-text .section-heading{margin-bottom:.75rem}.feature-row-reverse{direction:rtl}.feature-row-reverse>*{direction:ltr}.feature-text p{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.7;max-width:450px}.feature-image{overflow:hidden;border-radius:var(--radius-xl)}.feature-placeholder{aspect-ratio:3 / 2;min-height:0}img.feature-img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;display:block}@keyframes featureFadeIn{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.feature-row{opacity:0}.feature-row.visible{animation:featureFadeIn .7s ease forwards}@media(max-width:900px){.feature-row{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding:2rem 1rem}.feature-row-reverse{direction:ltr}}@media(max-width:640px){.feature-image{order:-1}}.review-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;text-align:left;transition:transform .2s ease,border-color .2s ease}.review-card:hover{transform:translateY(-2px);border-color:var(--color-accent)}@media(prefers-reduced-motion:reduce){.review-card{transition:none}.review-card:hover{transform:none}}.review-avatar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.avatar-placeholder{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-surface);flex-shrink:0}.avatar-img{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0}.review-meta{display:flex;flex-direction:column;gap:.1rem}.review-name{font-weight:700;font-size:var(--font-size-base)}.review-date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.review-stars{display:flex;gap:.25rem;margin-bottom:.75rem;color:var(--color-gold)}.review-star{flex-shrink:0;fill:currentColor}.review-card p{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6}.blog-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:transform .2s ease,border-color .2s ease}.blog-card:hover{transform:translateY(-2px);border-color:var(--color-accent)}.blog-card:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.blog-card-link{display:block;text-decoration:none;color:inherit}.blog-card-link:focus{outline:none}.blog-card-image-wrap{width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-surface-mid)}.blog-card-fallback{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 60%,var(--color-accent-glow) 0%,transparent 65%),var(--color-surface-mid)}.blog-card-fallback-badge{width:64px;height:auto;opacity:.9}.blog-card-image{width:100%;height:100%;object-fit:cover;display:block}.blog-card-body{padding:1.25rem}.blog-card-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);line-height:1.3;margin-bottom:.5rem;color:var(--color-text)}.blog-card-excerpt{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-card-meta{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:var(--font-size-xs)}.blog-card-author{opacity:.8}@media(max-width:640px){.blog-card-body{padding:1rem}.blog-card-title{font-size:var(--font-size-base)}}@media(prefers-reduced-motion:reduce){.blog-card{transition:none}.blog-card:hover{transform:none}}.genre-pill{display:inline-block;padding:.2rem .65rem;font-size:var(--font-size-2xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-gold);border:1px solid color-mix(in srgb,var(--color-gold) 60%,transparent);border-radius:var(--radius-pill);line-height:1.4;white-space:nowrap}.skeleton{display:block;background:var(--color-surface);border-radius:var(--radius-sm);animation:skeletonPulse 1.6s ease-in-out infinite}.skeleton--text{height:.85rem;width:100%;margin-bottom:.5rem}.skeleton--title{height:1.1rem;width:60%;margin-bottom:.75rem}.skeleton--image{width:100%;aspect-ratio:16 / 9;border-radius:0}.skeleton--block{width:100%;height:100%}@keyframes skeletonPulse{0%,to{opacity:.55}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none;opacity:.7}}.next-up-countdown{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;color:var(--color-gold);font-weight:600;font-variant-numeric:tabular-nums}.next-up-empty{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1.5rem;text-align:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.next-up-empty p{max-width:480px;color:var(--color-text-muted)}.next-up-skeleton{min-height:260px;border-radius:var(--radius-xl)}.community-stats{color:var(--color-text-muted);font-size:var(--font-size-lead)}.community-stats strong{color:var(--color-gold);font-family:var(--font-title);font-size:var(--font-size-xl);font-variant-numeric:tabular-nums}.hero{position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:var(--color-bg);padding-top:60px}.hero-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--color-overlay-dark-top) 0%,var(--color-overlay-dark-mid) 50%,var(--color-overlay-dark-bottom) 100%),radial-gradient(ellipse at center 40%,var(--color-accent-glow) 0%,transparent 70%);pointer-events:none;z-index:1}.hero-content{position:relative;z-index:2;max-width:960px;padding:2rem}.hero-content h1{font-family:var(--font-title);font-size:var(--font-size-display);font-weight:700;line-height:1.1;margin-bottom:1.25rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);text-wrap:balance}.hero-nowrap{white-space:nowrap}.hero-content p{font-size:var(--font-size-lead);color:var(--color-text);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}.hero-rating{display:flex;align-items:center;justify-content:center;gap:.5rem;width:fit-content;margin:1.25rem auto 0;padding:.25rem 0;color:var(--color-text);font-size:var(--font-size-md);font-weight:600}.hero-rating-star{flex-shrink:0;color:var(--color-gold);fill:currentColor}.hero-rating-text{text-decoration:underline;text-decoration-color:var(--color-field-border);text-underline-offset:4px}.hero-rating:hover .hero-rating-text{text-decoration-color:currentColor}.hero-rating:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-xs)}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero-content h1,.hero-content p,.hero-content .btn,.hero-content .hero-rating{opacity:0;animation:heroFadeIn .7s ease forwards}.hero-content h1{animation-delay:.15s}.hero-content p{animation-delay:.4s}.hero-content .btn{animation-delay:.65s}.hero-content .hero-rating{animation-delay:.85s}.hero-embers{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.ember{position:absolute;bottom:-12px;width:6px;height:6px;border-radius:var(--radius-full);background:radial-gradient(circle,var(--color-gold) 0%,var(--color-accent) 55%,transparent 72%);filter:blur(.5px);opacity:0;animation:emberRise 7s ease-in infinite}.ember:nth-child(1){left:12%;animation-delay:0s;animation-duration:7s}.ember:nth-child(2){left:26%;animation-delay:1.6s;animation-duration:8.5s}.ember:nth-child(3){left:40%;animation-delay:3.1s;animation-duration:6.5s}.ember:nth-child(4){left:55%;animation-delay:.8s;animation-duration:9s}.ember:nth-child(5){left:68%;animation-delay:2.4s;animation-duration:7.5s}.ember:nth-child(6){left:81%;animation-delay:4s;animation-duration:8s}.ember:nth-child(7){left:92%;animation-delay:1.2s;animation-duration:6.8s}@keyframes emberRise{0%{transform:translateY(0) scale(.8);opacity:0}12%{opacity:.9}70%{opacity:.6}to{transform:translateY(-76vh) translate(18px) scale(1.1);opacity:0}}@media(prefers-reduced-motion:reduce){.hero-embers{display:none}.hero{background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-surface) 40%,var(--color-surface-mid) 70%,var(--color-bg) 100%)}.hero-content h1,.hero-content p,.hero-content .btn,.hero-content .hero-rating{opacity:1;animation:none}}.home-play-inner{max-width:1040px;margin:0 auto}.promo-banner{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--color-promo-dark) 0%,var(--color-promo-mid) 40%,var(--color-promo-light) 70%,var(--color-promo-dark) 100%);padding:1rem}.promo-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 50%,var(--color-accent-glow-subtle) 0%,transparent 70%);pointer-events:none}.promo-inner{position:relative;max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem 1.25rem;text-align:center}.promo-deal{font-size:var(--font-size-md);color:var(--color-text)}.promo-countdown{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gold);font-variant-numeric:tabular-nums}.home-more{margin-top:2rem}.home-more a{color:var(--color-text);font-size:var(--font-size-md);font-weight:600;text-decoration:underline;text-decoration-color:var(--color-field-border);text-underline-offset:3px}.home-more a:hover{color:var(--color-accent)}.home-more a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.home-next-up-inner{display:flex;flex-direction:column;gap:1.5rem;max-width:960px;margin:0 auto}.home-features{padding:2.5rem 0}.home-blog-grid{text-align:left}@media(max-width:640px){.hero{min-height:70vh}.hero-content h1{font-size:var(--font-size-3xl)}.home-features{padding:1rem 0}}.page-hero{position:relative;min-height:50vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-bg-image-fallback);padding:calc(var(--header-height) + 3rem) 2rem 4rem;text-align:center}.page-hero--tall{min-height:70vh}.page-hero-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.page-hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,color-mix(in srgb,var(--color-black) 70%,transparent),color-mix(in srgb,var(--color-black) 60%,transparent),color-mix(in srgb,var(--color-bg) 92%,transparent));pointer-events:none}.page-hero--split .page-hero-scrim{background:linear-gradient(90deg,color-mix(in srgb,var(--color-black) 80%,transparent),color-mix(in srgb,var(--color-black) 55%,transparent) 55%,color-mix(in srgb,var(--color-black) 35%,transparent)),linear-gradient(180deg,transparent 60%,color-mix(in srgb,var(--color-bg) 92%,transparent) 100%)}.page-hero-inner{position:relative;z-index:1;width:100%;max-width:720px;margin:0 auto}.page-hero--split .page-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:var(--max-width);text-align:left}.page-hero-title{font-family:var(--font-title);font-size:var(--font-size-display);font-weight:700;line-height:1.1;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);text-wrap:balance;margin-bottom:1rem}.page-hero-tagline{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-md);color:var(--color-gold);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}.page-hero-desc{font-size:var(--font-size-lead);color:var(--color-text);line-height:1.7;max-width:560px;margin:0 auto}.page-hero--split .page-hero-desc{margin:0;max-width:480px}.page-hero-desc p+p{margin-top:.75rem}.page-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:2rem}.page-hero--split .page-hero-actions{justify-content:flex-start}.page-hero-aside{display:flex;align-items:center;justify-content:center;min-width:0}.page-hero-text>*,.page-hero-aside{opacity:0;animation:pageHeroFadeIn .7s ease forwards}.page-hero-title{animation-delay:.15s}.page-hero-tagline{animation-delay:.3s}.page-hero-desc,.page-hero-aside{animation-delay:.4s}.page-hero-actions{animation-delay:.5s}@keyframes pageHeroFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.page-hero--split .page-hero-inner{grid-template-columns:1fr;text-align:center}.page-hero--split .page-hero-desc{margin:0 auto}.page-hero--split .page-hero-actions{justify-content:center}.page-hero--split .page-hero-scrim{background:linear-gradient(180deg,color-mix(in srgb,var(--color-black) 75%,transparent),color-mix(in srgb,var(--color-black) 60%,transparent),color-mix(in srgb,var(--color-bg) 92%,transparent))}}@media(max-width:640px){.page-hero,.page-hero--tall{min-height:auto;padding:calc(var(--header-height) + 2rem) 1rem 3rem}.page-hero-title{font-size:var(--font-size-3xl)}}@media(prefers-reduced-motion:reduce){.page-hero-text>*,.page-hero-aside{animation:none;opacity:1}}.step-list{list-style:none;display:grid;grid-template-columns:repeat(var(--step-count, 3),minmax(0,1fr));gap:2rem;max-width:var(--max-width);margin:0 auto;padding:0}.step-list-item{text-align:center;padding:1rem 1.5rem}.step-list-num{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-title);font-weight:700;font-size:var(--font-size-xl);margin-bottom:1.25rem}.step-list-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);line-height:1.3;margin-bottom:.75rem}.step-list-body{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;max-width:320px;margin:0 auto}.step-list-body a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}@media(max-width:900px){.step-list{grid-template-columns:minmax(0,1fr);max-width:420px;gap:1rem}}.cta-band{position:relative;overflow:hidden;padding:var(--section-pad);text-align:center}.cta-band--base{background:var(--color-bg)}.cta-band--dark{background:var(--color-bg-dark)}.cta-band--image{background-color:var(--color-bg-image-fallback)}.cta-band-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.cta-band--image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(ellipse 640px 300px at center,color-mix(in srgb,var(--color-black) 76%,transparent),color-mix(in srgb,var(--color-black) 68%,transparent) 60%,color-mix(in srgb,var(--color-black) 40%,transparent));pointer-events:none}@media(max-width:900px){.cta-band--image:before{background:color-mix(in srgb,var(--color-black) 68%,transparent)}}.cta-band-inner{position:relative;z-index:2;max-width:600px;margin:0 auto}.cta-band-heading{margin-bottom:1rem}.cta-band-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6}.cta-band--image .cta-band-text{color:var(--color-text)}.cta-band-text p+p{margin-top:.5rem}.cta-band-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:2rem}@media(max-width:640px){.cta-band{padding:var(--section-pad-mobile)}}.accordion{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:0}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-item:first-child{border-top:1px solid var(--color-border)}.accordion-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.25rem .5rem;background:none;border:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;text-align:left;cursor:pointer;gap:1rem;transition:color .2s ease}.accordion-trigger:hover{color:var(--color-accent)}.accordion-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.accordion-trigger-text{flex:1}.accordion-icon{position:relative;flex-shrink:0;width:20px;height:20px}.accordion-icon:before,.accordion-icon:after{content:"";position:absolute;background:var(--color-text-muted);transition:transform .25s ease,opacity .25s ease}.accordion-icon:before{top:50%;left:0;width:100%;height:2px;transform:translateY(-50%)}.accordion-icon:after{top:0;left:50%;width:2px;height:100%;transform:translate(-50%)}.accordion-item--open .accordion-icon:after{transform:translate(-50%) rotate(90deg);opacity:0}.accordion-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.accordion-item--open .accordion-panel{grid-template-rows:1fr}.accordion-panel-inner{overflow:hidden;min-height:0;visibility:hidden;transition:visibility .28s ease;padding:0 .5rem 1.5rem;color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.7}.accordion-item--open .accordion-panel-inner{visibility:visible}@media(prefers-reduced-motion:reduce){.accordion-panel,.accordion-panel-inner{transition:none}}.accordion-panel-inner a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.accordion-panel-inner a:hover{color:var(--color-accent-hover)}.accordion-panel-inner a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.booking-calendar{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;width:100%;max-width:380px}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.cal-month-label{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);letter-spacing:.02em}.cal-nav-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-2xl);line-height:1;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.cal-nav-btn:hover:not(:disabled){background:var(--color-surface)}.cal-nav-btn:disabled{opacity:.3;cursor:not-allowed}.cal-nav-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cal-table{width:100%;border-collapse:collapse;table-layout:fixed}.cal-weekday{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;padding-bottom:.5rem;text-align:center}.cal-cell{text-align:center;padding:2px}.cal-day-btn{width:38px;height:38px;border:none;border-radius:var(--radius-lg);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background .15s,color .15s,transform .15s}.cal-day-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cal-cell--studio .cal-day-btn{background:var(--color-accent);color:var(--color-on-accent);font-weight:700}.cal-cell--studio .cal-day-btn:hover{background:var(--color-accent-hover);transform:scale(1.08)}.cal-cell--other .cal-day-btn{background:var(--color-surface-mid);color:var(--color-text);font-weight:600}.cal-cell--other .cal-day-btn:hover{background:var(--color-surface);transform:scale(1.08)}.cal-cell--drop-in .cal-day-btn{background:var(--color-drop-in);color:var(--color-bg);font-weight:700}.cal-cell--drop-in .cal-day-btn:hover{background:var(--color-drop-in-hover);transform:scale(1.08)}.cal-cell--arc .cal-day-btn{background:var(--color-gold);color:var(--color-bg);font-weight:700}.cal-cell--arc .cal-day-btn:hover{transform:scale(1.08)}.cal-arc-dot{position:absolute;bottom:3px;right:4px;width:5px;height:5px;border-radius:var(--radius-full);background:var(--color-gold)}.cal-private-dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:var(--radius-full);background:var(--color-accent)}.cal-day-btn{position:relative}.cal-cell--disabled .cal-day-btn{color:var(--color-text-muted);opacity:.3;cursor:not-allowed}.cal-cell--disabled .cal-day-btn:hover{transform:none}.cal-cell--today .cal-day-btn{box-shadow:inset 0 0 0 2px var(--color-gold)}.cal-legend{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin:.5rem 0 0;padding:.75rem 0 0;border-top:1px solid var(--color-border);text-align:left}.cal-legend-item{display:flex;align-items:flex-start;gap:.6rem}.cal-legend-swatch{width:14px;height:14px;margin-top:.15rem;border-radius:var(--radius-xs);flex-shrink:0}.cal-legend-swatch--private{background:var(--color-accent)}.cal-legend-swatch--drop-in{background:var(--color-drop-in)}.cal-legend-swatch--arc{background:var(--color-gold)}.cal-legend-text{flex:1;display:flex;flex-direction:column;gap:.1rem}.cal-legend-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 .75rem}.cal-legend-price{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text);white-space:nowrap}.cal-legend-label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:700}.cal-legend-detail{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.45}.cal-loading{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted);padding:.5rem 0}@media(max-width:900px){.booking-calendar{max-width:100%}}@media(max-width:640px){.booking-calendar{padding:1rem}.cal-day-btn{width:34px;height:34px;font-size:var(--font-size-sm)}}@media(prefers-reduced-motion:reduce){.cal-day-btn{transition:none}.cal-cell--drop-in .cal-day-btn:hover,.cal-cell--studio .cal-day-btn:hover,.cal-cell--other .cal-day-btn:hover{transform:none}.cal-nav-btn{transition:none}}.success-dice{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin-bottom:.75rem}.success-dice-svg{width:72px;height:72px;transform-origin:center;animation:diceTumble .9s cubic-bezier(.22,.85,.3,1.2) both;filter:drop-shadow(0 4px 10px var(--color-accent-glow-light))}.d20-body{fill:var(--color-accent-subtle);stroke:var(--color-accent);stroke-width:3;stroke-linejoin:round}.d20-face{fill:var(--color-accent-glow-light);stroke:var(--color-accent);stroke-width:1.5;stroke-linejoin:round}.d20-facets line{stroke:var(--color-accent-border);stroke-width:1.5}.d20-number{fill:var(--color-gold);font-family:var(--font-title);font-weight:700;font-size:26px;text-anchor:middle;opacity:0;animation:diceNumberIn .3s ease .62s forwards}.success-dice-caption{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);color:var(--color-gold);letter-spacing:.02em;opacity:0;animation:diceNumberIn .4s ease .8s forwards}@keyframes diceTumble{0%{transform:rotate(-230deg) scale(.3);opacity:0}60%{transform:rotate(12deg) scale(1.12);opacity:1}to{transform:rotate(0) scale(1);opacity:1}}@keyframes diceNumberIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.success-dice-svg,.d20-number,.success-dice-caption{animation:none;opacity:1;transform:none}}.discord-connect-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.25rem 1.5rem;margin-top:1.5rem;text-align:left}.discord-connect-title{margin:0 0 .5rem;font-family:var(--font-heading);font-size:var(--font-size-base);color:var(--color-text)}.discord-connect-text{margin:0 0 .75rem;font-size:var(--font-size-md);line-height:1.6;color:var(--color-text-muted)}.discord-connect-text strong{color:var(--color-text)}.discord-connect-text--muted{margin-bottom:0;font-style:italic}.discord-connect-btn{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.6rem 1.25rem;border:none;border-radius:8px;background-color:var(--color-discord);color:var(--color-white);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:700;text-decoration:none;cursor:pointer;transition:filter .15s ease}.discord-connect-btn:hover{filter:brightness(1.1)}.discord-connect-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.discord-connect-btn:disabled{opacity:.6;cursor:not-allowed}.discord-connect-error{margin:.75rem 0 0;font-size:var(--font-size-md);color:var(--color-red-text)}@media(max-width:640px){.discord-connect-card{padding:1rem 1.1rem}.discord-connect-btn{width:100%;justify-content:center}}.sms-optin-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-top:1rem;text-align:left}.sms-optin-text{margin:0 0 .75rem;font-size:var(--font-size-md);line-height:1.6;color:var(--color-text-muted)}.sms-optin-card .form-group{margin-bottom:.75rem}.interview-prompt{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);text-align:center}.interview-prompt-heading{font-size:var(--font-size-base);font-weight:600;margin-bottom:1rem;color:var(--color-text)}.interview-prompt-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.interview-prompt-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.interview-prompt-text{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5}.booking-progress{margin-bottom:1.5rem}.booking-progress-text{margin:0 0 .5rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.booking-progress-name{color:var(--color-text);font-weight:700}.booking-progress-track{height:4px;border-radius:var(--radius-full);background:var(--color-border);overflow:hidden}.booking-progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width .3s ease}@media(prefers-reduced-motion:reduce){.booking-progress-fill{transition:none}}.card-form{display:flex;flex-direction:column;gap:.75rem}.card-form-element{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:border-color .2s;min-height:44px;display:flex;align-items:center}.card-form-element:focus-within{border-color:var(--color-accent)}.card-form-element .StripeElement{width:100%}.card-form-error{color:var(--color-red-text);font-size:var(--font-size-sm)}.card-form-success{color:var(--color-success);font-size:var(--font-size-sm)}.wallet-buttons{display:flex;flex-direction:column;gap:.75rem}.wallet-buttons--pending{visibility:hidden;height:0;overflow:hidden}.payment-step{display:flex;flex-direction:column;gap:1.25rem}.payment-loading{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:2rem 0}.payment-credit-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-gold);border-radius:var(--radius-lg);padding:1rem 1.25rem}.payment-credit-info strong{display:block;font-size:var(--font-size-md);margin-bottom:.2rem;color:var(--color-gold)}.payment-credit-info p{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.payment-divider{display:flex;align-items:center;gap:.75rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}.payment-divider:before,.payment-divider:after{content:"";flex:1;border-top:1px solid var(--color-border)}.payment-section{display:flex;flex-direction:column;gap:.5rem}.payment-section-title{font-size:var(--font-size-md);font-weight:700;color:var(--color-text-muted);margin:0}.payment-section-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.payment-price{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem}.payment-price-row{display:flex;justify-content:space-between;font-size:var(--font-size-md);padding:.4rem 0;color:var(--color-text-muted)}.payment-price-total{border-top:1px solid var(--color-border);margin-top:.4rem;padding-top:.6rem;font-weight:700;color:var(--color-text)}.payment-cards{display:flex;flex-direction:column;gap:.5rem}.payment-card-option{display:flex;align-items:center;gap:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem;cursor:pointer;transition:border-color .15s,transform .15s;text-align:left;color:var(--color-text);font-family:var(--font-body);min-height:44px}.payment-card-option:hover{border-color:var(--color-accent);transform:translateY(-1px)}.payment-card-option--selected{border-color:var(--color-accent);background:var(--color-overlay-light-subtle)}.payment-card-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.payment-card-option:disabled{opacity:.5;cursor:not-allowed;transform:none}.payment-card-check{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-full);border:2px solid var(--color-border);font-size:var(--font-size-2xs);flex-shrink:0;transition:border-color .15s,background .15s;color:var(--color-bg)}.payment-card-option--selected .payment-card-check{border-color:var(--color-accent);background:var(--color-accent)}.payment-card-brand{font-weight:600;font-size:var(--font-size-md);text-transform:capitalize}.payment-card-last4{font-size:var(--font-size-md);font-family:monospace;color:var(--color-text-muted)}.payment-card-exp{font-size:var(--font-size-xs);color:var(--color-text-muted);flex:1}.payment-card-links{display:flex;align-items:center;gap:1rem}.payment-add-card-link{background:none;border:none;color:var(--color-accent);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;padding:.35rem 0;text-align:left;transition:opacity .15s}.payment-add-card-link:hover{opacity:.8}.payment-add-card-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.payment-policy{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.6;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.payment-policy strong{color:var(--color-text)}.payment-error{color:var(--color-red-text);font-size:var(--font-size-md)}.coupon-form{margin:0}.coupon-form__row{display:flex;gap:.5rem}.coupon-form__input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);min-height:38px;box-sizing:border-box}.coupon-form__input::placeholder{color:var(--color-text-muted)}.coupon-form__input:focus{outline:none;border-color:var(--color-accent)}.coupon-form__btn{padding:.5rem 1rem;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:transparent;color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;cursor:pointer;transition:background var(--transition-base),color var(--transition-base);min-height:38px;white-space:nowrap}.coupon-form__btn:hover:not(:disabled){background:var(--color-accent);color:var(--color-text)}.coupon-form__btn:disabled{opacity:.5;cursor:default}.coupon-form__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.coupon-form__error{color:var(--color-red-text);font-size:var(--font-size-sm);margin:.35rem 0 0}.coupon-applied{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-accent) 8%,transparent);margin:0}.coupon-applied__label{font-family:var(--font-body);font-size:var(--font-size-md);color:var(--color-text)}.coupon-applied__code{font-weight:700;color:var(--color-accent)}.coupon-applied__remove{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;padding:0;text-decoration:underline}.coupon-applied__remove:hover{color:var(--color-red-text)}.coupon-applied__remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.payment-price-row--discount{color:var(--color-accent)}@media(max-width:640px){.payment-credit-banner{flex-direction:column;align-items:flex-start}}.booking-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--color-overlay-dark-heavy);padding:1rem}.booking-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:2rem;max-width:520px;width:100%;max-height:85vh;display:flex;flex-direction:column;position:relative}.booking-body{flex:1;overflow-y:auto;min-height:0;padding-right:.25rem;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.booking-body::-webkit-scrollbar{width:6px}.booking-body::-webkit-scrollbar-track{background:transparent}.booking-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.booking-body::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.booking-footer{flex-shrink:0;padding-top:.75rem;margin-top:.75rem;border-top:1px solid var(--color-border)}.booking-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;line-height:1;padding:.25rem;transition:color .15s}.booking-close:hover{color:var(--color-text)}.booking-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-xl);margin-bottom:1rem;padding-right:2rem}.booking-price{margin:-.5rem 0 1rem;color:var(--color-text-muted);font-size:var(--font-size-md)}.booking-step-content{min-height:200px;display:flex;flex-direction:column;gap:1rem}.booking-step-desc{color:var(--color-text-muted);font-size:var(--font-size-md);margin:0}.booking-loading,.booking-empty{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:2rem 0}.booking-slot-list{display:flex;flex-direction:column;gap:1rem}.booking-slot-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem}.booking-slot-time{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.5rem}.booking-location-chips{display:flex;flex-wrap:wrap;gap:.5rem}.booking-loc-chip{padding:.5rem 1rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.booking-loc-chip:hover{background:var(--color-surface-mid);transform:translateY(-1px)}.booking-loc-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-loc-chip--studio{border-color:var(--color-accent);color:var(--color-accent);font-weight:700}.booking-loc-chip--studio:hover{background:var(--color-accent);color:var(--color-on-accent)}.booking-loc-chip-address{display:block;font-size:var(--font-size-2xs);font-weight:400;opacity:.7;margin-top:.15rem}.booking-adventure-list{display:flex;flex-direction:column;gap:.75rem}.booking-adventure-card{display:flex;align-items:flex-start;gap:1rem;text-align:left;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem;cursor:pointer;transition:border-color .15s,transform .15s}.booking-adventure-image{flex-shrink:0;width:88px;height:88px;object-fit:cover;border-radius:var(--radius-md);background:var(--color-surface-mid)}.booking-adventure-text{flex:1;min-width:0;padding:.25rem .25rem .25rem 0}.booking-adventure-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.35rem}.booking-adventure-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.booking-adventure-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-adventure-card h3{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);color:var(--color-text)}.booking-adventure-card p{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.booking-gm-list{display:flex;flex-direction:column;gap:.5rem}.booking-gm-card{display:flex;align-items:center;justify-content:space-between;text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;cursor:pointer;transition:border-color .15s,transform .15s}.booking-gm-card:hover{border-color:var(--color-accent);transform:translateY(-1px)}.booking-gm-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-gm-card--priority{border-color:var(--color-gold)}.booking-gm-name{font-weight:600;font-size:var(--font-size-base);color:var(--color-text)}.booking-gm-badge{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-gold)}.booking-loc-chip--custom{border-style:dashed;color:var(--color-text-muted);font-style:italic}.booking-loc-chip--custom:hover{border-style:solid;color:var(--color-text)}.booking-custom-loc{display:flex;flex-direction:column;gap:.75rem}.booking-custom-loc-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted)}.booking-custom-loc-input{padding:.75rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);transition:border-color .2s}.booking-custom-loc-input:focus{outline:none;border-color:var(--color-accent)}.booking-custom-loc-input::placeholder{color:var(--color-text-muted);opacity:.5}.booking-custom-loc .btn{margin-top:.25rem}.booking-invite-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.booking-invite-row{display:flex;align-items:center;gap:.5rem}.booking-invite-input{flex:1;padding:.65rem .85rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);transition:border-color .2s;min-height:44px}.booking-invite-input:focus{outline:none;border-color:var(--color-accent)}.booking-invite-input::placeholder{color:var(--color-text-muted);opacity:.5}.booking-invite-remove{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-lg);cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,border-color .15s}.booking-invite-remove:hover{color:var(--color-red-text);border-color:var(--color-red)}.booking-invite-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-invite-add{background:none;border:none;color:var(--color-accent);font-size:var(--font-size-md);font-weight:600;cursor:pointer;padding:.35rem 0;min-height:44px;display:flex;align-items:center;text-align:left;transition:opacity .15s}.booking-invite-add:hover{opacity:.8}.booking-invite-add:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-invite-result{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1rem}.booking-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem}.booking-summary-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:var(--font-size-md)}.booking-summary-row+.booking-summary-row{border-top:1px solid var(--color-border)}.booking-summary-label{color:var(--color-text-muted);font-weight:500}.booking-summary-address{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:.15rem}.booking-success-address{font-size:var(--font-size-sm);color:var(--color-text-muted)}.booking-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:.75rem}.booking-invite-actions{display:flex;align-items:center;gap:1rem}.booking-skip{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:500;cursor:pointer;padding:.5rem;transition:color .15s}.booking-skip:hover{color:var(--color-text)}.booking-skip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;padding:.5rem 0;transition:color .15s}.booking-back:hover{color:var(--color-text)}.booking-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.booking-success{text-align:center;padding:1rem 0}.booking-success-icon{font-size:var(--font-size-3xl);color:var(--color-accent);margin-bottom:.5rem}.booking-success p{margin-bottom:.75rem}.booking-success-details{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.7;margin-bottom:1.5rem}.booking-success-actions{display:flex;flex-direction:column;align-items:center;gap:.5rem}.booking-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}.booking-type-section{margin-bottom:1.5rem}.booking-type-section:last-child{margin-bottom:0}.booking-type-heading{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.booking-type-heading--public{color:var(--color-drop-in)}.booking-type-heading--private{color:var(--color-accent)}.booking-type-desc{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-bottom:.75rem}.booking-disabled-prompt{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem}.booking-disabled-message{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);margin-bottom:.75rem}.booking-disabled-sub{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1.5rem;max-width:360px}.booking-discord-link{display:inline-flex;align-items:center;justify-content:center;background:var(--color-discord);color:var(--color-white);font-weight:600;font-size:var(--font-size-base);padding:.75rem 1.5rem;border-radius:var(--radius-lg);text-decoration:none;min-height:44px;min-width:44px;transition:opacity var(--transition-base)}.booking-discord-link:hover{opacity:.9}.booking-discord-link:focus-visible{outline:2px solid var(--color-discord);outline-offset:2px}@media(prefers-reduced-motion:reduce){.booking-discord-link{transition:none}}@media(max-width:640px){.booking-content{padding:1.5rem 1rem;max-height:90vh}.booking-title{font-size:var(--font-size-lg)}}.drop-in-session-list{display:flex;flex-direction:column;gap:.75rem}.drop-in-session-card{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;cursor:pointer;transition:border-color .15s,transform .15s;width:100%}.drop-in-session-card:hover{border-color:var(--color-drop-in);transform:translateY(-2px)}.drop-in-session-card:focus-visible{outline:2px solid var(--color-drop-in);outline-offset:2px}.drop-in-session-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem}.drop-in-session-header h3{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);color:var(--color-text);margin:0}.drop-in-session-slots{flex-shrink:0;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-drop-in);background:var(--color-drop-in-subtle);padding:.25rem .5rem;border-radius:var(--radius-md);white-space:nowrap}.drop-in-session-details{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.drop-in-session-time,.drop-in-session-location,.drop-in-session-gm{font-size:var(--font-size-sm);color:var(--color-text-muted)}.drop-in-session-time:after,.drop-in-session-location:after{content:"·";margin-left:.5rem;color:var(--color-border)}.drop-in-session-gm:after{content:""}.drop-in-session-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5;margin-bottom:.5rem}.drop-in-session-capacity{height:3px;background:var(--color-border);border-radius:var(--radius-xs);overflow:hidden;margin-top:.5rem}.drop-in-session-capacity-bar{height:100%;background:var(--color-drop-in);border-radius:var(--radius-xs);transition:width .3s ease}.drop-in-session-card--joined{border-color:var(--color-accent)}.drop-in-session-joined{flex-shrink:0;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);background:var(--color-accent-subtle);padding:.25rem .5rem;border-radius:var(--radius-md);white-space:nowrap}.drop-in-session-action-hint{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent);margin-top:.5rem}.drop-in-guest-total{font-size:var(--font-size-md);color:var(--color-text-muted);font-weight:600;margin:.75rem 0 .25rem}@media(max-width:640px){.drop-in-session-header{flex-direction:column;gap:.35rem}.drop-in-session-details{flex-direction:column;gap:.25rem}.drop-in-session-time:after,.drop-in-session-location:after{content:"";margin-left:0}}@media(prefers-reduced-motion:reduce){.drop-in-session-card{transition:none}.drop-in-session-card:hover{transform:none}.drop-in-session-capacity-bar{transition:none}}.edit-players-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;background:var(--color-overlay-dark-heavy);padding:1rem}.edit-players-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:2rem;max-width:440px;width:100%;max-height:80vh;overflow-y:auto;position:relative}.edit-players-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;line-height:1;padding:.25rem;transition:color .15s}.edit-players-close:hover{color:var(--color-text)}.edit-players-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-players-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);margin-bottom:.25rem;padding-right:2rem}.edit-players-session-name{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:1.25rem}.edit-players-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5;margin-bottom:1rem}.edit-players-loading{color:var(--color-text-muted);font-size:var(--font-size-md);padding:1rem 0}.edit-players-list{list-style:none;padding:0;margin:0 0 1.25rem;display:flex;flex-direction:column;gap:.5rem}.edit-players-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.edit-players-info{display:flex;flex-direction:column;min-width:0}.edit-players-name{font-weight:600;font-size:var(--font-size-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-players-email{font-size:var(--font-size-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-players-owner-badge{display:inline-block;margin-left:.4rem;font-size:var(--font-size-3xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:.05rem .3rem;vertical-align:middle}.edit-players-remove{flex-shrink:0;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;padding:.35rem .75rem;cursor:pointer;transition:color .15s,border-color .15s;min-height:32px}.edit-players-remove:hover{color:var(--color-red-text);border-color:var(--color-red)}.edit-players-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-players-remove:disabled{opacity:.5;cursor:not-allowed}.edit-players-empty{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:1rem}.edit-players-add-form{display:flex;gap:.5rem;align-items:center}.edit-players-add-input{flex:1;padding:.6rem .85rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);transition:border-color .2s;min-height:40px}.edit-players-add-input:focus{outline:none;border-color:var(--color-accent)}.edit-players-add-input::placeholder{color:var(--color-text-muted);opacity:.5}.edit-players-error{color:var(--color-red-text);font-size:var(--font-size-sm);margin-top:.75rem}.edit-players-full-notice{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-top:.5rem;font-style:italic}.edit-players-confirm-message{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1rem}.edit-players-credit-note{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem;font-size:var(--font-size-md);line-height:1.5;margin-bottom:1.25rem}.edit-players-credit-note--warning{border-color:var(--color-red);color:var(--color-text-muted)}.edit-players-confirm-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.edit-players-confirm-btn{font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;padding:.6rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s;min-height:44px;border:1px solid transparent}.edit-players-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.edit-players-confirm-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-players-confirm-btn--danger{background:none;border-color:var(--color-red);color:var(--color-red-text)}.edit-players-confirm-btn--danger:hover:not(:disabled){background:var(--color-red);color:var(--color-text)}.edit-players-text-btn{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;text-decoration:underline;padding:.25rem 0;transition:color .15s;min-height:44px}.edit-players-text-btn:hover{color:var(--color-text)}.edit-players-text-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-players-back-btn{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;padding:.5rem 0;margin-top:1rem;transition:color .15s;min-height:44px}.edit-players-back-btn:hover{color:var(--color-text)}.edit-players-back-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-players-subview{margin-top:.5rem}.edit-players-subview-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.5rem}.edit-players-subview-desc{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5;margin-bottom:1rem}.edit-players-subview-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-top:1rem}.edit-players-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem;margin-bottom:1rem}.edit-players-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-md);padding:.25rem 0}.edit-players-price{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem;margin-bottom:1rem}.edit-players-price-row{display:flex;justify-content:space-between;font-size:var(--font-size-md);padding:.25rem 0;color:var(--color-text-muted)}.edit-players-price-total{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:.5rem;font-weight:700;color:var(--color-text)}@media(prefers-reduced-motion:reduce){.edit-players-confirm-btn,.edit-players-text-btn,.edit-players-back-btn{transition:none}}@media(max-width:640px){.edit-players-content{padding:1.5rem 1rem;max-height:90vh}.edit-players-confirm-actions{flex-direction:column;align-items:stretch}.edit-players-confirm-btn{text-align:center}}.carousel{--carousel-visible: 1;--carousel-gap: 1rem;position:relative;max-width:var(--max-width);margin-inline:auto}.carousel-viewport{display:flex;gap:var(--carousel-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:.5rem .25rem .75rem;margin:-.5rem -.25rem -.75rem;border-radius:var(--radius-xl)}.carousel-viewport::-webkit-scrollbar{display:none}.carousel-viewport:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.carousel-slide{flex:0 0 calc((100% - (var(--carousel-visible) - 1) * var(--carousel-gap)) / var(--carousel-visible));min-width:0;scroll-snap-align:start;display:flex}.carousel-slide>*{flex:1;min-width:0}@media(min-width:641px){.carousel--few .carousel-viewport{justify-content:center}}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.25rem}.carousel-btn{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-bg-card);border:1px solid var(--color-field-border);color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition-fast),opacity var(--transition-fast)}.carousel-btn:hover:not(:disabled){background:var(--color-surface)}.carousel-btn:disabled{opacity:.4;cursor:default}.carousel-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.carousel-dots{display:flex;align-items:center}.carousel-dot{width:24px;height:24px;padding:0;border:none;background:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.carousel-dot:before{content:"";width:10px;height:10px;border-radius:var(--radius-full);background:var(--color-surface-mid);border:1px solid var(--color-field-border);transition:background var(--transition-fast),transform var(--transition-fast)}.carousel-dot:hover:before{background:var(--color-text-muted)}.carousel-dot--active:before{background:var(--color-accent);border-color:var(--color-accent);transform:scale(1.2)}.carousel-dot:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:var(--radius-full)}@media(max-width:900px){.carousel--multi .carousel-slide{flex-basis:calc((100% - var(--carousel-gap)) / 2)}}@media(max-width:640px){.carousel--multi .carousel-slide{flex-basis:85%}}@media(prefers-reduced-motion:reduce){.carousel-btn,.carousel-dot:before{transition:none}}.adventures-calendar{display:flex;flex-direction:column;align-items:center;gap:.75rem;scroll-margin-top:calc(var(--header-height) + 1rem)}.adventures-calendar:focus{outline:none}.adventures-calendar:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-xl)}.adventures-calendar-heading{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-xl);color:var(--color-text);text-align:center}.adventures-calendar .booking-calendar{max-width:400px}.adventures-empty{color:var(--color-text-muted);text-align:center}.adventures-upcoming{display:flex;flex-direction:column;gap:1.5rem;max-width:960px;margin:0 auto}.adventures-upcoming-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.adventures-dates{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--color-border)}.adventures-date{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem 1rem;padding:.85rem 0;border-bottom:1px solid var(--color-border)}.adventures-date-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.adventures-date-when{font-weight:700;color:var(--color-text)}.adventures-date-detail{font-size:var(--font-size-sm);color:var(--color-text-muted)}.adventures-date-seats{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap}@media(max-width:640px){.adventures-date{grid-template-columns:minmax(0,1fr) auto}.adventures-date-seats{grid-column:1;grid-row:2}.adventures-date .btn{grid-column:2;grid-row:1 / span 2}}.detail-list{list-style:none;display:flex;flex-direction:column;gap:1.25rem;text-align:left}.detail-list li{display:flex;gap:.75rem;align-items:flex-start}.detail-list .icon{flex-shrink:0;color:var(--color-gold);margin-top:.15rem}.detail-list-label{display:block;font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.15rem}.detail-list-value{color:var(--color-text);font-size:var(--font-size-md);line-height:1.5}.detail-list-value a{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-field-border);text-underline-offset:3px}.detail-list-value a:hover{color:var(--color-accent);text-decoration-color:currentColor}.detail-panel{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;text-align:left}.detail-panel-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700}.players-visit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:880px;margin:0 auto}@media(max-width:760px){.players-visit{grid-template-columns:minmax(0,1fr)}}.contact-form{display:flex;flex-direction:column;gap:1rem}.contact-form-group{display:flex;flex-direction:column;gap:.375rem}.contact-form-label{font-size:var(--font-size-md);font-weight:700;color:var(--color-text-muted)}.contact-form-input,.contact-form-textarea{padding:.75rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);transition:border-color .2s}.contact-form-input::placeholder,.contact-form-textarea::placeholder{color:var(--color-text-muted);opacity:.5}.contact-form-input:focus,.contact-form-textarea:focus{outline:none;border-color:var(--color-accent)}.contact-form-textarea{resize:vertical;min-height:140px;line-height:1.6}.contact-form-error{color:var(--color-red-text);font-size:var(--font-size-md)}.contact-form-success{text-align:center;padding:1rem 0;animation:contactSuccessIn .5s ease both}.contact-form-success-icon{font-size:var(--font-size-3xl);margin-bottom:.75rem;line-height:1;color:var(--color-success);display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:var(--radius-full);background:var(--color-success-subtle);animation:contactSuccessPop .45s cubic-bezier(.34,1.56,.64,1) .12s both}@keyframes contactSuccessIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes contactSuccessPop{0%{opacity:0;transform:scale(.4)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.contact-form-success,.contact-form-success-icon{animation:none}}.contact-form-success h2,.contact-form-success h3{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.contact-form-success p{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6}.contact-form .btn{width:100%;text-align:center;margin-top:.5rem}.contact-form .btn:disabled{opacity:.5;cursor:not-allowed}.contact-form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.contact-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.contact-form-optional{font-weight:400}.contact-char-count{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:right;margin-top:.25rem}.contact-honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none;width:0;height:0;overflow:hidden}.corporate-features{padding:5rem 0;background:var(--color-bg)}.corporate-enquire{scroll-margin-top:var(--header-height)}.corporate-enquire-card{max-width:720px;margin:0 auto;text-align:left;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem}@media(max-width:640px){.corporate-features{padding:3rem 0}.corporate-enquire-card{padding:1.25rem}}.privacy-page{padding:var(--section-pad);padding-top:8rem;min-height:80vh}.privacy-inner{max-width:720px;margin:0 auto}.privacy-inner h1{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.privacy-updated{font-size:var(--font-size-md);color:var(--color-text-muted);margin-bottom:2.5rem}.privacy-inner h2{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-top:2rem;margin-bottom:.75rem;color:var(--color-text)}.privacy-inner h3{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-top:1.25rem;margin-bottom:.5rem;color:var(--color-text)}.privacy-inner p{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.75;margin-bottom:1rem}.privacy-inner ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}.privacy-inner li{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.75;margin-bottom:.5rem}.privacy-inner a{color:var(--color-accent);text-decoration:underline;transition:color .2s}.privacy-inner a:hover{color:var(--color-accent-hover)}.privacy-inner a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.privacy-review-note{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:var(--font-size-md);font-style:italic}@media(max-width:640px){.privacy-page{padding:var(--section-pad-mobile);padding-top:6rem}}.privacy-cookie-preferences{background:none;border:1px solid var(--color-accent);border-radius:var(--radius-sm, 6px);color:var(--color-accent);cursor:pointer;font:inherit;font-size:var(--font-size-base);min-height:44px;padding:.6rem 1.2rem;transition:color .2s,border-color .2s}.privacy-cookie-preferences:hover{color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.privacy-cookie-preferences:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.terms-page{padding:var(--section-pad);padding-top:8rem;min-height:80vh}.terms-inner{max-width:720px;margin:0 auto}.terms-inner h1{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.terms-updated{font-size:var(--font-size-md);color:var(--color-text-muted);margin-bottom:2.5rem}.terms-inner h2{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-top:2rem;margin-bottom:.75rem;color:var(--color-text)}.terms-inner h3{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-top:1.25rem;margin-bottom:.5rem;color:var(--color-text)}.terms-inner p{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.75;margin-bottom:1rem}.terms-inner ul,.terms-inner ol{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}.terms-inner ol{list-style:decimal}.terms-inner li{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.75;margin-bottom:.5rem}.terms-inner a{color:var(--color-accent);text-decoration:underline;transition:color .2s}.terms-inner a:hover{color:var(--color-accent-hover)}.terms-inner a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.terms-review-note{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:var(--font-size-md);font-style:italic}@media(max-width:640px){.terms-page{padding:var(--section-pad-mobile);padding-top:6rem}}.contact-page{padding:var(--section-pad);padding-top:calc(var(--header-height) + 3rem);min-height:80vh}.contact-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start}.contact-main h1{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.contact-subtitle{font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:2rem;line-height:1.6}.contact-aside{margin-top:.5rem}@media(max-width:900px){.contact-inner{grid-template-columns:minmax(0,1fr);max-width:560px;gap:2rem}.contact-aside{margin-top:0}}@media(max-width:640px){.contact-page{padding:var(--section-pad-mobile);padding-top:calc(var(--header-height) + 2rem)}}.notice-strip{background:var(--color-accent-subtle);border-block:1px solid var(--color-accent-border)}.notice-strip-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25rem .75rem;margin:0;padding:0 1rem;font-size:var(--font-size-md);color:var(--color-text);text-align:center}.notice-strip-link{display:inline-flex;align-items:center;gap:.25rem;min-height:44px;font-weight:600;color:var(--color-accent);text-decoration:underline;text-underline-offset:3px}.notice-strip-link:hover{color:var(--color-accent-hover)}.notice-strip-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.about-mission{max-width:700px;margin:0 auto}.about-mission p{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.7}.about-mission p+p{margin-top:1.25rem}.about-studio{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:2rem;align-items:center;max-width:var(--max-width);margin:0 auto}.about-studio-photos{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:.75rem;aspect-ratio:16 / 10}.about-studio-photo{overflow:hidden;border-radius:var(--radius-lg);background:var(--color-surface)}.about-studio-photo:first-child{grid-row:span 2}.about-studio-photo img{display:block;width:100%;height:100%;object-fit:cover}.about-avatar{display:block;width:100px;height:100px;border-radius:var(--radius-full);object-fit:cover}.about-avatar--empty{background:var(--color-accent-glow-subtle);border:2px dashed var(--color-accent-border)}.about-join-card{background:var(--color-accent-subtle);border:1px dashed var(--color-accent-border)}@media(max-width:900px){.about-studio{grid-template-columns:minmax(0,1fr);max-width:640px}}@media(max-width:640px){.about-studio-photos{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;aspect-ratio:auto}.about-studio-photo{aspect-ratio:4 / 3}.about-studio-photo:first-child{grid-row:auto;grid-column:span 2;aspect-ratio:16 / 10}}.not-found-section{display:flex;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:var(--section-pad);padding-top:calc(60px + 3rem)}.not-found-inner{max-width:500px}.not-found-code{font-family:var(--font-title);font-size:var(--font-size-jumbo);font-weight:700;line-height:1;background:linear-gradient(to bottom,var(--color-accent),var(--color-gold));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.not-found-heading{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:1rem}.not-found-message{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6;margin-bottom:2rem}.not-found-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.not-found-home{color:var(--color-text);font-weight:600;text-decoration:underline;text-decoration-color:var(--color-field-border);text-underline-offset:3px}.not-found-home:hover{color:var(--color-accent)}.not-found-home:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}@media(max-width:640px){.not-found-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem);min-height:70vh}}.dropdown-menu{position:relative;flex-shrink:0}.dropdown-menu-toggle{white-space:nowrap;gap:.35rem}.dropdown-menu-chevron{margin-right:-.35rem;transition:transform .2s ease}.dropdown-menu-chevron--open{transform:rotate(180deg)}.dropdown-menu-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;max-height:calc(100vh - var(--header-height) - 1rem);max-height:calc(100dvh - var(--header-height) - 1rem);overflow-y:auto;overscroll-behavior:contain;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.35rem;z-index:200;animation:dropdownMenuFadeIn .15s ease;box-shadow:var(--shadow-md);text-align:left}@keyframes dropdownMenuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu-item{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;font-size:var(--font-size-md);color:var(--color-text-muted);border-radius:var(--radius-md);transition:background .15s,color .15s;text-decoration:none;white-space:nowrap;min-height:44px}.dropdown-menu-item:hover,.dropdown-menu-item.active{background:var(--color-surface);color:var(--color-text)}.dropdown-menu-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.dropdown-menu-item svg{flex-shrink:0;opacity:.7}.dropdown-menu-item:hover svg{opacity:1}.dropdown-menu-label{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);padding:.45rem .75rem .15rem;margin:0}.dropdown-menu-divider{border:none;border-top:1px solid var(--color-border);margin:.3rem .5rem}@media(prefers-reduced-motion:reduce){.dropdown-menu-panel{animation:none}.dropdown-menu-chevron{transition:none}}@media(min-width:1025px),(max-width:640px){.staff-dropdown{display:none}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:confirmFadeIn .2s ease}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}.confirm-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:400px;animation:confirmSlideIn .2s ease}@keyframes confirmSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:.75rem}.confirm-message{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1.5rem;white-space:pre-line}.confirm-actions{display:flex;gap:.75rem;flex-wrap:wrap}.confirm-btn{font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;padding:.6rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s;min-height:44px;border:1px solid transparent}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.confirm-btn--danger{background:none;border-color:var(--color-red);color:var(--color-red-text)}.confirm-btn--danger:hover:not(:disabled){background:var(--color-red);color:var(--color-text)}.confirm-btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-dark)}.confirm-btn--primary:hover:not(:disabled){background:var(--color-accent-hover)}@media(max-width:640px){.confirm-content{padding:1.5rem}}.notif-prefs{max-width:480px}.notif-prefs-table{width:100%;border-collapse:collapse}.notif-prefs-th{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-muted);text-align:center;padding:0 0 .75rem;white-space:nowrap}.notif-prefs-th--type{text-align:left}.notif-prefs-row{border-top:1px solid var(--color-border)}.notif-prefs-cell{padding:1rem 0;vertical-align:top}.notif-prefs-cell--label{display:flex;flex-direction:column;gap:.2rem;padding-right:1rem}.notif-prefs-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.notif-prefs-desc{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5}.notif-prefs-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 0;border-top:1px solid var(--color-border);cursor:pointer}.notif-prefs-option>span{display:flex;flex-direction:column;gap:.2rem}.notif-prefs-option input{margin-top:.3rem;width:18px;height:18px;accent-color:var(--color-accent)}.notif-prefs-cell--toggle{text-align:center;vertical-align:middle;width:64px}.notif-toggle{position:relative;display:inline-flex;align-items:center;width:44px;height:24px;border-radius:var(--radius-xl);background:var(--color-border);border:none;cursor:pointer;padding:2px;transition:background .2s;flex-shrink:0}.notif-toggle--on{background:var(--color-accent)}.notif-toggle-knob{display:block;width:20px;height:20px;border-radius:var(--radius-full);background:var(--color-text);transition:transform .2s;transform:translate(0)}.notif-toggle--on .notif-toggle-knob{transform:translate(20px)}.notif-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.notif-toggle:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.notif-prefs{max-width:100%}}.dtp{position:relative}.dtp-trigger{display:flex;align-items:center;gap:.6rem;width:100%;font-family:var(--font-body);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.65rem .85rem;cursor:pointer;min-height:44px;text-align:left;transition:border-color .2s}.dtp-trigger:hover{border-color:var(--color-text-muted)}.dtp-trigger--active{border-color:var(--color-accent)}.dtp-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dtp-trigger-icon{flex-shrink:0;color:var(--color-text-muted)}.dtp-trigger-text{flex:1}.dtp-trigger-text--placeholder{color:var(--color-text-muted)}.dtp-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:250;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem;width:300px;box-shadow:var(--shadow-lg);animation:dtpFadeIn .15s ease}@keyframes dtpFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dtp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.dtp-month-label{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;color:var(--color-text);-webkit-user-select:none;user-select:none}.dtp-nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s}.dtp-nav-btn:hover{background:var(--color-surface);color:var(--color-text)}.dtp-nav-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dtp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:.25rem}.dtp-weekday{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-align:center;text-transform:uppercase;padding:.25rem 0;-webkit-user-select:none;user-select:none}.dtp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dtp-day{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background .12s,color .12s;min-height:34px}.dtp-day:hover:not(:disabled){background:var(--color-surface)}.dtp-day:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.dtp-day--outside{color:var(--color-border);cursor:default}.dtp-day--today{border:1px solid var(--color-accent);color:var(--color-accent);font-weight:600}.dtp-day--selected{background:var(--color-accent);color:var(--color-on-accent);font-weight:700}.dtp-day--selected:hover:not(:disabled){background:var(--color-accent-hover)}.dtp-time{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.dtp-time-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);flex-shrink:0}.dtp-time-inputs{display:flex;align-items:center;gap:.25rem}.dtp-time-input{width:46px;text-align:center;font-family:var(--font-body);font-size:var(--font-size-md);font-variant-numeric:tabular-nums;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:var(--radius-md);padding:.4rem .25rem;-moz-appearance:textfield}.dtp-time-input::-webkit-outer-spin-button,.dtp-time-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.dtp-time-input:focus{outline:none;border-color:var(--color-accent)}.dtp-time-sep{font-size:var(--font-size-base);font-weight:700;color:var(--color-text-muted)}.dtp-footer{display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.dtp-clear-btn,.dtp-done-btn{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.4rem .75rem;border-radius:var(--radius-md);cursor:pointer;min-height:34px;transition:background .15s,color .15s}.dtp-clear-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted)}.dtp-clear-btn:hover{background:var(--color-surface);color:var(--color-text)}.dtp-done-btn{background:var(--color-accent);border:none;color:var(--color-on-accent)}.dtp-done-btn:hover{background:var(--color-accent-hover)}.dtp-clear-btn:focus-visible,.dtp-done-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.dtp-popover{width:calc(100vw - 2rem);max-width:300px;left:50%;transform:translate(-50%);animation:dtpFadeInMobile .15s ease}@keyframes dtpFadeInMobile{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}}.quick-picks{margin-bottom:1.25rem}.quick-picks-label{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin:0 0 .6rem}.quick-picks-hint{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:.5rem 0 0}.quick-picks-grid{display:grid;grid-template-columns:auto repeat(7,minmax(0,1fr));gap:.3rem;align-items:center}.quick-picks-row{display:contents}.quick-picks-day,.quick-picks-time{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted)}.quick-picks-day{text-align:center}.quick-picks-time{padding-right:.35rem;white-space:nowrap}.quick-pick{height:40px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:700;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.quick-pick--none{background:none;border-style:dashed;border-color:var(--color-border-light);opacity:.4;cursor:default}button.quick-pick:hover:not(:disabled):not(.quick-pick--on){border-color:var(--color-accent-border);background:var(--color-accent-glow-subtle)}.quick-pick:focus-visible,.quick-picks-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.quick-pick:disabled{opacity:.6;cursor:not-allowed}.quick-pick--on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.quick-pick--some{border-color:var(--color-accent);color:var(--color-accent)}.quick-picks-clear{margin-top:.5rem;min-height:36px;padding:.25rem .5rem;background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.quick-picks-clear:hover:not(:disabled){color:var(--color-text)}.scheduling-progress{margin-bottom:1rem}.scheduling-progress-text{font-size:var(--font-size-sm, .8125rem);font-weight:600;color:var(--color-text);margin-bottom:.35rem}.scheduling-progress-bar{height:6px;border-radius:var(--radius-pill);background:var(--color-surface);overflow:hidden}.scheduling-progress-fill{display:block;height:100%;background:var(--color-accent);border-radius:inherit;transition:width var(--transition-base)}@media(prefers-reduced-motion:reduce){.scheduling-progress-fill{transition:none}}.availability-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:availabilityFadeIn .2s ease}@keyframes availabilityFadeIn{0%{opacity:0}to{opacity:1}}.availability-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;overflow:hidden;position:relative;animation:availabilitySlideIn .2s ease}@keyframes availabilitySlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.availability-head{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.availability-body{padding:1.25rem 1.5rem 1.5rem;overflow-y:auto;flex:1;min-height:0}.availability-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:color .2s,background .2s}.availability-close:hover{color:var(--color-text);background:var(--color-overlay-light)}.availability-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.availability-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0;padding-right:2.5rem}.availability-campaign{color:var(--color-text-muted);font-size:var(--font-size-md);margin:.15rem 0 0}.availability-progress{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.65rem .85rem;margin-bottom:.75rem}.availability-progress .scheduling-progress{margin-bottom:0}.availability-desc{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-bottom:1.25rem}.availability-loading{text-align:center;padding:2rem 0;color:var(--color-text-muted);font-size:var(--font-size-md)}.availability-error-state{text-align:center;padding:1.5rem 0}.availability-empty{text-align:center;padding:1.5rem 0;color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5}.availability-empty p{margin-bottom:1rem}.availability-section-title{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin:0 0 .6rem}.availability-week{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:.6rem}.availability-week>summary{display:flex;justify-content:space-between;align-items:center;gap:.5rem;min-height:44px;padding:.6rem .9rem;font-weight:600;font-size:var(--font-size-md);cursor:pointer;list-style:none}.availability-week>summary::-webkit-details-marker{display:none}.availability-week>summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-lg)}.availability-week-picked{color:var(--color-text-muted);font-weight:500;font-size:var(--font-size-sm)}.availability-week-days{padding:0 .9rem .75rem;display:flex;flex-direction:column;gap:.4rem}.availability-day{display:grid;grid-template-columns:78px repeat(var(--slot-columns, 3),minmax(0,1fr));gap:.4rem;align-items:center}.availability-day-label{display:flex;flex-direction:column;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted)}.availability-soon-tag{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-gold)}.availability-slot{position:relative;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:44px;padding:.4rem;cursor:pointer;transition:border-color .2s,background .2s,color .2s;font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.availability-slot:hover:not(:disabled){border-color:var(--color-accent-border);background:var(--color-accent-glow-subtle)}.availability-slot:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.availability-slot:disabled{opacity:.5;cursor:not-allowed}.availability-slot--soon{opacity:.75}.availability-slot--selected{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);opacity:1}.availability-slot--selected:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.availability-slot--conflict{border-color:var(--color-gold)}.availability-slot-flag{position:absolute;top:2px;right:6px;font-size:var(--font-size-2xs);font-weight:700;color:var(--color-gold)}.availability-slot--selected .availability-slot-flag{color:var(--color-on-accent)}.availability-slot-gap{min-height:44px}.availability-calendar-cta{background:var(--color-gold-subtle);border:1px solid var(--color-gold);border-radius:var(--radius-md);padding:.65rem .85rem;margin-bottom:1rem}.availability-calendar-cta-text{font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text)}.availability-calendar-cta-link{color:var(--color-gold);font-weight:600;text-decoration:underline;text-underline-offset:2px;background:none;border:none;padding:0;font-family:inherit;font-size:inherit;cursor:pointer}.availability-calendar-cta-link:hover{opacity:.8}.availability-footer{flex-shrink:0;border-top:1px solid var(--color-border);background:var(--color-bg-card);padding:.75rem 1.5rem 1rem;box-shadow:0 -8px 20px var(--color-overlay-dark)}.availability-footer-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem}.availability-count{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.availability-count strong{color:var(--color-text)}.availability-decline{min-height:44px;padding:.5rem 0;background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.availability-decline:hover:not(:disabled){color:var(--color-text)}.availability-decline:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.availability-decline:disabled{opacity:.6;cursor:not-allowed}.availability-declined-note{margin-bottom:1rem;padding:.6rem .8rem;border-left:3px solid var(--color-gold);background:var(--color-gold-subtle);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--font-size-sm);line-height:1.5}.availability-error-msg{color:var(--color-red-text);font-size:var(--font-size-md);text-align:center;margin-bottom:.5rem}.availability-success{text-align:center;padding:1rem 0}.availability-success-msg{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5;margin-bottom:1.25rem}@media(max-width:640px){.availability-overlay{padding:0}.availability-content{border-radius:0;border:0;max-width:none;max-height:none;height:100vh;height:100dvh}.availability-head{padding:1rem 1rem .9rem}.availability-body{padding:1rem}.availability-footer{padding:.75rem 1rem calc(1rem + env(safe-area-inset-bottom))}.availability-day{grid-template-columns:64px repeat(var(--slot-columns, 3),minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.availability-overlay,.availability-content{animation:none}.availability-slot,.availability-close{transition:none}}.upcoming-list{list-style:none;margin:0;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);overflow:hidden}.upcoming-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem 1.25rem;padding:1rem 1.25rem}.upcoming-row+.upcoming-row{border-top:1px solid var(--color-border)}.upcoming-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:3.5rem;padding:.4rem 0;border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border);line-height:1.1}.upcoming-date-weekday,.upcoming-date-month{font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.upcoming-date-day{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-text)}.upcoming-main{min-width:0;display:flex;flex-direction:column;gap:.15rem}.upcoming-tags{display:flex;flex-wrap:wrap;gap:.4rem}.upcoming-type{font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-gold)}.upcoming-type--gm{color:var(--color-accent)}.upcoming-title{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;line-height:1.3;color:var(--color-text)}.upcoming-subtitle{font-size:var(--font-size-md);color:var(--color-text);opacity:.85}.upcoming-meta{display:flex;flex-wrap:wrap;gap:.15rem 1rem;margin-top:.2rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.upcoming-meta-item{display:inline-flex;align-items:center;gap:.35rem}.upcoming-meta-item svg{opacity:.7}.upcoming-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.upcoming-action{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;padding:.35rem .75rem;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.upcoming-action:hover{color:var(--color-text);border-color:var(--color-text-muted)}.upcoming-action:focus-visible,.upcoming-more:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.upcoming-action:disabled{opacity:.5;cursor:not-allowed}.upcoming-action--danger:hover{color:var(--color-red-text);border-color:var(--color-red)}.upcoming-action--discord{color:var(--color-discord-text)}.upcoming-action--discord:hover{color:var(--color-discord-text);border-color:var(--color-discord);background:var(--color-discord-subtle)}.upcoming-more{margin-top:.75rem;min-height:44px;padding:0 .25rem;background:none;border:none;color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;cursor:pointer}.upcoming-more:hover{text-decoration:underline}@media(max-width:640px){.upcoming-row{grid-template-columns:auto 1fr;padding:1rem;gap:.75rem 1rem}.upcoming-date{width:3rem;align-self:start}.upcoming-actions{grid-column:2;justify-content:flex-start}}.needs-you{margin-bottom:2rem;padding:1rem 1.25rem;border:1px solid color-mix(in srgb,var(--color-gold) 45%,transparent);border-left-width:4px;border-left-color:var(--color-gold);border-radius:var(--radius-lg);background:var(--color-gold-subtle)}.needs-you-heading{font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gold);margin-bottom:.25rem}.needs-you-list{list-style:none;margin:0;padding:0}.needs-you-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.needs-you-item+.needs-you-item{border-top:1px solid color-mix(in srgb,var(--color-gold) 25%,transparent)}.needs-you-item>svg{flex-shrink:0;color:var(--color-gold)}.needs-you-text{flex:1;min-width:0;font-size:var(--font-size-md);line-height:1.5;color:var(--color-text)}.needs-you-item>.btn{flex-shrink:0}@media(max-width:640px){.needs-you-item{flex-wrap:wrap}.needs-you-text{flex-basis:calc(100% - 2rem)}.needs-you-item>.btn{margin-left:calc(18px + .75rem)}}.game-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.game-card .card-text{display:flex;flex-direction:column;gap:.75rem}.game-card-progress{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.game-card-schedule{font-size:var(--font-size-sm);color:var(--color-text-muted)}.game-card-empty{font-size:var(--font-size-md);color:var(--color-text-muted)}.game-episodes{border-top:1px solid var(--color-border);padding-top:.75rem}.game-episodes-title{font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.25rem}.game-episode-list{list-style:none;margin:0;padding:0}.game-episode{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem;padding:.5rem 0}.game-episode+.game-episode{border-top:1px solid var(--color-border)}.game-episode-info{display:flex;flex-direction:column;min-width:0}.game-episode-name{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.game-episode-when{font-size:var(--font-size-sm);color:var(--color-text-muted)}.game-episode-rsvp{display:flex;align-items:center;gap:.5rem}.game-episode-status{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);white-space:nowrap}.game-episode-status--in{color:var(--color-success)}.game-episode-locked{display:inline-flex;align-items:center;min-height:44px;padding:0 .25rem;font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap}.game-episode-btn,.game-card-leave{min-height:44px;padding:.35rem .75rem;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap;cursor:pointer;transition:color .15s,border-color .15s}.game-episode-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.game-episode-btn:disabled{opacity:.5;cursor:not-allowed}.game-card-leave{margin-left:auto;border-color:transparent}.game-card-leave:hover{color:var(--color-red-text);border-color:var(--color-red)}.game-episodes-more{min-height:44px;padding:0;background:none;border:none;color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;cursor:pointer}.game-episodes-more:hover{text-decoration:underline}.game-card-channel{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:.35rem .75rem;border-radius:var(--radius-md);color:var(--color-discord-text);font-size:var(--font-size-sm);font-weight:600;text-decoration:none;transition:background .15s}.game-card-channel:hover{background:var(--color-discord-subtle)}.game-episode-btn:focus-visible,.game-card-leave:focus-visible,.game-episodes-more:focus-visible,.game-card-channel:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:900px){.game-cards-grid{grid-template-columns:minmax(0,1fr)}}.membership-no-bookings{display:flex;flex-direction:column;gap:1rem}.membership-no-bookings>p{color:var(--color-text-muted);font-size:var(--font-size-base)}.sessions-played-stat{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1.5rem}.sessions-played-value{font-family:var(--font-title);font-size:var(--font-size-3xl);font-weight:700;color:var(--color-accent);line-height:1}.sessions-played-label{color:var(--color-text-muted);font-size:var(--font-size-base)}.membership-retry{margin-bottom:1rem}.waitlist-status-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.25rem 1.5rem;max-width:640px}.waitlist-status-info{display:flex;flex-direction:column;gap:.25rem}.waitlist-status-position{font-size:var(--font-size-base);color:var(--color-text)}.waitlist-status-position strong{color:var(--color-accent);font-weight:700}.waitlist-status-desc{font-size:var(--font-size-md);color:var(--color-text-muted)}.waitlist-status-card+.past-campaigns{margin-top:1rem}.past-campaigns{max-width:640px}.past-campaigns-summary{display:flex;align-items:center;gap:.5rem;list-style:none;min-height:44px;color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:600;cursor:pointer}.past-campaigns-summary::-webkit-details-marker{display:none}.past-campaigns-summary:before{content:"";width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}.past-campaigns[open] .past-campaigns-summary:before{transform:rotate(45deg)}.past-campaigns-summary:hover{color:var(--color-text)}.past-campaigns-summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.past-campaigns-list{list-style:none;margin:.25rem 0 0;padding:0}.past-campaigns-item{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;padding:.6rem 0;border-top:1px solid var(--color-border);font-size:var(--font-size-md)}.past-campaigns-name{color:var(--color-text);font-weight:600}.past-campaigns-gm{color:var(--color-text-muted)}@media(max-width:640px){.waitlist-status-card{flex-direction:column;align-items:flex-start;max-width:100%}}@media(prefers-reduced-motion:reduce){.past-campaigns-summary:before{transition:none}}.episode-credit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--color-overlay-modal);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:episodeCreditFadeIn .2s ease}@keyframes episodeCreditFadeIn{0%{opacity:0}to{opacity:1}}.episode-credit-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;position:relative;animation:episodeCreditSlideIn .2s ease;color:var(--color-text)}@keyframes episodeCreditSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.episode-credit-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.episode-credit-close:hover{color:var(--color-text)}.episode-credit-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.episode-credit-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.25rem;text-align:center}.episode-credit-balance{display:flex;align-items:center;justify-content:center;gap:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1.25rem;margin-bottom:1.5rem}.episode-credit-balance-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.episode-credit-balance-count{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;color:var(--color-gold)}.episode-credit-packages{display:flex;flex-direction:column;gap:1rem}.episode-credit-package{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;text-align:left;transition:border-color .2s,background .2s;position:relative;font-family:var(--font-body);min-height:44px}.episode-credit-package:hover{border-color:var(--color-accent);background:var(--color-accent-glow-subtle)}.episode-credit-package:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.episode-credit-package:disabled{opacity:.5;cursor:not-allowed}.episode-credit-package--featured{border-color:var(--color-gold)}.episode-credit-package--featured:hover{border-color:var(--color-gold);background:var(--color-gold-subtle)}.episode-credit-package-badge{position:absolute;top:-.6rem;right:1rem;background:var(--color-gold);color:var(--color-bg-dark);font-size:var(--font-size-2xs);font-weight:700;padding:.15rem .5rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.episode-credit-package-name{font-weight:700;font-size:var(--font-size-base);color:var(--color-text)}.episode-credit-package-qty{font-size:var(--font-size-sm);color:var(--color-text-muted)}.episode-credit-package-price{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-gold);margin-top:.25rem}.episode-credit-package-unit{font-size:var(--font-size-xs);color:var(--color-text-muted)}.episode-credit-payment{display:flex;flex-direction:column;gap:1rem}.episode-credit-desc{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center}.episode-credit-confirmation{display:flex;flex-direction:column;gap:1.25rem}.episode-credit-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.episode-credit-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-md)}.episode-credit-summary-row span:first-child{color:var(--color-text-muted);font-weight:600}.episode-credit-summary-row span:last-child{color:var(--color-text);font-weight:600}.episode-credit-error{color:var(--color-red-text);font-size:var(--font-size-md);text-align:center}.episode-credit-confirmation .btn{width:100%}.episode-credit-success{text-align:center;display:flex;flex-direction:column;gap:1.25rem}.episode-credit-success-msg{color:var(--color-success);font-size:var(--font-size-base);line-height:1.6}.episode-credit-success .btn{width:100%}.episode-credit-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;margin-top:1rem;padding:.5rem;min-height:44px;display:flex;align-items:center;font-family:var(--font-body);transition:color .2s}.episode-credit-back:hover{color:var(--color-text)}.episode-credit-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.episode-credit-content{padding:2rem 1.25rem}}@media(prefers-reduced-motion:reduce){.episode-credit-overlay,.episode-credit-content{animation:none}}.payments-credits-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.payments-credits-header .membership-subtitle{margin-bottom:0}.credits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:640px}.credit-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.credit-card-info{display:flex;flex-direction:column;gap:.25rem}.credit-card-type{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.credit-card-count{font-family:var(--font-title);font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text);line-height:1.2}.credit-card-use{font-size:var(--font-size-sm);color:var(--color-text-muted)}.credit-card--owed{border-color:var(--color-red)}.credit-card--owed .credit-card-count{color:var(--color-red-text)}.credit-card-owed-note{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-red-text);text-transform:uppercase;letter-spacing:.03em}.saved-cards-list{display:flex;flex-direction:column;gap:.75rem;max-width:480px;margin-bottom:1rem}.payments-add-card-btn{margin-top:1rem}.payments-card-form-wrapper{margin-top:1rem;max-width:480px;display:flex;flex-direction:column;gap:.75rem}.payments-cancel{align-self:flex-start}.payments-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.payments-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md);min-width:540px}.payments-table thead{background:var(--color-surface)}.payments-table th{text-align:left;font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:.75rem 1rem;border-bottom:1px solid var(--color-border);white-space:nowrap}.payments-table td{padding:.75rem 1rem;color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle}.payments-table tbody tr:last-child td{border-bottom:none}.payments-table tbody tr:hover{background:var(--color-surface)}.payment-status{display:inline-block;font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:var(--radius-sm)}.payment-status--succeeded,.payment-status--paid{color:var(--color-success);background:var(--color-success-subtle)}.payment-status--pending{color:var(--color-gold);background:var(--color-gold-subtle)}.payment-status--failed{color:var(--color-red-text);background:var(--color-red-subtle)}.payment-status--refunded{color:var(--color-text-muted);background:var(--color-muted-subtle)}.payments-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.payments-pagination-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:color .2s,border-color .2s;min-height:44px;min-width:44px}.payments-pagination-btn:hover:not(:disabled){color:var(--color-text);border-color:var(--color-text-muted)}.payments-pagination-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.payments-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.payments-pagination-info{font-size:var(--font-size-sm);color:var(--color-text-muted)}@media(max-width:900px){.credits-grid{grid-template-columns:repeat(3,1fr);max-width:100%}}@media(max-width:640px){.credits-grid{grid-template-columns:1fr}.saved-cards-list,.payments-card-form-wrapper,.billing-address-display,.payments-billing-form-wrapper{max-width:100%}.payments-table{min-width:0}.payments-table thead{display:none}.payments-table tbody tr{display:flex;flex-direction:column;padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.payments-table tbody tr:last-child{border-bottom:none}.payments-table td{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0;border-bottom:none;font-size:var(--font-size-md)}.payments-table td:before{content:attr(data-label);font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-right:1rem}}.user-cals{display:flex;flex-direction:column;gap:1rem}.user-cals-loading,.user-cals-empty{color:var(--color-text-muted);font-size:var(--font-size-md)}.user-cals-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.user-cals-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem}.user-cals-item-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.user-cals-item-name{font-size:var(--font-size-md);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-cals-item-provider{font-size:var(--font-size-xs);color:var(--color-text-muted)}.user-cals-remove{flex-shrink:0;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:.35rem .75rem;min-height:44px;display:flex;align-items:center;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.user-cals-remove:hover{color:var(--color-red-text);border-color:var(--color-red)}.user-cals-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.user-cals-actions{display:flex;flex-wrap:wrap;gap:.5rem}.user-cals-picker{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem}.user-cals-picker-header{margin-bottom:.75rem}.user-cals-picker-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.25rem}.user-cals-picker-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.user-cals-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.user-cals-picker-item{display:flex;align-items:center;gap:.5rem}.user-cals-picker-label{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;min-height:44px;border-radius:var(--radius-lg);cursor:pointer;flex:1;transition:background .15s}.user-cals-picker-label:hover,.user-cals-picker-label--active{background:var(--color-bg-card)}.user-cals-picker-checkbox{accent-color:var(--color-accent);width:16px;height:16px;flex-shrink:0}.user-cals-picker-name{font-size:var(--font-size-md);font-weight:500;display:flex;align-items:center;gap:.5rem;min-width:0}.user-cals-picker-badge{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:.1rem .35rem;flex-shrink:0}.user-cals-picker-spinner{font-size:var(--font-size-xs);color:var(--color-text-muted)}.user-cals-picker-done{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);font-weight:600;padding:.45rem 1rem;min-height:44px;display:flex;align-items:center;cursor:pointer;transition:background .15s,border-color .15s}.user-cals-picker-done:hover{background:var(--color-bg-card);border-color:var(--color-text-muted)}.user-cals-picker-done:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.user-cals-item{flex-direction:column;align-items:flex-start;gap:.5rem}.user-cals-remove{align-self:flex-end}.user-cals-picker-label{padding:.5rem}}.membership-form{display:flex;flex-direction:column;gap:1.25rem;max-width:480px}.membership-form .btn{margin-top:.5rem;text-align:center}.membership-form .btn:disabled{opacity:.5;cursor:not-allowed}.connected-card{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;gap:1rem;max-width:480px}.connected-card>.btn{flex-shrink:0}.connected-info{display:flex;align-items:center;gap:.75rem;color:var(--color-text);min-width:0}.connected-name{font-weight:600;font-size:var(--font-size-md);line-height:1.3}.connected-detail{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connected-detail--muted{opacity:.6}.connected-detail-status--ok{color:var(--color-success)}.connected-warning{margin-top:.75rem;padding:.85rem 1rem;border:1px solid var(--color-gold);border-radius:8px;background-color:var(--color-gold-subtle)}.connected-warning p{margin:0 0 .5rem;font-size:var(--font-size-md);line-height:1.5;color:var(--color-text-muted)}.connected-warning-link{display:inline-block;min-height:44px;line-height:44px;font-size:var(--font-size-md);font-weight:700;color:var(--color-gold);text-decoration:underline}.connected-warning-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.connected-card+.connected-card,.connected-warning+.connected-card{margin-top:.75rem}.connected-card--stacked{flex-direction:column;align-items:stretch}.connected-card--stacked .connected-info{align-items:flex-start}.connected-card--stacked .connected-detail{white-space:normal}.connected-card--stacked .connected-info>svg{flex-shrink:0;margin-top:.1rem}.membership-danger .membership-subtitle{color:var(--color-red-text)}.danger-btn{background:none;border:1px solid var(--color-red);color:var(--color-red-text);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;padding:.6rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s;min-height:44px}.danger-btn:hover{background:var(--color-red);color:var(--color-text)}.danger-btn:focus-visible{outline:2px solid var(--color-red);outline-offset:2px}.danger-btn:disabled{opacity:.5;cursor:not-allowed}.delete-confirm{display:flex;flex-direction:column;gap:1rem}.delete-confirm-text{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6}.delete-confirm-actions{display:flex;gap:.75rem;flex-wrap:wrap}.cancel-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);padding:.6rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;transition:border-color .2s,color .2s;min-height:44px}.cancel-btn:hover{border-color:var(--color-text-muted);color:var(--color-text)}.cancel-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.membership-form,.connected-card{max-width:100%}}.email-change-confirm{margin-top:.75rem}.email-change-row{display:flex;gap:.75rem;align-items:center}.email-change-row .form-input{max-width:10rem;letter-spacing:.2em}.signout-actions{display:flex;flex-wrap:wrap;gap:.75rem}.gm-avail{display:flex;flex-direction:column;gap:1rem}.gm-avail-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.gm-avail-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.gm-avail-chip{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-2xs);font-weight:600}.gm-avail-chip--available{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted)}.gm-avail-chip--blocked{background:var(--color-danger-light);color:var(--color-red-text)}.gm-avail-chip--priority{background:var(--color-orange-light);color:var(--color-gold)}.gm-avail-grid{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.gm-avail-row{display:grid;grid-template-columns:60px repeat(7,1fr)}.gm-avail-row+.gm-avail-row{border-top:1px solid var(--color-border)}.gm-avail-row--header{background:var(--color-surface)}.gm-avail-cell{display:flex;align-items:center;justify-content:center;min-height:48px;text-align:center}.gm-avail-cell+.gm-avail-cell{border-left:1px solid var(--color-border)}.gm-avail-cell--corner{background:var(--color-surface)}.gm-avail-cell--day{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:.5rem 0}.gm-avail-cell--time{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);background:var(--color-surface);padding:0 .25rem}.gm-avail-cell--slot{padding:0}.gm-avail-cell--blocked{background:var(--color-danger-subtle)}.gm-avail-cell--priority{background:var(--color-orange-subtle)}.gm-avail-btn{width:100%;height:100%;min-height:48px;border:none;background:transparent;cursor:pointer;font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);transition:background .12s,color .12s}.gm-avail-btn:hover{background:var(--color-surface-mid)}.gm-avail-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.gm-avail-cell--blocked .gm-avail-btn{color:var(--color-red-text)}.gm-avail-cell--blocked .gm-avail-btn:hover{background:var(--color-danger-hover)}.gm-avail-cell--priority .gm-avail-btn{color:var(--color-gold)}.gm-avail-cell--priority .gm-avail-btn:hover{background:var(--color-orange-hover)}@media(max-width:640px){.gm-avail-row{grid-template-columns:48px repeat(7,1fr)}.gm-avail-cell--day{font-size:var(--font-size-3xs)}.gm-avail-cell--time{font-size:var(--font-size-2xs)}.gm-avail-btn{font-size:var(--font-size-3xs);min-height:44px}}.gm-cals{display:flex;flex-direction:column;gap:1rem}.gm-cals-loading,.gm-cals-empty{color:var(--color-text-muted);font-size:var(--font-size-md)}.gm-cals-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.gm-cals-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1rem}.gm-cals-item-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.gm-cals-item-name{font-size:var(--font-size-md);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gm-cals-item-provider{font-size:var(--font-size-xs);color:var(--color-text-muted)}.gm-cals-remove{flex-shrink:0;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:.35rem .75rem;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.gm-cals-remove:hover{color:var(--color-red-text);border-color:var(--color-red)}.gm-cals-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.gm-cals-actions{display:flex;flex-wrap:wrap;gap:.5rem}.gm-cals-picker{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem}.gm-cals-picker-header{margin-bottom:.75rem}.gm-cals-picker-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.25rem}.gm-cals-picker-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.gm-cals-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.gm-cals-picker-item{display:flex;align-items:center;gap:.5rem}.gm-cals-picker-label{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:var(--radius-lg);cursor:pointer;flex:1;transition:background .15s}.gm-cals-picker-label:hover,.gm-cals-picker-label--active{background:var(--color-bg-card)}.gm-cals-picker-checkbox{accent-color:var(--color-accent);width:16px;height:16px;flex-shrink:0}.gm-cals-picker-name{font-size:var(--font-size-md);font-weight:500;display:flex;align-items:center;gap:.5rem;min-width:0}.gm-cals-picker-badge{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:.1rem .35rem;flex-shrink:0}.gm-cals-picker-spinner{font-size:var(--font-size-xs);color:var(--color-text-muted)}.gm-cals-picker-done{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);font-weight:600;padding:.45rem 1rem;cursor:pointer;transition:background .15s,border-color .15s}.gm-cals-picker-done:hover{background:var(--color-bg-card);border-color:var(--color-text-muted)}.gm-cals-picker-done:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.gm-cals-item{flex-direction:column;align-items:flex-start;gap:.5rem}.gm-cals-remove{align-self:flex-end}.gm-cals-picker-label{padding:.5rem}}.gm-max-sessions{display:flex;flex-direction:column;gap:1rem}.gm-max-sessions-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.gm-max-sessions-toggle{display:flex;align-items:center;gap:.75rem}.gm-max-sessions-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.gm-max-sessions-switch input{opacity:0;width:0;height:0}.gm-max-sessions-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);transition:background .2s,border-color .2s}.gm-max-sessions-slider:before{content:"";position:absolute;height:18px;width:18px;left:2px;bottom:2px;background:var(--color-text-muted);border-radius:var(--radius-full);transition:transform .2s,background .2s}.gm-max-sessions-switch input:checked+.gm-max-sessions-slider{background:var(--color-orange-hover);border-color:var(--color-gold)}.gm-max-sessions-switch input:checked+.gm-max-sessions-slider:before{transform:translate(20px);background:var(--color-gold)}.gm-max-sessions-switch input:focus-visible+.gm-max-sessions-slider{outline:2px solid var(--color-accent);outline-offset:2px}.gm-max-sessions-toggle-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted)}.gm-max-sessions-control{display:flex;flex-direction:column;gap:.5rem}.gm-max-sessions-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted)}.gm-max-sessions-input{width:80px;padding:.5rem .6rem;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--font-size-md);text-align:center;-moz-appearance:textfield}.gm-max-sessions-input::-webkit-outer-spin-button,.gm-max-sessions-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gm-max-sessions-input:focus{outline:2px solid var(--color-accent);outline-offset:-1px;border-color:var(--color-accent)}.gm-max-sessions-desc{font-size:var(--font-size-xs);color:var(--color-text-muted);max-width:360px;line-height:1.4}.friend-credits-count{color:var(--text-secondary);font-size:var(--font-size-base)}.friend-credits-count strong{color:var(--text-primary);font-weight:600}.friend-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.friend-profile-hint{font-size:var(--font-size-md);color:var(--color-gold);margin-bottom:1rem}.friend-request-form,.friend-request-edit-form{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface-secondary, color-mix(in srgb, var(--color-white) 3%, transparent));border:1px solid var(--border-primary, color-mix(in srgb, var(--color-white) 8%, transparent));border-radius:var(--radius-md, 8px)}.friend-time-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:640px){.friend-time-row{grid-template-columns:1fr}}.friend-duration-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;min-height:44px;cursor:pointer}.friend-form-actions{display:flex;gap:.5rem;margin-top:.25rem}.friend-requests-list{display:flex;flex-direction:column;gap:.75rem}.friend-request-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;background:var(--surface-secondary, color-mix(in srgb, var(--color-white) 3%, transparent));border:1px solid var(--border-primary, color-mix(in srgb, var(--color-white) 8%, transparent));border-radius:var(--radius-md, 8px)}.friend-request-card--past{opacity:.7}.friend-request-info{flex:1;min-width:0}.friend-request-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.friend-request-details{font-size:var(--font-size-md);color:var(--text-secondary);margin:0 0 .5rem}.friend-status{display:inline-block;padding:.125rem .5rem;border-radius:var(--radius-sm, 4px);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.friend-status--pending{background:color-mix(in srgb,var(--color-gold) 15%,transparent);color:var(--color-gold)}.friend-status--confirmed{background:color-mix(in srgb,var(--color-success) 15%,transparent);color:var(--color-success)}.friend-status--cancelled{background:color-mix(in srgb,var(--color-danger) 15%,transparent);color:var(--color-red-text)}.friend-request-actions{display:flex;gap:.5rem;flex-shrink:0}.friend-action-btn{background:none;border:1px solid var(--border-primary, color-mix(in srgb, var(--color-white) 12%, transparent));color:var(--text-secondary);padding:.375rem .75rem;border-radius:var(--radius-sm, 4px);font-size:var(--font-size-sm);cursor:pointer;transition:color .15s,border-color .15s;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.friend-action-btn:hover,.friend-action-btn:focus-visible{color:var(--text-primary);border-color:var(--text-secondary)}.friend-action-btn--danger:hover,.friend-action-btn--danger:focus-visible{color:var(--color-red-text);border-color:var(--color-red-text)}.friend-past-heading{font-size:var(--font-size-md);font-weight:600;color:var(--text-secondary);margin:1.5rem 0 .75rem;text-transform:uppercase;letter-spacing:.05em}@media(max-width:640px){.friend-request-card{flex-direction:column}.friend-request-actions{width:100%}.friend-action-btn{flex:1}}.membership-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh;display:flex;justify-content:center}.membership-inner{width:100%;max-width:960px}.membership-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.membership-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700}.membership-loading{color:var(--color-text-muted);font-size:var(--font-size-base)}.membership-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:2rem;position:sticky;top:60px;z-index:10;background:var(--color-bg)}.membership-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;padding:.75rem 1.5rem;cursor:pointer;transition:color .2s,border-color .2s;min-height:44px}.membership-tab:hover{color:var(--color-text)}.membership-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.membership-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.membership-panel{min-height:300px}.membership-section-block{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border)}.membership-section-block--no-border{border-top:none;margin-top:0;padding-top:0}.membership-subtitle{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-bottom:1rem}.membership-hint{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1rem}@media(max-width:900px){.membership-inner{max-width:640px}}@media(max-width:640px){.membership-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.membership-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;top:56px}.membership-tab{padding:.6rem 1rem;font-size:var(--font-size-md);white-space:nowrap}}.confirm-delete-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh;display:flex;justify-content:center}.confirm-delete-inner{width:100%;max-width:480px;text-align:center}.confirm-delete-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:1rem}.confirm-delete-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6;margin-bottom:2rem}.confirm-delete-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.confirm-delete-actions{display:flex;flex-direction:column;align-items:center;gap:1rem}.confirm-delete-btn{background:var(--color-red);border:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;padding:.75rem 2rem;border-radius:var(--radius-lg);cursor:pointer;transition:opacity .2s;min-height:44px}.confirm-delete-btn:hover{opacity:.85}.confirm-delete-btn:focus-visible{outline:2px solid var(--color-red);outline-offset:2px}.confirm-delete-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-delete-cancel{color:var(--color-text-muted);font-size:var(--font-size-md);transition:color .2s;padding:.5rem}.confirm-delete-cancel:hover{color:var(--color-text)}@media(max-width:640px){.confirm-delete-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}}.interview-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--color-overlay-modal);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:interviewModalFadeIn .2s ease}@keyframes interviewModalFadeIn{0%{opacity:0}to{opacity:1}}.interview-modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;position:relative;animation:interviewModalSlideIn .2s ease;color:var(--color-text);text-align:center}@keyframes interviewModalSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.interview-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.interview-modal-close:hover{color:var(--color-text)}.interview-modal-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.interview-modal-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.25rem}.interview-modal-price{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-gold);margin-bottom:1rem}.interview-modal-desc{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1rem}.interview-modal-link{display:block;margin-top:.5rem;text-decoration:none}.interview-modal-content .btn{min-height:44px}.interview-modal-link .btn{width:100%}.interview-modal-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;margin-top:1rem;text-align:center;padding:.5rem;min-height:44px;display:flex;align-items:center;justify-content:center;transition:color .2s;font-family:var(--font-body)}.interview-modal-back:hover{color:var(--color-text)}.interview-modal-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.interview-modal-content{padding:2rem 1.25rem}}@media(prefers-reduced-motion:reduce){.interview-modal-overlay,.interview-modal-content{animation:none}}.waitlist-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--color-overlay-modal);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:waitlistModalFadeIn .2s ease}@keyframes waitlistModalFadeIn{0%{opacity:0}to{opacity:1}}.waitlist-modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;position:relative;animation:waitlistModalSlideIn .2s ease;color:var(--color-text);text-align:center}@keyframes waitlistModalSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.waitlist-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.waitlist-modal-close:hover{color:var(--color-text)}.waitlist-modal-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.waitlist-modal-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.25rem}.waitlist-modal-desc{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.6;margin-bottom:1rem}.waitlist-modal-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.waitlist-modal-content .btn{min-height:44px;width:100%}.waitlist-modal-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;margin-top:1rem;text-align:center;padding:.5rem;min-height:44px;display:flex;align-items:center;justify-content:center;transition:color .2s;font-family:var(--font-body)}.waitlist-modal-back:hover{color:var(--color-text)}.waitlist-modal-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.waitlist-modal-other{margin-bottom:1.25rem;text-align:left}.waitlist-modal-other-label{font-size:var(--font-size-md);color:var(--color-text-muted);margin-bottom:.5rem}.waitlist-modal-other-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.waitlist-modal-other-item{font-size:var(--font-size-md);font-weight:600;color:var(--color-accent);padding:.35rem 0}@media(max-width:640px){.waitlist-modal-content{padding:2rem 1.25rem}}@media(prefers-reduced-motion:reduce){.waitlist-modal-overlay,.waitlist-modal-content{animation:none}}.campaigns-price{font-size:var(--font-size-base)}.campaigns-price strong{color:var(--color-gold)}.campaigns-skeleton-card{max-width:400px;margin:0 auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.campaigns-skeleton-body{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem}.campaigns-state-message{text-align:center;max-width:480px;margin:0 auto}.campaigns-state-message h3{font-family:var(--font-title);font-size:var(--font-size-xl);margin-bottom:.5rem}.campaigns-state-message p{color:var(--color-text-muted);margin-bottom:1.5rem}.campaigns-next{max-width:960px;margin:2.5rem auto 0}.arc-plan-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.arc-plan-option{display:flex;flex-direction:column;gap:.25rem;text-align:left;padding:1rem;border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);color:var(--color-text);cursor:pointer}.arc-plan-option--selected{border-color:var(--color-accent)}.arc-plan-name{color:var(--color-text)}.arc-plan-name{font-weight:700}.arc-plan-price{font-size:var(--font-size-lg);color:var(--color-text)}.arc-plan-desc{font-size:var(--font-size-md);color:var(--color-text-muted)}.private-arc-content{max-width:560px}.private-arc-intro{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:1rem}.private-arc-status{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;color:var(--color-text-muted);text-align:center}.private-arc-card{position:relative;display:flex;align-items:flex-end;width:100%;min-height:340px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;cursor:pointer;color:var(--color-text);text-align:left;background:var(--color-surface);transition:transform .25s ease,box-shadow .25s ease}.private-arc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.private-arc-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.private-arc-card-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-size:cover;background-position:center;background-color:var(--color-bg-card);transition:transform .4s ease}.private-arc-card:hover .private-arc-card-bg{transform:scale(1.08)}.private-arc-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,color-mix(in srgb,var(--color-black) 15%,transparent),color-mix(in srgb,var(--color-black) 55%,transparent) 55%,color-mix(in srgb,var(--color-black) 85%,transparent))}.private-arc-card-body{position:relative;z-index:2;display:flex;flex-direction:column;gap:.35rem;padding:1.25rem;width:100%}.private-arc-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.private-arc-card-name{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg)}.private-arc-card-meta{font-size:var(--font-size-sm);color:var(--color-text-muted)}.private-arc-card-desc{font-size:var(--font-size-md);line-height:1.5;color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.private-arc-card-cta{margin-top:.4rem;font-weight:700;font-size:var(--font-size-md);color:var(--color-accent)}@media(max-width:640px){.private-arc-card-body{padding-inline:3.25rem}}.arc-alert-form{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:.5rem;position:relative;z-index:2}.arc-alert-form .contact-form-group{width:100%}.arc-alert-done{margin-top:.5rem;color:var(--color-text);font-weight:600}.arcs-status{text-align:center;color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:1rem}.arc-card-schedule{list-style:none;margin:.75rem 0 0;padding:.75rem;background:var(--color-bg);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.35rem}.arc-card-schedule li{display:flex;flex-wrap:wrap;gap:0 .5rem;align-items:baseline;font-size:var(--font-size-sm);color:var(--color-text-muted)}.arc-ep-num{font-weight:700;color:var(--color-text);min-width:2.75rem}.arc-ep-loc{margin-left:auto}.arc-card-footer{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.arc-card-seats{font-size:var(--font-size-md);color:var(--color-text-muted)}.blog-index-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.blog-index-inner{max-width:var(--max-width);margin:0 auto}.blog-index-heading{text-align:center;text-transform:uppercase;margin-bottom:.5rem}.blog-index-subtitle{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-base);margin-bottom:1.5rem}.blog-index-stats{text-align:center;margin-bottom:2rem}.blog-index-discord{max-width:640px;margin:0 auto 3rem}.blog-index-status{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-base);padding:2rem 0}.blog-index-status .btn{margin-top:1rem}.blog-index-error{color:var(--color-red-text)}.blog-index-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem}.blog-index-pagination{display:flex;align-items:center;justify-content:center;gap:1.5rem}.blog-index-page-info{color:var(--color-text-muted);font-size:var(--font-size-md)}@media(max-width:900px){.blog-index-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media(max-width:640px){.blog-index-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.blog-index-grid{grid-template-columns:1fr;gap:1.25rem}.blog-index-subtitle{margin-bottom:2rem}}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:color-mix(in srgb,var(--color-black) 90%,transparent);display:flex;align-items:center;justify-content:center;padding:2rem;cursor:pointer;animation:lightbox-fade-in .15s ease-out}.image-lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-md);cursor:default}.image-lightbox-close{position:absolute;top:1rem;right:1rem;background:color-mix(in srgb,var(--color-black) 50%,transparent);border:none;color:var(--color-white);cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;transition:background .15s}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.image-lightbox{animation:none}.image-lightbox-close{transition:none}}.wiki-link-tooltip-wrapper{position:relative;display:inline}.wiki-link-tooltip{position:absolute;z-index:100;max-width:320px;padding:.6rem .75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 16px color-mix(in srgb,var(--color-black) 30%,transparent);display:flex;flex-direction:column;gap:.25rem;pointer-events:auto;animation:wiki-tooltip-fade .15s ease-out}.wiki-link-tooltip-title{font-weight:600;font-size:var(--font-size-md);color:var(--color-text)}.wiki-link-tooltip-excerpt{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.45}@keyframes wiki-tooltip-fade{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.wiki-link-tooltip{animation:none}}@media(max-width:640px){.wiki-link-tooltip{display:none}}.markdown-content{font-size:var(--font-size-base);line-height:1.8;color:var(--color-text)}.markdown-content p{margin-bottom:1.5rem}.markdown-content p:last-child{margin-bottom:0}.markdown-content h2{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-top:2rem;margin-bottom:.75rem;line-height:1.3}.markdown-content h3{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;margin-top:1.5rem;margin-bottom:.5rem;line-height:1.3}.markdown-content h4{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;margin-top:1.25rem;margin-bottom:.4rem}.markdown-content strong{font-weight:700}.markdown-content em{font-style:italic}.markdown-content a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;transition:color .2s}.markdown-content a:hover{color:var(--color-accent-hover)}.markdown-content a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.markdown-content ul,.markdown-content ol{margin-bottom:1.5rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.5rem}.markdown-content blockquote{border-left:3px solid var(--color-accent);padding:.75rem 1.25rem;margin:1.5rem 0;background:var(--color-surface);border-radius:0 var(--radius-lg) var(--radius-lg) 0;color:var(--color-text-muted);font-style:italic}.markdown-content blockquote p{margin-bottom:0}.markdown-content code{background:var(--color-surface-mid);padding:.15rem .4rem;border-radius:var(--radius-sm);font-size:.9em}.markdown-content pre{background:var(--color-surface);padding:1rem 1.25rem;border-radius:var(--radius-lg);overflow-x:auto;margin-bottom:1.5rem;border:1px solid var(--color-border)}.markdown-content pre code{background:none;padding:0;border-radius:0;font-size:var(--font-size-md);line-height:1.6}.markdown-content img{max-width:100%;height:auto;border-radius:var(--radius-lg);display:block;margin:1.5rem auto}.markdown-content .markdown-img-clickable{cursor:pointer;transition:opacity .15s}.markdown-content .markdown-img-clickable:hover{opacity:.85}.markdown-content .markdown-img-clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.markdown-content .markdown-figure{display:block;margin:1.5rem auto;text-align:center}.markdown-content .markdown-figure img{margin:0 auto .5rem}.markdown-content .markdown-figure-caption{font-size:var(--font-size-md);font-style:italic;color:var(--color-text-muted);line-height:1.4}.markdown-content hr{border:none;border-top:1px solid var(--color-border);margin:2rem 0}.markdown-content table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}.markdown-content th,.markdown-content td{padding:.5rem .75rem;border:1px solid var(--color-border);text-align:left}.markdown-content th{background:var(--color-surface);font-weight:600}@media(prefers-reduced-motion:reduce){.markdown-content a{transition:none}}@media(max-width:640px){.markdown-content{font-size:var(--font-size-base);line-height:1.7}.markdown-content h2,.markdown-content h3{font-size:var(--font-size-base)}.markdown-content pre{padding:.75rem 1rem;font-size:var(--font-size-sm)}}.share-links{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.share-links-label{color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:600}.share-links-icons{display:flex;align-items:center;gap:.5rem}.share-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);transition:color .2s,border-color .2s,background .2s;min-width:44px;min-height:44px}.share-link:hover{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-bg-card)}.share-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.share-link{transition:none}}@media(max-width:640px){.share-links{flex-direction:column;align-items:flex-start;gap:.5rem}}.blog-post-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.blog-post-inner{max-width:720px;margin:0 auto}.blog-post-status{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-base);padding:2rem 0}.blog-post-status .btn{margin-top:1rem}.blog-post-error{color:var(--color-red-text)}.blog-post-breadcrumb{font-size:var(--font-size-md);color:var(--color-text-muted);margin-bottom:2rem}.blog-post-breadcrumb a{color:var(--color-accent);text-decoration:none;transition:color .2s}.blog-post-breadcrumb a:hover{color:var(--color-accent-hover)}.blog-post-breadcrumb a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.blog-post-header{margin-bottom:2rem}.blog-post-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;line-height:1.2;margin-bottom:.75rem}.blog-post-meta{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:var(--font-size-md)}.blog-post-author{opacity:.8}.blog-post-hero-image{width:100%;aspect-ratio:2 / 1;border-radius:var(--radius-xl);overflow:hidden;margin-bottom:2.5rem;background:var(--color-surface-mid)}.blog-post-hero-image img{width:100%;height:100%;object-fit:cover;display:block}.blog-post-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:1.5rem}.blog-post-back{color:var(--color-accent);font-size:var(--font-size-md);font-weight:600;text-decoration:none;transition:color .2s}.blog-post-back:hover{color:var(--color-accent-hover)}.blog-post-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}@media(max-width:640px){.blog-post-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.blog-post-hero-image{border-radius:var(--radius-lg);margin-bottom:1.5rem}.blog-post-content{font-size:var(--font-size-base);line-height:1.7}}.store-purchase-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:var(--color-overlay-modal);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:storePurchaseFadeIn .2s ease}@keyframes storePurchaseFadeIn{0%{opacity:0}to{opacity:1}}.store-purchase-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;position:relative;animation:storePurchaseSlideIn .2s ease;color:var(--color-text)}@keyframes storePurchaseSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.store-purchase-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--radius-sm);transition:color var(--transition-base);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.store-purchase-close:hover{color:var(--color-text)}.store-purchase-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.store-purchase-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.25rem;text-align:center}.store-purchase-detail{display:flex;flex-direction:column;gap:1.25rem}.store-purchase-images{border-radius:var(--radius-lg);padding:0 1.5rem}.store-purchase-img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;display:block;border-radius:var(--radius-lg)}.store-purchase-desc{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.7}.store-purchase-price-row{text-align:center}.store-purchase-price{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;color:var(--color-gold)}.store-purchase-detail .btn{width:100%}.store-purchase-payment{display:flex;flex-direction:column;gap:1rem}.store-purchase-payment-desc{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center}.store-purchase-confirmation{display:flex;flex-direction:column;gap:1.25rem}.store-purchase-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.store-purchase-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-md)}.store-purchase-summary-row span:first-child{color:var(--color-text-muted);font-weight:600}.store-purchase-summary-row span:last-child{color:var(--color-text);font-weight:600}.store-purchase-error{color:var(--color-red-text);font-size:var(--font-size-md);text-align:center}.store-purchase-confirmation .btn{width:100%}.store-purchase-success{text-align:center;display:flex;flex-direction:column;gap:1.25rem}.store-purchase-success-msg{color:var(--color-success);font-size:var(--font-size-base);line-height:1.6}.store-purchase-success .btn{width:100%}.store-purchase-questions{display:flex;flex-direction:column;gap:1rem}.store-purchase-questions-intro{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5}.store-purchase-question-group{display:flex;flex-direction:column;gap:.35rem}.store-purchase-question-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.store-purchase-required{color:var(--color-red-text)}.store-purchase-question-input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);line-height:1.5;resize:vertical;min-height:60px;box-sizing:border-box}.store-purchase-question-input:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent)}.store-purchase-questions .btn{width:100%;margin-top:.5rem}.store-purchase-back{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;margin-top:1rem;padding:.5rem;min-height:44px;display:flex;align-items:center;font-family:var(--font-body);transition:color var(--transition-base)}.store-purchase-back:hover{color:var(--color-text)}.store-purchase-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:900px){.store-purchase-images{padding:0 1rem}}@media(max-width:640px){.store-purchase-content{padding:2rem 1.25rem}.store-purchase-images{padding:0}}@media(prefers-reduced-motion:reduce){.store-purchase-overlay,.store-purchase-content{animation:none}}.store-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.store-inner{max-width:var(--max-width);margin:0 auto}.store-heading{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:.75rem}.store-subtitle{color:var(--color-text-muted);font-size:var(--font-size-base);margin-bottom:2.5rem}.store-gate-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.7;max-width:500px;margin-bottom:1.5rem}.store-link-btn{display:inline-block;padding:.6rem 1.5rem;background:var(--color-accent);color:var(--color-on-accent);font-weight:600;font-size:var(--font-size-md);border-radius:var(--radius-md);text-decoration:none;transition:background var(--transition-base);min-height:44px;line-height:1.6}.store-link-btn:hover{background:var(--color-accent-hover)}.store-link-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.store-loading{color:var(--color-text-muted);font-size:var(--font-size-base)}.store-empty{color:var(--color-text-muted);font-size:var(--font-size-base);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2rem;text-align:center}.store-error-container{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.store-error{color:var(--color-red-text);font-size:var(--font-size-md)}.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.store-product-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:border-color var(--transition-base),transform var(--transition-base)}.store-product-card:hover{border-color:var(--color-accent-border);transform:translateY(-2px)}.store-product-image-wrap{overflow:hidden}.store-product-image{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;display:block;transition:transform .45s ease}.store-product-card:hover .store-product-image{transform:scale(1.05)}.store-skeleton-card{pointer-events:none}.store-skeleton-image{aspect-ratio:4 / 3}.store-product-info{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem}.store-product-name{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);line-height:1.3}.store-product-price{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);color:var(--color-gold)}.store-product-info .btn,.store-product-info .card-cta{align-self:flex-start;margin-top:.25rem}@media(max-width:900px){.store-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media(max-width:640px){.store-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.store-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.store-product-card{transition:none}.store-product-card:hover{transform:none}.store-product-image{transition:none}.store-product-card:hover .store-product-image{transform:none}}.eorthwyn-date-picker{border:none;padding:0;margin:0}.eorthwyn-date-picker-fields{display:flex;gap:.5rem;align-items:flex-end}.eorthwyn-date-picker-field{display:flex;flex-direction:column;gap:.2rem}.eorthwyn-date-picker-label{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.eorthwyn-date-picker-input,.eorthwyn-date-picker-select{font-size:var(--font-size-md);padding:.35rem .5rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s}.eorthwyn-date-picker-input:focus,.eorthwyn-date-picker-select:focus{border-color:var(--color-accent)}.eorthwyn-date-picker-input--day{width:60px}.eorthwyn-date-picker-input--year{width:80px}.eorthwyn-date-picker-select{min-width:110px}@media(prefers-reduced-motion:reduce){.eorthwyn-date-picker-input,.eorthwyn-date-picker-select{transition:none}}@media(max-width:640px){.eorthwyn-date-picker-fields{flex-wrap:wrap}.eorthwyn-date-picker-input--day,.eorthwyn-date-picker-input--year{width:70px}}.media-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:mediaPickerFadeIn .2s ease}@keyframes mediaPickerFadeIn{0%{opacity:0}to{opacity:1}}.media-picker{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:720px;max-height:min(80vh,640px);display:flex;flex-direction:column;overflow:hidden;animation:mediaPickerSlideIn .2s ease}@keyframes mediaPickerSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.media-picker-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.media-picker-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0}.media-picker-close{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-3xl);line-height:1;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.media-picker-close:hover{color:var(--color-text)}.media-picker-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.media-picker-folders{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--color-border)}.media-picker-folder{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.4rem .85rem;min-height:36px;border:1px solid var(--color-border);border-radius:var(--radius-pill, 999px);background:none;color:var(--color-text-muted);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.media-picker-folder:hover{color:var(--color-text);border-color:var(--color-accent)}.media-picker-folder--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-dark)}.media-picker-folder:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.media-picker-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.media-picker-status{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:2rem 0;display:flex;align-items:center;justify-content:center;gap:.5rem}.media-picker-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.media-picker-item{position:relative;display:block;width:100%;aspect-ratio:1 / 1;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:var(--color-bg-dark);transition:border-color .2s,transform .15s}.media-picker-item:hover:not(:disabled){border-color:var(--color-accent);transform:translateY(-2px)}.media-picker-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.media-picker-item:disabled{cursor:not-allowed}.media-picker-thumb{width:100%;height:100%;object-fit:cover;display:block}.media-picker-item-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--color-overlay-dark-heavy)}.media-picker-error{color:var(--color-red-text);font-size:var(--font-size-md);margin:0;padding:.75rem 1.5rem 1.25rem}@media(max-width:640px){.media-picker{max-height:90vh}.media-picker-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}}.image-upload{display:flex;flex-direction:column;gap:.5rem}.image-upload-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.image-upload-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1.5rem;border:2px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;transition:border-color .2s,background .2s;min-height:120px}.image-upload-dropzone:hover,.image-upload-dropzone:focus-visible{border-color:var(--color-accent);background:var(--color-bg-card)}.image-upload-dropzone--active{border-color:var(--color-accent);background:var(--color-bg-card)}.image-upload-dropzone:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.image-upload-icon{color:var(--color-text-muted)}.image-upload-text{color:var(--color-text);font-size:var(--font-size-md);font-weight:500}.image-upload-hint{color:var(--color-text-muted);font-size:var(--font-size-xs)}.image-upload-preview{position:relative;border-radius:var(--radius-lg);overflow:hidden;max-height:240px;background:var(--color-surface-mid)}.image-upload-preview img{width:100%;height:auto;max-height:240px;object-fit:cover;display:block}.image-upload-preview-actions{position:absolute;bottom:0;left:0;right:0;display:flex;gap:.5rem;justify-content:center;padding:.75rem;background:var(--color-overlay-dark)}.image-upload-remove,.image-upload-replace{padding:.35rem .85rem;font-size:var(--font-size-sm);font-weight:600;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color .2s,background .2s;min-height:44px;min-width:44px}.image-upload-remove:hover{border-color:var(--color-red);color:var(--color-red-text)}.image-upload-replace:hover{border-color:var(--color-accent);color:var(--color-accent)}.image-upload-remove:focus-visible,.image-upload-replace:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.image-upload-preview--crop{aspect-ratio:16 / 9;max-height:none}.image-upload-preview--crop img{height:100%;max-height:none}.image-upload-position{display:flex;flex-direction:column;gap:.35rem}.image-upload-position-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted)}.image-upload-position-row{display:flex;align-items:center;gap:.6rem}.image-upload-position-row span{font-size:var(--font-size-2xs);color:var(--color-text-muted)}.image-upload-position-row input[type=range]{flex:1;min-height:44px;accent-color:var(--color-accent);cursor:pointer}.image-upload-position-row input[type=range]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.image-upload-library-btn{align-self:flex-start;padding:.5rem .9rem;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color .2s,color .2s;min-height:44px}.image-upload-library-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.image-upload-library-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.image-upload-error{color:var(--color-red-text);font-size:var(--font-size-sm)}@media(prefers-reduced-motion:reduce){.image-upload-dropzone,.image-upload-remove,.image-upload-replace{transition:none}}@media(max-width:640px){.image-upload-dropzone{padding:1.5rem 1rem;min-height:100px}.image-upload-preview,.image-upload-preview img{max-height:180px}}.wiki-sidebar{background:var(--color-bg-card);border-right:1px solid var(--color-border);box-shadow:1px 0 color-mix(in srgb,var(--color-white) 3%,transparent);padding:1.25rem;min-height:0;display:flex;flex-direction:column;overflow:hidden}.wiki-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.wiki-sidebar-title{font-family:var(--font-title);font-size:var(--font-size-md);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.wiki-sidebar-reorder-toggle{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s}.wiki-sidebar-reorder-toggle:hover{color:var(--color-text);background:var(--color-overlay-light)}.wiki-sidebar-reorder-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-sidebar-search{margin-bottom:.75rem}.wiki-sidebar-search-input{width:100%;padding:.4rem .6rem;font-size:var(--font-size-md);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s}.wiki-sidebar-search-input:focus{border-color:var(--color-accent)}.wiki-sidebar-search-input::placeholder{color:var(--color-text-muted)}.wiki-sidebar-search-results{margin-bottom:.75rem}.wiki-sidebar-search-empty{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic;padding:.25rem 0}.wiki-sidebar-filters{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.75rem}.wiki-sidebar-filter-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:.35rem .6rem;min-height:32px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s,background .15s}.wiki-sidebar-filter-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.wiki-sidebar-filter-btn--active{background:var(--color-accent-subtle);border-color:var(--color-accent);color:var(--color-accent);font-weight:600}.wiki-sidebar-filter-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-sidebar-new-btn{width:100%;margin-bottom:1rem}.wiki-sidebar-empty{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:1.5;padding:.5rem 0}.wiki-sidebar-list{list-style:none;padding:0;margin:0}.wiki-sidebar-tree{list-style:none;padding:0;margin:0;flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.wiki-sidebar-tree::-webkit-scrollbar{width:4px}.wiki-sidebar-tree::-webkit-scrollbar-track{background:transparent}.wiki-sidebar-tree::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.wiki-sidebar-children{list-style:none;padding:0 0 0 1rem;margin:0}.wiki-sidebar-item{margin-bottom:.1rem}.wiki-sidebar-link-wrapper{display:flex;align-items:center;border-radius:var(--radius-sm);transition:background .15s}.wiki-sidebar-link-wrapper:hover{background:var(--color-overlay-light)}.wiki-sidebar-link-wrapper.active{background:var(--color-accent-subtle)}.wiki-sidebar-link-wrapper.active .wiki-sidebar-link{color:var(--color-accent);font-weight:600}.wiki-sidebar-chevron{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.35rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-sm);transition:transform .15s}.wiki-sidebar-chevron:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-sidebar-chevron--open{transform:rotate(90deg)}.wiki-sidebar-link{flex:1;display:flex;align-items:center;gap:.35rem;padding:.4rem .5rem;font-size:var(--font-size-md);color:var(--color-text);text-decoration:none;border-radius:var(--radius-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wiki-sidebar-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.wiki-sidebar-icon{flex-shrink:0;font-size:var(--font-size-xs);line-height:1}.wiki-sidebar-calendar-link{display:flex;align-items:center;gap:.4rem;padding:.4rem .5rem;margin-bottom:.5rem;font-size:var(--font-size-md);color:var(--color-text-muted);text-decoration:none;border-radius:var(--radius-sm);transition:background .15s,color .15s}.wiki-sidebar-calendar-link:hover{background:var(--color-overlay-light);color:var(--color-text)}.wiki-sidebar-calendar-link--active{background:var(--color-accent-subtle);color:var(--color-accent);font-weight:600}.wiki-sidebar-calendar-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.wiki-sidebar-reorder-list{list-style:none;padding:0;margin:.75rem 0}.wiki-sidebar-reorder-item{display:flex;align-items:center;gap:.4rem;padding:.4rem .5rem;padding-left:calc(var(--depth, 0) * 1.25rem + .5rem);border-bottom:1px solid var(--color-border);font-size:var(--font-size-md);cursor:grab;-webkit-user-select:none;user-select:none;transition:background .1s}.wiki-sidebar-reorder-item:active{cursor:grabbing}.wiki-sidebar-reorder-item--dragging{opacity:.4}.wiki-sidebar-reorder-item--over{background:var(--color-accent-subtle);border-bottom-color:var(--color-accent)}.wiki-sidebar-reorder-grip{color:var(--color-text-muted);flex-shrink:0;display:flex;align-items:center;justify-content:center}.wiki-sidebar-reorder-title{color:var(--color-text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-sidebar-reorder-actions{display:flex;gap:.5rem;padding-top:.5rem}.wiki-sidebar-reorder-error{color:var(--color-red-text);font-size:var(--font-size-sm);margin:.5rem 0 0;line-height:1.4}.wiki-sidebar-skeleton{display:flex;flex-direction:column;gap:.6rem;padding-top:.5rem}.wiki-sidebar-skeleton-bar{height:1rem;width:80%;background:var(--color-surface);border-radius:var(--radius-sm);animation:wiki-sidebar-pulse 1.5s ease-in-out infinite}.wiki-sidebar-skeleton-bar--short{width:55%}@keyframes wiki-sidebar-pulse{0%,to{opacity:.4}50%{opacity:.8}}@media(prefers-reduced-motion:reduce){.wiki-sidebar-chevron,.wiki-sidebar-link-wrapper,.wiki-sidebar-reorder-toggle,.wiki-sidebar-reorder-item{transition:none}.wiki-sidebar-skeleton-bar{animation:none;opacity:.6}}@media(max-width:900px){.wiki-sidebar-filter-btn{min-height:44px;padding:.4rem .65rem}}@media(max-width:640px){.wiki-sidebar{border-right:none;border-bottom:1px solid var(--color-border);padding:1rem}}.wiki-history{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.wiki-history-summary{cursor:pointer;font-size:var(--font-size-md);color:var(--color-text-muted);font-weight:600;padding:.5rem 0;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:.5rem}.wiki-history-summary::-webkit-details-marker{display:none}.wiki-history-summary:before{content:"";display:inline-block;width:0;height:0;border-left:5px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .2s}details[open]>.wiki-history-summary:before{transform:rotate(90deg)}.wiki-history-list{list-style:none;padding:0;margin:.75rem 0 0}.wiki-history-entry{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;font-size:var(--font-size-md);color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.wiki-history-entry:last-child{border-bottom:none}.wiki-history-time{color:var(--color-text);font-size:var(--font-size-md)}.wiki-history-author{color:var(--color-text-muted)}.wiki-history-empty,.wiki-history-error{font-size:var(--font-size-md);color:var(--color-text-muted)}.wiki-history-error{color:var(--color-red-text)}.wiki-history-skeleton{display:flex;flex-direction:column;gap:.5rem}.wiki-history-skeleton-bar{height:1rem;width:60%;background:var(--color-surface);border-radius:var(--radius-sm);animation:wiki-history-pulse 1.5s ease-in-out infinite}.wiki-history-skeleton-bar--short{width:40%}@keyframes wiki-history-pulse{0%,to{opacity:.4}50%{opacity:.8}}@media(prefers-reduced-motion:reduce){.wiki-history-summary:before{transition:none}.wiki-history-skeleton-bar{animation:none;opacity:.6}}.searchable-select{position:relative;max-width:360px}.searchable-select-input-wrap{position:relative;display:flex;align-items:center}.searchable-select-input{width:100%;font-size:var(--font-size-md);padding:.5rem 2rem .5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s}.searchable-select-input:focus{border-color:var(--color-accent)}.searchable-select-input:disabled{opacity:.5;cursor:not-allowed}.searchable-select-clear{position:absolute;right:.4rem;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0}.searchable-select-clear:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-white) 8%,transparent)}.searchable-select-list{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;max-height:200px;overflow-y:auto;margin:0;padding:.25rem 0;list-style:none;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:var(--radius-md);box-shadow:0 4px 12px color-mix(in srgb,var(--color-black) 25%,transparent)}.searchable-select-option{padding:.4rem .75rem;font-size:var(--font-size-md);cursor:pointer;color:var(--color-text)}.searchable-select-option:hover,.searchable-select-option--active{background:color-mix(in srgb,var(--color-white) 6%,transparent)}.searchable-select-option--selected{color:var(--color-accent);font-weight:600}.searchable-select-empty{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;padding:.6rem .75rem;font-size:var(--font-size-md);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:var(--radius-md);box-shadow:0 4px 12px color-mix(in srgb,var(--color-black) 25%,transparent)}@media(prefers-reduced-motion:reduce){.searchable-select-input{transition:none}}.wysiwyg-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.wysiwyg-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:.35rem .5rem;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-black) 15%,transparent)}.wysiwyg-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px;padding:.25rem .4rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background .15s,color .15s}.wysiwyg-toolbar-btn:hover{background:color-mix(in srgb,var(--color-white) 8%,transparent);color:var(--color-text)}.wysiwyg-toolbar-btn--active{background:var(--color-accent);color:var(--color-on-accent)}.wysiwyg-toolbar-btn--active:hover{background:var(--color-accent-hover);color:var(--color-on-accent)}.wysiwyg-toolbar-btn:disabled{opacity:.35;cursor:default}.wysiwyg-toolbar-btn svg{display:block}.wysiwyg-toolbar-sep{width:1px;height:20px;margin:0 .2rem;background:var(--color-border)}.wysiwyg-content{padding:.8rem;min-height:200px;color:var(--color-text);font-size:var(--font-size-base);line-height:1.7}.wysiwyg-content .tiptap{outline:none;min-height:180px}.wysiwyg-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-muted);opacity:.5;pointer-events:none;height:0}.wysiwyg-content .tiptap h2{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:1.25rem 0 .5rem;line-height:1.3}.wysiwyg-content .tiptap h3{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin:1rem 0 .4rem;line-height:1.3}.wysiwyg-content .tiptap h4{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;margin:.75rem 0 .3rem;line-height:1.3}.wysiwyg-content .tiptap p{margin:.4rem 0}.wysiwyg-content .tiptap ul,.wysiwyg-content .tiptap ol{padding-left:1.5rem;margin:.5rem 0}.wysiwyg-content .tiptap li{margin:.2rem 0}.wysiwyg-content .tiptap blockquote{border-left:3px solid var(--color-accent);padding-left:1rem;margin:.75rem 0;color:var(--color-text-muted);font-style:italic}.wysiwyg-content .tiptap code{background:color-mix(in srgb,var(--color-white) 6%,transparent);padding:.15rem .35rem;border-radius:var(--radius-sm);font-size:.88em;font-family:monospace}.wysiwyg-content .tiptap pre{background:color-mix(in srgb,var(--color-black) 30%,transparent);padding:.75rem 1rem;border-radius:var(--radius-md);overflow-x:auto;margin:.75rem 0}.wysiwyg-content .tiptap pre code{background:none;padding:0;font-size:var(--font-size-md);line-height:1.5}.wysiwyg-content .tiptap hr{border:none;border-top:1px solid var(--color-border);margin:1.25rem 0}.wysiwyg-content .tiptap a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.wiki-image-figure{display:block;max-width:100%;margin:.75rem 0;text-align:center}.wiki-image-figure img{max-width:100%;height:auto;border-radius:var(--radius-md);display:block;margin:0 auto}.wiki-image-figure--selected{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}.wiki-image-caption-input{display:block;width:100%;max-width:400px;margin:.4rem auto 0;padding:.25rem .5rem;font-size:var(--font-size-sm);font-style:italic;color:var(--color-text-muted);background:transparent;border:1px dashed var(--color-field-border);border-radius:var(--radius-sm);text-align:center;outline:none;transition:border-color .15s}.wiki-image-caption-input:focus{border-color:var(--color-accent)}.wiki-image-caption-input::placeholder{color:var(--color-text-muted);opacity:.5}.wysiwyg-content .tiptap img{max-width:100%;height:auto;border-radius:var(--radius-md);margin:.5rem 0}.wysiwyg-content .tiptap strong{font-weight:700}.wysiwyg-content .tiptap s{text-decoration:line-through}.wysiwyg-wrap--dragover{outline:2px dashed var(--color-accent);outline-offset:-2px}.wysiwyg-upload-indicator{padding:.35rem .75rem;font-size:var(--font-size-sm);color:var(--color-text-muted);background:color-mix(in srgb,var(--color-black) 15%,transparent);border-top:1px solid var(--color-border);text-align:center}@media(prefers-reduced-motion:reduce){.wysiwyg-toolbar-btn,.wiki-image-caption-input{transition:none}}@media(max-width:640px){.wysiwyg-toolbar{gap:1px;padding:.25rem}.wysiwyg-toolbar-btn{min-width:28px;min-height:28px;padding:.2rem .3rem;font-size:var(--font-size-xs)}.wysiwyg-content{padding:.6rem;min-height:150px;font-size:var(--font-size-md)}}.interaction-summary .markdown-content{font-size:var(--font-size-md);line-height:1.5;color:var(--color-text)}.interaction-summary .markdown-content p{margin-bottom:.5rem}.interaction-summary .markdown-content>:last-child{margin-bottom:0}.interactions-list{display:flex;flex-direction:column;gap:.75rem}.interactions-list-placeholder,.interactions-list-empty,.interactions-list-loading{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic}.interactions-list-error{font-size:var(--font-size-md);color:var(--color-red-text)}.interactions-list-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.interaction-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-black) 10%,transparent);padding:.75rem}.interaction-row--new{border-style:dashed}.interaction-display{display:flex;align-items:flex-start;gap:.75rem}.interaction-display-content{flex:1;min-width:0}.interaction-display-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.3rem}.interaction-display-date{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent)}.interaction-display-location{font-size:var(--font-size-sm);color:var(--color-text-muted);padding-left:.5rem;border-left:1px solid var(--color-border)}.interaction-display-location--link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.interaction-display-location--link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.interaction-display-actions{display:flex;gap:2px;flex-shrink:0}.interaction-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0;transition:background .12s,color .12s}.interaction-action-btn:hover{background:color-mix(in srgb,var(--color-white) 8%,transparent);color:var(--color-text)}.interaction-action-btn:disabled{opacity:.3;cursor:default}.interaction-action-btn--danger:hover{color:var(--color-red-text)}.interaction-form{display:flex;flex-direction:column;gap:.6rem}.interaction-form-row{display:flex;gap:.75rem;flex-wrap:wrap}.interaction-form-field{display:flex;flex-direction:column;gap:.2rem}.interaction-form-field--location{min-width:200px}.interaction-form-field--summary{flex:1;min-width:100%}.interaction-form-label{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.interaction-form-textarea{font-size:var(--font-size-md);padding:.4rem .6rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:48px;outline:none;transition:border-color .15s;line-height:1.5}.interaction-form-textarea:focus{border-color:var(--color-accent)}.interaction-form-actions{display:flex;gap:.5rem}.location-interactions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.location-interactions-heading{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0 0 .75rem}.location-interactions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.location-interaction-item{display:flex;flex-direction:column;gap:.2rem;padding:.5rem 0;border-bottom:1px solid var(--color-border)}.location-interaction-item:last-child{border-bottom:none}.location-interaction-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.location-interaction-date{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent)}.location-interaction-episode{font-size:var(--font-size-sm);color:var(--color-text-muted)}.location-interaction-episode a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.location-interaction-episode a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.location-interactions-empty{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic}@media(prefers-reduced-motion:reduce){.interaction-action-btn,.interaction-form-textarea{transition:none}}@media(max-width:640px){.interaction-display{flex-direction:column;gap:.5rem}.interaction-display-actions{align-self:flex-end}}.planning-list{display:flex;flex-direction:column;gap:.75rem}.planning-list-placeholder,.planning-list-empty,.planning-list-loading{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic}.planning-list-error{font-size:var(--font-size-md);color:var(--color-red-text)}.planning-list-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.planning-component{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-black) 10%,transparent);padding:.75rem}.planning-component--new{border-style:dashed}.planning-component-display{display:flex;align-items:flex-start;gap:.75rem}.planning-component-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem}.planning-component-empty-summary{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic;margin:0}.planning-component-refs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.planning-ref-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);font-size:var(--font-size-xs);max-width:100%}.planning-ref-chip-icon{font-size:var(--font-size-xs);line-height:1;flex-shrink:0}.planning-ref-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.planning-ref-chip-label--link{color:var(--color-accent);text-decoration:none}.planning-ref-chip-label--link:hover{text-decoration:underline}.planning-ref-chip-label--link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.planning-ref-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0;font-size:var(--font-size-base);line-height:1;flex-shrink:0}.planning-ref-chip-remove:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-white) 8%,transparent)}.planning-component-actions{display:flex;gap:2px;flex-shrink:0}.planning-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0;transition:background .12s,color .12s}.planning-action-btn:hover{background:color-mix(in srgb,var(--color-white) 8%,transparent);color:var(--color-text)}.planning-action-btn:disabled{opacity:.3;cursor:default}.planning-action-btn--danger:hover{color:var(--color-red-text)}.planning-form{display:flex;flex-direction:column;gap:.6rem}.planning-form-field{display:flex;flex-direction:column;gap:.3rem}.planning-form-label{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.planning-form-textarea{font-size:var(--font-size-md);padding:.4rem .6rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:48px;outline:none;transition:border-color .15s;line-height:1.5}.planning-form-textarea:focus{border-color:var(--color-accent)}.planning-form-actions{display:flex;gap:.5rem}@media(prefers-reduced-motion:reduce){.planning-action-btn,.planning-form-textarea{transition:none}}@media(max-width:640px){.planning-component-display{flex-direction:column;gap:.5rem}.planning-component-actions{align-self:flex-end}}.history-events-list{display:flex;flex-direction:column;gap:.75rem}.history-events-list-placeholder,.history-events-list-empty,.history-events-list-loading{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic}.history-events-list-error{font-size:var(--font-size-md);color:var(--color-red-text)}.history-events-list-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.history-event-row{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-black) 10%,transparent);padding:.75rem}.history-event-row--new{border-style:dashed}.history-event-display{display:flex;align-items:flex-start;gap:.75rem}.history-event-display-content{flex:1;min-width:0}.history-event-display-date{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent);display:block;margin-bottom:.2rem}.history-event-display-description{font-size:var(--font-size-md);color:var(--color-text);margin:0;line-height:1.5;white-space:pre-wrap}.history-event-display-actions{display:flex;gap:2px;flex-shrink:0}.history-event-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;padding:0;transition:background .12s,color .12s}.history-event-action-btn:hover{background:color-mix(in srgb,var(--color-white) 8%,transparent);color:var(--color-text)}.history-event-action-btn:disabled{opacity:.3;cursor:default}.history-event-action-btn--danger:hover{color:var(--color-red-text)}.history-event-form{display:flex;flex-direction:column;gap:.6rem}.history-event-form-row{display:flex;gap:.75rem;flex-wrap:wrap}.history-event-form-field{display:flex;flex-direction:column;gap:.2rem}.history-event-form-field--description{flex:1;min-width:100%}.history-event-form-label{font-size:var(--font-size-2xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.history-event-form-textarea{font-size:var(--font-size-md);padding:.4rem .6rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:48px;outline:none;transition:border-color .15s;line-height:1.5}.history-event-form-textarea:focus{border-color:var(--color-accent)}.history-event-form-actions{display:flex;gap:.5rem}@media(prefers-reduced-motion:reduce){.history-event-action-btn,.history-event-form-textarea{transition:none}}@media(max-width:640px){.history-event-display{flex-direction:column;gap:.5rem}.history-event-display-actions{align-self:flex-end}}.notable-characters-error{color:var(--color-red-text);font-size:var(--font-size-md);margin:0 0 .5rem}.notable-characters-empty{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic;margin:0 0 .5rem}.notable-characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;margin:0 0 .75rem}.notable-character-card{position:relative}.notable-character-card-btn{display:flex;flex-direction:column;width:100%;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;text-align:left;padding:0;font-family:inherit;color:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.notable-character-card-btn:hover{border-color:var(--color-accent);box-shadow:0 2px 12px color-mix(in srgb,var(--color-accent) 8%,transparent)}.notable-character-card-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.notable-character-card-image{width:100%;aspect-ratio:1;object-fit:cover;object-position:top center;display:block;background:var(--color-surface)}.notable-character-card-placeholder{width:100%;aspect-ratio:1;background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-muted)}.notable-character-card-body{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .65rem}.notable-character-card-name{font-weight:700;font-size:var(--font-size-md);color:var(--color-text);line-height:1.3}.notable-character-card-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notable-character-card-dead{display:inline-block;align-self:flex-start;font-size:var(--font-size-3xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .35rem;border-radius:var(--radius-xs);color:var(--color-red-text);background:var(--color-red-subtle);margin-top:.1rem}.notable-character-card-remove{position:absolute;top:.35rem;right:.35rem;z-index:2;background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;transition:color .15s,background .15s;opacity:0}.notable-character-card:hover .notable-character-card-remove{opacity:1}.notable-character-card-remove:hover{color:var(--color-red-text);background:var(--color-surface)}.notable-character-card-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;opacity:1}.notable-characters-actions{display:flex;gap:.5rem}.notable-characters-add{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.notable-characters-add-search{width:100%}.notable-characters-add-input{width:100%;padding:.45rem .6rem;font-size:var(--font-size-md);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);outline:none;min-height:44px}.notable-characters-add-input:focus{border-color:var(--color-accent)}.notable-characters-add-input::placeholder{color:var(--color-text-muted)}.notable-characters-add-results{max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.notable-characters-add-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;padding:.5rem 0;margin:0}.notable-characters-add-option{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;font-family:inherit;color:inherit;width:100%;transition:background var(--transition-fast)}.notable-characters-add-option:hover{background:var(--color-overlay-light)}.notable-characters-add-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.notable-characters-add-option-img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--color-surface)}.notable-characters-add-option-placeholder{width:36px;height:36px;border-radius:50%;background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-md);font-weight:700;color:var(--color-text-muted);flex-shrink:0}.notable-characters-add-option-info{display:flex;flex-direction:column;min-width:0;flex:1}.notable-characters-add-option-name{font-weight:600;font-size:var(--font-size-md);color:var(--color-text)}.notable-characters-add-option-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notable-characters-add-option-dead{font-size:var(--font-size-3xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .35rem;border-radius:var(--radius-xs);color:var(--color-red-text);background:var(--color-red-subtle);flex-shrink:0}.notable-characters-create{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.notable-characters-create-field{display:flex;flex-direction:column;gap:.2rem}.notable-characters-create-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.notable-characters-create-input{padding:.35rem .5rem;font-size:var(--font-size-md);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);outline:none}.notable-characters-create-input:focus{border-color:var(--color-accent)}.notable-characters-create-textarea{padding:.35rem .5rem;font-size:var(--font-size-md);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);resize:vertical;font-family:inherit;outline:none}.notable-characters-create-textarea:focus{border-color:var(--color-accent)}.notable-characters-create-actions{display:flex;gap:.5rem}@media(max-width:900px){.notable-characters-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media(max-width:640px){.notable-characters-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.notable-character-card-remove{opacity:1}}@media(prefers-reduced-motion:reduce){.notable-character-card-btn,.notable-character-card-remove,.notable-characters-add-option{transition:none}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.wiki-map-marker-editor{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.wiki-map-marker-editor-help{margin:0;color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5}.wiki-map-marker-editor-canvas{position:relative;width:100%;height:460px;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}@media(max-width:640px){.wiki-map-marker-editor-canvas{height:320px}}.wiki-map-marker-editor-canvas .leaflet-container{width:100%;height:100%;background:var(--color-bg-dark);cursor:crosshair}.wiki-map-marker-editor-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-red-text);padding:.5rem;text-align:center}.wiki-map-marker-editor-actions{display:flex;align-items:center;gap:1rem}.wiki-map-marker-editor-state{color:var(--color-text-muted);font-size:var(--font-size-md)}.wiki-editor{display:flex;flex-direction:column;gap:1.25rem}.wiki-editor-row{display:flex;gap:1rem;align-items:flex-end}.wiki-editor-field{display:flex;flex-direction:column;gap:.4rem}.wiki-editor-field--grow{flex:1;min-width:0}.wiki-editor-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.wiki-editor-hint{margin:.35rem 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.wiki-editor-title-input{font-size:var(--font-size-xl);font-family:var(--font-title);font-weight:700;padding:.6rem .8rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .2s}.wiki-editor-title-input:focus{border-color:var(--color-accent)}.wiki-editor-subtitle-input{font-size:var(--font-size-base);padding:.5rem .8rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .2s}.wiki-editor-subtitle-input:focus{border-color:var(--color-accent)}.wiki-editor-textarea{font-family:monospace;font-size:var(--font-size-base);line-height:1.6;padding:.8rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:300px;outline:none;transition:border-color .2s}.wiki-editor-textarea:focus{border-color:var(--color-accent)}.wiki-editor-population-input{font-size:var(--font-size-base);padding:.5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);max-width:200px;outline:none;transition:border-color .2s}.wiki-editor-population-input:focus{border-color:var(--color-accent)}.wiki-editor-select{font-size:var(--font-size-md);padding:.5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);max-width:280px;outline:none;transition:border-color .2s}.wiki-editor-select:focus{border-color:var(--color-accent)}.wiki-editor-actions{display:flex;gap:.75rem;align-items:center}.wiki-editor-status{font-size:var(--font-size-md);min-height:1.2rem;color:var(--color-text-muted)}.wiki-editor-status:empty{display:none}.wiki-editor-delete-btn{margin-left:auto;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;padding:.4rem .5rem;border-radius:var(--radius-sm);min-height:44px}.wiki-editor-delete-btn:hover{color:var(--color-red-text)}.wiki-editor-delete-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-editor-draft-status{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:.25rem 0 0}.wiki-editor-recovery{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.wiki-editor-recovery-text{font-size:var(--font-size-md);color:var(--color-text);min-width:0}.wiki-editor-recovery-actions{display:flex;gap:.5rem;flex-shrink:0}.wiki-editor-generate-row{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.wiki-editor-gen-error{font-size:var(--font-size-sm);color:var(--color-red-text);margin:0}@media(prefers-reduced-motion:reduce){.wiki-editor-title-input,.wiki-editor-subtitle-input,.wiki-editor-textarea,.wiki-editor-select{transition:none}}@media(max-width:640px){.wiki-editor-row{flex-direction:column;gap:1.25rem}.wiki-editor-title-input{font-size:var(--font-size-lg)}.wiki-editor-subtitle-input{font-size:var(--font-size-md)}.wiki-editor-textarea{font-size:var(--font-size-md);min-height:200px}.wiki-editor-actions{flex-direction:column;align-items:stretch}}.character-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:color-mix(in srgb,var(--color-black) 60%,transparent);display:flex;align-items:center;justify-content:center;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.character-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:780px;width:100%;max-height:85vh;overflow:hidden;position:relative}.character-modal-top-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:flex-end;gap:.4rem;padding:.6rem .75rem;z-index:2}.character-modal-edit-btn{background:none;border:1px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;padding:.25rem .65rem;border-radius:var(--radius-sm);cursor:pointer;min-height:32px;transition:background var(--transition-fast),color var(--transition-fast)}.character-modal-edit-btn:hover{background:var(--color-accent);color:var(--color-bg-dark)}.character-modal-edit-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.character-modal-close{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:.3rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;transition:color .15s}.character-modal-close:hover{color:var(--color-text)}.character-modal-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.character-modal-loading,.character-modal-error{font-size:var(--font-size-md);color:var(--color-text-muted);padding:2rem 1.5rem;text-align:center}.character-modal-layout{display:flex;max-height:85vh}.character-modal-image-panel{flex-shrink:0;width:280px;background:var(--color-bg-dark);overflow:hidden}.character-modal-image{width:100%;height:100%;max-height:85vh;object-fit:cover;object-position:top center;display:block}.character-modal-content{flex:1;padding:2.75rem 1.5rem 1.5rem;overflow-y:auto;max-height:85vh;min-width:0}.character-modal-name{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0 0 .5rem;color:var(--color-text)}.character-modal-edit{margin-bottom:.75rem}.character-modal-subtitle{font-size:var(--font-size-base);color:var(--color-text-muted);font-style:italic;margin:-.25rem 0 .5rem;line-height:1.4}.character-modal-status{display:inline-block;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .55rem;border-radius:var(--radius-sm);margin-bottom:.75rem}.character-modal-status--alive{color:var(--color-success);background:color-mix(in srgb,var(--color-success) 12%,transparent)}.character-modal-status--dead{color:var(--color-red-text);background:color-mix(in srgb,var(--color-red) 12%,transparent)}.character-modal-section{margin-bottom:1rem}.character-modal-label{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 .3rem}.character-modal-text{font-size:var(--font-size-md);line-height:1.5;color:var(--color-text);margin:0;white-space:pre-line}.character-modal-markdown{font-size:var(--font-size-md);line-height:1.5;color:var(--color-text)}.character-modal-markdown p{margin:0 0 .5rem}.character-modal-markdown p:last-child{margin-bottom:0}.character-modal-locations{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}.character-modal-link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;font-size:var(--font-size-md)}.character-modal-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.character-modal-interactions{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.character-modal-interaction{display:flex;flex-direction:column;gap:.2rem}.character-modal-interaction-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem}.character-modal-interaction-date{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.character-modal-interaction-location{font-size:var(--font-size-sm);color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;padding-left:.4rem;border-left:1px solid var(--color-border)}.character-modal-interaction-location:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.character-modal-image-panel--edit{padding:1rem;display:flex;flex-direction:column;gap:.75rem;align-items:stretch;justify-content:flex-start}.character-modal-image-panel--edit .image-upload-preview img{object-fit:contain;background:var(--color-surface)}.character-modal-generate{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.character-modal-gen-error{color:var(--color-red-text);font-size:var(--font-size-sm);margin:0}.character-modal-form-error{color:var(--color-red-text);font-size:var(--font-size-md);margin:0 0 .75rem}.character-modal-field{margin-bottom:.75rem}.character-modal-field .character-modal-label{display:block;margin-bottom:.3rem}.character-modal-input{width:100%;padding:.5rem .65rem;font-size:var(--font-size-md);font-family:inherit;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color var(--transition-fast)}.character-modal-input:focus{border-color:var(--color-accent)}.character-modal-input::placeholder{color:var(--color-text-muted)}.character-modal-textarea{resize:vertical;min-height:3rem}.character-modal-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23b8a898' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.character-modal-actions{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--color-border)}@media(max-width:900px){.character-modal{max-width:640px}.character-modal-image-panel{width:220px}}.character-modal-edit-links{list-style:none;padding:0;margin:0 0 .5rem;display:flex;flex-direction:column;gap:.3rem}.character-modal-edit-link-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-md)}.character-modal-edit-link-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-modal-edit-link-actions{display:flex;gap:.2rem;flex-shrink:0}.character-modal-edit-link-move,.character-modal-edit-link-remove{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.15rem .3rem;font-size:var(--font-size-md);border-radius:var(--radius-xs);min-width:28px;min-height:28px;display:flex;align-items:center;justify-content:center}.character-modal-edit-link-move:hover{color:var(--color-accent);background:var(--color-overlay-light)}.character-modal-edit-link-remove:hover{color:var(--color-red-text);background:var(--color-overlay-light)}.character-modal-edit-link-move:disabled{opacity:.3;cursor:default}.character-modal-edit-link-move:focus-visible,.character-modal-edit-link-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.character-modal-edit-link-add{display:flex;gap:.4rem;align-items:center}.character-modal-edit-link-add select{flex:1}@media(max-width:640px){.character-modal{max-height:90vh;max-width:100%}.character-modal-layout{flex-direction:column;max-height:90vh}.character-modal-image-panel{width:100%;max-height:200px}.character-modal-image-panel--edit{max-height:none;padding:.75rem}.character-modal-image{max-height:200px;object-fit:cover;object-position:top center}.character-modal-content{padding:1rem;max-height:none;overflow-y:auto}}@media(prefers-reduced-motion:reduce){.character-modal-close,.character-modal-edit-btn{transition:none}}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:color-mix(in srgb,var(--color-black) 85%,transparent);display:flex;align-items:center;justify-content:center;padding:2rem;cursor:pointer}.image-lightbox-close{position:absolute;top:1rem;right:1rem;background:color-mix(in srgb,var(--color-black) 50%,transparent);border:none;color:var(--color-white);cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;z-index:1;transition:background .15s}.image-lightbox-close:hover{background:color-mix(in srgb,var(--color-black) 70%,transparent)}.image-lightbox-close:focus-visible{outline:2px solid var(--color-white);outline-offset:2px}.image-lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-md);cursor:zoom-in;transition:transform .2s ease}.image-lightbox-img--zoomed{max-width:none;max-height:none;cursor:zoom-out;transform:scale(1.5)}@media(prefers-reduced-motion:reduce){.image-lightbox-img,.image-lightbox-close{transition:none}}@media(max-width:640px){.image-lightbox-overlay{padding:1rem}.image-lightbox-img--zoomed{transform:scale(1.2)}}.wiki-breadcrumbs{margin-bottom:.75rem}.wiki-breadcrumbs-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.15rem}.wiki-breadcrumbs-item{display:flex;align-items:center;gap:.15rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.wiki-breadcrumbs-link{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.wiki-breadcrumbs-link:hover{color:var(--color-accent)}.wiki-breadcrumbs-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-breadcrumbs-separator{color:var(--color-border);margin:0 .2rem;font-size:var(--font-size-xs)}.wiki-breadcrumbs-item--current{color:var(--color-text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.wiki-map-viewer{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.wiki-map-viewer-canvas{position:relative;width:100%;height:min(78vh,720px);background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}@media(max-width:640px){.wiki-map-viewer-canvas{height:60vh;border-radius:var(--radius-md)}}.wiki-map-viewer-canvas .leaflet-container{width:100%;height:100%;background:var(--color-bg-dark);outline:none}.wiki-map-viewer-canvas .leaflet-container:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-map-viewer-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:var(--font-size-base);pointer-events:none}.wiki-map-viewer-status--error{color:var(--color-red-text);pointer-events:auto;padding:1rem;text-align:center}.wiki-map-pin{display:block;color:var(--color-accent);filter:drop-shadow(0 2px 4px color-mix(in srgb,var(--color-black) 60%,transparent));cursor:pointer;transition:transform var(--transition-fast),color var(--transition-fast)}.wiki-map-pin:hover,.wiki-map-pin:focus{color:var(--color-gold);transform:scale(1.1)}.wiki-map-pin svg{width:32px;height:32px;fill:currentColor;pointer-events:none;margin:6px}.wiki-map-pin--settlement svg{width:28px;height:28px;margin:8px}.wiki-map-pin-dot{fill:var(--color-bg-dark)}.wiki-map-polygon{stroke:var(--color-accent);fill:var(--color-accent);transition:fill-opacity var(--transition-fast)}.wiki-map-polygon:hover{fill-opacity:.4!important;stroke-width:3!important}.wiki-map-feature{transition:stroke-width var(--transition-fast),fill-opacity var(--transition-fast)}.wiki-map-feature--link{cursor:pointer}.wiki-map-feature--link:hover{stroke-width:3.5!important}.leaflet-container path.wiki-map-feature--region.wiki-map-feature--link:hover{fill-opacity:.7!important}.wiki-map-feature-dot{border-radius:var(--radius-full);background:var(--map-label);border:1.5px solid var(--color-bg-dark);box-shadow:0 1px 3px color-mix(in srgb,var(--color-black) 60%,transparent)}.wiki-map-feature-label.leaflet-tooltip{background:transparent;border:none;box-shadow:none;color:var(--map-label);font-family:var(--font-title);font-size:var(--font-size-md);font-weight:600;text-shadow:0 1px 3px color-mix(in srgb,var(--color-black) 90%,transparent),0 0 4px color-mix(in srgb,var(--color-black) 70%,transparent);padding:0;white-space:nowrap;pointer-events:none}.wiki-map-feature-label.leaflet-tooltip:before{display:none}.wiki-map-viewer-index-link--static{color:var(--color-text-muted);cursor:default}.wiki-map-tooltip.leaflet-tooltip{background:var(--color-bg-card);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.25rem .5rem;font-size:var(--font-size-md);font-weight:600;box-shadow:var(--shadow-md);white-space:nowrap}.wiki-map-tooltip.leaflet-tooltip:before{border-top-color:var(--color-border)}.wiki-map-viewer-canvas .leaflet-control-zoom a{background:var(--color-bg-card);color:var(--color-text);border:1px solid var(--color-border)}.wiki-map-viewer-canvas .leaflet-control-zoom a:hover{background:var(--color-surface)}.wiki-map-viewer-index{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;background:var(--color-bg-card)}.wiki-map-viewer-index-heading{margin:0 0 .75rem;font-family:var(--font-title);font-size:var(--font-size-lg);color:var(--color-text)}.wiki-map-viewer-index-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem 1rem}.wiki-map-viewer-index-link{display:flex;flex-direction:column;padding:.4rem .5rem;border-radius:var(--radius-sm);color:var(--color-text);transition:background var(--transition-fast)}.wiki-map-viewer-index-link:hover,.wiki-map-viewer-index-link:focus-visible{background:var(--color-accent-subtle);outline:none}.wiki-map-viewer-index-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:.1rem}.wiki-map-preview{margin:1.5rem 0;padding:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.wiki-map-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:1rem}.wiki-map-preview-label{font-family:var(--font-title);font-size:var(--font-size-base);color:var(--color-text)}.wiki-map-preview-open-link{font-size:var(--font-size-md);color:var(--color-accent);transition:color var(--transition-fast)}.wiki-map-preview-open-link:hover,.wiki-map-preview-open-link:focus-visible{color:var(--color-gold);outline:none}.wiki-map-preview-canvas{position:relative;width:100%;height:360px;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}@media(max-width:640px){.wiki-map-preview-canvas{height:240px}}.wiki-map-preview-canvas .leaflet-container{width:100%;height:100%;background:var(--color-bg-dark)}.wiki-map-preview-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-red-text);padding:.5rem;text-align:center;font-size:var(--font-size-md)}.wiki-page-layout{display:flex;gap:0;width:100%;max-width:calc(1000px + 1rem)}.wiki-page-content{padding:2rem;max-width:800px;width:100%;flex:1;min-width:0}.wiki-page-content--empty{display:flex;align-items:center;justify-content:center;min-height:300px}.wiki-page-placeholder{font-size:var(--font-size-base);color:var(--color-text-muted);text-align:center}.wiki-page-key-image{margin-bottom:1.5rem;border-radius:var(--radius-md);overflow:hidden}.wiki-page-key-image-btn{display:block;width:100%;padding:0;border:none;background:none;cursor:zoom-in;line-height:0}.wiki-page-key-image-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}.wiki-page-key-image img{width:100%;max-height:320px;aspect-ratio:16 / 5;object-fit:cover;display:block}.wiki-page-key-image-actions{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;line-height:normal}.wiki-page-key-image-error{font-size:var(--font-size-sm);color:var(--color-red-text);margin:0}.wiki-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.wiki-page-title{font-family:var(--font-title);font-size:var(--font-size-3xl);font-weight:700;line-height:1.2;margin:0}.wiki-page-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-top:.25rem}.wiki-page-badge{font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:var(--radius-sm)}.wiki-page-badge--private{background:var(--color-muted-subtle);color:var(--color-text-muted)}.wiki-page-badge--overview-only{background:color-mix(in srgb,var(--color-accent) 15%,transparent);color:var(--color-accent)}.wiki-page-badge--subtype{background:color-mix(in srgb,var(--color-white) 8%,transparent);color:var(--color-text-muted)}.wiki-page-badge--episode-log{background:color-mix(in srgb,var(--color-info) 12%,transparent);color:var(--color-info)}.wiki-page-badges{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.25rem}.wiki-page-badges:empty{display:none}.wiki-page-header-text{min-width:0}.wiki-page-subtitle{font-size:var(--font-size-base);color:var(--color-text-muted);margin:.25rem 0 0;font-style:italic}.wiki-page-key-tiles{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.wiki-page-tile{display:flex;flex-direction:column;gap:.2rem;padding:.65rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:120px}.wiki-page-tile-label{font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.wiki-page-tile-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.wiki-page-tile-value--link{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.wiki-page-tile-value--link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-page-section{margin-bottom:1.5rem;scroll-margin-top:calc(60px + 2rem)}.wiki-page-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;border-bottom:1px solid var(--color-border);padding:0 0 .4rem;margin-bottom:.75rem;cursor:pointer;text-align:left}.wiki-page-section-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-page-section-heading{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin:0;color:var(--color-text)}.wiki-page-section-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.wiki-page-section-body--open{grid-template-rows:1fr}.wiki-page-section-body-inner{overflow:hidden}.wiki-page-section-chevron{color:var(--color-text-muted);transition:transform .15s;flex-shrink:0}.wiki-page-section-chevron--open{transform:rotate(180deg)}.wiki-page-body{margin-bottom:1rem}.wiki-page-error{color:var(--color-red-text);font-size:var(--font-size-base);margin-bottom:1rem}.wiki-page-back{color:var(--color-accent);font-size:var(--font-size-md);text-decoration:underline;text-underline-offset:2px}.wiki-page-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-page-sublocations-wrap{display:flex;flex-direction:column;gap:.75rem;position:relative}.wiki-page-sublocations-wrap--has-image{border-radius:var(--radius-lg);overflow:hidden;padding:1rem}.wiki-page-sublocations-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.wiki-page-sublocations-bg img{width:100%;height:100%;object-fit:cover;opacity:.12;filter:blur(2px)}.wiki-page-sublocations-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 0%,var(--color-bg) 100%)}.wiki-page-sublocations-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:.75rem}.wiki-page-sublocations-search{width:100%;padding:.45rem .65rem;font-size:var(--font-size-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;min-height:44px;transition:border-color var(--transition-fast)}.wiki-page-sublocations-search:focus{border-color:var(--color-accent)}.wiki-page-sublocations-search::placeholder{color:var(--color-text-muted)}.wiki-page-sublocations-empty{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic;margin:0}.wiki-page-sublocations{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.wiki-page-sublocation{padding:.65rem .8rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.wiki-page-sublocation-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-text)}.wiki-page-sublocation-link:hover .wiki-page-sublocation-title{color:var(--color-accent)}.wiki-page-sublocation-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-page-sublocation-title{font-weight:600;font-size:var(--font-size-base);transition:color .15s}.wiki-page-sublocation-type{font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-white) 6%,transparent);padding:.1rem .35rem;border-radius:var(--radius-xs)}.wiki-page-sublocation-excerpt{margin:.3rem 0 0;font-size:var(--font-size-md);color:var(--color-text-muted);line-height:1.5}.wiki-page-sublocation .wiki-page-sublocations{margin-top:.5rem;padding-left:.75rem;border-left:2px solid var(--color-border)}.wiki-page-toc-mobile{margin-bottom:1rem}.wiki-page-toc-mobile-toggle{display:flex;align-items:center;gap:.4rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem .75rem;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer;width:100%;text-align:left;min-height:44px;transition:border-color var(--transition-fast),color var(--transition-fast)}.wiki-page-toc-mobile-toggle:hover{border-color:var(--color-text-muted);color:var(--color-text)}.wiki-page-toc-mobile-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-page-toc-mobile-chevron{margin-left:auto;transition:transform .15s;flex-shrink:0}.wiki-page-toc-mobile-chevron--open{transform:rotate(180deg)}.wiki-page-toc-mobile-list{list-style:none;padding:.4rem 0;margin:.4rem 0 0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.wiki-page-toc-mobile-list .wiki-page-toc-link{padding:.35rem .75rem}.wiki-page-toc-mobile-list .wiki-page-toc-item--sub .wiki-page-toc-link{padding-left:1.5rem}@media(min-width:1200px){.wiki-page-toc-mobile{display:none}}.wiki-page-toc{display:none}@media(min-width:1200px){.wiki-page-toc{display:block;width:200px;flex-shrink:0;padding:2rem 1rem 2rem 0;position:sticky;top:calc(60px + 2rem);max-height:calc(100vh - 80px - 4rem);overflow-y:auto;align-self:flex-start}}.wiki-page-toc-title{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);display:block;margin-bottom:.5rem}.wiki-page-toc-list{list-style:none;padding:0;margin:0;border-left:2px solid var(--color-border)}.wiki-page-toc-item{padding-left:.75rem}.wiki-page-toc-item--sub{padding-left:1.5rem}.wiki-page-toc-link{display:block;padding:.2rem 0;font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;line-height:1.4;transition:color .15s}.wiki-page-toc-link:hover{color:var(--color-accent)}.wiki-page-toc-link--active{color:var(--color-accent);font-weight:600}.wiki-page-toc-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.wiki-page-skeleton{display:flex;flex-direction:column;gap:.75rem}.wiki-page-skeleton-title{height:2rem;width:50%;background:var(--color-surface);border-radius:var(--radius-sm);animation:wiki-page-pulse 1.5s ease-in-out infinite}.wiki-page-skeleton-line{height:1rem;width:100%;background:var(--color-surface);border-radius:var(--radius-sm);animation:wiki-page-pulse 1.5s ease-in-out infinite}.wiki-page-skeleton-line--medium{width:80%}.wiki-page-skeleton-line--short{width:55%}@keyframes wiki-page-pulse{0%,to{opacity:.4}50%{opacity:.8}}@media(prefers-reduced-motion:reduce){.wiki-page-skeleton-title,.wiki-page-skeleton-line{animation:none;opacity:.6}.wiki-page-section-chevron,.wiki-page-section-body,.wiki-page-sublocation-title,.wiki-page-toc-link,.wiki-page-toc-mobile-toggle,.wiki-page-toc-mobile-chevron{transition:none}}@media(max-width:900px){.wiki-page-content{padding:1.5rem}.wiki-page-title{font-size:var(--font-size-2xl)}.wiki-page-key-image img{max-height:240px;aspect-ratio:16 / 5}}@media(max-width:640px){.wiki-page-content{padding:1rem}.wiki-page-title{font-size:var(--font-size-xl)}.wiki-page-header{flex-direction:column;gap:.5rem}.wiki-page-actions{width:100%;justify-content:flex-start}.wiki-page-key-tiles{flex-direction:column;gap:.5rem}.wiki-page-key-image img{max-height:180px;aspect-ratio:16 / 5}}.wiki-page-map-actions{display:flex;justify-content:flex-end;margin-top:.75rem}.eorthwyn-calendar{padding:2rem;max-width:1000px}.eorthwyn-calendar-loading{color:var(--color-text-muted);font-size:var(--font-size-base);padding:2rem 0}.eorthwyn-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.eorthwyn-calendar-nav{display:flex;align-items:center;gap:.75rem}.eorthwyn-calendar-nav-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:.35rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;transition:color .15s,border-color .15s}.eorthwyn-calendar-nav-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.eorthwyn-calendar-nav-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.eorthwyn-calendar-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0;white-space:nowrap}.eorthwyn-calendar-deep-year{font-size:var(--font-size-xs);font-weight:400;color:var(--color-text-muted)}.eorthwyn-calendar-controls{display:flex;align-items:center;gap:.75rem}.eorthwyn-calendar-select{background:var(--color-surface);border:1px solid var(--color-field-border);color:var(--color-text);font-size:var(--font-size-md);padding:.35rem .5rem;border-radius:var(--radius-sm);min-height:32px}.eorthwyn-calendar-select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.eorthwyn-calendar-grid{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.eorthwyn-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.eorthwyn-calendar-weekday{padding:.5rem;text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.eorthwyn-calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.eorthwyn-calendar-day{min-height:80px;min-width:0;overflow:hidden;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-bg-card);transition:background .1s}.eorthwyn-calendar-day:nth-child(7n){border-right:none}.eorthwyn-calendar-day--has-events{background:color-mix(in srgb,var(--color-accent) 4%,transparent)}.eorthwyn-calendar-day--today{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.eorthwyn-calendar-day>.eorthwyn-calendar-day-number{padding:.35rem}.eorthwyn-calendar-day--today .eorthwyn-calendar-day-number{color:var(--color-accent)}.eorthwyn-calendar-day-number{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);display:flex;align-items:center;justify-content:space-between;gap:.25rem}.eorthwyn-calendar-day-btn{display:flex;flex-direction:column;gap:.2rem;width:100%;height:100%;min-height:inherit;padding:.35rem;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background .1s}.eorthwyn-calendar-day-btn:hover{background:var(--color-overlay-light)}.eorthwyn-calendar-day-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.eorthwyn-calendar-day-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .2rem;border-radius:999px;background:var(--color-accent);color:var(--color-bg);font-size:var(--font-size-2xs);font-weight:700;line-height:1}.eorthwyn-calendar-day-locations{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.1rem;min-width:0}.eorthwyn-calendar-day-location{font-size:var(--font-size-2xs);line-height:1.3;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eorthwyn-calendar-day-location--more{color:var(--color-text-muted);font-style:italic}.eorthwyn-calendar-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.eorthwyn-calendar-set-date{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.eorthwyn-calendar-set-date-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);white-space:nowrap}.eorthwyn-calendar-set-date-status{font-size:var(--font-size-sm);color:var(--color-text-muted)}.eorthwyn-calendar-set-date-status--saved{color:var(--color-success)}.eorthwyn-calendar-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:color-mix(in srgb,var(--color-black) 60%,transparent)}.eorthwyn-calendar-modal{width:100%;max-width:540px;max-height:85vh;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg, var(--radius-md));box-shadow:0 12px 40px color-mix(in srgb,var(--color-black) 40%,transparent);overflow:hidden}.eorthwyn-calendar-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.eorthwyn-calendar-modal-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0}.eorthwyn-calendar-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;flex-shrink:0}.eorthwyn-calendar-modal-close:hover{color:var(--color-text);background:var(--color-overlay-light)}.eorthwyn-calendar-modal-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.eorthwyn-calendar-modal-body{padding:1rem 1.25rem 1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.eorthwyn-calendar-modal-group{display:flex;flex-direction:column;gap:.5rem}.eorthwyn-calendar-modal-location{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;margin:0;padding-bottom:.3rem;border-bottom:1px solid var(--color-border)}.eorthwyn-calendar-modal-location a{color:var(--color-accent);text-decoration:none}.eorthwyn-calendar-modal-location a:hover{text-decoration:underline}.eorthwyn-calendar-modal-events{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.eorthwyn-calendar-modal-event{display:flex;flex-direction:column;gap:.2rem}.eorthwyn-calendar-modal-episode{font-size:var(--font-size-md);font-weight:600;color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.eorthwyn-calendar-modal-episode:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-xs)}.eorthwyn-calendar-modal-campaign{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}@media(prefers-reduced-motion:reduce){.eorthwyn-calendar-nav-btn,.eorthwyn-calendar-day,.eorthwyn-calendar-day-btn{transition:none}}@media(max-width:900px){.eorthwyn-calendar{padding:1.5rem}.eorthwyn-calendar-title{font-size:var(--font-size-xl)}.eorthwyn-calendar-day{min-height:64px}}@media(max-width:640px){.eorthwyn-calendar{padding:1rem}.eorthwyn-calendar-header{flex-direction:column;align-items:flex-start}.eorthwyn-calendar-title{font-size:var(--font-size-lg)}.eorthwyn-calendar-day{min-height:52px}.eorthwyn-calendar-day-btn,.eorthwyn-calendar-day>.eorthwyn-calendar-day-number{padding:.25rem}.eorthwyn-calendar-day-number{font-size:var(--font-size-2xs)}.eorthwyn-calendar-day-locations{display:none}}.wiki-characters{width:100%;padding:2rem}.wiki-characters-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.wiki-characters-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin:0}.wiki-characters-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.wiki-characters-search-input{width:100%;padding:.5rem .75rem;font-size:var(--font-size-md);border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);outline:none;min-height:44px;transition:border-color var(--transition-fast)}.wiki-characters-search-input:focus{border-color:var(--color-accent)}.wiki-characters-search-input::placeholder{color:var(--color-text-muted)}.wiki-characters-filters{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:flex-end}.wiki-characters-filter-group{display:flex;flex-direction:column;gap:.3rem}.wiki-characters-filter-label{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.wiki-characters-filter-btns{display:flex;gap:.3rem}.wiki-characters-filter-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm);padding:.35rem .65rem;min-height:36px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.wiki-characters-filter-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.wiki-characters-filter-btn--active{background:var(--color-accent-subtle);border-color:var(--color-accent);color:var(--color-accent);font-weight:600}.wiki-characters-filter-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.location-tree-picker{position:relative}.location-tree-picker-toggle{display:flex;align-items:center;gap:.4rem;padding:.4rem .65rem;font-size:var(--font-size-md);font-family:inherit;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);min-height:36px;min-width:180px;cursor:pointer;text-align:left;transition:border-color var(--transition-fast)}.location-tree-picker-toggle:hover,.location-tree-picker-toggle:focus-visible{border-color:var(--color-accent)}.location-tree-picker-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.location-tree-picker-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-tree-picker-chevron{flex-shrink:0;color:var(--color-text-muted);transition:transform var(--transition-fast)}.location-tree-picker-chevron--open{transform:rotate(180deg)}.location-tree-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:100%;max-width:320px;max-height:320px;overflow-y:auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 16px color-mix(in srgb,var(--color-black) 30%,transparent);padding:.3rem 0;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.location-tree-picker-row{display:flex;align-items:center;padding-left:calc(var(--depth, 0) * 1rem + .25rem)}.location-tree-picker-expand{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-xs);transition:transform var(--transition-fast)}.location-tree-picker-expand--open{transform:rotate(90deg)}.location-tree-picker-expand:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.location-tree-picker-option{display:block;width:100%;text-align:left;background:none;border:none;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text);padding:.35rem .65rem;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:var(--radius-xs);transition:background var(--transition-fast)}.location-tree-picker-option:hover{background:var(--color-overlay-light)}.location-tree-picker-option--active{color:var(--color-accent);font-weight:600;background:var(--color-accent-subtle)}.location-tree-picker-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.wiki-characters-loading{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic}.wiki-characters-empty{font-size:var(--font-size-base);color:var(--color-text-muted);text-align:center;padding:3rem 1rem}.wiki-characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.wiki-character-card{display:flex;flex-direction:column;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;text-align:left;padding:0;font-family:inherit;color:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.wiki-character-card:hover{border-color:var(--color-accent);box-shadow:0 2px 12px color-mix(in srgb,var(--color-accent) 8%,transparent)}.wiki-character-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-character-card-image{width:100%;aspect-ratio:1;object-fit:cover;object-position:top center;display:block;background:var(--color-surface)}.wiki-character-card-placeholder{width:100%;aspect-ratio:1;background:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-muted)}.wiki-character-card-body{display:flex;flex-direction:column;gap:.2rem;padding:.75rem;flex:1}.wiki-character-card-name{font-weight:700;font-size:var(--font-size-base);color:var(--color-text);line-height:1.3}.wiki-character-card-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;line-height:1.3}.wiki-character-card-dead{display:inline-block;align-self:flex-start;font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .4rem;border-radius:var(--radius-xs);color:var(--color-red-text);background:var(--color-red-subtle);margin-top:.1rem}.wiki-character-card-org,.wiki-character-card-location{display:flex;align-items:center;gap:.3rem;font-size:var(--font-size-xs);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem}.wiki-character-card-org{color:var(--color-accent);font-weight:600}.wiki-character-card-location{color:var(--color-text-muted)}.wiki-character-card-icon{flex-shrink:0;opacity:.7}.wiki-character-card-updated{font-size:var(--font-size-2xs);color:var(--color-text-muted);margin-top:auto;padding-top:.25rem;opacity:.7}.character-editor-form{display:flex;flex-direction:column;gap:.75rem;max-width:600px}.character-editor-textarea{resize:vertical;font-family:inherit}.character-editor-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23b8a898' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.character-editor-actions{display:flex;gap:.5rem;margin-top:.5rem}@media(max-width:900px){.wiki-characters{padding:1.5rem}.wiki-characters-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.wiki-characters-filter-btn{min-height:44px}}@media(max-width:640px){.wiki-characters{padding:1rem}.wiki-characters-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.wiki-characters-filters{flex-direction:column;gap:.75rem}.location-tree-picker-toggle{width:100%;min-width:0}.character-editor-form{max-width:none}}@media(prefers-reduced-motion:reduce){.wiki-character-card,.wiki-characters-filter-btn,.wiki-characters-search-input,.location-tree-picker-toggle,.location-tree-picker-chevron,.location-tree-picker-expand,.location-tree-picker-option{transition:none}}.wiki-trash{padding:2rem;max-width:800px}.wiki-trash-header{margin-bottom:1.5rem}.wiki-trash-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0 0 .25rem}.wiki-trash-subtitle{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0}.wiki-trash-loading,.wiki-trash-empty{color:var(--color-text-muted);font-size:var(--font-size-base);padding:2rem 0}.wiki-trash-error{font-size:var(--font-size-md);color:var(--color-red-text);margin-bottom:1rem}.wiki-trash-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.wiki-trash-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card)}.wiki-trash-item-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.wiki-trash-item-title{font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-trash-item-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-size:var(--font-size-xs);color:var(--color-text-muted)}.wiki-trash-item-type{text-transform:uppercase;letter-spacing:.04em;font-weight:600}.wiki-trash-item-sep{opacity:.5}.wiki-trash-item-remaining--soon{color:var(--color-accent);font-weight:600}.wiki-trash-item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.wiki-trash-delete-btn{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;padding:.4rem .5rem;border-radius:var(--radius-sm);min-height:44px}.wiki-trash-delete-btn:hover:not(:disabled){color:var(--color-red-text)}.wiki-trash-delete-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-trash-delete-btn:disabled{opacity:.5;cursor:default}@media(max-width:640px){.wiki-trash{padding:1rem}.wiki-trash-item{flex-direction:column;align-items:flex-start}.wiki-trash-item-actions{align-self:flex-end}}.field-diff{padding:.625rem 0;border-top:1px solid var(--color-border)}.field-diff--rejected{opacity:.5}.field-diff-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.375rem}.field-diff-accept{display:flex;align-items:center;gap:.5rem;cursor:pointer}.field-diff-accept input{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.field-diff-name{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.field-diff-actions{display:flex;align-items:center;gap:.25rem}.field-diff-edit{font-size:var(--font-size-xs);color:var(--color-accent);background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px}.field-diff-edit:hover{background:var(--color-overlay-light)}.field-diff-edit:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.field-diff-body{font-size:var(--font-size-sm);line-height:1.55;color:var(--color-text);white-space:pre-wrap;word-break:break-word}.field-diff-scalar{font-size:var(--font-size-sm);margin:0;color:var(--color-text)}.field-diff-arrow{color:var(--color-text-muted)}.field-diff-add{background:var(--color-success-subtle);color:var(--color-success);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}.field-diff-del{background:var(--color-red-subtle);color:var(--color-red-text);text-decoration:line-through}.field-diff-input,.field-diff-textarea{width:100%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-field-border);border-radius:6px;padding:.5rem .625rem;font-size:var(--font-size-sm);font-family:inherit;line-height:1.5}.field-diff-textarea{resize:vertical;min-height:4.5rem}.field-diff-input:focus,.field-diff-textarea:focus{outline:none;border-color:var(--color-accent)}.op-card{border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);padding:.875rem 1rem;margin-bottom:.875rem}.op-card--rejected{opacity:.6}.op-card--applied{border-color:var(--color-success)}.op-card--failed{border-color:var(--color-red)}.op-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.op-card-accept{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer}.op-card-accept input{width:16px;height:16px;margin-top:.15rem;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.op-card-title{font-size:var(--font-size-md);color:var(--color-text);line-height:1.4}.op-card-title strong{color:var(--color-gold)}.op-card-head-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.op-card-apply{font-size:var(--font-size-xs);font-weight:600;color:var(--color-accent);background:none;border:1px solid var(--color-accent-border);border-radius:6px;padding:.2rem .6rem;cursor:pointer;white-space:nowrap}.op-card-apply:hover:not(:disabled){background:var(--color-accent-subtle)}.op-card-apply:disabled{opacity:.4;cursor:not-allowed}.op-card-apply:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.op-card-parent{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:.375rem 0 0}.op-card-parent strong{color:var(--color-text)}.op-card-status{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .4rem;border-radius:999px;white-space:nowrap;flex-shrink:0}.op-card-status--applying{background:var(--color-gold-subtle);color:var(--color-gold)}.op-card-status--applied{background:var(--color-success-subtle);color:var(--color-success)}.op-card-status--failed{background:var(--color-red-subtle);color:var(--color-red-text)}.op-card-rationale{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;margin:.5rem 0 0;line-height:1.45}.op-card-fields{margin-top:.25rem}.op-card-refs{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:.5rem 0 0}.op-card-revise{margin-top:.75rem}.op-card-revise-scope{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--font-size-2xs);color:var(--color-text-muted);margin-bottom:.375rem}.op-card-revise-scope button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xs);padding:0}.op-card-revise-scope button:hover{color:var(--color-text)}.op-card-revise-row{display:flex;gap:.5rem;align-items:stretch}.op-card-revise-input{flex:1;background:var(--color-bg-card);color:var(--color-text);border:1px solid var(--color-field-border);border-radius:6px;padding:.4rem .625rem;font-size:var(--font-size-sm);font-family:inherit}.op-card-revise-input:focus{outline:none;border-color:var(--color-accent)}.op-card-error{font-size:var(--font-size-xs);color:var(--color-red-text);background:var(--color-red-subtle);padding:.4rem .625rem;border-radius:6px;margin:.625rem 0 0}.proposal-review{display:flex;flex-direction:column;margin-top:.5rem}.proposal-review-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.proposal-review-title{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.proposal-review-bulk{display:flex;gap:.5rem}.proposal-review-bulk button{font-size:var(--font-size-xs);color:var(--color-accent);background:none;border:1px solid var(--color-border);border-radius:6px;padding:.25rem .625rem;cursor:pointer}.proposal-review-bulk button:hover{border-color:var(--color-accent-border);background:var(--color-overlay-light)}.proposal-review-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:.5rem 0}.proposal-review-steer{display:flex;gap:.5rem;margin-top:.25rem}.proposal-review-steer input{flex:1;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-field-border);border-radius:8px;padding:.5rem .75rem;font-size:var(--font-size-sm);font-family:inherit}.proposal-review-steer input:focus{outline:none;border-color:var(--color-accent)}.proposal-review-apply{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.proposal-review-applied{font-size:var(--font-size-sm);color:var(--color-success)}.proposal-review-error{font-size:var(--font-size-sm);color:var(--color-red-text);background:var(--color-red-subtle);padding:.625rem .75rem;border-radius:8px;margin:.625rem 0 0}.wiki-ask-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000;width:52px;height:52px;border-radius:50%;border:1px solid var(--color-accent-border);background:var(--color-surface);color:var(--color-accent);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px color-mix(in srgb,var(--color-black) 40%,transparent);transition:background .2s,transform .2s,box-shadow .2s}.wiki-ask-fab:hover{background:var(--color-surface-mid);transform:scale(1.05);box-shadow:0 6px 20px color-mix(in srgb,var(--color-black) 50%,transparent)}.wiki-ask-fab:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-ask-fab--open{background:var(--color-surface-mid)}.wiki-ask-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:color-mix(in srgb,var(--color-black) 55%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:wiki-ask-fade-in .15s ease-out}.wiki-ask-panel{position:fixed;bottom:5rem;right:1.5rem;z-index:999;width:380px;max-width:calc(100vw - 2rem);max-height:min(560px,calc(100vh - 8rem));border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);display:flex;flex-direction:column;box-shadow:0 8px 32px color-mix(in srgb,var(--color-black) 50%,transparent);animation:wiki-ask-slide-up .2s ease-out}@keyframes wiki-ask-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wiki-ask-panel--expanded{top:2.5rem;bottom:2.5rem;left:50%;right:auto;transform:translate(-50%);width:min(920px,calc(100vw - 3rem));max-width:none;height:auto;max-height:none;z-index:1001;animation:none}.wiki-ask-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.wiki-ask-panel-title{display:flex;align-items:center;gap:.5rem;min-width:0}.wiki-ask-panel-title h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wiki-ask-panel-actions{display:flex;align-items:center;gap:.125rem}.wiki-ask-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;color:var(--color-text-muted);background:none;border:none;border-radius:6px;cursor:pointer;transition:color .15s,background .15s}.wiki-ask-icon-btn:hover{color:var(--color-text);background:var(--color-overlay-light)}.wiki-ask-icon-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-ask-panel-title h2{font-size:var(--font-size-md);font-weight:600;color:var(--color-text);margin:0;line-height:1.2}.wiki-ask-panel-badge{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .375rem;border-radius:4px;background:var(--color-accent-subtle);color:var(--color-accent)}.wiki-ask-clear{font-size:var(--font-size-xs);color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:color .15s,background .15s}.wiki-ask-clear:hover{color:var(--color-text);background:var(--color-overlay-light)}.wiki-ask-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-ask-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.wiki-ask-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;flex:1}.wiki-ask-empty-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin:0 0 .375rem}.wiki-ask-empty-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0;line-height:1.5}.wiki-ask-empty-context{font-size:var(--font-size-xs);color:var(--color-gold);margin:.75rem 0 0}.wiki-ask-suggestions{display:flex;flex-direction:column;gap:.375rem;margin-top:1rem;width:100%}.wiki-ask-suggestion{font-size:var(--font-size-sm);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:.5rem .75rem;cursor:pointer;text-align:left;line-height:1.4;transition:background .15s,border-color .15s}.wiki-ask-suggestion:hover{background:var(--color-surface-mid);border-color:var(--color-accent-border)}.wiki-ask-suggestion:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-ask-msg{max-width:92%;animation:wiki-ask-fade-in .15s ease-out}@keyframes wiki-ask-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.wiki-ask-msg--user{align-self:flex-end}.wiki-ask-msg--assistant{align-self:flex-start}.wiki-ask-msg--proposal{max-width:100%;width:100%;align-self:stretch}.wiki-ask-msg--user .wiki-ask-msg-content{background:var(--color-accent-subtle);color:var(--color-text);border-radius:12px 12px 2px;padding:.625rem .875rem;font-size:var(--font-size-sm);line-height:1.55;white-space:pre-wrap}.wiki-ask-msg--assistant .wiki-ask-msg-content{background:var(--color-surface);color:var(--color-text);border-radius:12px 12px 12px 2px;padding:.625rem .875rem;font-size:var(--font-size-sm);line-height:1.55}.wiki-ask-msg--assistant .wiki-ask-md-p{margin:0 0 .5em}.wiki-ask-msg--assistant .wiki-ask-md-p:last-child{margin-bottom:0}.wiki-ask-msg--assistant ul,.wiki-ask-msg--assistant ol{margin:.375em 0;padding-left:1.25em}.wiki-ask-msg--assistant li{margin-bottom:.25em}.wiki-ask-msg--assistant strong{color:var(--color-gold);font-weight:600}.wiki-ask-msg--assistant code{font-size:var(--font-size-xs);background:var(--color-overlay-light);padding:.1em .35em;border-radius:3px}.wiki-ask-msg--assistant h1,.wiki-ask-msg--assistant h2,.wiki-ask-msg--assistant h3{font-size:var(--font-size-md);font-weight:600;margin:.75em 0 .25em}.wiki-ask-msg--assistant h1:first-child,.wiki-ask-msg--assistant h2:first-child,.wiki-ask-msg--assistant h3:first-child{margin-top:0}.wiki-ask-link{color:var(--color-accent);text-decoration:underline;text-decoration-color:var(--color-accent-border);text-underline-offset:2px;transition:color .15s}.wiki-ask-link:hover{color:var(--color-accent-hover)}.wiki-ask-sources{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin-top:.5rem;padding-left:.25rem}.wiki-ask-sources-label{font-size:var(--font-size-2xs);color:var(--color-text-muted);font-weight:500}.wiki-ask-source-chip{font-size:var(--font-size-2xs);color:var(--color-gold);background:var(--color-gold-subtle);padding:.125rem .5rem;border-radius:999px;text-decoration:none;transition:background .15s;white-space:nowrap}.wiki-ask-source-chip:hover{background:var(--color-gold-light)}.wiki-ask-source-chip--character{color:var(--color-purple);background:color-mix(in srgb,var(--color-purple) 10%,transparent)}.wiki-ask-source-chip--character:hover{background:color-mix(in srgb,var(--color-purple) 15%,transparent)}.wiki-ask-typing{display:flex;gap:4px;padding:.75rem 1rem!important}.wiki-ask-typing span{width:6px;height:6px;border-radius:50%;background:var(--color-text-muted);animation:wiki-ask-bounce 1.2s infinite}.wiki-ask-typing span:nth-child(2){animation-delay:.15s}.wiki-ask-typing span:nth-child(3){animation-delay:.3s}@keyframes wiki-ask-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.wiki-ask-error{font-size:var(--font-size-sm);color:var(--color-red-text);background:var(--color-red-subtle);padding:.5rem .75rem;border-radius:8px;text-align:center}.wiki-ask-input-area{display:flex;align-items:flex-end;gap:.5rem;padding:.75rem;border-top:1px solid var(--color-field-border);flex-shrink:0}.wiki-ask-input{flex:1;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-field-border);border-radius:8px;padding:.5rem .75rem;font-size:var(--font-size-sm);line-height:1.4;resize:none;min-height:36px;max-height:100px;font-family:inherit;transition:border-color .15s}.wiki-ask-input::placeholder{color:var(--color-text-muted)}.wiki-ask-input:focus{outline:none;border-color:var(--color-accent)}.wiki-ask-send{width:36px;height:36px;flex-shrink:0;border-radius:8px;border:none;background:var(--color-accent);color:var(--color-on-accent);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,opacity .15s}.wiki-ask-send:hover:not(:disabled){background:var(--color-accent-hover)}.wiki-ask-send:disabled{opacity:.4;cursor:not-allowed}.wiki-ask-send:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.wiki-ask-fab{bottom:1rem;right:1rem;width:48px;height:48px}.wiki-ask-panel{bottom:4.5rem;right:.5rem;left:.5rem;width:auto;max-height:calc(100vh - 6rem)}.wiki-ask-panel--expanded{top:0;right:0;bottom:0;left:0;transform:none;width:100%;max-height:100vh;border-radius:0}.wiki-ask-icon-btn{width:40px;height:40px}}.eorthwyn-wiki{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - 80px);padding-top:calc(60px + 1rem);position:relative}.eorthwyn-wiki-sidebar-toggle{display:none}.eorthwyn-wiki-sidebar{min-height:0;overflow-y:auto}.eorthwyn-wiki-content{min-height:0;overflow-y:auto;display:flex;justify-content:center}.wiki-create-heading{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0 0 1.5rem;color:var(--color-text)}@media(max-width:900px){.eorthwyn-wiki{grid-template-columns:220px 1fr;padding-top:calc(56px + 2rem)}}@media(max-width:640px){.eorthwyn-wiki{display:flex;flex-direction:column;padding-top:calc(56px + 2rem)}.eorthwyn-wiki-sidebar-toggle{display:flex;align-items:center;gap:.5rem;background:var(--color-surface);border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);padding:.75rem 1rem;font-size:var(--font-size-md);font-weight:600;cursor:pointer;width:100%;min-height:44px}.eorthwyn-wiki-sidebar-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.eorthwyn-wiki-sidebar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease;overflow:hidden}.eorthwyn-wiki-sidebar>*{overflow:hidden}.eorthwyn-wiki-sidebar--open{grid-template-rows:1fr}.eorthwyn-wiki-content{flex:1;display:flex;justify-content:center}}@media(prefers-reduced-motion:reduce){.eorthwyn-wiki-sidebar{transition:none}}.member-marketing{border:none;padding:0;margin:0 0 1.5rem}.member-marketing .form-label{display:block;margin-bottom:.75rem}.member-marketing-list{display:grid;grid-template-columns:max-content 1fr;gap:.375rem 1rem;margin:0 0 .75rem;font-size:var(--font-size-md)}.member-marketing-list dt{color:var(--color-text-muted)}.member-marketing-list dd{margin:0;color:var(--color-text)}.member-marketing-muted{color:var(--color-text-muted)}.member-marketing-toggle{display:flex;align-items:center;gap:.5rem;min-height:44px;cursor:pointer;font-size:var(--font-size-md)}.member-marketing-toggle input{width:18px;height:18px;accent-color:var(--color-accent)}.inbox-connection{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.875rem 1rem;margin-bottom:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);font-size:var(--font-size-sm);color:var(--color-text-muted)}.inbox-connection--warn{border-color:var(--color-accent-border);background:var(--color-accent-subtle);color:var(--color-text)}.inbox-connection--warn .inbox-connection-sub{color:var(--color-text-muted)}.inbox-connection-text{flex:1 1 20rem;line-height:1.5}.inbox-connection-text strong{color:var(--color-text)}.inbox-connection-error{color:var(--color-danger)}.inbox-connection-sub{color:var(--color-text-muted)}.inbox-connection-actions{display:flex;flex-wrap:wrap;gap:.5rem}.inbox-connection-full{flex-basis:100%;margin:0}.inbox-layout{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:1.25rem;align-items:start;margin-top:1rem}.inbox-layout-list,.inbox-layout-view{min-width:0}.inbox-back{display:none}@media(max-width:860px){.inbox-layout{grid-template-columns:minmax(0,1fr)}.inbox-layout--open .inbox-layout-list,.inbox-layout:not(.inbox-layout--open) .inbox-layout-view{display:none}.inbox-back{display:inline-flex;margin-bottom:.75rem}}.inbox-empty{margin:0;padding:1.5rem 1rem;color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center}.inbox-pick{border:1px dashed var(--color-border);border-radius:var(--radius-lg)}.inbox-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.inbox-list-item{display:flex;flex-direction:column;gap:.25rem;width:100%;min-height:44px;padding:.75rem .875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.inbox-list-item:hover{border-color:var(--color-accent-border)}.inbox-list-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.inbox-list-item--active{border-color:var(--color-accent);background:var(--color-accent-subtle)}.inbox-list-item--unanswered .inbox-list-subject{font-weight:700}.inbox-list-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.inbox-list-subject{font-size:var(--font-size-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-list-time{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.inbox-list-who{font-size:var(--font-size-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-list-preview{font-size:var(--font-size-xs);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inbox-badges{display:flex;flex-wrap:wrap;gap:.25rem}.inbox-badges:empty{display:none}.inbox-badge{padding:.125rem .5rem;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-2xs);font-weight:600}.inbox-badge--accent{background:var(--color-accent-subtle);color:var(--color-accent)}.inbox-view{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card)}.inbox-view--loading{flex-direction:row;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}.inbox-view-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1rem;align-items:start}.inbox-view-subject{margin:0;overflow-wrap:anywhere}.inbox-view-contact{grid-column:1;margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.inbox-view-actions{grid-column:2;grid-row:1 / span 2}@media(max-width:560px){.inbox-view{padding:1rem}.inbox-view-header{grid-template-columns:minmax(0,1fr)}.inbox-view-actions{grid-column:1;grid-row:auto}}.inbox-messages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.inbox-message{padding:.75rem .875rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg)}.inbox-message--outbound{margin-left:1.5rem;border-color:var(--color-accent-border);background:var(--color-accent-subtle)}.inbox-message--note{border-style:dashed;background:var(--color-gold-subtle);border-color:var(--color-gold)}@media(max-width:560px){.inbox-message--outbound{margin-left:.75rem}}.inbox-message-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;margin-bottom:.375rem;font-size:var(--font-size-xs)}.inbox-message-author{font-weight:600;color:var(--color-text)}.inbox-message-when{color:var(--color-text-muted)}.inbox-message-body{margin:0;font-size:var(--font-size-sm);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--color-text)}.inbox-message-attachments{margin:.5rem 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.inbox-reply,.inbox-note{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.inbox-reply-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem}.inbox-reply-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.inbox-reply-sign{font-size:var(--font-size-xs);color:var(--color-text-muted)}.inbox-draft-note{margin:0;padding:.5rem .75rem;border-left:3px solid var(--color-gold);background:var(--color-gold-subtle);font-size:var(--font-size-xs);color:var(--color-text)}.inbox-textarea,.inbox-input{width:100%;padding:.625rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--font-size-sm);line-height:1.5}.inbox-input{min-height:44px}.inbox-textarea{resize:vertical;min-height:10rem}.inbox-textarea:focus-visible,.inbox-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.inbox-reply-actions{display:flex;flex-wrap:wrap;gap:.5rem}.inbox-redraft{display:flex;flex-direction:column;gap:.375rem;margin-top:.5rem}.inbox-redraft-row{display:flex;gap:.5rem}.inbox-redraft-row .inbox-input{flex:1;min-width:0}.inbox-redraft-row .btn{flex-shrink:0}@media(max-width:560px){.inbox-redraft-row{flex-direction:column}}.inbox-notice{margin:0;font-size:var(--font-size-sm);color:var(--color-success)}.member-email-panel{display:flex;flex-direction:column;gap:.75rem;align-items:stretch}.member-email-panel>.btn{align-self:flex-start}.edit-member-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:editMemberFadeIn .2s ease}@keyframes editMemberFadeIn{0%{opacity:0}to{opacity:1}}.edit-member-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;animation:editMemberSlideIn .2s ease}@keyframes editMemberSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.edit-member-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:.25rem}.edit-member-subtitle{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:1rem}.edit-member-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:1.5rem}.edit-member-tab{padding:.625rem 1.25rem;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .2s,border-color .2s;min-height:44px}.edit-member-tab:hover{color:var(--color-text)}.edit-member-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.edit-member-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:var(--radius-sm)}.edit-member-form{display:flex;flex-direction:column;gap:1.25rem}.edit-member-roles{border:none;padding:0;margin:0}.edit-member-roles .form-label{display:block;margin-bottom:.5rem}.edit-member-roles-list{display:flex;flex-wrap:wrap;gap:.75rem}.edit-member-role-item{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:var(--font-size-md);color:var(--color-text)}.edit-member-role-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.edit-member-no-roles{color:var(--color-text-muted);font-size:var(--font-size-md)}.edit-member-vetted{border:none;padding:0;margin:0}.edit-member-vetted .form-label{display:block;margin-bottom:.5rem}.edit-member-vetted-item{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:var(--font-size-md);color:var(--color-text);min-height:44px}.edit-member-vetted-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.edit-member-vetted-hint{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:.375rem}.edit-member-sessions-played{display:flex;align-items:baseline;gap:.5rem}.edit-member-sessions-played .form-label{margin-bottom:0}.edit-member-sessions-played-value{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent)}.edit-member-credits{border:none;padding:0;margin:0}.edit-member-credits .form-label{display:block;margin-bottom:.5rem}.edit-member-credits-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.edit-member-credits-grid{display:flex;flex-direction:column;gap:.5rem}.edit-member-credit-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.edit-member-credit-label{font-size:var(--font-size-md);color:var(--color-text);flex:1}.edit-member-credit-input{width:72px;text-align:center;padding:.375rem .5rem;font-variant-numeric:tabular-nums;flex-shrink:0}.edit-member-credit-input::-webkit-inner-spin-button,.edit-member-credit-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-member-credit-input[type=number]{-moz-appearance:textfield}.edit-member-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.edit-member-actions .btn:disabled{opacity:.5;cursor:not-allowed}.edit-member-impersonate-btn{color:var(--color-gold);border-color:var(--color-gold)}.edit-member-impersonate-btn:hover{background:var(--color-gold);color:var(--color-text-dark)}.edit-member-delete-btn{margin-left:auto;color:var(--color-red-text);border-color:var(--color-red)}.edit-member-delete-btn:hover{background:var(--color-red);color:var(--color-white)}.edit-member-delete-warning{color:var(--color-red-text);font-size:var(--font-size-md);margin-top:-.5rem}.edit-member-notif-panel{display:flex;flex-direction:column;gap:1.5rem}.edit-member-notif-panel[hidden]{display:none}.edit-member-notif-prefs{border:none;padding:0;margin:0}.edit-member-notif-prefs .form-label{display:block;margin-bottom:.75rem}.edit-member-prefs-table{width:100%;border-collapse:collapse}.edit-member-prefs-th{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-muted);text-align:center;padding:0 0 .75rem;white-space:nowrap}.edit-member-prefs-th--type{text-align:left}.edit-member-prefs-row{border-top:1px solid var(--color-border)}.edit-member-prefs-cell{padding:.75rem 0;vertical-align:top}.edit-member-prefs-cell--label{display:flex;flex-direction:column;gap:.15rem;padding-right:1rem}.edit-member-prefs-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.edit-member-prefs-desc{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.edit-member-prefs-cell--toggle{text-align:center;vertical-align:middle;width:64px}.edit-member-notif-panel .notif-toggle{position:relative;display:inline-flex;align-items:center;width:44px;height:24px;border-radius:var(--radius-xl);background:var(--color-border);border:none;cursor:pointer;padding:2px;transition:background .2s;flex-shrink:0}.edit-member-notif-panel .notif-toggle--on{background:var(--color-accent)}.edit-member-notif-panel .notif-toggle-knob{display:block;width:20px;height:20px;border-radius:var(--radius-full);background:var(--color-text);transition:transform .2s;transform:translate(0)}.edit-member-notif-panel .notif-toggle--on .notif-toggle-knob{transform:translate(20px)}.edit-member-notif-panel .notif-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.edit-member-notif-panel .notif-toggle:disabled{opacity:.5;cursor:not-allowed}.edit-member-notifications{border:none;padding:0;margin:0}.edit-member-notifications .form-label{display:block;margin-bottom:.5rem}.edit-member-notifications-loading,.edit-member-notifications-empty{color:var(--color-text-muted);font-size:var(--font-size-md)}.edit-member-notifications-list{display:flex;flex-direction:column;gap:.25rem;max-height:240px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem}.edit-member-notification-row{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.375rem .5rem;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.edit-member-notification-row:last-child{border-bottom:none}.edit-member-notification-type{color:var(--color-accent);font-weight:600;white-space:nowrap;flex-shrink:0;min-width:120px}.edit-member-notification-subject{color:var(--color-text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-member-notification-date{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:var(--font-size-xs)}.edit-member-gm-panel{display:flex;flex-direction:column;gap:1.5rem}.edit-member-gm-panel[hidden]{display:none}.edit-member-gm-section{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.edit-member-gm-section .form-label{display:block;margin-bottom:.25rem}.edit-member-gm-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;line-height:1.4}.edit-member-gm-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.edit-member-gm-panel .gm-avail-chip{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-2xs);font-weight:600}.edit-member-gm-panel .gm-avail-chip--available{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted)}.edit-member-gm-panel .gm-avail-chip--blocked{background:var(--color-danger-light);color:var(--color-red-text)}.edit-member-gm-panel .gm-avail-chip--priority{background:var(--color-orange-light);color:var(--color-gold)}.edit-member-gm-panel .gm-avail-grid{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.edit-member-gm-panel .gm-avail-row{display:grid;grid-template-columns:60px repeat(7,1fr)}.edit-member-gm-panel .gm-avail-row+.gm-avail-row{border-top:1px solid var(--color-border)}.edit-member-gm-panel .gm-avail-row--header{background:var(--color-surface)}.edit-member-gm-panel .gm-avail-cell{display:flex;align-items:center;justify-content:center;min-height:48px;text-align:center}.edit-member-gm-panel .gm-avail-cell+.gm-avail-cell{border-left:1px solid var(--color-border)}.edit-member-gm-panel .gm-avail-cell--corner{background:var(--color-surface)}.edit-member-gm-panel .gm-avail-cell--day{font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:.5rem 0}.edit-member-gm-panel .gm-avail-cell--time{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);background:var(--color-surface);padding:0 .25rem}.edit-member-gm-panel .gm-avail-cell--slot{padding:0}.edit-member-gm-panel .gm-avail-cell--blocked{background:var(--color-danger-subtle)}.edit-member-gm-panel .gm-avail-cell--priority{background:var(--color-orange-subtle)}.edit-member-gm-panel .gm-avail-btn{width:100%;height:100%;min-height:48px;border:none;background:transparent;cursor:pointer;font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);transition:background .12s,color .12s}.edit-member-gm-panel .gm-avail-btn:hover{background:var(--color-surface-mid)}.edit-member-gm-panel .gm-avail-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.edit-member-gm-panel .gm-avail-cell--blocked .gm-avail-btn{color:var(--color-red-text)}.edit-member-gm-panel .gm-avail-cell--blocked .gm-avail-btn:hover{background:var(--color-danger-hover)}.edit-member-gm-panel .gm-avail-cell--priority .gm-avail-btn{color:var(--color-gold)}.edit-member-gm-panel .gm-avail-cell--priority .gm-avail-btn:hover{background:var(--color-orange-hover)}.edit-member-gm-panel .gm-max-sessions-toggle{display:flex;align-items:center;gap:.75rem}.edit-member-gm-panel .gm-max-sessions-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.edit-member-gm-panel .gm-max-sessions-switch input{opacity:0;width:0;height:0}.edit-member-gm-panel .gm-max-sessions-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);transition:background .2s,border-color .2s}.edit-member-gm-panel .gm-max-sessions-slider:before{content:"";position:absolute;height:18px;width:18px;left:2px;bottom:2px;background:var(--color-text-muted);border-radius:var(--radius-full);transition:transform .2s,background .2s}.edit-member-gm-panel .gm-max-sessions-switch input:checked+.gm-max-sessions-slider{background:var(--color-orange-hover);border-color:var(--color-gold)}.edit-member-gm-panel .gm-max-sessions-switch input:checked+.gm-max-sessions-slider:before{transform:translate(20px);background:var(--color-gold)}.edit-member-gm-panel .gm-max-sessions-switch input:focus-visible+.gm-max-sessions-slider{outline:2px solid var(--color-accent);outline-offset:2px}.edit-member-gm-panel .gm-max-sessions-toggle-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted)}.edit-member-gm-panel .gm-max-sessions-control{display:flex;flex-direction:column;gap:.5rem}.edit-member-gm-panel .gm-max-sessions-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted)}.edit-member-gm-panel .gm-max-sessions-input{width:80px;padding:.5rem .6rem;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--font-size-md);text-align:center;-moz-appearance:textfield}.edit-member-gm-panel .gm-max-sessions-input::-webkit-outer-spin-button,.edit-member-gm-panel .gm-max-sessions-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-member-gm-panel .gm-max-sessions-input:focus{outline:2px solid var(--color-accent);outline-offset:-1px;border-color:var(--color-accent)}@media(max-width:900px){.edit-member-content{max-width:600px}}@media(max-width:640px){.edit-member-content{padding:1.5rem;max-width:100%;max-height:95vh}.edit-member-tab{padding:.5rem .75rem;font-size:var(--font-size-md)}.edit-member-notification-row{flex-direction:column;align-items:flex-start;gap:.25rem;min-height:44px}.edit-member-notification-type{min-width:unset}.edit-member-notification-subject{white-space:normal}.edit-member-prefs-cell--label{padding-right:.5rem}.edit-member-prefs-desc{display:none}.edit-member-gm-panel .gm-avail-row{grid-template-columns:48px repeat(7,1fr)}.edit-member-gm-panel .gm-avail-cell--day{font-size:var(--font-size-3xs)}.edit-member-gm-panel .gm-avail-cell--time{font-size:var(--font-size-2xs)}.edit-member-gm-panel .gm-avail-btn{font-size:var(--font-size-3xs);min-height:44px}}.data-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.data-inner{max-width:var(--max-width-wide);margin:0 auto}.data-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:0}.data-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.data-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:1.5rem}.data-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:.75rem 1.5rem;font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base),border-color var(--transition-base);min-height:44px}.data-tab:hover{color:var(--color-text)}.data-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.data-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.data-controls{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.data-search-form{display:flex;flex:1 1 320px;min-width:0}.data-search-input{flex:1;padding:.625rem 1rem;border:1px solid var(--color-field-border);border-right:none;border-radius:var(--radius-lg) 0 0 var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);min-height:44px}.data-search-input::placeholder{color:var(--color-text-muted);opacity:.5}.data-search-input:focus{outline:none;border-color:var(--color-accent)}.data-search-btn{padding:.625rem 1.25rem;background:var(--color-accent);color:var(--color-text);border:1px solid var(--color-accent);border-radius:0 var(--radius-lg) var(--radius-lg) 0;font-family:var(--font-body);font-weight:600;font-size:var(--font-size-md);cursor:pointer;transition:background .2s;min-height:44px;white-space:nowrap}.data-search-btn:hover{background:var(--color-accent-hover)}.data-search-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.data-filter{flex-shrink:0}.data-select{padding:.625rem 2rem .625rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;min-height:44px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23b8a898' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.data-select:focus{outline:none;border-color:var(--color-accent)}.data-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.data-loading{font-size:var(--font-size-md);color:var(--color-text-muted);font-style:italic;padding:.25rem 0}.data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md);white-space:nowrap}.data-table thead{background:var(--color-surface)}.data-table th{text-align:left;padding:.75rem 1rem;font-weight:700;color:var(--color-text-muted);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border)}.data-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-overlay-light)}.data-cell-email{max-width:220px;overflow:hidden;text-overflow:ellipsis}.data-table-empty{text-align:center;color:var(--color-text-muted);padding:2rem 1rem}.data-sort-btn{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;padding:0;white-space:nowrap}.data-sort-btn:hover{color:var(--color-text)}.data-sort-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.data-badge{display:inline-block;padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;line-height:1.3}.data-badge--auth{background:var(--color-surface-mid);color:var(--color-text-muted)}.data-badge--role{background:var(--color-accent);color:var(--color-bg-dark);margin-right:.25rem}.data-badge--alive{background:var(--color-surface-mid);color:var(--color-success)}.data-badge--dead{background:var(--color-surface-mid);color:var(--color-red-text)}.data-row-clickable{cursor:pointer;transition:background .15s}.data-row-clickable:hover{background:var(--color-surface)}.data-row-clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.data-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.data-page-btn{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;padding:.5rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;transition:border-color .2s;min-height:44px}.data-page-btn:hover:not(:disabled){border-color:var(--color-accent)}.data-page-btn:disabled{opacity:.4;cursor:not-allowed}.data-page-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.data-page-info{color:var(--color-text-muted);font-size:var(--font-size-md)}.data-page-info--summary{text-align:center;margin-top:1rem}.data-actions{display:flex;gap:.75rem;margin-top:2rem;justify-content:center;flex-wrap:wrap}.data-actions .btn{min-height:44px}.data-add-btn{padding:.625rem 1.25rem;background:var(--color-accent);color:var(--color-bg-dark);border:1px solid var(--color-accent);border-radius:var(--radius-lg);font-family:var(--font-body);font-weight:700;font-size:var(--font-size-md);cursor:pointer;transition:background .2s;min-height:44px;white-space:nowrap;flex-shrink:0}.data-add-btn:hover{background:var(--color-accent-hover)}.data-add-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.data-edit-btn{background:none;border:1px solid var(--color-accent);color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s;min-height:44px}.data-edit-btn:hover{background:var(--color-accent);color:var(--color-bg-dark)}.data-edit-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.data-delete-btn{background:none;border:1px solid var(--color-red);color:var(--color-red-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,color .2s;min-height:44px}.data-delete-btn:hover{background:var(--color-red);color:var(--color-text)}.data-delete-btn:focus-visible{outline:2px solid var(--color-red);outline-offset:2px}@media(max-width:1536px){.data-table th,.data-table td{padding-left:.75rem;padding-right:.75rem}}@media(max-width:900px){.data-table{font-size:var(--font-size-sm)}.data-table th,.data-table td{padding:.625rem .75rem}}@media(max-width:640px){.data-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.data-controls{flex-direction:column}.data-search-form{flex-basis:auto}.data-filter,.data-select{width:100%}.data-actions{flex-direction:column}.data-actions .btn{width:100%;justify-content:center;text-align:center}.data-add-btn{width:100%}}@media(prefers-reduced-motion:reduce){.data-row-clickable,.data-search-btn,.data-page-btn,.data-add-btn,.data-edit-btn,.data-delete-btn,.data-tab{transition:none}}.attr-tab__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.attr-tab__title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin:0}.attr-tab__name-link{background:none;border:none;color:var(--color-accent);font-family:var(--font-body);font-size:inherit;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.attr-tab__name-link:hover{color:var(--color-accent-hover)}.attr-tab__name-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.attr-tab__slug{font-family:monospace;font-size:var(--font-size-sm);color:var(--color-text-muted)}.attr-tab__actions{display:flex;gap:.5rem}.attr-tab__action-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;padding:.3rem .75rem;cursor:pointer;transition:border-color .2s,color .2s;min-height:32px}.attr-tab__action-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.attr-tab__action-btn--danger:hover{border-color:var(--color-red);color:var(--color-red-text)}.attr-tab__action-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.attr-form{max-width:480px}.attr-form__title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin:0 0 1.25rem}.attr-form__label{display:block;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.04em}.attr-form__input{width:100%;padding:.625rem 1rem;border:1px solid var(--color-field-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);margin-bottom:1rem;min-height:44px;box-sizing:border-box}.attr-form__input:focus{outline:none;border-color:var(--color-accent)}.attr-form__preview{font-size:var(--font-size-sm);color:var(--color-text-muted);font-family:monospace;margin:-.5rem 0 1rem;word-break:break-all}.attr-form__error{color:var(--color-red-text);font-size:var(--font-size-md);margin-bottom:1rem}.attr-form__fieldset{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem;margin:0 0 1rem}.attr-form__legend{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;padding:0 .5rem}.attr-form__textarea{resize:vertical;min-height:66px;border-radius:var(--radius-lg)}.attr-form__actions{display:flex;gap:.75rem;margin-top:.5rem}.attr-detail__back{background:none;border:none;color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;cursor:pointer;padding:0;margin-bottom:1rem}.attr-detail__back:hover{text-decoration:underline}.attr-detail__back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.attr-detail__name{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin:0 0 .25rem}.attr-detail__url{font-size:var(--font-size-sm);color:var(--color-text-muted);font-family:monospace;margin:0 0 1.25rem;word-break:break-all}.attr-detail__filter{margin-bottom:1rem}.attr-delete-modal{max-width:400px}.attr-delete-modal h3{font-family:var(--font-title);font-size:var(--font-size-lg);margin:0 0 .75rem}.attr-delete-modal p{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0 0 1.25rem;line-height:1.5}@media(max-width:640px){.attr-tab__header{flex-direction:column;align-items:stretch}.attr-form__actions,.attr-tab__actions{flex-direction:column}}.broadcast-tab{max-width:640px}.broadcast-intro{margin:0 0 1.5rem;color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6}.broadcast-form{display:flex;flex-direction:column;gap:1.25rem}.broadcast-field{display:flex;flex-direction:column;gap:.375rem}.broadcast-label{font-weight:600;color:var(--color-text);font-size:var(--font-size-md)}.broadcast-input{padding:.625rem .75rem;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:6px;color:var(--color-text);font-size:var(--font-size-base);font-family:inherit;min-height:44px}.broadcast-input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.broadcast-textarea{resize:vertical;line-height:1.6}.broadcast-count{margin:0;font-size:var(--font-size-md);color:var(--color-text-muted)}.broadcast-count strong{color:var(--color-text)}.broadcast-hint{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.broadcast-error{margin:0;color:var(--color-red-text);font-size:var(--font-size-md)}.broadcast-status{margin:0;color:var(--color-gold);font-size:var(--font-size-md)}.broadcast-actions{display:flex;gap:.75rem;flex-wrap:wrap}@media(max-width:640px){.broadcast-actions{flex-direction:column;align-items:stretch}}.consent-panel{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);max-width:640px}.consent-panel-heading{font-family:var(--font-title);font-size:var(--font-size-lg);margin-bottom:.75rem}.consent-panel-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md);margin-bottom:.75rem}.consent-panel-table th,.consent-panel-table td{text-align:left;padding:.5rem .75rem .5rem 0;border-bottom:1px solid var(--color-border)}.consent-panel-table th{color:var(--color-text-muted);font-weight:600}.consent-panel-muted{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5;margin-bottom:.75rem}.consent-panel-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.mkt-panel{margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.mkt-panel-heading{font-family:var(--font-title);font-size:var(--font-size-lg);margin-bottom:.5rem}.mkt-subheading{font-size:var(--font-size-base);font-weight:600;margin:1.5rem 0 .5rem}.mkt-muted{color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5;margin-bottom:.75rem}.mkt-notice{color:var(--color-text);font-size:var(--font-size-md);margin-bottom:.75rem}.mkt-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.mkt-actions .form-label{margin:0}.mkt-switch-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.mkt-switch{padding:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.mkt-switch-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.mkt-switch-head .mkt-muted{margin-bottom:0}.mkt-switch-title{font-weight:600;margin-bottom:.25rem}.mkt-switch-state{display:flex;align-items:center;gap:.75rem}.mkt-key{font-family:ui-monospace,monospace;font-size:var(--font-size-sm);color:var(--color-text-muted)}.mkt-badge{font-size:var(--font-size-sm);font-weight:600;padding:.15rem .6rem;border-radius:999px;border:1px solid var(--color-border);color:var(--color-text-muted)}.mkt-badge--on{border-color:var(--color-accent-border);background:var(--color-accent-subtle);color:var(--color-text)}.mkt-switch-details{margin-top:.75rem}.mkt-switch-details summary{cursor:pointer;font-size:var(--font-size-md);color:var(--color-text-muted);min-height:44px;display:flex;align-items:center}.mkt-table-wrap{overflow-x:auto}.mkt-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md);margin-bottom:.75rem}.mkt-table th,.mkt-table td{text-align:left;padding:.5rem .75rem .5rem 0;border-bottom:1px solid var(--color-border);vertical-align:middle}.mkt-table th{color:var(--color-text-muted);font-weight:600}.mkt-editor{padding:1rem;margin-bottom:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.mkt-textarea{font-family:ui-monospace,monospace;font-size:var(--font-size-sm);line-height:1.5;resize:vertical}.mkt-link{background:none;border:none;padding:0;color:var(--color-accent);font:inherit;text-align:left;cursor:pointer;text-decoration:underline}.mkt-panel--newsletter{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.player-selector{position:relative}.player-selector-chips{display:flex;flex-wrap:wrap;gap:.35rem;padding:.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-height:44px;align-items:center;cursor:text;transition:border-color .2s}.player-selector-chips:focus-within{border-color:var(--color-accent)}.player-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;background:var(--color-surface-mid);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text);max-width:200px}.player-chip--new{border-color:var(--color-gold);background:var(--color-gold-light)}.player-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-chip-remove{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:0;flex-shrink:0;width:18px;height:18px;border-radius:var(--radius-sm);transition:color .15s,background .15s}.player-chip-remove:hover{color:var(--color-red-text);background:var(--color-red-light)}.player-chip-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.player-selector-input{flex:1;min-width:140px;border:none;background:transparent;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);padding:.25rem;outline:none}.player-selector-input::placeholder{color:var(--color-text-muted);opacity:.6}.player-selector-count{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:.3rem;text-align:right}.player-selector-dropdown{position:absolute;top:calc(100% - 1.2rem);left:0;right:0;z-index:310;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.25rem;max-height:220px;overflow-y:auto;list-style:none;margin:0;box-shadow:var(--shadow-md);animation:psDropIn .12s ease}@keyframes psDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.player-selector-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem;border-radius:var(--radius-md);cursor:pointer;transition:background .12s;min-height:38px}.player-selector-option--active{background:var(--color-surface)}.player-option-name{font-size:var(--font-size-md);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-option-email{font-size:var(--font-size-sm);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-selector-option--new{border-top:1px solid var(--color-border);margin-top:.2rem;padding-top:.6rem}.player-option-new-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gold);white-space:nowrap}@media(max-width:640px){.player-chip{max-width:160px;font-size:var(--font-size-xs)}.player-selector-input{min-width:100px}}.session-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:sfFadeIn .2s ease}@keyframes sfFadeIn{0%{opacity:0}to{opacity:1}}.session-form-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:sfSlideIn .2s ease}@keyframes sfSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.session-form-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.5rem}.session-form{display:flex;flex-direction:column;gap:1rem}.session-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.session-form-textarea{resize:vertical;min-height:60px}.session-form-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.session-form-actions .btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.session-form-content{max-width:95vw}}@media(max-width:640px){.session-form-content{padding:1.5rem}.session-form-grid{grid-template-columns:1fr}}.member-pill{display:inline-flex;align-items:center;max-width:14rem;padding:.2rem .6rem;background:var(--color-surface-mid);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;line-height:1.3;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.member-pill:hover:not(:disabled){background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-dark)}.member-pill:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.member-pill:disabled{opacity:.6;cursor:progress}.member-pill--static{cursor:default}.member-pill--static:hover{background:var(--color-surface-mid);border-color:var(--color-border);color:var(--color-text)}@media(prefers-reduced-motion:reduce){.member-pill{transition:none}}.member-pills{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;white-space:normal}.member-pill--count{gap:.3rem;white-space:nowrap}.member-pill-caret{font-size:var(--font-size-2xs);line-height:1}.member-pills-empty{color:var(--color-text-muted)}.member-pills-error{display:block;width:100%;margin-top:.25rem;color:var(--color-red-text);font-size:var(--font-size-xs);white-space:normal}.sessions-filters{display:flex;gap:.5rem;flex-shrink:0;align-items:center}.sessions-cell-name{max-width:260px;overflow:hidden;text-overflow:ellipsis}.sessions-cell-desc{max-width:200px;overflow:hidden;text-overflow:ellipsis}.sessions-badge--episode{background:var(--color-accent);color:var(--color-bg-dark)}.sessions-badge--private_adventure{background:var(--color-gold);color:var(--color-bg-dark)}.sessions-badge--public_adventure{background:var(--color-surface-mid);color:var(--color-text)}.sessions-badge--special{background:var(--color-purple);color:var(--color-text)}.sessions-badge--arc_episode{background:var(--color-success);color:var(--color-bg-dark)}.sessions-badge--friend{background:var(--color-discord);color:var(--color-white)}.sessions-badge--scheduled{background:var(--color-surface-mid);color:var(--color-text-muted)}.sessions-badge--cancelled{background:var(--color-red);color:var(--color-text)}.sessions-badge--completed{background:var(--color-accent);color:var(--color-bg-dark)}.sessions-actions-cell{display:flex;gap:.5rem;white-space:nowrap}@media(max-width:900px){.sessions-cell-name{max-width:180px}.sessions-cell-desc{max-width:140px}}@media(max-width:640px){.sessions-filters{flex-direction:column;width:100%}.sessions-filters .data-select{width:100%}.sessions-actions-cell{flex-direction:column}}.campaign-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:cfFadeIn .2s ease}@keyframes cfFadeIn{0%{opacity:0}to{opacity:1}}.campaign-form-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:cfSlideIn .2s ease}@keyframes cfSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.campaign-form-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.5rem}.campaign-form{display:flex;flex-direction:column;gap:1rem}.campaign-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.campaign-form-textarea{resize:vertical;min-height:60px}.campaign-form-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.campaign-form-actions .btn:disabled{opacity:.5;cursor:not-allowed}.campaign-form-checkbox{display:flex;align-items:center}.form-label-inline{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);color:var(--color-text);cursor:pointer}.form-label-inline input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer}@media(max-width:900px){.campaign-form-content{max-width:95vw}}@media(max-width:640px){.campaign-form-content{padding:1.5rem}.campaign-form-grid{grid-template-columns:1fr}}.avail-week-nav{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.5rem}.avail-week-label{font-weight:700;font-size:var(--font-size-md);color:var(--color-text)}.avail-week-grid{display:flex;flex-direction:column;gap:4px;margin-top:.6rem;font-size:var(--font-size-xs)}.avail-week-row{display:grid;grid-template-columns:56px repeat(7,minmax(0,1fr));gap:4px}.avail-week-head{text-align:center;color:var(--color-text-muted);font-weight:600;padding:.25rem 0}.avail-week-time{display:flex;align-items:center;color:var(--color-text-muted);font-weight:600}.avail-week-row>[role=gridcell]{display:flex}.avail-week-cell{flex:1;width:100%;min-height:44px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s}button.avail-week-cell:hover{border-color:var(--color-accent)}button.avail-week-cell:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.avail-week-swatch{display:inline-block;width:12px;height:12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface)}.avail-week-cell--l1{background:color-mix(in srgb,var(--color-accent) 15%,var(--color-surface))}.avail-week-cell--l2{background:color-mix(in srgb,var(--color-accent) 35%,var(--color-surface))}.avail-week-cell--l3{background:color-mix(in srgb,var(--color-accent) 65%,var(--color-surface));color:var(--color-on-accent)}.avail-week-cell--busy{background:repeating-linear-gradient(45deg,var(--color-surface) 0 4px,color-mix(in srgb,var(--color-text-muted) 18%,var(--color-surface)) 4px 8px);color:var(--color-text-muted);font-weight:500}.avail-week-cell--closed{border-style:dashed;background:none;cursor:default}.avail-week-legend{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin:.6rem 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs)}.avail-week-legend>span{display:inline-flex;align-items:center;gap:.3rem}@media(max-width:760px){.avail-week-row{grid-template-columns:44px repeat(7,minmax(0,1fr));gap:3px}.avail-week-head{font-size:var(--font-size-2xs)}}@media(prefers-reduced-motion:reduce){.avail-week-cell{transition:none}}.player-avail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:playerAvailFadeIn .2s ease}@keyframes playerAvailFadeIn{0%{opacity:0}to{opacity:1}}.player-avail-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:1080px;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);display:flex;flex-direction:column;overflow:hidden;position:relative;animation:playerAvailSlideIn .2s ease}@keyframes playerAvailSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.player-avail-head{padding:1.5rem 1.75rem 1rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.player-avail-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:color .2s,background .2s}.player-avail-close:hover{color:var(--color-text);background:var(--color-overlay-light)}.player-avail-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.player-avail-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0;padding-right:2.5rem}.player-avail-campaign{color:var(--color-text-muted);font-size:var(--font-size-md);margin:.15rem 0 0}.player-avail-status{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin:.9rem 0 0;font-size:var(--font-size-md);color:var(--color-text);line-height:1.5}.player-avail-status-bar{width:90px;height:6px;border-radius:var(--radius-pill);background:var(--color-surface-mid);overflow:hidden}.player-avail-status-bar>span{display:block;height:100%;background:var(--color-accent);border-radius:inherit}.player-avail-status-item{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.player-avail-status-muted{color:var(--color-text-muted)}.player-avail-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;overflow-y:auto;flex:1;min-height:0}.player-avail-main{padding:1.25rem 1.75rem 1.75rem;border-right:1px solid var(--color-border);min-width:0}.player-avail-side{padding:1.25rem 1.4rem}.player-avail-eyebrow{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin:0 0 .6rem}.player-avail-hint{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:-.25rem 0 .75rem}.player-avail-best-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.player-avail-best-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:.75rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.player-avail-best-when{display:flex;flex-direction:column}.player-avail-best-date{font-weight:700;font-size:var(--font-size-base);color:var(--color-text)}.player-avail-best-time{font-size:var(--font-size-sm);color:var(--color-text-muted)}.player-avail-best-who{font-size:var(--font-size-md);min-width:0}.player-avail-count{display:inline-block;min-width:36px;text-align:center;border-radius:var(--radius-xl);padding:0 .5rem;margin-right:.4rem;font-weight:700;font-size:var(--font-size-xs);background:var(--color-accent-subtle);color:var(--color-accent);border:1px solid var(--color-accent-border)}.player-avail-count--full{background:var(--color-success-subtle);color:var(--color-success);border-color:color-mix(in srgb,var(--color-success) 35%,transparent)}.player-avail-best-names{font-weight:600;color:var(--color-text)}.player-avail-best-out,.player-avail-best-warn{display:block;font-size:var(--font-size-sm);margin-top:.15rem;color:var(--color-text-muted)}.player-avail-best-warn{color:var(--color-gold)}.player-avail-all{margin-top:1.25rem;padding-top:.9rem;border-top:1px solid var(--color-border)}.player-avail-all>summary{cursor:pointer;font-weight:600;font-size:var(--font-size-base);list-style:none;min-height:44px;display:flex;align-items:center;gap:.4rem}.player-avail-all>summary::-webkit-details-marker{display:none}.player-avail-all>summary:before{content:"▸";color:var(--color-accent)}.player-avail-all[open]>summary:before{content:"▾"}.player-avail-all>summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.player-avail-player-list{list-style:none;margin:0;padding:0}.player-avail-player{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.6rem 0;border-bottom:1px solid var(--color-border)}.player-avail-player-info{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0}.player-avail-player-detail{font-size:var(--font-size-sm);color:var(--color-text-muted)}.player-avail-tag{font-size:var(--font-size-2xs);font-weight:600;border-radius:var(--radius-xl);padding:.1rem .5rem;white-space:nowrap}.player-avail-tag--ok{background:var(--color-success-subtle);color:var(--color-success)}.player-avail-tag--no{background:var(--color-red-subtle);color:var(--color-red-text)}.player-avail-tag--wait{background:var(--color-gold-subtle);color:var(--color-gold)}.player-avail-loading{text-align:center;padding:2rem 0;color:var(--color-text-muted);font-size:var(--font-size-md)}.player-avail-error-state{text-align:center;padding:1.5rem}.player-avail-error-msg{color:var(--color-red-text);font-size:var(--font-size-md);text-align:center;margin-bottom:.5rem}.player-avail-empty{text-align:center;padding:1.5rem 0;color:var(--color-text-muted);font-size:var(--font-size-md);line-height:1.5}@media(max-width:760px){.player-avail-overlay{padding:0}.player-avail-content{border-radius:0;border:0;max-height:none;height:100vh;height:100dvh}.player-avail-head{padding:1rem 1rem .9rem}.player-avail-body{grid-template-columns:minmax(0,1fr)}.player-avail-main{padding:1rem;border-right:0}.player-avail-side{padding:.25rem 1rem 1.5rem}.player-avail-best-row{grid-template-columns:minmax(0,1fr) auto;gap:.4rem .6rem}.player-avail-best-who{grid-column:1 / -1;order:3}}.book-episode-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem}.book-episode-dialog{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;width:100%;max-width:440px;display:flex;flex-direction:column;gap:.75rem}.book-episode-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0}.book-episode-summary{font-size:var(--font-size-md);color:var(--color-text);margin:0}.book-episode-availability,.book-episode-missing{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0;line-height:1.4}.book-episode-conflict{font-size:var(--font-size-md);color:var(--color-gold);margin:0;line-height:1.4}.book-episode-actions{display:flex;gap:.5rem;margin-top:.5rem}@media(prefers-reduced-motion:reduce){.player-avail-overlay,.player-avail-content{animation:none}.player-avail-close{transition:none}}.waitlist-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.waitlist-section-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;color:var(--color-text);margin-bottom:1rem}.waitlist-add-row{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.waitlist-add-selector{flex:1;max-width:360px}.waitlist-actions-cell{display:flex;gap:.35rem;white-space:nowrap;align-items:center}.waitlist-move-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:.35rem .5rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s,border-color .15s;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;line-height:1}.waitlist-move-btn:hover:not(:disabled){background:var(--color-surface-mid);color:var(--color-text);border-color:var(--color-text-muted)}.waitlist-move-btn:disabled{opacity:.3;cursor:not-allowed}.waitlist-move-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.waitlist-comment-cell{max-width:220px}.waitlist-comment-toggle{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;text-align:left;padding:.25rem 0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .2s;min-height:32px}.waitlist-comment-toggle:hover{color:var(--color-text)}.waitlist-comment-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.waitlist-comment-edit{display:flex;gap:.35rem;align-items:center}.waitlist-comment-input{flex:1;background:var(--color-bg-card);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);padding:.35rem .5rem;min-width:0;min-height:32px}.waitlist-comment-input:focus{outline:none;border-color:var(--color-accent)}.waitlist-comment-save,.waitlist-comment-cancel{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;padding:.3rem .5rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s;min-height:32px;white-space:nowrap}.waitlist-comment-save:hover:not(:disabled){background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-dark)}.waitlist-comment-cancel:hover:not(:disabled){color:var(--color-text)}.waitlist-comment-save:focus-visible,.waitlist-comment-cancel:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.waitlist-add-row{flex-direction:column}.waitlist-add-selector{max-width:100%}.waitlist-actions-cell,.waitlist-comment-edit{flex-wrap:wrap}}.adventure-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:afFadeIn .2s ease}@keyframes afFadeIn{0%{opacity:0}to{opacity:1}}.adventure-form-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:afSlideIn .2s ease}@keyframes afSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.adventure-form-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.5rem}.adventure-form{display:flex;flex-direction:column;gap:1rem}.adventure-form-textarea{resize:vertical;min-height:60px}.adventure-form-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.adventure-form-actions .btn:disabled{opacity:.5;cursor:not-allowed}.adventure-form-checkbox{display:flex;align-items:center}@media(max-width:900px){.adventure-form-content{max-width:95vw}}@media(max-width:640px){.adventure-form-content{padding:1.5rem}}.sessions-adv-toggle{padding:.3rem .6rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted);font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:background .15s,color .15s,border-color .15s;min-height:30px}.sessions-adv-toggle--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.sessions-adv-toggle:hover{opacity:.85}.sessions-adv-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sessions-adv-thumb{width:48px;height:48px;border-radius:var(--radius-md);object-fit:cover;display:block}.arc-form-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--color-overlay-dark-heavy);display:flex;align-items:center;justify-content:center;padding:1rem;animation:arcFadeIn .2s ease}@keyframes arcFadeIn{0%{opacity:0}to{opacity:1}}.arc-form-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;animation:arcSlideIn .2s ease}@keyframes arcSlideIn{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.arc-form-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;margin-bottom:1.5rem}.arc-form{display:flex;flex-direction:column;gap:1rem}.arc-form-textarea{resize:vertical;min-height:60px}.arc-form-row{display:flex;gap:1rem;flex-wrap:wrap}.arc-form-row>.form-group{flex:1 1 200px}.arc-form-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.arc-form-actions .btn:disabled{opacity:.5;cursor:not-allowed}.arc-form-checkbox{display:flex;align-items:center}.arc-episodes{display:flex;flex-direction:column;gap:.75rem}.arc-episodes-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.arc-episode-row{display:grid;grid-template-columns:2rem 1.6fr 1fr 2rem;gap:.5rem;align-items:center}.arc-episodes-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:-.25rem 0 .25rem}.arc-episode-num{font-weight:700;color:var(--color-text-muted);text-align:center}.arc-ep-remove{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xl);line-height:1;padding:.25rem;min-width:44px;min-height:44px}.arc-ep-remove:hover,.arc-form-error{color:var(--color-red-text)}@media(max-width:900px){.arc-form-content{max-width:95vw}}@media(max-width:640px){.arc-form-content{padding:1.5rem}.arc-episode-row{grid-template-columns:1fr 1fr}.arc-episode-num{grid-column:1 / -1;text-align:left}.arc-ep-remove{grid-column:2;justify-self:end}}.arc-members-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;background:var(--color-overlay-dark-heavy);padding:1rem}.arc-members-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:2rem;max-width:520px;width:100%;max-height:85vh;overflow-y:auto;position:relative}.arc-members-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;line-height:1;padding:.25rem;min-width:44px;min-height:44px;transition:color .15s}.arc-members-close:hover{color:var(--color-text)}.arc-members-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.arc-members-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg);margin-bottom:.25rem;padding-right:2rem}.arc-members-subtitle{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:.25rem}.arc-members-capacity{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:1.25rem}.arc-members-loading{color:var(--color-text-muted);font-size:var(--font-size-md);padding:1rem 0}.arc-members-list{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-direction:column;gap:.5rem}.arc-members-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.75rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.arc-members-item--inactive{opacity:.6}.arc-members-info{display:flex;flex-direction:column;min-width:0;flex:1}.arc-members-name{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;min-width:0}.arc-members-email{font-size:var(--font-size-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arc-members-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:.15rem}.arc-members-badge{display:inline-block;margin-left:.4rem;font-size:var(--font-size-3xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.05rem .3rem;vertical-align:middle}.arc-members-actions,.arc-members-edit,.arc-members-confirm{display:flex;align-items:center;gap:.4rem;flex-shrink:0;flex-wrap:wrap}.arc-members-confirm-text{font-size:var(--font-size-sm);color:var(--color-text-muted)}.arc-members-edit-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;padding:.35rem .75rem;cursor:pointer;min-height:32px;transition:color .15s,border-color .15s}.arc-members-edit-btn:hover{color:var(--color-accent);border-color:var(--color-accent)}.arc-members-edit-btn:focus-visible,.arc-members-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.arc-members-remove{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;padding:.35rem .75rem;cursor:pointer;min-height:32px;transition:color .15s,border-color .15s}.arc-members-remove:hover{color:var(--color-red-text);border-color:var(--color-red)}.arc-members-remove:disabled,.arc-members-edit-btn:disabled{opacity:.5;cursor:not-allowed}.arc-members-text-btn{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);cursor:pointer;text-decoration:underline;padding:.35rem .25rem;min-height:32px;transition:color .15s}.arc-members-text-btn:hover{color:var(--color-text)}.arc-members-empty{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:1rem}.arc-members-field{display:inline-flex}.arc-members-select{padding:.5rem .6rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);min-height:40px}.arc-members-select:focus{outline:none;border-color:var(--color-accent)}.arc-members-add{border-top:1px solid var(--color-border);padding-top:1.25rem}.arc-members-add-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.75rem}.arc-members-add-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:.75rem}.arc-members-add-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.5;margin-top:.6rem}.arc-members-full-notice{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-top:.75rem;font-style:italic}.arc-members-error{color:var(--color-red-text);font-size:var(--font-size-sm);margin-top:.75rem}@media(prefers-reduced-motion:reduce){.arc-members-close,.arc-members-edit-btn,.arc-members-remove,.arc-members-text-btn{transition:none}}@media(max-width:640px){.arc-members-content{padding:1.5rem 1rem;max-height:92vh}.arc-members-item{align-items:flex-start}.arc-members-add-controls{flex-direction:column;align-items:stretch}.arc-members-add-controls .arc-members-select{width:100%}}.arc-section+.arc-section{margin-top:2.5rem}.arc-section-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0}.sessions-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:1.5rem}.sessions-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:.75rem 1.5rem;font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color .2s,border-color .2s;min-height:44px}.sessions-tab:hover{color:var(--color-text)}.sessions-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.sessions-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}@media(max-width:640px){.sessions-tabs{gap:0}.sessions-tab{flex:1;text-align:center;padding:.75rem .5rem}}.staff-config-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.staff-config-inner{max-width:600px;margin:0 auto}.staff-config-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:2rem}.staff-config-block{margin-bottom:2.5rem}.staff-config-subtitle{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-bottom:.5rem}.staff-config-desc{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:1.5rem}.staff-config-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.staff-config-form{display:flex;flex-direction:column;gap:1.25rem}.staff-config-toggle-group{margin-bottom:.25rem}.staff-config-toggle{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:var(--font-size-md)}.staff-config-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent)}.staff-config-toggle-label{font-weight:600;color:var(--color-text)}.staff-config-redirects{display:flex;flex-direction:column;gap:.75rem}.staff-config-redirect-row{display:flex;flex-direction:column;gap:.35rem;padding:.75rem 1rem;background:var(--color-surface, color-mix(in srgb, var(--color-white) 4%, transparent));border:1px solid var(--color-border, color-mix(in srgb, var(--color-white) 10%, transparent));border-radius:var(--radius-md, 8px)}.staff-config-redirect-info{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-base);font-weight:600}.staff-config-redirect-slug{font-family:var(--font-mono, monospace);color:var(--color-accent)}.staff-config-redirect-arrow{color:var(--color-text-muted)}.staff-config-redirect-select{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border, color-mix(in srgb, var(--color-white) 10%, transparent));border-radius:var(--radius-sm, 4px);padding:.25rem .5rem;font-size:var(--font-size-md);cursor:pointer;min-width:0;flex:1}.staff-config-redirect-meta{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-sm)}.staff-config-redirect-url{color:var(--color-text-muted);font-family:var(--font-mono, monospace);font-size:var(--font-size-xs);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-config-redirect-copy,.staff-config-redirect-delete{background:none;border:1px solid var(--color-border, color-mix(in srgb, var(--color-white) 10%, transparent));color:var(--color-text-muted);padding:.2rem .5rem;border-radius:var(--radius-sm, 4px);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s}.staff-config-redirect-copy:hover{color:var(--color-text);border-color:var(--color-text-muted)}.staff-config-redirect-delete{color:var(--color-red-text)}.staff-config-redirect-delete:hover{border-color:var(--color-red-text)}.staff-config-redirect-delete:disabled{opacity:.5;cursor:not-allowed}.staff-config-empty{color:var(--color-text-muted);font-size:var(--font-size-md);font-style:italic}.staff-config-add-attr{display:flex;flex-direction:column;gap:1rem}.staff-config-add-attr-actions{display:flex;gap:.75rem}@media(max-width:640px){.staff-config-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.staff-config-redirect-info,.staff-config-redirect-meta{flex-wrap:wrap}}.staff-config-locations{display:flex;flex-direction:column;gap:.75rem}.staff-config-location-row{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;background:var(--color-surface, color-mix(in srgb, var(--color-white) 4%, transparent));border:1px solid var(--color-border, color-mix(in srgb, var(--color-white) 10%, transparent));border-radius:var(--radius-md, 8px)}.staff-config-location-row:has(.staff-config-location-toggle input:not(:checked)){opacity:.65}.staff-config-location-info{display:flex;flex-direction:column;gap:.15rem}.staff-config-location-name{font-weight:600;font-size:var(--font-size-base);color:var(--color-text)}.staff-config-location-address{font-size:var(--font-size-sm);color:var(--color-text-muted)}.staff-config-location-directions{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:pre-line}.staff-config-location-notes{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.staff-config-location-actions{display:flex;align-items:center;gap:1rem;margin-top:.25rem}.staff-config-location-toggle{font-size:var(--font-size-md)}.staff-config-location-edit-btn{background:none;border:1px solid var(--color-border, color-mix(in srgb, var(--color-white) 10%, transparent));color:var(--color-text-muted);padding:.2rem .6rem;border-radius:var(--radius-sm, 4px);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s}.staff-config-location-edit-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.staff-config-location-edit-btn:disabled{opacity:.5;cursor:not-allowed}.staff-config-location-edit{display:flex;flex-direction:column;gap:.75rem}.staff-config-location-edit-actions{display:flex;gap:.75rem}@media(max-width:640px){.staff-config-location-actions{flex-wrap:wrap}}.payments-cell-player{display:flex;flex-direction:column;gap:.125rem;min-width:140px}.payments-player-name{font-weight:600;color:var(--color-text)}.payments-player-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.payments-cell-desc{max-width:260px;overflow:hidden;text-overflow:ellipsis}.payments-cell-amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.payments-cell-total{font-weight:700}.payments-badge--pending{background:var(--color-gold);color:var(--color-bg-dark)}.payments-badge--succeeded{background:var(--color-accent);color:var(--color-bg-dark)}.payments-badge--failed{background:var(--color-red);color:var(--color-text)}.payments-badge--refunded,.payments-badge--canceled{background:var(--color-surface-mid);color:var(--color-text-muted)}@media(max-width:900px){.payments-cell-desc{max-width:180px}.payments-cell-player{min-width:120px}}@media(max-width:640px){.payments-cell-desc{max-width:140px}.payments-cell-player{min-width:100px}}.audit-cell-staff{display:flex;flex-direction:column;gap:.125rem;min-width:140px}.audit-staff-name{font-weight:600;color:var(--color-text)}.audit-staff-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.audit-cell-date{white-space:nowrap;font-variant-numeric:tabular-nums}.audit-action-label{font-weight:600;color:var(--color-text)}.audit-badge-entity{background:var(--color-surface-mid);color:var(--color-text-muted)}.audit-cell-details{max-width:320px;overflow:hidden;text-overflow:ellipsis;font-size:var(--font-size-sm);color:var(--color-text-muted)}@media(max-width:900px){.audit-cell-details{max-width:200px}.audit-cell-staff{min-width:120px}}@media(max-width:640px){.audit-cell-details{max-width:140px}.audit-cell-staff{min-width:100px}}.csv-mapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.csv-mapper-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.csv-mapper-table th{text-align:left;font-weight:600;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.csv-mapper-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);vertical-align:middle}.csv-mapper-field-cell{white-space:nowrap}.csv-mapper-field-label{color:var(--color-text);font-weight:500}.csv-mapper-required{color:var(--color-red-text);font-weight:700}.csv-mapper-select{width:100%;min-width:180px;padding:.5rem .75rem;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;min-height:44px;transition:border-color .2s}.csv-mapper-select:hover{border-color:var(--color-accent)}.csv-mapper-select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.import-phase{margin-top:1rem}.import-instructions{color:var(--color-text-muted);font-size:var(--font-size-base);margin-bottom:1.5rem;line-height:1.6}.import-required-star{color:var(--color-red-text);font-weight:700}.import-file-input{display:flex;align-items:center;gap:1rem}.import-file-input .btn{min-height:44px}.import-error{color:var(--color-red-text);font-size:var(--font-size-md);margin-top:.75rem;line-height:1.5}.import-actions{display:flex;gap:.75rem;margin-top:2rem;flex-wrap:wrap}.import-actions .btn{min-height:44px;min-width:44px}.import-preview-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:.5rem}.import-preview-table{min-width:600px}.import-cell-error{color:var(--color-red-text);font-weight:600}.import-result-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2rem}.import-result-fail{border-color:var(--color-red)}.import-result-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin-bottom:1rem}.import-result-stats{list-style:none;padding:0;display:flex;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem}.import-result-stats li{font-size:var(--font-size-base);color:var(--color-text-muted)}.import-result-stats li strong{color:var(--color-text);font-size:var(--font-size-xl);margin-right:.25rem}.import-errors-section{margin-top:1.5rem}.import-errors-title{font-size:var(--font-size-base);font-weight:600;margin-bottom:.75rem;color:var(--color-red-text)}.import-errors-scroll{max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.75rem 1rem;background:var(--color-bg-card)}.import-errors-list{list-style:none;padding:0;margin:0}.import-error-item{font-size:var(--font-size-md);color:var(--color-text-muted);padding:.35rem 0;border-bottom:1px solid var(--color-border)}.import-error-item:last-child{border-bottom:none}.import-error-item strong{color:var(--color-text)}@media(max-width:640px){.import-result-stats{flex-direction:column;gap:.5rem}.import-actions{flex-direction:column}.import-actions .btn{width:100%;justify-content:center}}.analytics-chart{position:relative;width:100%}.analytics-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card)}.analytics-chart__empty-text{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md)}.analytics-chart__svg{width:100%;height:auto;display:block;border-radius:var(--radius-sm)}.analytics-chart__svg:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.analytics-chart__overlay{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);margin:0;padding:.375rem .75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);text-align:center;pointer-events:none}.analytics-chart__gridline{stroke:var(--color-border);stroke-width:1;stroke-dasharray:4 2}.analytics-chart__baseline{stroke:var(--color-text-muted);stroke-width:1;opacity:.6}.analytics-chart__y-label,.analytics-chart__x-label{fill:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.analytics-chart__axis-title{fill:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600}.analytics-chart__line{vector-effect:non-scaling-stroke}.analytics-chart__bar{transition:opacity .15s ease}.analytics-chart__hover-line{stroke:var(--color-text-muted);stroke-width:1;stroke-dasharray:3 2;opacity:.5}.analytics-chart__hover-dot{stroke:var(--color-bg-card);stroke-width:2}.analytics-chart__tooltip{position:absolute;top:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem .75rem;pointer-events:none;z-index:10;white-space:nowrap;box-shadow:var(--shadow-md)}.analytics-chart__tooltip-date{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;color:var(--color-text);margin-bottom:.25rem}.analytics-chart__tooltip-row{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex;align-items:center;gap:.375rem;line-height:1.5}.analytics-chart__tooltip-label{flex:1}.analytics-chart__tooltip-value{margin-left:.75rem;color:var(--color-text);font-weight:600;font-variant-numeric:tabular-nums}.analytics-chart__tooltip-swatch{display:inline-block;width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.analytics-chart__legend{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding:0 .25rem}.analytics-chart__legend-item{display:flex;align-items:center;gap:.375rem;font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);background:none;border:1px solid transparent;border-radius:var(--radius-sm);padding:.2rem .5rem;cursor:pointer;transition:opacity var(--transition-base),border-color var(--transition-base);min-height:28px}.analytics-chart__legend-item:hover{border-color:var(--color-border)}.analytics-chart__legend-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.analytics-chart__legend-item--hidden{opacity:.35;text-decoration:line-through}.analytics-chart__legend-line{display:inline-block;width:16px;height:2px;border-radius:1px;flex-shrink:0}.analytics-chart__legend-line--dashed{background:none;border-top:2px dashed;height:0}.analytics-chart__legend-line--thin{height:1px}.analytics-chart__legend-line--bar{width:10px;height:10px;border-radius:2px}@media(max-width:640px){.analytics-chart__tooltip{font-size:var(--font-size-2xs);padding:.375rem .5rem}.analytics-chart__legend{gap:.375rem}.analytics-chart__legend-item{font-size:var(--font-size-2xs);padding:.15rem .375rem}}.funnel-chart{display:flex;flex-direction:column;gap:.75rem}.funnel-chart--empty{display:flex;align-items:center;justify-content:center;min-height:200px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card)}.funnel-chart__empty-text{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md)}.funnel-chart__step{display:flex;flex-direction:column;gap:.25rem}.funnel-chart__label-row{display:flex;align-items:baseline;gap:.5rem}.funnel-chart__step-label{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.funnel-chart__step-value{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;color:var(--color-text)}.funnel-chart__drop-off{font-family:var(--font-body);font-size:var(--font-size-2xs);color:var(--color-red-text);margin-left:auto}.funnel-chart__bar-track{width:100%;height:24px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.funnel-chart__bar-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease;min-width:2px}@media(max-width:640px){.funnel-chart__bar-track{height:20px}.funnel-chart__step-label{font-size:var(--font-size-xs)}.funnel-chart__step-value{font-size:var(--font-size-md)}}.rate-bar-chart{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.rate-bar-chart--empty{align-items:center;justify-content:center;min-height:120px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card)}.rate-bar-chart__empty-text{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md)}.rate-bar-chart__row{display:flex;flex-direction:column;gap:.25rem}.rate-bar-chart__label-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;font-family:var(--font-body)}.rate-bar-chart__label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.rate-bar-chart__value{font-family:var(--font-title);font-size:var(--font-size-base);font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.rate-bar-chart__detail,.rate-bar-chart__delta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.rate-bar-chart__delta{margin-left:auto}.rate-bar-chart__track{position:relative;width:100%;height:20px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.rate-bar-chart__fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.rate-bar-chart__prev-marker{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--color-text);opacity:.8}.analytics-controls{display:flex;align-items:center;justify-content:flex-end;margin-bottom:1rem}.analytics-range{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.analytics-range__btn{background:none;border:none;border-right:1px solid var(--color-border);padding:.5rem .85rem;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base),background var(--transition-base);min-height:36px}.analytics-range__btn:last-child{border-right:none}.analytics-range__btn:hover{color:var(--color-text);background:var(--color-bg-card)}.analytics-range__btn--active{color:var(--color-accent);background:var(--color-bg-card)}.analytics-range__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.analytics-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:1.5rem}.analytics-tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:.75rem 1.5rem;font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base),border-color var(--transition-base);min-height:44px}.analytics-tab:hover{color:var(--color-text)}.analytics-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.analytics-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.analytics-filter-row{display:flex;gap:.5rem;margin-bottom:1.5rem}.analytics-filter__btn{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base),border-color var(--transition-base),background var(--transition-base);min-height:36px}.analytics-filter__btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.analytics-filter__btn--active{color:var(--color-accent);border-color:var(--color-accent)}.analytics-filter__btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.analytics-attribution-filter{margin-left:auto}.analytics-attribution-select{padding:.5rem 2rem .5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;min-height:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23b8a898' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.analytics-attribution-select:focus{outline:none;border-color:var(--color-accent)}.analytics-loading{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-base);padding:2rem 0;text-align:center}.analytics-error{color:var(--color-red-text);font-family:var(--font-body);font-size:var(--font-size-base);padding:2rem 0;text-align:center}.analytics-section-title{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-top:2rem;margin-bottom:.25rem}.analytics-section-subtitle{font-family:var(--font-body);font-size:var(--font-size-md);color:var(--color-text-muted);margin-bottom:1rem}.analytics-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.analytics-metric-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.25rem 1.5rem}.analytics-metric-label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem}.analytics-metric-value{font-family:var(--font-title);font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text);line-height:1.2;margin-bottom:.375rem}.analytics-metric-delta{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:500}.analytics-metric-delta--up{color:var(--color-success)}.analytics-metric-delta--down{color:var(--color-red-text)}.analytics-metric-delta--flat{color:var(--color-text-muted)}.analytics-chart-wrapper{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.25rem;margin-bottom:1.5rem}@media(max-width:900px){.analytics-metrics{grid-template-columns:repeat(3,1fr);gap:.75rem}.analytics-metric-card{padding:1rem 1.25rem}.analytics-metric-value{font-size:var(--font-size-2xl)}.analytics-tab{padding:.75rem 1rem;font-size:var(--font-size-md)}}@media(max-width:640px){.analytics-metrics{grid-template-columns:repeat(2,1fr)}.analytics-metric-card{padding:1rem}.analytics-metric-value{font-size:var(--font-size-3xl)}.analytics-chart-wrapper{padding:.75rem}.analytics-tab{padding:.5rem .75rem;font-size:var(--font-size-sm)}.analytics-section-title{font-size:var(--font-size-lg);margin-top:1.5rem}.analytics-controls{justify-content:flex-start}.analytics-range__btn{padding:.4rem .6rem;font-size:var(--font-size-xs)}.analytics-filter-row{flex-wrap:wrap;gap:.375rem}.analytics-filter__btn{padding:.4rem .75rem;font-size:var(--font-size-xs)}}.analytics-cell-note{display:block;color:var(--color-text-muted);font-size:var(--font-size-sm)}.staff-blog-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.staff-blog-inner{max-width:800px;margin:0 auto}.staff-blog-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:2rem}.staff-blog-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.staff-blog-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.staff-blog-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem}.staff-blog-card-info{flex:1;min-width:0}.staff-blog-card-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.35rem}.staff-blog-card-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.35rem}.staff-blog-status{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.staff-blog-status--draft{background:var(--color-surface-mid);color:var(--color-text-muted)}.staff-blog-status--published{background:var(--color-accent);color:var(--color-on-accent)}.staff-blog-date,.staff-blog-author{color:var(--color-text-muted);font-size:var(--font-size-sm)}.staff-blog-status--scheduled{background:var(--color-accent-subtle);color:var(--color-accent)}.staff-blog-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.staff-blog-badge--broadcast{background:var(--color-surface-mid);color:var(--color-text-muted)}.staff-blog-badge--sent{background:var(--color-success);color:var(--color-white)}.staff-blog-card-excerpt{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-top:.25rem}.staff-blog-card-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.staff-blog-add{margin-bottom:1rem}.config-adv-toggle{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .75rem;min-height:32px;border:1px solid var(--color-border);border-radius:999px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:var(--color-surface-mid);color:var(--color-text-muted);transition:background .2s ease,color .2s ease,border-color .2s ease}.config-adv-toggle:hover{background:var(--color-border);color:var(--color-text)}.config-adv-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.config-adv-toggle--active{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}.config-adv-toggle--active:hover{opacity:.85;background:var(--color-accent);color:var(--color-on-accent)}.staff-blog-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.staff-blog-form-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg)}.staff-blog-textarea-sm{resize:vertical;min-height:60px}.staff-blog-textarea{resize:vertical;min-height:200px;font-family:var(--font-body);line-height:1.7}.staff-blog-textarea--mono{font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,monospace;font-size:var(--font-size-md);line-height:1.6;-moz-tab-size:2;tab-size:2}.staff-blog-image-preview{margin-top:.75rem;border-radius:var(--radius-lg);overflow:hidden;max-height:200px}.staff-blog-image-preview img{width:100%;height:auto;max-height:200px;object-fit:cover;display:block}.staff-blog-form .form-hint{display:block;color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:.35rem}.staff-blog-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);cursor:pointer}.staff-blog-checkbox{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.staff-blog-content-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.staff-blog-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.staff-blog-toggle-btn{padding:.3rem .75rem;min-height:32px;border:none;background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.staff-blog-toggle-btn:not(:last-child){border-right:1px solid var(--color-border)}.staff-blog-toggle-btn:hover{background:var(--color-surface-mid);color:var(--color-text)}.staff-blog-toggle-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.staff-blog-toggle-btn--active{background:var(--color-accent);color:var(--color-on-accent)}.staff-blog-toggle-btn--active:hover{opacity:.85;background:var(--color-accent);color:var(--color-on-accent)}.staff-blog-preview{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:1.25rem;min-height:200px;background:var(--color-surface);overflow-y:auto;max-height:600px}.staff-blog-preview-empty{color:var(--color-text-muted);font-size:var(--font-size-md);font-style:italic}.staff-blog-form-actions{display:flex;align-items:center;gap:1rem}@media(max-width:640px){.staff-blog-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.staff-blog-card{flex-direction:column}.staff-blog-card-actions{width:100%;justify-content:flex-start}.config-adv-toggle{min-height:44px;min-width:44px;padding:.5rem 1rem}.staff-blog-toggle-btn{min-height:44px;padding:.5rem 1rem}}.social-library{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;align-items:start}.social-library__notice,.social-library__empty{color:var(--color-text-muted);padding:2rem 0}.social-library__folders-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.social-library__folders-title{font-family:var(--font-title);font-size:var(--font-size-base);margin:0}.social-library__folder-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.social-library__folder-row{display:flex;align-items:center;gap:.25rem}.social-library__folder{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:none;border:none;border-radius:6px;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);text-align:left;padding:.6rem .75rem;min-height:44px;cursor:pointer;overflow-wrap:anywhere}.social-library__folder:hover{background:var(--color-overlay-light-subtle);color:var(--color-text)}.social-library__folder:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.social-library__folder--active{background:var(--color-accent-subtle);color:var(--color-accent)}.social-library__folder-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.social-library__folder-action{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;min-width:32px;min-height:32px;border-radius:4px}.social-library__folder-action:hover{color:var(--color-text);background:var(--color-overlay-light-subtle)}.social-library__folder-action:focus-visible{outline:2px solid var(--color-accent)}.social-library__main{border:2px dashed transparent;border-radius:10px;padding:.5rem;min-height:300px}.social-library__main--dragover{border-color:var(--color-accent);background:var(--color-accent-subtle)}.social-library__toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.social-library__hint{color:var(--color-text-muted);font-size:var(--font-size-md);margin:0}.social-library__error{color:var(--color-red-text);font-size:var(--font-size-md)}.social-library__uploads{list-style:none;margin:0 0 1rem;padding:0;color:var(--color-text-muted);font-size:var(--font-size-md)}.social-library__upload--error{color:var(--color-red-text)}.social-library__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.social-library__cell{position:relative;display:block;width:100%;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:var(--color-surface);cursor:pointer}.social-library__cell img{width:100%;height:100%;object-fit:cover}.social-library__cell:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.social-library__cell--active{border-color:var(--color-accent)}.social-library__cell--retired{opacity:.45}.social-library__badge{position:absolute;top:6px;right:6px;background:var(--color-overlay-dark);color:var(--color-gold);border-radius:4px;font-size:var(--font-size-xs);padding:.1rem .35rem}.social-library__badge--retired{color:var(--color-text-muted)}.social-library__badge--video{top:auto;right:auto;bottom:6px;left:6px;color:var(--color-text)}.social-library__cell-state{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:.5rem;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.social-drawer__video{width:100%;aspect-ratio:16 / 9;object-fit:contain;border-radius:8px;background:var(--color-surface);max-height:320px}.social-drawer{position:fixed;top:var(--header-height, 60px);right:0;bottom:0;width:min(360px,100vw);background:var(--color-bg-card);border-left:1px solid var(--color-border);padding:1.25rem;overflow-y:auto;z-index:200;display:flex;flex-direction:column;gap:.75rem}.social-drawer__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.social-drawer__title{font-family:var(--font-title);font-size:var(--font-size-base);margin:0;overflow-wrap:anywhere}.social-drawer__close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;min-width:44px;min-height:44px;border-radius:6px}.social-drawer__close:hover{color:var(--color-text)}.social-drawer__close:focus-visible{outline:2px solid var(--color-accent)}.social-drawer>*{flex-shrink:0}.social-drawer__preview{position:relative;display:block;width:100%;padding:0;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;cursor:crosshair;background:var(--color-surface)}.social-drawer__preview img{display:block;width:100%;height:auto}.social-drawer__preview:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.social-drawer__focal{position:absolute;width:18px;height:18px;border:2px solid var(--color-accent);border-radius:50%;background:color-mix(in srgb,var(--color-accent) 35%,transparent);transform:translate(-50%,-50%);pointer-events:none}.social-drawer__help{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.social-drawer__meta{display:flex;gap:1.5rem;margin:0;font-size:var(--font-size-md)}.social-drawer__meta dt{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}.social-drawer__meta dd{margin:.15rem 0 0}.social-drawer__label{font-size:var(--font-size-md);font-weight:600}.social-drawer__input{width:100%;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:6px;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);padding:.6rem .75rem;min-height:44px}.social-drawer__input:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.social-drawer__textarea{resize:vertical;min-height:80px}.social-drawer__toggles{display:flex;flex-direction:column;gap:.5rem}.social-drawer__toggle{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);min-height:44px}.social-drawer__delete{color:var(--color-red-text);border-color:var(--color-red);align-self:flex-start}@media(max-width:900px){.social-library{grid-template-columns:1fr}.social-library__folder-list{flex-direction:row;flex-wrap:wrap}}.social-post-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-modal);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:250}.social-post-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;width:min(720px,100%);max-height:90vh;overflow-y:auto;padding:1.25rem}.social-post-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.social-post-modal__title{font-family:var(--font-title);font-size:var(--font-size-lg);margin:0;text-transform:capitalize}.social-post-modal__close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;min-width:44px;min-height:44px;border-radius:6px}.social-post-modal__close:hover{color:var(--color-text)}.social-post-modal__close:focus-visible{outline:2px solid var(--color-accent)}.social-post-modal__error{color:var(--color-red-text);font-size:var(--font-size-md)}.social-post-modal__renders{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.social-post-modal__render{margin:0}.social-post-modal__render img{border-radius:8px;border:1px solid var(--color-border);display:block}.social-post-modal__render--feed img,.social-post-modal__render--feed video{width:220px;aspect-ratio:4 / 5;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);display:block}.social-post-modal__render--story img,.social-post-modal__render--story video{width:160px;aspect-ratio:9 / 16;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);display:block}.social-post-modal__render figcaption{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:.25rem}.social-post-modal__subhead{font-family:var(--font-title);font-size:var(--font-size-base);margin:1rem 0 .35rem}.social-post-modal__caption{white-space:pre-wrap;font-size:var(--font-size-md);margin:0}.social-post-modal__meta{display:flex;gap:1.5rem;flex-wrap:wrap;margin:.75rem 0 0;font-size:var(--font-size-md)}.social-post-modal__meta dt{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}.social-post-modal__meta dd{margin:.15rem 0 0}.social-post-modal__pubs,.social-post-modal__history{list-style:none;margin:0;padding:0;font-size:var(--font-size-md);display:flex;flex-direction:column;gap:.35rem}.social-post-modal__pub{display:flex;gap:.75rem;flex-wrap:wrap;align-items:baseline}.social-post-modal__pub a{color:var(--color-accent)}.social-post-modal__pub--failed{color:var(--color-red-text)}.social-post-modal__pub-error{flex-basis:100%;color:var(--color-red-text);font-size:var(--font-size-sm)}.social-post-modal__actions{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}.social-post-modal__reschedule{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.social-post-modal__reschedule label{font-size:var(--font-size-sm);font-weight:600;flex-basis:100%}.social-post-modal__reschedule input{background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:6px;color:var(--color-text);font-family:var(--font-body);padding:.5rem .6rem;min-height:44px}.social-post-modal__reschedule input:focus-visible{outline:2px solid var(--color-accent)}.social-post-modal__cancel{color:var(--color-red-text);border-color:var(--color-red)}.social-calendar__nav{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.social-calendar__month{font-family:var(--font-title);font-size:var(--font-size-lg);margin:0;min-width:12ch;text-align:center}.social-calendar__nav-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);min-width:44px;min-height:44px;cursor:pointer}.social-calendar__nav-btn:hover{border-color:var(--color-accent)}.social-calendar__nav-btn:focus-visible{outline:2px solid var(--color-accent)}.social-calendar__error{color:var(--color-red-text)}.social-calendar__empty{color:var(--color-text-muted);padding:1.5rem 0}.social-calendar__scroll{overflow-x:auto}.social-calendar__grid{width:100%;min-width:640px;border-collapse:collapse;table-layout:fixed}.social-calendar__grid th{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;padding:.5rem .25rem;text-align:left}.social-calendar__cell{vertical-align:top;border:1px solid var(--color-border);padding:.35rem;height:96px}.social-calendar__cell--outside{opacity:.35}.social-calendar__cell--today .social-calendar__daynum{color:var(--color-accent);font-weight:700}.social-calendar__daynum{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:.25rem}.social-calendar__post{display:flex;align-items:center;gap:.35rem;width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-text-muted);border-radius:6px;color:var(--color-text);font-size:var(--font-size-2xs);padding:.2rem .3rem;margin-bottom:.25rem;cursor:pointer;overflow:hidden;min-height:44px}.social-calendar__post img{width:28px;height:28px;object-fit:cover;border-radius:4px;flex-shrink:0}.social-calendar__post-video{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-2xs);flex-shrink:0}.social-calendar__post-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-calendar__post:focus-visible{outline:2px solid var(--color-accent)}.social-calendar__post--approved{border-left-color:var(--color-gold)}.social-calendar__post--awaiting_approval,.social-calendar__post--drafting{border-left-color:var(--color-text-muted);border-style:dashed}.social-calendar__post--published{border-left-color:var(--color-accent)}.social-calendar__post--publishing{border-left-color:var(--color-gold)}.social-calendar__post--failed,.social-calendar__post--partially_published{border-left-color:var(--color-red)}.social-calendar__post--rejected,.social-calendar__post--expired,.social-calendar__post--cancelled{opacity:.5}.social-templates{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:2rem;align-items:start}.social-templates__empty{color:var(--color-text-muted);padding:2rem 0}.social-templates__controls{display:flex;flex-direction:column;gap:.6rem}.social-templates__label{font-size:var(--font-size-md);font-weight:600}.social-templates__input{width:100%;background:var(--color-surface);border:1px solid var(--color-field-border);border-radius:6px;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);padding:.6rem .75rem;min-height:44px}.social-templates__input:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.social-templates__desc{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.social-templates__error{color:var(--color-red-text);font-size:var(--font-size-md)}.social-templates__photos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.5rem}.social-templates__photo{display:block;width:100%;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;background:var(--color-surface);cursor:pointer;color:var(--color-text-muted);font-size:var(--font-size-xs)}.social-templates__photo img{width:100%;height:100%;object-fit:cover}.social-templates__photo--active{border-color:var(--color-accent)}.social-templates__photo:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.social-templates__format-tabs{display:flex;gap:.25rem;margin-bottom:.75rem}.social-templates__format{background:none;border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:600;padding:.5rem 1rem;min-height:44px;cursor:pointer}.social-templates__format--active{color:var(--color-accent);border-color:var(--color-accent)}.social-templates__format:focus-visible{outline:2px solid var(--color-accent)}.social-templates__frame{position:relative;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-bg-dark)}.social-templates__frame iframe{border:0;transform-origin:top left;pointer-events:none}.social-templates__back{position:absolute;top:8px;right:8px;background:var(--color-overlay-dark);color:var(--color-text);border:none;border-radius:6px;padding:.4rem .75rem;min-height:44px;cursor:pointer}.social-templates__back:focus-visible{outline:2px solid var(--color-accent)}@media(max-width:900px){.social-templates{grid-template-columns:1fr}}.social-tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border);overflow-x:auto}.social-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;padding:.75rem 1rem;min-height:44px;cursor:pointer;white-space:nowrap}.social-tab:hover{color:var(--color-text)}.social-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.social-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.atmos-status-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.atmos-status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border-radius:var(--radius-pill);font-size:var(--font-size-md);font-weight:600;border:1px solid var(--color-border);color:var(--color-text)}.atmos-status-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);background:var(--color-text-muted)}.atmos-status-badge--online .atmos-status-dot{background:var(--color-success)}.atmos-status-badge--online{background:var(--color-success-subtle)}.atmos-status-badge--offline .atmos-status-dot{background:var(--color-danger-light)}.atmos-status-badge--offline{background:var(--color-danger-subtle)}.atmos-status-updated{color:var(--color-text-muted);font-size:var(--font-size-md)}.atmos-offline-note,.atmos-empty{color:var(--color-text-muted);margin:.5rem 0 1rem;max-width:60ch}.atmos-error{color:var(--color-danger-light);margin:.5rem 0 1rem}.atmos-layer-list{display:grid;gap:.75rem;margin-bottom:1.5rem}.atmos-layer-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.9rem 1rem}.atmos-layer-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.6rem}.atmos-layer-name{font-size:var(--font-size-base);font-weight:700;margin:0;overflow-wrap:anywhere}.atmos-layer-priority{color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap}.atmos-state-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.atmos-state-btn{min-height:44px;padding:.5rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;transition:var(--transition-fast);max-width:100%;overflow-wrap:anywhere}.atmos-state-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.atmos-state-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.atmos-state-btn:disabled{opacity:.5;cursor:not-allowed}.atmos-state-btn--active{background:var(--color-accent-subtle);border-color:var(--color-accent-border);color:var(--color-accent);font-weight:700}.atmos-state-btn--off{color:var(--color-text-muted)}.atmos-section-heading{font-size:var(--font-size-base);font-weight:700;margin:0 0 .6rem}.atmos-presets{margin-bottom:1.5rem}.atmos-danger-row{border-top:1px solid var(--color-border);padding-top:1rem}.atmos-agent-form{margin-bottom:1.25rem}.atmos-agent-label{display:block;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-muted);margin-bottom:.35rem}.atmos-agent-form-row{display:flex;gap:.5rem;flex-wrap:wrap}.atmos-agent-input{flex:1 1 220px;min-height:44px;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--color-field-border);background:var(--color-bg-card);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base)}.atmos-agent-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.atmos-token-reveal{background:var(--color-bg-card);border:1px solid var(--color-accent-border);border-radius:var(--radius-md);padding:.9rem 1rem;margin-bottom:1.25rem}.atmos-token-note{margin:0 0 .6rem;color:var(--color-text-muted);font-size:var(--font-size-md);max-width:70ch}.atmos-token-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.atmos-token-value{flex:1 1 260px;font-size:var(--font-size-sm);padding:.5rem;background:var(--color-bg);border-radius:var(--radius-xs);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}@media(max-width:640px){.atmos-layer-header{flex-direction:column;align-items:flex-start;gap:.15rem}}.atmos-config-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.atmos-config-toolbar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.atmos-config-version{color:var(--color-text-muted);font-size:var(--font-size-md)}.atmos-config-ok{color:var(--color-success);margin:.5rem 0 1rem}.atmos-config-hint,.atmos-cfg-note{color:var(--color-text-muted);font-size:var(--font-size-md);margin:.25rem 0 .75rem;max-width:70ch}.atmos-config-layers{display:grid;gap:.75rem}.atmos-config-add-row{margin-top:.75rem}.atmos-cfg-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.atmos-cfg-card-header{display:flex;align-items:center;gap:.5rem}.atmos-cfg-card-toggle{flex:1;display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;background:none;border:none;color:var(--color-text);font-family:var(--font-body);text-align:left;padding:.85rem 1rem;min-height:44px;cursor:pointer}.atmos-cfg-card-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.atmos-cfg-card-name{font-weight:700;overflow-wrap:anywhere}.atmos-cfg-card-meta{color:var(--color-text-muted);font-size:var(--font-size-sm)}.atmos-cfg-card-actions{display:flex;gap:.25rem;padding-right:.75rem}.atmos-cfg-card-body{border-top:1px solid var(--color-border);padding:1rem;display:grid;gap:1.25rem}.atmos-cfg-card-footer{display:flex;gap:.5rem;border-top:1px solid var(--color-border);padding-top:.9rem}.atmos-cfg-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.atmos-cfg-field{display:grid;gap:.3rem;font-size:var(--font-size-md);color:var(--color-text-muted)}.atmos-cfg-field input[type=text],.atmos-cfg-field input[type=number],.atmos-cfg-field input[type=search],.atmos-cfg-field select,.atmos-cfg-field textarea{min-height:40px;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--color-field-border);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);width:100%}.atmos-cfg-field textarea{resize:vertical}.atmos-cfg-field input:focus-visible,.atmos-cfg-field select:focus-visible,.atmos-cfg-field textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.atmos-cfg-check{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);color:var(--color-text);min-height:32px}.atmos-cfg-heading{font-size:var(--font-size-base);font-weight:700;margin:0 0 .5rem}.atmos-cfg-state-chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.atmos-cfg-state-chip{display:inline-flex;align-items:center;gap:.15rem;border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:.15rem .35rem .15rem .7rem}.atmos-cfg-state-name{background:none;border:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;padding:.35rem .2rem}.atmos-cfg-rename-input{min-height:40px;padding:.3rem .6rem;border-radius:var(--radius-pill);border:1px solid var(--color-accent-border);background:var(--color-bg);color:var(--color-text)}.atmos-cfg-add-state{display:flex;gap:.4rem;align-items:center}.atmos-cfg-add-state input{min-height:40px;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--color-field-border);background:var(--color-bg);color:var(--color-text);width:10rem}.atmos-icon-btn{min-width:32px;min-height:32px;border:none;background:none;color:var(--color-text-muted);border-radius:var(--radius-xs);cursor:pointer;font-size:var(--font-size-base)}.atmos-icon-btn:hover:not(:disabled){color:var(--color-accent)}.atmos-icon-btn:disabled{opacity:.4;cursor:not-allowed}.atmos-icon-btn:focus-visible{outline:2px solid var(--color-accent)}.atmos-icon-btn--danger:hover:not(:disabled){color:var(--color-danger-light)}.atmos-cfg-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.atmos-cfg-settings-cell{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.75rem;display:grid;gap:.5rem}.atmos-cfg-settings-state{font-size:var(--font-size-md);font-weight:700;margin:0}.atmos-cfg-mappings-toolbar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.atmos-cfg-mappings-toolbar input[type=search]{min-height:40px;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--color-field-border);background:var(--color-bg);color:var(--color-text);flex:1 1 160px;max-width:240px}.atmos-cfg-grid-wrap{overflow-x:auto;margin-top:.5rem}.atmos-cfg-grid{border-collapse:collapse;min-width:100%}.atmos-cfg-grid th,.atmos-cfg-grid td{border:1px solid var(--color-border);padding:.4rem .5rem;text-align:left;font-size:var(--font-size-md)}.atmos-cfg-grid-light{min-width:140px;max-width:220px;overflow-wrap:anywhere;font-weight:600}.atmos-cfg-grid-cell{position:relative;min-width:96px}.atmos-cfg-cell-empty{width:44px;height:44px;border:1px dashed var(--color-border);border-radius:var(--radius-xs);background:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-lg)}.atmos-cfg-cell-empty:hover{border-color:var(--color-accent);color:var(--color-accent)}.atmos-cfg-cell-swatch{width:44px;height:44px;border:1px solid var(--color-border);border-radius:var(--radius-xs);cursor:pointer;position:relative}.atmos-cfg-cell-swatch:focus-visible,.atmos-cfg-cell-empty:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.atmos-cfg-badge{position:absolute;top:-6px;right:-6px;background:var(--color-bg-dark);color:var(--color-text);border-radius:var(--radius-full);font-size:var(--font-size-2xs);padding:0 3px;line-height:1.3}.atmos-cfg-badge+.atmos-cfg-badge{top:10px}.atmos-cfg-cell-editor{position:absolute;z-index:20;top:calc(100% + 4px);left:0;width:240px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.75rem;display:grid;gap:.6rem}.atmos-cfg-cell-editor-row{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.atmos-cfg-segmented{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.atmos-cfg-segmented button{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-md);padding:.4rem .8rem;min-height:36px;cursor:pointer}.atmos-cfg-segmented button.is-active{background:var(--color-accent-subtle);color:var(--color-accent);font-weight:700}.atmos-cfg-hex{flex:1;min-height:40px;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:var(--font-size-md)}.atmos-cfg-addlights{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.75rem;display:grid;gap:.6rem;margin-top:.5rem}.atmos-cfg-addlights-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.25rem;max-height:220px;overflow-y:auto}.atmos-history-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-dark);display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.atmos-history-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:640px;width:100%;max-height:80vh;overflow-y:auto;padding:1rem}.atmos-history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.atmos-history-header h2{font-size:var(--font-size-lg);margin:0}@media(max-width:640px){.atmos-cfg-fields{grid-template-columns:1fr}.atmos-icon-btn{min-width:44px;min-height:44px}.atmos-cfg-segmented button{min-height:44px}}.atmos-tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border);overflow-x:auto}.atmos-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:600;padding:.75rem 1rem;min-height:44px;cursor:pointer;white-space:nowrap}.atmos-tab:hover{color:var(--color-text)}.atmos-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.atmos-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.multi-image-upload{display:flex;flex-direction:column;gap:.75rem}.multi-image-thumbnails{display:flex;flex-wrap:wrap;gap:.75rem}.multi-image-thumb{position:relative;width:100px;height:100px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.multi-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.multi-image-remove{position:absolute;top:2px;right:2px;background:var(--color-bg-dark);color:var(--color-text);border:none;border-radius:var(--radius-full);min-width:44px;min-height:44px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);cursor:pointer;line-height:1;opacity:.85;transition:opacity var(--transition-fast)}.multi-image-remove:hover{opacity:1}.multi-image-remove:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:640px){.multi-image-thumb{width:80px;height:80px}}.staff-store-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh}.staff-store-inner{max-width:800px;margin:0 auto}.staff-store-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:2rem}.staff-store-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.staff-store-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.staff-store-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem}.staff-store-card-info{flex:1;min-width:0}.staff-store-card-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:.35rem}.staff-store-card-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.35rem}.staff-store-status{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.staff-store-status--active{background:var(--color-accent);color:var(--color-on-accent)}.staff-store-status--inactive{background:var(--color-surface-mid);color:var(--color-text-muted)}.staff-store-price{font-family:var(--font-title);font-weight:700;color:var(--color-gold);font-size:var(--font-size-md)}.staff-store-image-count{color:var(--color-text-muted);font-size:var(--font-size-sm)}.staff-store-card-desc{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin-top:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.staff-store-card-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.staff-store-add{margin-top:.5rem}.staff-store-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.staff-store-form-title{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-lg)}.staff-store-textarea{resize:vertical;min-height:100px;font-family:var(--font-body);line-height:1.7}.staff-store-checkbox-group{display:flex;align-items:center}.staff-store-checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);cursor:pointer;color:var(--color-text)}.staff-store-checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer}.staff-store-form .form-hint{display:block;color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:.35rem}.staff-store-form-actions{display:flex;align-items:center;gap:1rem}.staff-store-question-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.staff-store-question-row .form-input{flex:1}.staff-store-question-required{flex-shrink:0;font-size:var(--font-size-sm);white-space:nowrap}.staff-store-question-row .data-delete-btn{flex-shrink:0}@media(max-width:640px){.staff-store-section{padding:var(--section-pad-mobile);padding-top:calc(56px + 2rem)}.staff-store-card{flex-direction:column}.staff-store-card-actions{width:100%;justify-content:flex-start}.staff-store-question-row{flex-wrap:wrap}.staff-store-question-row .form-input{width:100%}}.orders-cell-customer{display:flex;flex-direction:column;gap:.125rem;min-width:120px}.orders-customer-name{font-weight:600;color:var(--color-text)}.orders-customer-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.orders-cell-product{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-cell-amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.orders-cell-total{font-weight:700}.orders-payment-alert{display:block;font-size:var(--font-size-2xs);font-weight:600;color:var(--color-red-text);margin-top:.15rem;line-height:1.2}.orders-cell-artist{color:var(--color-text-muted);font-size:var(--font-size-md)}.orders-row-clickable{cursor:pointer;transition:background var(--transition-base)}.orders-row-clickable:hover{background:var(--color-surface-mid)}.orders-row-clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.orders-badge--pending{background:var(--color-gold);color:var(--color-bg-dark)}.orders-badge--todo{background:var(--color-accent);color:var(--color-bg-dark)}.orders-badge--working_on{background:var(--color-purple);color:var(--color-white)}.orders-badge--ready{background:var(--color-success);color:var(--color-bg-dark)}.orders-badge--delivered{background:var(--color-surface-mid);color:var(--color-text-muted)}.orders-badge--paid{background:var(--color-accent);color:var(--color-on-accent)}.orders-status-select{font-size:var(--font-size-md);padding:.4rem .6rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;min-width:130px}.orders-status-select:focus{outline:2px solid var(--color-accent);outline-offset:1px}.orders-back-btn{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;padding:.5rem 0;margin-bottom:1rem;font-family:var(--font-body);min-height:44px;display:inline-flex;align-items:center;transition:color var(--transition-base)}.orders-back-btn:hover{color:var(--color-text)}.orders-back-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.orders-loading{color:var(--color-text-muted);font-size:var(--font-size-md)}.orders-detail{display:flex;flex-direction:column;gap:1.5rem}.orders-detail-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem}.orders-detail-heading{font-family:var(--font-title);font-weight:700;font-size:var(--font-size-base);margin-bottom:1rem}.orders-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.orders-detail-field{display:flex;flex-direction:column;gap:.2rem}.orders-detail-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.orders-detail-value{font-size:var(--font-size-md);color:var(--color-text)}.orders-detail-total{font-weight:700;color:var(--color-gold)}.orders-detail-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.orders-detail-controls{display:flex;gap:1.5rem;flex-wrap:wrap}.orders-detail-control{display:flex;flex-direction:column;gap:.35rem}.orders-detail-answers{display:flex;flex-direction:column;gap:1rem}.orders-detail-answer{display:flex;flex-direction:column;gap:.25rem}.orders-detail-question{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.orders-detail-answer-text{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:1.5;white-space:pre-wrap}.orders-comments-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.orders-comment{background:var(--color-bg-dark);border-radius:var(--radius-sm);padding:.75rem 1rem}.orders-comment-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.35rem;flex-wrap:wrap}.orders-comment-author{font-weight:600;font-size:var(--font-size-md);color:var(--color-text)}.orders-comment-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.orders-comment-text{font-size:var(--font-size-md);line-height:1.5;color:var(--color-text);white-space:pre-wrap}.orders-comment-form{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.orders-comment-input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);line-height:1.5;resize:vertical;min-height:60px;box-sizing:border-box}.orders-comment-input:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent)}.orders-comment-form .btn{align-self:flex-start}@media(max-width:900px){.orders-cell-product{max-width:140px}.orders-detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.orders-cell-product{max-width:110px}.orders-cell-customer{min-width:90px}.orders-status-select{min-width:100px;font-size:var(--font-size-sm)}.orders-detail-grid{grid-template-columns:1fr}.orders-detail-controls{flex-direction:column;gap:1rem}}.public-signup{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:2rem 1rem}.public-signup__container{width:100%;max-width:480px}.public-signup__header{text-align:center;margin-bottom:2rem}.public-signup__logo{display:block;margin:0 auto 1.5rem;height:auto;max-width:220px}.public-signup__title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text);margin:0 0 .5rem}.public-signup__subtitle{color:var(--color-text-muted);font-size:var(--font-size-base);margin:0;line-height:1.5}.public-signup__form{display:flex;flex-direction:column;gap:1.25rem}.public-signup__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}.public-signup__field{display:flex;flex-direction:column;gap:.375rem}.public-signup__label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.public-signup__label span[aria-hidden]{color:var(--color-accent)}.public-signup__optional{font-weight:400;color:var(--color-text-muted)}.public-signup__input{padding:.75rem 1rem;border-radius:8px;border:1px solid var(--color-field-border);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-base);font-family:inherit;transition:border-color .2s;min-height:44px}.public-signup__input::placeholder{color:var(--color-text-muted);opacity:.6}.public-signup__input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-subtle)}.public-signup__input--error{border-color:var(--color-red)}.public-signup__field-error{font-size:var(--font-size-sm);color:var(--color-red-text);margin:0}.public-signup__error{background:var(--color-red-subtle);color:var(--color-red-text);padding:.75rem 1rem;border-radius:8px;font-size:var(--font-size-md);margin:0}.public-signup__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:var(--color-overlay-modal);padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.public-signup__modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2.5rem 2rem;text-align:center;max-width:400px;width:100%;animation:public-signup-fade-in .25s ease-out}@keyframes public-signup-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.public-signup__modal-icon{width:64px;height:64px;border-radius:50%;background:var(--color-success-subtle);color:var(--color-success);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);margin:0 auto 1.25rem}.public-signup__modal-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text);margin:0 0 .5rem}.public-signup__modal-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.5;margin:0 0 1.5rem}@media(max-width:640px){.public-signup{padding:3rem 1rem 1.5rem;align-items:flex-start}.public-signup__title{font-size:var(--font-size-2xl)}.public-signup__modal{padding:2rem 1.5rem}}.fundraise{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;background:var(--color-bg);transition:background .6s ease}.fundraise--has-credits{background:linear-gradient(135deg,color-mix(in srgb,var(--color-gold) 35%,transparent) 0%,var(--color-bg) 50%,color-mix(in srgb,var(--color-gold) 25%,transparent) 100%);animation:fundraise-bg-pulse 2.5s ease-in-out infinite}@keyframes fundraise-bg-pulse{0%,to{background:linear-gradient(135deg,color-mix(in srgb,var(--color-gold) 35%,transparent) 0%,var(--color-bg) 50%,color-mix(in srgb,var(--color-gold) 25%,transparent) 100%);box-shadow:inset 0 0 120px color-mix(in srgb,var(--color-gold) 8%,transparent)}50%{background:linear-gradient(135deg,color-mix(in srgb,var(--color-gold) 55%,transparent),color-mix(in srgb,var(--color-gold) 10%,transparent) 40%,color-mix(in srgb,var(--color-gold) 10%,transparent) 60%,color-mix(in srgb,var(--color-gold) 45%,transparent));box-shadow:inset 0 0 200px color-mix(in srgb,var(--color-gold) 18%,transparent)}}.fundraise-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:0;padding:3rem}.fundraise-slide{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;opacity:0;transition:opacity .8s ease;pointer-events:none}.fundraise-slide--active{opacity:1;pointer-events:auto}.fundraise-slide-title{font-family:var(--font-heading, "Cinzel", serif);font-size:var(--font-size-display);color:var(--color-gold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.5rem;text-align:center}.fundraise-slide-text{font-size:var(--font-size-title);color:var(--color-text-muted);text-align:center;max-width:50rem;line-height:1.6;margin-bottom:2rem}.fundraise-carousel{display:flex;gap:1.5rem;overflow-x:hidden;padding:1rem 6rem;max-width:100%;scrollbar-width:none;-ms-overflow-style:none;justify-content:center;transition:transform .6s ease}.fundraise-carousel::-webkit-scrollbar{display:none}.fundraise-cast-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);border-radius:1rem;padding:1.25rem 1.5rem;min-width:160px;flex-shrink:0;transition:border-color .4s ease,transform .4s ease,opacity .4s ease;opacity:.5}.fundraise-cast-card--active{border-color:var(--color-gold);transform:scale(1.1);opacity:1;box-shadow:0 0 30px color-mix(in srgb,var(--color-gold) 15%,transparent)}.fundraise-cast-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--color-border)}.fundraise-cast-card--active .fundraise-cast-avatar{border-color:var(--color-gold)}.fundraise-cast-name{font-weight:600;font-size:var(--font-size-xl);margin-top:.25rem;white-space:nowrap}.fundraise-cast-handle{font-size:var(--font-size-base);color:var(--color-text-muted)}.fundraise-qr-arrow{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:1rem;animation:fundraise-bounce 2s ease-in-out infinite}.fundraise-qr-label{font-size:var(--font-size-2xl);color:var(--color-gold);font-weight:600}@keyframes fundraise-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}.fundraise-reward-card{display:flex;flex-direction:column;align-items:center;gap:1rem;background:var(--color-surface);border:3px solid var(--color-gold);border-radius:1.25rem;padding:2.5rem 3rem;margin-bottom:2rem;max-width:40rem;text-align:center;box-shadow:0 0 60px color-mix(in srgb,var(--color-gold) 12%,transparent)}.fundraise-reward-badge{display:inline-block;font-family:var(--font-heading, "Cinzel", serif);font-size:var(--font-size-2xl);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-bg);background:var(--color-gold);padding:.4rem 1.5rem;border-radius:2rem}.fundraise-reward-text{font-size:var(--font-size-lead);color:var(--color-text);line-height:1.6}.fundraise-reward-text strong{color:var(--color-gold)}.fundraise-crit-row{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:2rem}.fundraise-crit{font-family:var(--font-heading, "Cinzel", serif);font-size:var(--font-size-title);font-weight:700;padding:.8rem 2rem;border-radius:.75rem;text-transform:uppercase;letter-spacing:.04em}.fundraise-crit--success{color:var(--color-success);border:3px solid var(--color-success);background:var(--color-success-subtle)}.fundraise-crit--fail{color:var(--color-red-text);border:3px solid var(--color-red);background:var(--color-red-subtle)}.fundraise-crit-or{color:var(--color-text-muted);font-size:var(--font-size-2xl)}.fundraise-credits-remaining{text-align:center;color:var(--color-text);font-size:var(--font-size-2xl)}.fundraise-credits-count{font-weight:700;font-size:var(--font-size-3xl);color:var(--color-gold)}.fundraise-power-banner{position:absolute;bottom:4rem;left:50%;transform:translate(-50%);background:color-mix(in srgb,var(--color-gold) 12%,transparent);border:2px solid var(--color-gold);border-radius:2rem;padding:.6rem 2rem;animation:fundraise-banner-glow 2s ease-in-out infinite}.fundraise-power-banner-text{font-size:var(--font-size-lg);color:var(--color-gold);font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:.75rem}.fundraise-power-banner-count{font-size:var(--font-size-base);color:var(--color-text-muted);font-weight:400}@keyframes fundraise-banner-glow{0%,to{box-shadow:0 0 10px color-mix(in srgb,var(--color-gold) 10%,transparent)}50%{box-shadow:0 0 25px color-mix(in srgb,var(--color-gold) 25%,transparent)}}.fundraise-dots{position:absolute;bottom:2rem;display:flex;gap:.75rem}.fundraise-dot{width:12px;height:12px;border-radius:50%;background:var(--color-text-muted);opacity:.35;transition:opacity .3s ease,background .3s ease}.fundraise-dot--active{opacity:1;background:var(--color-gold)}.fundraise-overlay-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.fundraise-overlay{display:block;border:none;background:transparent;pointer-events:none;width:1920px;height:1080px;transform-origin:top left}.fundraise-controls-toggle{position:fixed;top:.5rem;right:.5rem;z-index:10;background:color-mix(in srgb,var(--color-black) 70%,transparent);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:.4rem;padding:.25rem .6rem;font-size:var(--font-size-2xs);cursor:pointer;opacity:.4;transition:opacity .2s;pointer-events:auto}.fundraise-controls-toggle:hover{opacity:1}.fundraise-controls{position:fixed;top:.5rem;right:.5rem;z-index:10;background:color-mix(in srgb,var(--color-black) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:.75rem;padding:.75rem 1rem;width:220px;pointer-events:auto;display:flex;flex-direction:column;gap:.5rem}.fundraise-controls-header{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-gold)}.fundraise-controls-header button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-md);padding:0;line-height:1}.fundraise-controls label{display:flex;flex-direction:column;font-size:var(--font-size-2xs);color:var(--color-text-muted);gap:.15rem}.fundraise-controls input[type=range]{width:100%;height:4px;accent-color:var(--color-gold);cursor:pointer}.fundraise-controls-reset{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:.4rem;padding:.25rem 0;font-size:var(--font-size-2xs);cursor:pointer;margin-top:.25rem}.fundraise-controls-reset:hover{color:var(--color-text);border-color:var(--color-gold)}@media(max-width:640px){.fundraise-bg{padding:1.5rem}.fundraise-slide{padding:2rem 1.5rem}.fundraise-cast-card{padding:1rem;min-width:130px}.fundraise-cast-avatar{width:80px;height:80px}.fundraise-crit{font-size:var(--font-size-lg);padding:.6rem 1.2rem}.fundraise-power-banner{padding:.5rem 1.25rem}.fundraise-power-banner-text{font-size:var(--font-size-md);flex-direction:column;gap:.25rem}}.connect-discord-section{min-height:60vh;padding:8rem 1.5rem 4rem;display:flex;justify-content:center}.connect-discord-inner{width:100%;max-width:560px;text-align:center}.connect-discord-heading{font-family:var(--font-heading);font-size:var(--font-size-3xl);color:var(--color-text);margin:0 0 1rem}.connect-discord-intro{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-muted);margin:0 0 1.5rem}.connect-discord-login{margin-top:1rem}.connect-discord-inner .discord-connect-card{text-align:left}@media(max-width:640px){.connect-discord-section{padding:7rem 1rem 2.5rem}.connect-discord-heading{font-size:var(--font-size-2xl)}}.hiring-scale{max-width:700px;margin:0 auto;text-align:center}.hiring-scale p{color:var(--color-text-muted);font-size:var(--font-size-lead);line-height:1.6}.hiring-scale p+p{margin-top:1rem}.hiring-scale a{color:var(--color-gold);text-decoration:underline}.hiring-note{max-width:700px;margin:2rem auto 0;color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.7;text-align:center}.hiring-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:var(--max-width);margin:0 auto}.hiring-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.hiring-list li{display:flex;gap:.625rem;align-items:flex-start;line-height:1.6}.hiring-list-icon{flex-shrink:0;margin-top:.25rem;color:var(--color-gold)}.hiring-details{max-width:700px;margin:0 auto}@media(max-width:768px){.hiring-columns{grid-template-columns:minmax(0,1fr)}}.email-action{margin-bottom:2rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card)}.email-action-heading{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin-bottom:.5rem}.email-action-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6;margin-bottom:1rem}.email-action-picks{display:flex;flex-direction:column;gap:.75rem;margin:0 0 1.25rem;padding:0;border:none}.email-action-pick{display:flex;align-items:center;gap:.75rem;font-size:var(--font-size-base);cursor:pointer}.email-action-pick input{width:18px;height:18px;accent-color:var(--color-accent)}.email-prefs-section{padding:var(--section-pad);padding-top:calc(60px + 3rem);min-height:80vh;display:flex;justify-content:center}.email-prefs-inner{width:100%;max-width:640px}.email-prefs-title{font-family:var(--font-title);font-size:var(--font-size-title);font-weight:700;margin-bottom:1rem}.email-prefs-text{color:var(--color-text-muted);font-size:var(--font-size-base);line-height:1.6;margin-bottom:1.5rem}.marker-icon{background-color:#fff;border:1px solid #3388ff;border-radius:50%;margin:-8px 0 0 -8px!important;width:14px!important;height:14px!important;outline:0;transition:opacity ease .3s}.marker-icon-middle{opacity:.7;margin:-6px 0 0 -6px!important;width:10px!important;height:10px!important}.leaflet-pm-draggable{cursor:move!important}.cursor-marker{cursor:crosshair;pointer-events:none;opacity:0}.cursor-marker.visible{opacity:1!important}.geoman-draw-cursor,.geoman-draw-cursor .leaflet-interactive{cursor:crosshair}.rect-style-marker,.rect-start-marker{opacity:0}.rect-style-marker.visible,.rect-start-marker.visible{opacity:1!important}.vertexmarker-disabled{opacity:.7}.pm-text-marker{width:0;height:0}.pm-textarea{box-sizing:content-box;background-color:#fff;color:#000;resize:none;border:none;outline:0;cursor:pointer;border-radius:3px;padding-left:7px;padding-bottom:0;padding-top:4px}.leaflet-pm-draggable .pm-textarea{cursor:move}.pm-textarea:focus,.pm-textarea:focus-within,.pm-textarea:focus-visible,.pm-textarea:active{border:2px solid #000;outline:0}.pm-textarea.pm-disabled{border:none;-webkit-user-select:none;user-select:none}.pm-textarea.pm-hasfocus{cursor:auto}.leaflet-pm-touch-hint{position:absolute;top:var(--pm-touch-hint-top, 10px);left:50%;transform:translate(-50%);background:#fffffff2;color:#333;padding:8px 16px;border-radius:4px;box-shadow:0 2px 6px #0003;z-index:1000;font-size:14px;pointer-events:none}.leaflet-pm-toolbar .leaflet-buttons-control-button{padding:5px;box-sizing:border-box;position:relative;z-index:3}.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:first-child:not(.pos-right),.leaflet-pm-toolbar .leaflet-pm-actions-container a.leaflet-pm-action:last-child.pos-right{border-radius:0}.leaflet-pm-toolbar .button-container a.leaflet-buttons-control-button{border-radius:0}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-pm-toolbar .button-container:first-child a.leaflet-buttons-control-button{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-pm-toolbar .button-container:last-child a.leaflet-buttons-control-button{border-bottom:none}.leaflet-pm-toolbar .control-fa-icon{font-size:19px;line-height:24px}.leaflet-pm-toolbar .control-icon{width:100%;height:100%;box-sizing:border-box;background-size:contain;background-repeat:no-repeat;background-position:center center}.leaflet-pm-toolbar .leaflet-pm-icon-marker{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A    <title>Atoms/Icons/Tools/Marker</title>%0A    <desc>Created with Sketch.</desc>%0A    <defs>%0A        <path d="M15.5,24.8782959 C15.2909201,24.8772219 15.1744857,24.8467817 14.6590866,24.2354163 C10.2196955,19.4118054 8,15.5014392 8,12.5043177 C8,8.35979746 11.3578644,5 15.5,5 C19.6421356,5 23,8.35979746 23,12.5043177 C23,17 18.2878217,21.9268378 16.3336601,24.2440186 C15.8224622,24.8501802 15.7090799,24.8793699 15.5,24.8782959 Z M15.5,15.5326948 C17.275201,15.5326948 18.7142857,14.1180004 18.7142857,12.3728864 C18.7142857,10.6277723 17.275201,9.21307792 15.5,9.21307792 C13.724799,9.21307792 12.2857143,10.6277723 12.2857143,12.3728864 C12.2857143,14.1180004 13.724799,15.5326948 15.5,15.5326948 Z" id="path-1"></path>%0A    </defs>%0A    <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">%0A        <g id="Atoms/Icons/Tools/Marker" transform="translate(-3.000000, -3.000000)">%0A            <mask id="mask-2" fill="white">%0A                <use xlink:href="%23path-1"></use>%0A            </mask>%0A            <use id="Mask" fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23path-1"></use>%0A        </g>%0A    </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-polygon{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A  <defs>%0A    <path id="polygon-a" d="M19.4206892,9.16509725 C19.1523681,8.66992914 19,8.10275831 19,7.5 C19,5.56700338 20.5670034,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 L19.4206892,9.16509725 Z M20.8349073,10.5793063 L10.5793108,20.8349027 C10.6086731,20.8890888 10.6366469,20.9441372 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 C20.9441372,10.6366469 20.8890888,10.6086731 20.8349027,10.5793108 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z"/>%0A  </defs>%0A  <g fill="none" fill-rule="evenodd" transform="translate(-3 -3)">%0A    <mask id="polygon-b" fill="%23fff">%0A      <use xlink:href="%23polygon-a"/>%0A    </mask>%0A    <use fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23polygon-a"/>%0A    <g fill="%235B5B5B" mask="url(%23polygon-b)">%0A      <rect width="30" height="30"/>%0A    </g>%0A  </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-polyline{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A  <defs>%0A    <path id="line-a" d="M9.16509725,19.4206892 L18.4206892,10.1650973 C18.1523681,9.66992914 18,9.10275831 18,8.5 C18,6.56700338 19.5670034,5 21.5,5 C23.4329966,5 25,6.56700338 25,8.5 C25,10.4329966 23.4329966,12 21.5,12 C20.8972417,12 20.3300709,11.8476319 19.8349027,11.5793108 L10.5793108,20.8349027 C10.8476319,21.3300709 11,21.8972417 11,22.5 C11,24.4329966 9.43299662,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.5670034 5.56700338,19 7.5,19 C8.10275831,19 8.66992914,19.1523681 9.16509725,19.4206892 Z M21.5,10 C22.3284271,10 23,9.32842712 23,8.5 C23,7.67157288 22.3284271,7 21.5,7 C20.6715729,7 20,7.67157288 20,8.5 C20,9.32842712 20.6715729,10 21.5,10 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z"/>%0A  </defs>%0A  <g fill="none" fill-rule="evenodd" transform="translate(-3 -3)">%0A    <mask id="line-b" fill="%23fff">%0A      <use xlink:href="%23line-a"/>%0A    </mask>%0A    <use fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23line-a"/>%0A    <g fill="%235B5B5B" mask="url(%23line-b)">%0A      <rect width="30" height="30"/>%0A    </g>%0A  </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-circle{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A    <title>Atoms/Icons/Tools/Circle</title>%0A    <desc>Created with Sketch.</desc>%0A    <defs>%0A        <path d="M18.2897751,6.78602275 C18.8924131,6.29464981 19.661797,6 20.5,6 C22.4329966,6 24,7.56700338 24,9.5 C24,10.338203 23.7053502,11.1075869 23.2139772,11.7102249 C23.719599,12.8712053 24,14.1528571 24,15.5 C24,20.7467051 19.7467051,25 14.5,25 C9.25329488,25 5,20.7467051 5,15.5 C5,10.2532949 9.25329488,6 14.5,6 C15.8471429,6 17.1287947,6.28040098 18.2897751,6.78602275 Z M17.1504228,8.4817586 C16.3263581,8.17039236 15.4330777,8 14.5,8 C10.3578644,8 7,11.3578644 7,15.5 C7,19.6421356 10.3578644,23 14.5,23 C18.6421356,23 22,19.6421356 22,15.5 C22,14.5669223 21.8296076,13.6736419 21.5182414,12.8495772 C21.1960383,12.9473968 20.8541622,13 20.5,13 C18.5670034,13 17,11.4329966 17,9.5 C17,9.14583778 17.0526032,8.80396169 17.1504228,8.4817586 Z M14.5,17 C13.6715729,17 13,16.3284271 13,15.5 C13,14.6715729 13.6715729,14 14.5,14 C15.3284271,14 16,14.6715729 16,15.5 C16,16.3284271 15.3284271,17 14.5,17 Z M20.5,11 C21.3284271,11 22,10.3284271 22,9.5 C22,8.67157288 21.3284271,8 20.5,8 C19.6715729,8 19,8.67157288 19,9.5 C19,10.3284271 19.6715729,11 20.5,11 Z" id="path-1"></path>%0A    </defs>%0A    <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">%0A        <g id="Atoms/Icons/Tools/Circle" transform="translate(-3.000000, -3.000000)">%0A            <mask id="mask-2" fill="white">%0A                <use xlink:href="%23path-1"></use>%0A            </mask>%0A            <use id="Mask" fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23path-1"></use>%0A            <g id="Atoms/Color/Grey" mask="url(%23mask-2)" fill="%235B5B5B">%0A                <rect id="Rectangle" x="0" y="0" width="30" height="30"></rect>%0A            </g>%0A        </g>%0A    </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-circle-marker{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A%0A<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" stroke="%235B5B5B" stroke-width="8"%0A     fill="none">%0A<circle cx="50" cy="50" r="35"/>%0A  <circle cx="50" cy="50" r="3" fill="%235B5B5B"/>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rectangle{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A  <defs>%0A    <path id="rectangle-a" d="M23,10.9645556 L23,19.0354444 C24.6961471,19.2780593 26,20.736764 26,22.5 C26,24.4329966 24.4329966,26 22.5,26 C20.736764,26 19.2780593,24.6961471 19.0354444,23 L10.9645556,23 C10.7219407,24.6961471 9.26323595,26 7.5,26 C5.56700338,26 4,24.4329966 4,22.5 C4,20.736764 5.30385293,19.2780593 7,19.0354444 L7,10.9645556 C5.30385293,10.7219407 4,9.26323595 4,7.5 C4,5.56700338 5.56700338,4 7.5,4 C9.26323595,4 10.7219407,5.30385293 10.9645556,7 L19.0354444,7 C19.2780593,5.30385293 20.736764,4 22.5,4 C24.4329966,4 26,5.56700338 26,7.5 C26,9.26323595 24.6961471,10.7219407 23,10.9645556 Z M21,10.6631844 C20.272154,10.3174225 19.6825775,9.72784598 19.3368156,9 L10.6631844,9 C10.3174225,9.72784598 9.72784598,10.3174225 9,10.6631844 L9,19.3368156 C9.72784598,19.6825775 10.3174225,20.272154 10.6631844,21 L19.3368156,21 C19.6825775,20.272154 20.272154,19.6825775 21,19.3368156 L21,10.6631844 Z M7.5,9 C8.32842712,9 9,8.32842712 9,7.5 C9,6.67157288 8.32842712,6 7.5,6 C6.67157288,6 6,6.67157288 6,7.5 C6,8.32842712 6.67157288,9 7.5,9 Z M22.5,9 C23.3284271,9 24,8.32842712 24,7.5 C24,6.67157288 23.3284271,6 22.5,6 C21.6715729,6 21,6.67157288 21,7.5 C21,8.32842712 21.6715729,9 22.5,9 Z M22.5,24 C23.3284271,24 24,23.3284271 24,22.5 C24,21.6715729 23.3284271,21 22.5,21 C21.6715729,21 21,21.6715729 21,22.5 C21,23.3284271 21.6715729,24 22.5,24 Z M7.5,24 C8.32842712,24 9,23.3284271 9,22.5 C9,21.6715729 8.32842712,21 7.5,21 C6.67157288,21 6,21.6715729 6,22.5 C6,23.3284271 6.67157288,24 7.5,24 Z"/>%0A  </defs>%0A  <g fill="none" fill-rule="evenodd" transform="translate(-3 -3)">%0A    <mask id="rectangle-b" fill="%23fff">%0A      <use xlink:href="%23rectangle-a"/>%0A    </mask>%0A    <use fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23rectangle-a"/>%0A    <g fill="%235B5B5B" mask="url(%23rectangle-b)">%0A      <rect width="30" height="30"/>%0A    </g>%0A  </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-delete{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A    <title>Atoms/Icons/Tools/Eraser</title>%0A    <desc>Created with Sketch.</desc>%0A    <defs>%0A        <path d="M17.7874219,18.4812552 L11.6480079,13.3498184 L6.40466009,19.3816001 L10.5539156,22.9884929 L13.86934,22.9884929 L17.7874219,18.4812552 Z M16.5074252,22.9884929 L26.0000002,22.9884929 L26.0000002,24.9884929 L10.0000002,24.9884929 L9.80708313,24.9884929 L5.09254204,20.8910192 C4.25891285,20.1663564 4.17057814,18.9031112 4.89524093,18.069482 L16.0482444,5.23941916 C16.7729072,4.40578998 18.0361525,4.31745526 18.8697816,5.04211806 L24.9074583,10.2905903 C25.7410875,11.0152531 25.8294222,12.2784983 25.1047594,13.1121275 L16.5074252,22.9884929 Z" id="path-1"></path>%0A    </defs>%0A    <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">%0A        <g id="Atoms/Icons/Tools/Eraser" transform="translate(-3.000000, -3.000000)">%0A            <mask id="mask-2" fill="white">%0A                <use xlink:href="%23path-1"></use>%0A            </mask>%0A            <use id="Combined-Shape" fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23path-1"></use>%0A        </g>%0A    </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-edit{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A  <defs>%0A    <path id="edit_anchor-a" d="M13.5,11 C11.5670034,11 10,9.43299662 10,7.5 C10,5.56700338 11.5670034,4 13.5,4 C15.4329966,4 17,5.56700338 17,7.5 C17,9.43299662 15.4329966,11 13.5,11 Z M13.5,9 C14.3284271,9 15,8.32842712 15,7.5 C15,6.67157288 14.3284271,6 13.5,6 C12.6715729,6 12,6.67157288 12,7.5 C12,8.32842712 12.6715729,9 13.5,9 Z M12.0002889,7.52973893 C12.0125983,8.16273672 12.4170197,8.6996643 12.9807111,8.90767966 L3,15 L3,13 L12.0002889,7.52973893 Z M14.2172722,6.18228472 L19.453125,3 L22.6589355,3 L14.989102,7.68173885 C14.9962971,7.62216459 15,7.56151472 15,7.5 C15,6.93138381 14.6836098,6.4366645 14.2172722,6.18228472 Z M23.4434042,19.2851736 L20.1282799,19.2851736 L21.8729983,23.5349525 C21.9945296,23.8295773 21.8556546,24.1599209 21.5778734,24.2849208 L20.0414675,24.9545142 C19.7550613,25.0795141 19.4338738,24.9366704 19.3123426,24.6509518 L17.6544367,20.6154541 L14.9461873,23.4010151 C14.5852811,23.7721711 14,23.4860463 14,22.9992653 L14,9.57183533 C14,9.05933561 14.6225311,8.809492 14.946156,9.17008555 L23.8340292,18.3120179 C24.1925291,18.6613615 23.9279979,19.2851736 23.4434042,19.2851736 Z"/>%0A  </defs>%0A  <g fill="none" fill-rule="evenodd" transform="translate(-3 -3)">%0A    <mask id="edit_anchor-b" fill="%23fff">%0A      <use xlink:href="%23edit_anchor-a"/>%0A    </mask>%0A    <use fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23edit_anchor-a"/>%0A    <g fill="%235B5B5B" mask="url(%23edit_anchor-b)">%0A      <rect width="30" height="30"/>%0A    </g>%0A  </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-drag{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A  <defs>%0A    <path id="move-a" d="M21,14 L21,10 L27,15 L21,20 L21,16 L16,16 L16,21 L20,21 L15,27 L10,21 L14,21 L14,16 L9,16 L9,20 L3,15 L9,10 L9,14 L14,14 L14,9 L10,9 L15,3 L20,9 L16,9 L16,14 L21,14 Z"/>%0A  </defs>%0A  <g fill="none" fill-rule="evenodd" transform="translate(-3 -3)">%0A    <mask id="move-b" fill="%23fff">%0A      <use xlink:href="%23move-a"/>%0A    </mask>%0A    <use fill="%23D8D8D8" xlink:href="%23move-a"/>%0A    <g fill="%235B5B5B" mask="url(%23move-b)">%0A      <rect width="30" height="30"/>%0A    </g>%0A  </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-cut{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->%0A    <title>Atoms/Icons/Tools/Scissors</title>%0A    <desc>Created with Sketch.</desc>%0A    <defs>%0A        <path d="M12.9691574,13.4939435 L21.0317032,5.54167013 L23.4649499,5.67722957 L17.0470713,14.5106816 L27.5660336,17.1333535 L25.7891944,18.8012588 L14.5854951,17.8987506 L13.6487955,19.188007 C13.794639,19.2650958 13.9367985,19.3534417 14.0741377,19.4532245 C15.6379648,20.5894114 15.9846357,22.7782052 14.8484488,24.3420324 C13.7122619,25.9058595 11.5234681,26.2525304 9.95964096,25.1163435 C8.39581384,23.9801565 8.04914296,21.7913627 9.18532986,20.2275356 C9.74587276,19.4560145 10.5626188,18.9807475 11.4341218,18.8336407 L12.6805656,17.1180579 L12.5239724,16.3747216 L11.9506932,15.3012391 L9.89310646,14.7882251 C9.13093796,15.2357261 8.19977854,15.3966447 7.27445355,15.1659352 C5.39887519,14.698301 4.25751094,12.7987519 4.72514515,10.9231736 C5.19277935,9.04759519 7.09232846,7.90623094 8.96790682,8.37386515 C10.8434852,8.84149935 11.9848494,10.7410485 11.5172152,12.6166268 C11.4761464,12.7813449 11.4240335,12.9404001 11.3618627,13.0931999 L12.9691574,13.4939435 Z M7.75829735,13.2253438 C8.56211664,13.4257584 9.37620912,12.9366023 9.57662378,12.132783 C9.77703844,11.3289637 9.28788233,10.5148713 8.48406303,10.3144566 C7.68024373,10.1140419 6.86615126,10.603198 6.6657366,11.4070173 C6.46532194,12.2108366 6.95447805,13.0249291 7.75829735,13.2253438 Z M10.8033639,21.4031061 C10.3164266,22.0733177 10.4649998,23.0113722 11.1352115,23.4983095 C11.8054231,23.9852467 12.7434776,23.8366735 13.2304148,23.1664619 C13.7173521,22.4962502 13.5687788,21.5581957 12.8985672,21.0712585 C12.2283556,20.5843212 11.2903011,20.7328945 10.8033639,21.4031061 Z" id="path-1"></path>%0A    </defs>%0A    <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">%0A        <g id="Atoms/Icons/Tools/Scissors" transform="translate(-3.000000, -3.000000)">%0A            <mask id="mask-2" fill="white">%0A                <use xlink:href="%23path-1"></use>%0A            </mask>%0A            <use id="Mask" fill="%235B5B5B" fill-rule="nonzero" transform="translate(16.093194, 15.663351) rotate(-32.000000) translate(-16.093194, -15.663351) " xlink:href="%23path-1"></use>%0A        </g>%0A    </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-snapping{background-image:url('data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">%0A    <!-- Generator: Sketch 57.1 (83088) - https://sketch.com -->%0A    <title>Atoms/Icons/Tools/Magnet</title>%0A    <desc>Created with Sketch.</desc>%0A    <defs>%0A        <path d="M21.9994759,10.9428183 L21.9999985,16.3710417 C22,16.6872007 22,17.0058278 22,17.3269411 C22,21.5646545 18.6421356,25 14.5,25 C10.3578644,25 7,21.5646545 7,17.3269411 L7.00087508,10.9907507 L11.0022808,10.9984125 C11.0017033,11.6980114 11.001247,12.4168248 11.0008992,13.1554887 L11,17.3269411 C11,19.3756809 12.5876841,21 14.5,21 C16.4123159,21 18,19.3756809 18,17.3269411 C18,15.0702032 17.9995696,12.9619668 17.998539,10.9910032 L21.9994759,10.9428183 Z M10,7 C10.5522847,7 11,7.44771525 11,8 L11,10 L7,10 L7,8 C7,7.44771525 7.44771525,7 8,7 L10,7 Z M21,7 C21.5522847,7 22,7.44771525 22,8 L22,10 L18,10 L18,8 C18,7.44771525 18.4477153,7 19,7 L21,7 Z" id="path-1"></path>%0A    </defs>%0A    <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">%0A        <g id="Atoms/Icons/Tools/Magnet" transform="translate(-3.000000, -3.000000)">%0A            <mask id="mask-2" fill="white">%0A                <use xlink:href="%23path-1"></use>%0A            </mask>%0A            <use id="Mask" fill="%235B5B5B" fill-rule="nonzero" transform="translate(14.500000, 16.000000) rotate(45.000000) translate(-14.500000, -16.000000) " xlink:href="%23path-1"></use>%0A        </g>%0A    </g>%0A</svg>')}.leaflet-pm-toolbar .leaflet-pm-icon-rotate{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24" viewBox="0 0 24 24">%0A    <defs>%0A        <path id="rotate" d="M21.2,5.8c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.3-0.5l-0.1-0.2c-0.1-0.2-0.2-0.3-0.4-0.5l-0.2-0.3l2.8-3.1L18,0.6l-4.6,0.1l0.5,4.5l0.5,4.5l3.2-3.6v0.1l0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.2l0.1,0.2C18,7,18,7.1,18.1,7.2c0.3,0.7,0.6,1.4,0.7,2.1c0.2,1.4,0,2.9-0.6,4.2L18,13.9L17.9,14l-0.3,0.5l-0.1,0.2c-0.2,0.2-0.4,0.5-0.6,0.7c-0.5,0.5-1.1,1-1.7,1.3c-0.6,0.4-1.3,0.6-2.1,0.8c-0.7,0.1-1.5,0.2-2.2,0.1c-0.8-0.1-1.5-0.3-2.2-0.5c-0.7-0.3-1.3-0.7-1.9-1.2l-0.4-0.4l-0.2-0.3L6,15c-0.1-0.1-0.2-0.2-0.2-0.3l-0.3-0.4l-0.1-0.1l-0.2-0.4c0-0.1-0.1-0.1-0.1-0.2l-0.3-0.5l-0.1-0.2c-0.1-0.3-0.2-0.6-0.3-0.9c-0.2-0.8-0.3-1.6-0.3-2.4c0-0.2,0-0.3,0-0.5V8.9c0-0.2,0-0.3,0.1-0.4l0.1-0.6l0.2-0.6c0.3-0.8,0.7-1.5,1.2-2.2c0.5-0.7,1.1-1.3,1.8-1.8c0.2-0.1,0.3-0.4,0.1-0.6C7.5,2.6,7.4,2.5,7.3,2.5H7.1L7,2.6C6.1,3,5.4,3.6,4.7,4.2C4,4.9,3.5,5.7,3,6.6c-0.9,1.8-1.2,3.8-0.8,5.8c0.1,0.5,0.2,0.9,0.3,1.4l0.3,0.8C2.9,14.7,3,14.8,3,15l0.2,0.4c0,0.1,0.1,0.2,0.1,0.2l0.3,0.5c0.1,0.2,0.2,0.3,0.3,0.5l0.1,0.2c0.1,0.1,0.2,0.3,0.3,0.4L5,17.8c0.7,0.7,1.6,1.3,2.5,1.8c0.9,0.5,1.9,0.8,3,0.9c0.5,0.1,1,0.1,1.5,0.1c0.6,0,1.1,0,1.6-0.1c1-0.2,2.1-0.5,3-1l0.2-0.1c0.2-0.1,0.3-0.2,0.5-0.3l0.7-0.4c0.2-0.1,0.3-0.2,0.4-0.3l0.2-0.2c0.2-0.1,0.4-0.3,0.5-0.5l0.1-0.1c0.3-0.3,0.7-0.7,0.9-1l0.6-0.9l0.4-0.6c1-1.9,1.4-4.1,1.1-6.2C22,7.8,21.7,6.7,21.2,5.8z"/>%0A    </defs>%0A    <g fill="none" fill-rule="evenodd" transform="translate(0 2)">%0A        <mask id="rotate-b" fill="%23fff">%0A            <use xlink:href="%23rotate"/>%0A        </mask>%0A        <use fill="%235B5B5B" fill-rule="nonzero" xlink:href="%23rotate"/>%0A        <g fill="%235B5B5B" mask="url(%23rotate-b)">%0A            <rect width="30" height="30"/>%0A        </g>%0A    </g>%0A</svg>%0A')}.leaflet-pm-toolbar .leaflet-pm-icon-text{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">%0A  <title>Text</title>%0A  <g id="Ebene_2" data-name="Ebene 2">%0A    <polyline points="19.64 7.27 19.64 4 12 4 12 20 15.91 20 8.09 20 12 20 12 4 4.36 4 4.36 7.27" fill="none" stroke="%235b5b5b" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5px"/>%0A  </g>%0A</svg>')}.leaflet-buttons-control-button:hover,.leaflet-buttons-control-button:focus{cursor:pointer;background-color:#f4f4f4}.active>.leaflet-buttons-control-button{box-shadow:inset 0 -1px 5px 2px #514d4d4f}.leaflet-buttons-control-text-hide{display:none}.button-container{position:relative}.button-container .leaflet-pm-actions-container{z-index:2;position:absolute;top:0;left:100%;display:none;white-space:nowrap;direction:ltr}.leaflet-right .leaflet-pm-toolbar .button-container .leaflet-pm-actions-container{right:100%;left:auto}.button-container.active .leaflet-pm-actions-container{display:block}.button-container .leaflet-pm-actions-container:not(.pos-right) a.leaflet-pm-action:last-child{border-radius:0 3px 3px 0;border-right:0}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:first-child{border-radius:3px 0 0 3px}.button-container .leaflet-pm-actions-container.pos-right a.leaflet-pm-action:last-child{border-right:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action{padding:0 10px;background-color:#666;color:#fff;display:inline-block;width:auto;border-right:1px solid #eee;-webkit-user-select:none;user-select:none;border-bottom:none;height:29px;line-height:29px;vertical-align:middle}.leaflet-pm-toolbar .button-container:first-child.pos-right.active a.leaflet-buttons-control-button{border-top-left-radius:0}.leaflet-pm-toolbar .button-container:first-child.active:not(.pos-right) a.leaflet-buttons-control-button{border-top-right-radius:0}.button-container .leaflet-pm-actions-container .leaflet-pm-action:hover,.button-container .leaflet-pm-actions-container .leaflet-pm-action:focus{cursor:pointer;background-color:#777}.button-container .leaflet-pm-actions-container .leaflet-pm-action.active-action{background-color:#8e8e8e}.leaflet-pm-toolbar.activeChild{z-index:801}.leaflet-buttons-control-button.pm-disabled{background-color:#f4f4f4}.leaflet-buttons-control-button.pm-disabled>.control-icon{filter:opacity(.6)}.button-container .leaflet-pm-actions-container .pm-action-button-mode.control-icon{filter:brightness(0) invert(1);width:18px}.wiki-map-feature-editor{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.wiki-map-feature-editor-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.wiki-map-feature-editor-bar-group{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.wiki-map-feature-editor-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--font-size-md);color:var(--color-text-muted)}.wiki-map-feature-editor-toggle input[type=color]{width:36px;height:28px;min-height:28px;padding:0;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:transparent;cursor:pointer}.wiki-map-feature-editor-status{font-size:var(--font-size-md);color:var(--color-text-muted);min-width:8ch}.wiki-map-feature-editor-error{color:var(--color-red-text);background:var(--color-red-subtle);border:1px solid var(--color-red);border-radius:var(--radius-sm);padding:.6rem .75rem;margin:0}.wiki-map-feature-editor-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:.75rem}@media(max-width:900px){.wiki-map-feature-editor-body{grid-template-columns:1fr}}.wiki-map-feature-editor-canvas{position:relative;width:100%;height:min(72vh,680px);background:var(--map-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}@media(max-width:640px){.wiki-map-feature-editor-canvas{height:58vh}}.wiki-map-feature-editor-canvas .leaflet-container{width:100%;height:100%;background:transparent;outline:none}.wiki-map-feature-editor-canvas .leaflet-container:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.wiki-map-svg--reference{opacity:.32;filter:grayscale(.3);pointer-events:none}.wiki-map-feature-editor-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);padding:.85rem .9rem;display:flex;flex-direction:column;gap:.6rem;max-height:min(72vh,680px);overflow-y:auto}@media(max-width:900px){.wiki-map-feature-editor-panel{max-height:none}}.wiki-map-feature-editor-panel-heading{margin:0;font-family:var(--font-title);font-size:var(--font-size-base);color:var(--color-text);display:flex;align-items:baseline;gap:.4rem}.wiki-map-feature-editor-count{font-size:var(--font-size-sm);color:var(--color-text-muted);font-family:var(--font-body, inherit)}.wiki-map-feature-editor-hint{margin:0;font-size:var(--font-size-sm);line-height:1.4;color:var(--color-text-muted)}.wiki-map-feature-editor-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.wiki-map-feature-editor-list-empty{font-size:var(--font-size-md);color:var(--color-text-muted);padding:.3rem 0}.wiki-map-feature-editor-list-item{display:flex;align-items:center;gap:.5rem;width:100%;min-height:44px;text-align:left;padding:.4rem .5rem;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.wiki-map-feature-editor-list-item:hover,.wiki-map-feature-editor-list-item:focus-visible{background:var(--color-surface);outline:none}.wiki-map-feature-editor-list-item.is-selected{border-color:var(--color-accent);background:var(--color-accent-subtle)}.wiki-map-feature-editor-item-name{flex:1;font-size:var(--font-size-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-map-feature-editor-chip{flex-shrink:0;font-size:var(--font-size-2xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:.12rem .4rem;border-radius:var(--radius-pill);color:var(--color-bg-dark);background:var(--color-text-muted)}.wiki-map-feature-editor-chip--region{background:var(--map-region-fill);color:var(--color-text)}.wiki-map-feature-editor-chip--coastline{background:var(--map-coastline)}.wiki-map-feature-editor-chip--border{background:var(--map-border)}.wiki-map-feature-editor-chip--river{background:var(--map-river)}.wiki-map-feature-editor-chip--road{background:var(--map-road)}.wiki-map-feature-editor-chip--label{background:var(--map-label)}.wiki-map-feature-editor-form{border-top:1px solid var(--color-border);padding-top:.7rem;display:flex;flex-direction:column;gap:.55rem}.wiki-map-feature-editor-form-heading{margin:0;font-size:var(--font-size-base);color:var(--color-text)}.wiki-map-feature-editor-form-field{display:flex;flex-direction:column;gap:.25rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.wiki-map-feature-editor-form-field>input[type=text],.wiki-map-feature-editor-form-field>select{min-height:36px;padding:.3rem .5rem;background:var(--color-bg-dark);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--font-size-md)}.wiki-map-feature-editor-form-field>input[type=text]:focus-visible,.wiki-map-feature-editor-form-field>select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.wiki-map-feature-editor-color-row{display:flex;align-items:center;gap:.5rem}.wiki-map-feature-editor-color-row input[type=color]{width:44px;height:32px;min-height:32px;padding:0;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:transparent;cursor:pointer}.wiki-map-feature-editor-linkbtn{background:none;border:none;padding:0;color:var(--color-accent);font-size:var(--font-size-sm);cursor:pointer;text-decoration:underline}.wiki-map-feature-editor-linkbtn:hover{color:var(--color-accent-hover)}.wiki-map-feature-editor-form-actions{display:flex;gap:.5rem;margin-top:.2rem}.bmap{display:block;width:100%;height:auto;background:var(--color-surface-light);border-radius:var(--radius-md)}.bmap-parchment{fill:var(--color-surface-light)}.bmap-stain-flood{flood-color:var(--map-border);flood-opacity:.28}.bmap-vignette-clear{stop-color:var(--map-border);stop-opacity:0}.bmap-vignette-edge{stop-color:var(--map-border);stop-opacity:.35}.bmap-floor{fill:var(--color-surface-light)}.bmap-zone{fill-opacity:.16}.bmap-zone--public{fill:var(--color-gold)}.bmap-zone--service{fill:var(--color-map-terracotta)}.bmap-zone--private{fill:var(--map-region-stroke)}.bmap-zone--open{fill:var(--color-text-muted);fill-opacity:.24}.bmap-wall-mass{fill:var(--color-bg-dark);stroke:var(--color-bg-dark);fill-opacity:.85;stroke-opacity:.85}.bmap-grid-line{stroke:var(--color-bg-dark);stroke-opacity:.16}.bmap-wall,.bmap-street{stroke:var(--color-bg-dark)}.bmap-street{stroke-opacity:.45}.bmap-door-leaf,.bmap-door-jamb{stroke:var(--color-bg-dark);stroke-width:.3;stroke-linecap:round}.bmap-door-arc{fill:none;stroke:var(--color-bg-dark);stroke-width:.14;stroke-dasharray:.5 .35}.bmap-window-frame{fill:var(--color-surface-light);stroke:var(--color-bg-dark);stroke-width:.16}.bmap-window-glass{stroke:var(--color-bg-dark);stroke-width:.12}.bmap-hearth-stone{fill:var(--color-text-muted);stroke:var(--color-bg-dark);stroke-width:.2}.bmap-hearth-bed{fill:var(--color-bg-dark);fill-opacity:.75}.bmap-hearth-flame{fill:var(--color-map-terracotta);stroke:var(--color-gold);stroke-width:.1}.bmap-entrance-arrow{fill:var(--color-map-terracotta)}.bmap-label,.bmap-label-dims,.bmap-title,.bmap-caption{fill:var(--color-bg-dark);font-family:var(--font-title)}.bmap-label{font-weight:700}.bmap-label-dims,.bmap-caption{fill-opacity:.75}.bmap-caption--street{font-style:italic;letter-spacing:.3px}.bmap-title{font-weight:700}.bmap-scale-dark{fill:var(--color-bg-dark);stroke:var(--color-bg-dark);stroke-width:.1}.bmap-scale-light{fill:var(--color-surface-light);stroke:var(--color-bg-dark);stroke-width:.1}.bmap-compass-ring{fill:none;stroke:var(--color-bg-dark);stroke-width:.15}.bmap-compass-star{fill:var(--color-gold);stroke:var(--color-bg-dark);stroke-width:.12}.bmap-compass-north{fill:var(--color-bg-dark)}.smap{display:block;width:100%;height:auto;background:var(--color-surface-light);border-radius:var(--radius-md)}.smap-parchment{fill:var(--color-surface-light)}.smap-stain-flood{flood-color:var(--map-border);flood-opacity:.28}.smap-vignette-clear{stop-color:var(--map-border);stop-opacity:0}.smap-vignette-edge{stop-color:var(--map-border);stop-opacity:.35}.smap-plot{fill:var(--map-region-stroke);fill-opacity:.1;stroke:var(--map-region-fill);stroke-opacity:.55;stroke-width:.8}.smap-plot--farm{fill-opacity:.22}.smap-road{fill:var(--map-road);fill-opacity:.32}.smap-track{stroke:var(--map-road);stroke-opacity:.5;stroke-linecap:round}.smap-square--market{fill:var(--color-gold);fill-opacity:.3;stroke:var(--map-road);stroke-opacity:.5;stroke-width:.8}.smap-square--green{fill:var(--map-region-stroke);fill-opacity:.35;stroke:var(--map-region-fill);stroke-opacity:.5;stroke-width:.8}.smap-roof{fill:var(--color-bg-dark);fill-opacity:.72;stroke:var(--color-bg-dark);stroke-width:.6}.smap-building--named .smap-roof{fill:var(--color-map-terracotta);fill-opacity:.9}.smap-wall-mass{fill:var(--color-bg-dark);stroke:var(--color-bg-dark);fill-opacity:.85;stroke-opacity:.85}.smap-hit{fill:transparent}.smap-building--named{cursor:pointer}.smap-building--named:hover .smap-roof,.smap-building--named:focus-visible .smap-roof{stroke:var(--color-accent);stroke-width:2}.smap-building--named:focus{outline:none}.smap-building--selected .smap-roof{stroke:var(--color-accent);stroke-width:2.5}.smap-label,.smap-title,.smap-caption{fill:var(--color-bg-dark);font-family:var(--font-title)}.smap-label{font-weight:700;stroke:var(--color-surface-light);stroke-width:2.4;stroke-opacity:.85;stroke-linejoin:round;pointer-events:none}.smap-title{font-weight:700}.smap-caption{fill-opacity:.75}.smap-caption--square{font-style:italic;letter-spacing:.3px}.smap-scale-dark{fill:var(--color-bg-dark);stroke:var(--color-bg-dark);stroke-width:.5}.smap-scale-light{fill:var(--color-surface-light);stroke:var(--color-bg-dark);stroke-width:.5}.smap-compass-ring{fill:none;stroke:var(--color-bg-dark);stroke-width:.7}.smap-compass-star{fill:var(--color-gold);stroke:var(--color-bg-dark);stroke-width:.6}.smap-compass-north{fill:var(--color-bg-dark)}.mapgen{padding:2rem;max-width:1100px;min-width:0}.mapgen-header{margin-bottom:1.25rem}.mapgen-title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:700;margin:0 0 .25rem}.mapgen-subtitle{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0}.mapgen-controls{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:1.25rem}.mapgen-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.mapgen-field--seed{grid-column:span 2}.mapgen-field label{font-size:var(--font-size-md);color:var(--color-text-muted)}.mapgen-field input,.mapgen-field select{width:100%;min-height:44px;font-size:var(--font-size-base);padding:.5rem .75rem;border:1px solid var(--color-field-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);box-sizing:border-box}.mapgen-field input:focus-visible,.mapgen-field select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.mapgen-field input[aria-invalid=true]{border-color:var(--color-red)}.mapgen-field-error{font-size:var(--font-size-sm);color:var(--color-red-text);margin:0}.mapgen-seed-row{display:flex;gap:.5rem}.mapgen-seed-row input{flex:1 1 auto;min-width:0}.mapgen-seed-row .btn{flex:0 0 auto;min-height:44px}.mapgen-warnings{font-size:var(--font-size-md);color:var(--color-gold);background:var(--color-gold-subtle);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1rem}.mapgen-warnings p{margin:0 0 .35rem}.mapgen-warnings ul{margin:0;padding-left:1.25rem}.mapgen-map{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.mapgen-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1rem}.mapgen-actions .btn{min-height:44px}.mapgen-meta{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0}.mapgen-mode{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.mapgen-mode .btn,.mapgen-plot-list .btn{min-height:44px}.mapgen-plots{margin-top:2rem}.mapgen-plots-title{font-family:var(--font-title);font-size:var(--font-size-lg);font-weight:700;margin:0 0 .75rem}.mapgen-plot-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 1rem;padding:0}.mapgen-plot-list .btn{max-width:100%;overflow-wrap:anywhere;text-align:left}@media(max-width:640px){.mapgen{padding:1rem}.mapgen-controls{grid-template-columns:1fr 1fr}.mapgen-field--seed{grid-column:1 / -1}}
