@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@700&display=swap";:root{--color-bg-dark:#0c0d12;--color-bg-mid:#12131a;--color-bg-card:#1a1b24;--color-bg-card-hover:#22232e;--color-bg-input:#161720;--color-accent-gold:#c9a267;--color-accent-gold-hover:#dbb57e;--color-accent-gold-dim:#c9a26740;--color-accent-gold-muted:#c9a2671f;--color-accent-red:#e5484d;--color-accent-red-hover:#f06b6f;--color-accent-blue:#3498db;--color-accent-green:#30a46c;--color-accent-green-hover:#3dbf70;--color-text-primary:#e8e8ec;--color-text-secondary:#8e8fa1;--color-text-tertiary:#8b8c9e;--color-text-muted:#9a9bac;--color-text-dark:#0c0d12;--color-border:#1f2029;--color-border-light:#2e2f3d;--color-hp-high:#30a46c;--color-hp-mid:#f5a623;--color-hp-low:#e5484d;--color-hp-dead:#e5484d26;--color-player:#3498db;--color-monster:#e5484d;--color-npc:#30a46c;--font-heading:"Cinzel", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-app:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 8px #0006;--shadow-lg:0 8px 24px #00000080;--transition-fast:.15s ease;--transition:.2s ease;--color-accent-primary:var(--color-accent-gold);--color-surface-hover:var(--color-bg-card-hover);--color-surface-dark:var(--color-bg-dark);--color-danger:var(--color-accent-red);--glow-gold-sm:0 0 8px #c9a2674d;--glow-gold-md:0 0 16px #c9a26766;--gradient-gold:linear-gradient(135deg, #c9a267, #dbb57e);--gradient-gold-subtle:linear-gradient(135deg, #c9a26726, #c9a2670d);--shadow-inset-subtle:inset 0 1px 0 #ffffff08;--transition-bounce:.2s cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-body);background-color:var(--color-bg-dark);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-accent-gold);font-weight:600;line-height:1.2}button{font-family:var(--font-heading);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);border:none}button:active{box-shadow:none;transform:translateY(1px)}input,select{font-family:var(--font-body);background-color:var(--color-bg-input);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;font-size:.875rem}input:focus,select:focus{border-color:var(--color-accent-gold);box-shadow:0 0 0 3px var(--color-accent-gold-muted), 0 0 8px #c9a2671a}input::placeholder{color:var(--color-text-muted)}select option{background-color:var(--color-bg-mid)}:focus-visible{border-color:var(--color-accent-gold);box-shadow:0 0 0 3px var(--color-accent-gold-muted), 0 0 8px #c9a2671a;outline:none}button:focus-visible{box-shadow:0 0 0 2px var(--color-accent-gold-muted);outline:none}[disabled],.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg-mid)}::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-gold-dim)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-light) var(--color-bg-mid)}.text-muted{color:var(--color-text-muted)}.text-gold{color:var(--color-accent-gold)}.hidden{display:none!important}.type-badge{font-family:var(--font-heading);letter-spacing:.05em;border-radius:var(--radius-sm);text-transform:uppercase;padding:2px 8px;font-size:.6875rem;font-weight:700;display:inline-block}.type-badge.player{color:#5dade2;background:#3498db26;border:1px solid #3498db4d}.type-badge.monster{color:#f1948a;background:#e5484d26;border:1px solid #e5484d4d}.type-badge.npc{color:#6dd4a0;background:#30a46c26;border:1px solid #30a46c4d}.type-border-player{border-left:4px solid var(--color-player)}.type-border-monster{border-left:4px solid var(--color-monster)}.type-border-npc{border-left:4px solid var(--color-npc)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body:after{content:"";z-index:9999;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}body.marketing{background:var(--color-bg-dark);background-image:radial-gradient(80% 50% at 50% 0,#c9a2670a 0%,#0000 60%),radial-gradient(60% 40% at 80% 100%,#5064b406 0%,#0000 50%);overflow:hidden auto}.site-nav{z-index:100;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border);height:72px;transition:background var(--transition);background:#0c0d12b3;justify-content:space-between;align-items:center;padding:0 clamp(24px,5vw,80px);display:flex;position:fixed;top:0;left:0;right:0}.site-nav--scrolled{box-shadow:var(--shadow-md);background:#0c0d12eb}.site-nav__logo{color:var(--color-accent-gold);font-family:var(--font-heading);letter-spacing:.04em;align-items:center;gap:12px;font-size:1.125rem;font-weight:700;text-decoration:none;display:flex}.site-nav__logo-icon{font-size:1.5rem;line-height:1}.site-nav__links{align-items:center;gap:8px;list-style:none;display:flex}.site-nav__link{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);padding:8px 18px;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-block}.site-nav__link:hover{color:var(--color-text-primary);background:#ffffff0a}.site-nav__link--active{color:var(--color-accent-gold)}.site-nav__cta{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-dark);background:var(--color-accent-gold);border-radius:var(--radius-md);transition:background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);padding:9px 24px;font-size:.8125rem;font-weight:700;text-decoration:none;display:inline-block}.site-nav__cta:hover{background:var(--color-accent-gold-hover);transform:translateY(-1px);box-shadow:0 4px 16px #c9a2674d}.site-nav__toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.site-nav__toggle span{background:var(--color-text-secondary);width:24px;height:2px;transition:transform var(--transition-fast), opacity var(--transition-fast);border-radius:2px;display:block}.site-nav__toggle--open span:first-child{transform:rotate(45deg)translate(5px,5px)}.site-nav__toggle--open span:nth-child(2){opacity:0}.site-nav__toggle--open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:120px clamp(24px,5vw,80px) 80px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(70% 50% at 50% 30%,#c9a26712 0%,#0000 70%),radial-gradient(40% 30% at 20% 70%,#3498db08 0%,#0000 60%),radial-gradient(40% 30% at 80% 80%,#e5484d06 0%,#0000 60%);position:absolute;inset:0}.hero:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0%,#c9a26700 20%,#c9a26740 50%,#c9a26700 80%,#0000 100%);width:600px;height:1px;animation:4s ease-in-out infinite shimmer-line;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes shimmer-line{0%,to{opacity:0;transform:translate(-50%,-50%)scaleX(.5)}50%{opacity:1;transform:translate(-50%,-50%)scaleX(1)}}.hero__particles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.hero__mote{animation:40s ease-in-out infinite mote-float,60s linear infinite mote-spin,10s ease-in-out infinite mote-pulse;display:block;position:absolute}.hero__mote--diamond{border:1px solid #c9a26726;width:50px;height:50px;transform:rotate(45deg)}.hero__mote--hex{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);background:#c9a26714;width:56px;height:56px}.hero__mote--dot{background:#c9a26733;border-radius:50%;width:8px;height:8px;animation:30s ease-in-out infinite mote-float,8s ease-in-out infinite mote-pulse;box-shadow:0 0 12px #c9a26726}.hero__mote--blue.hero__mote--diamond{border-color:#3498db26}.hero__mote--blue.hero__mote--hex{background:#3498db14}.hero__mote--blue.hero__mote--dot{background:#3498db33;box-shadow:0 0 12px #3498db26}.hero__mote--red.hero__mote--diamond{border-color:#e5484d1f}.hero__mote--red.hero__mote--hex{background:#e5484d0f}.hero__mote--red.hero__mote--dot{background:#e5484d2e;box-shadow:0 0 12px #e5484d1f}.hero__mote--gold.hero__mote--dot{background:#c9a26740;box-shadow:0 0 16px #c9a2672e}.hero__mote--gold.hero__mote--hex{background:#c9a2671a}.hero__mote--sm{transform:scale(.6)}.hero__mote--sm.hero__mote--diamond{transform:rotate(45deg)scale(.6)}.hero__mote--lg{transform:scale(1.4)}.hero__mote--lg.hero__mote--diamond{transform:rotate(45deg)scale(1.4)}@keyframes mote-float{0%{translate:0}25%{translate:12px -20px}50%{translate:-8px -35px}75%{translate:15px -15px}to{translate:0}}@keyframes mote-spin{0%{rotate:0deg}to{rotate:360deg}}@keyframes mote-pulse{0%,to{opacity:.6}50%{opacity:1}}.hero__mote:first-child{animation-duration:45s,70s,12s}.hero__mote:nth-child(2){animation-duration:30s,0s,9s}.hero__mote:nth-child(3){animation-duration:55s,80s,14s}.hero__mote:nth-child(4){animation-duration:38s,55s,11s}.hero__mote:nth-child(5){animation-duration:28s,0s,7s}.hero__mote:nth-child(6){animation-duration:50s,65s,13s}.hero__mote:nth-child(7){animation-duration:42s,90s,10s}.hero__mote:nth-child(8){animation-duration:32s,0s,8s}.hero__mote:nth-child(9){animation-duration:48s,75s,15s}.hero__mote:nth-child(10){animation-duration:35s,50s,9s}.hero__mote:nth-child(11){animation-duration:26s,0s,11s}.hero__mote:nth-child(12){animation-duration:52s,85s,12s}.hero__content{z-index:1;max-width:800px;position:relative}.hero__eyebrow{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-gold);border:1px solid var(--color-accent-gold-dim);border-radius:var(--radius-full);background:var(--color-accent-gold-muted);margin-bottom:24px;padding:6px 20px;font-size:.6875rem;font-weight:600;display:inline-block}.hero__title{font-family:"Cinzel Decorative", var(--font-heading);color:var(--color-text-primary);letter-spacing:-.01em;margin-bottom:24px;font-size:clamp(2.5rem,5.5vw,4.5rem);font-weight:700;line-height:1.1}.hero__title-accent{color:var(--color-accent-gold);text-shadow:0 0 40px #c9a2674d}.hero__subtitle{font-family:var(--font-body);color:var(--color-text-secondary);max-width:560px;margin:0 auto 40px;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:400;line-height:1.7}.hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.btn{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:8px;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--lg{padding:14px 36px;font-size:.9375rem}.btn--md{padding:10px 28px;font-size:.8125rem}.btn--primary{color:var(--color-text-dark);background:var(--color-accent-gold);border:2px solid var(--color-accent-gold)}.btn--primary:hover{background:var(--color-accent-gold-hover);border-color:var(--color-accent-gold-hover);transform:translateY(-2px);box-shadow:0 6px 24px #c9a26759}.btn--ghost{color:var(--color-text-primary);border:2px solid var(--color-border-light);background:0 0}.btn--ghost:hover{border-color:var(--color-accent-gold-dim);color:var(--color-accent-gold);background:var(--color-accent-gold-muted);transform:translateY(-2px)}.section{padding:clamp(64px,8vw,120px) clamp(24px,5vw,80px);position:relative}.section__header{text-align:center;max-width:640px;margin:0 auto 64px}.section__eyebrow{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-gold);margin-bottom:16px;font-size:.6875rem;font-weight:600}.section__title{font-family:var(--font-heading);color:var(--color-text-primary);margin-bottom:16px;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;line-height:1.2}.section__subtitle{color:var(--color-text-secondary);font-size:1rem;line-height:1.7}.section--bordered{border-top:1px solid var(--color-border)}.section--alt{background:var(--color-bg-mid)}.features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;max-width:1100px;margin:0 auto;display:grid}.features-grid--four{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-width:1200px}.features-grid--five{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-width:1400px}.feature-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);padding:36px 32px;position:relative;overflow:hidden}.feature-card:after{content:"";background:var(--color-accent-gold);transform-origin:0;height:3px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.feature-card:hover{border-color:var(--color-border-light);transform:translateY(-4px);box-shadow:0 12px 32px #0006}.feature-card:hover:after{transform:scaleX(1)}.feature-card__icon{width:52px;height:52px;color:var(--color-accent-gold);background:var(--color-accent-gold-muted);border:1px solid var(--color-accent-gold-dim);border-radius:var(--radius-md);justify-content:center;align-items:center;margin-bottom:20px;font-size:1.5rem;display:flex}.feature-card__title{font-family:var(--font-heading);color:var(--color-text-primary);margin-bottom:12px;font-size:1.125rem;font-weight:600}.feature-card__desc{color:var(--color-text-secondary);font-size:.875rem;line-height:1.7}.feature-card--blue .feature-card__icon{color:var(--color-accent-blue);background:#3498db1a;border-color:#3498db40}.feature-card--blue:after{background:var(--color-accent-blue)}.feature-card--red .feature-card__icon{color:var(--color-accent-red);background:#e5484d1a;border-color:#e5484d40}.feature-card--red:after{background:var(--color-accent-red)}.feature-card--green .feature-card__icon{color:var(--color-accent-green);background:#30a46c1a;border-color:#30a46c40}.feature-card--green:after{background:var(--color-accent-green)}.feature-card--purple .feature-card__icon{color:#bb7fe2;background:#bb7fe21a;border-color:#bb7fe240}.feature-card--purple:after{background:#bb7fe2}.showcase{align-items:center;gap:clamp(40px,6vw,80px);max-width:1100px;margin:0 auto;display:flex}.showcase__text{flex:1;min-width:0}.showcase__title{font-family:var(--font-heading);color:var(--color-text-primary);margin-bottom:16px;font-size:clamp(1.375rem,2.5vw,1.75rem);font-weight:700;line-height:1.2}.showcase__desc{color:var(--color-text-secondary);margin-bottom:28px;font-size:.9375rem;line-height:1.8}.showcase__list{flex-direction:column;gap:12px;list-style:none;display:flex}.showcase__list li{color:var(--color-text-primary);align-items:center;gap:12px;font-size:.875rem;display:flex}.showcase__list-icon{width:28px;height:28px;color:var(--color-accent-gold);background:var(--color-accent-gold-muted);border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;display:flex}.showcase__visual{flex:1;min-width:0;position:relative}.showcase__mockup{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg);padding:24px}.mockup-list{flex-direction:column;gap:8px;display:flex}.mockup-item{background:var(--color-bg-mid);border:1px solid var(--color-border);border-radius:var(--radius-md);border-left:4px solid var(--color-accent-blue);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.mockup-item--active{background:var(--color-accent-gold);border-color:var(--color-accent-gold);border-left-color:var(--color-accent-gold)}.mockup-item--monster{border-left-color:var(--color-accent-red)}.mockup-item--npc{border-left-color:var(--color-accent-green)}.mockup-item__name{font-family:var(--font-heading);color:var(--color-text-primary);font-size:.875rem;font-weight:600}.mockup-item--active .mockup-item__name,.mockup-item--active .mockup-item__score{color:var(--color-text-dark)}.mockup-item__score{font-family:var(--font-heading);color:var(--color-accent-gold);font-size:.875rem;font-weight:700}.showcase__visual:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#c9a2670f 0%,#0000 70%);position:absolute;inset:-20px}.cta-banner{text-align:center;padding:clamp(64px,8vw,100px) clamp(24px,5vw,80px);position:relative;overflow:hidden}.cta-banner:before{content:"";pointer-events:none;background:radial-gradient(60% 50%,#c9a2670f 0%,#0000 70%);position:absolute;inset:0}.cta-banner__title{font-family:"Cinzel Decorative", var(--font-heading);color:var(--color-text-primary);margin-bottom:16px;font-size:clamp(1.5rem,3.5vw,2.5rem);font-weight:700;position:relative}.cta-banner__subtitle{color:var(--color-text-secondary);max-width:480px;margin-bottom:36px;margin-left:auto;margin-right:auto;font-size:1rem;line-height:1.7;position:relative}.cta-banner .btn{position:relative}.feature-detail{align-items:center;gap:clamp(40px,6vw,80px);max-width:1000px;margin:0 auto;padding:clamp(40px,5vw,64px) 0;display:flex}.feature-detail:not(:last-child){border-bottom:1px solid var(--color-border)}.feature-detail--reverse{flex-direction:row-reverse}.feature-detail__icon-wrap{width:80px;height:80px;color:var(--color-accent-gold);background:var(--color-accent-gold-muted);border:1px solid var(--color-accent-gold-dim);border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;font-size:2rem;display:flex}.feature-detail__text{flex:1;min-width:0}.feature-detail__title{font-family:var(--font-heading);color:var(--color-text-primary);margin-bottom:12px;font-size:1.375rem;font-weight:600}.feature-detail__desc{color:var(--color-text-secondary);margin-bottom:20px;font-size:.9375rem;line-height:1.8}.feature-detail__sources{color:var(--color-text-muted);margin-bottom:8px;font-size:.85rem;line-height:1.6}.feature-detail__tags{flex-wrap:wrap;gap:8px;display:flex}.feature-tag{font-family:var(--font-heading);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-full);color:var(--color-accent-gold);background:var(--color-accent-gold-muted);border:1px solid var(--color-accent-gold-dim);padding:4px 14px;font-size:.6875rem;font-weight:600;display:inline-block}.feature-detail--blue .feature-detail__icon-wrap{color:var(--color-accent-blue);background:#3498db1a;border-color:#3498db40}.feature-detail--red .feature-detail__icon-wrap{color:var(--color-accent-red);background:#e5484d1a;border-color:#e5484d40}.feature-detail--green .feature-detail__icon-wrap{color:var(--color-accent-green);background:#30a46c1a;border-color:#30a46c40}.feature-detail--purple .feature-detail__icon-wrap{color:#bb7fe2;background:#bb7fe21a;border-color:#bb7fe240}.feature-detail--amber .feature-detail__icon-wrap{color:#f5a623;background:#f5a6231a;border-color:#f5a62340}.site-footer{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:32px clamp(24px,5vw,80px);display:flex}.site-footer__copy{color:var(--color-text-muted);letter-spacing:.04em;font-size:.75rem}.site-footer__links{gap:24px;list-style:none;display:flex}.site-footer__link{color:var(--color-text-muted);letter-spacing:.04em;transition:color var(--transition-fast);font-size:.75rem;text-decoration:none}.site-footer__link:hover{color:var(--color-accent-gold)}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal--revealed{opacity:1;transform:translateY(0)}.reveal-stagger>.reveal:first-child{transition-delay:0s}.reveal-stagger>.reveal:nth-child(2){transition-delay:.1s}.reveal-stagger>.reveal:nth-child(3){transition-delay:.2s}.reveal-stagger>.reveal:nth-child(4){transition-delay:.3s}.reveal-stagger>.reveal:nth-child(5){transition-delay:.4s}.reveal-stagger>.reveal:nth-child(6){transition-delay:.5s}.hero .reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(32px)}.hero .reveal--revealed{opacity:1;transform:translateY(0)}.hero .reveal:first-child{transition-delay:.1s}.hero .reveal:nth-child(2){transition-delay:.25s}.hero .reveal:nth-child(3){transition-delay:.4s}.hero .reveal:nth-child(4){transition-delay:.55s}@media (width<=768px){.site-nav__links{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border);background:#0c0d12f5;flex-direction:column;gap:4px;padding:16px 24px;display:none;position:absolute;top:72px;left:0;right:0}.site-nav__links--open,.site-nav__toggle{display:flex}.site-nav__link,.site-nav__cta{text-align:center;width:100%}.showcase{flex-direction:column}.feature-detail,.feature-detail--reverse{text-align:center;flex-direction:column}.feature-detail__tags{justify-content:center}.features-grid{grid-template-columns:1fr}.site-footer{text-align:center;flex-direction:column}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.hero:after{opacity:0;animation:none}.hero__particles{display:none}}.auth-page{min-height:calc(100vh - 140px);padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--color-bg-mid);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:420px}.auth-card__title{font-family:var(--font-heading);color:var(--color-accent-gold);margin:0 0 var(--space-xs);text-align:center;font-size:1.6rem}.auth-card__subtitle{color:var(--color-text-muted);text-align:center;margin:0 0 var(--space-lg);font-size:.9rem}.auth-card__error{color:#f87171;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);text-align:center;background:#dc262626;border:1px solid #dc262666;font-size:.85rem}.auth-card__success{color:#86efac;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);margin-bottom:var(--space-md);text-align:center;background:#22c55e1f;border:1px solid #22c55e59;flex-direction:column;align-items:center;font-size:.95rem;display:flex}.auth-form{gap:var(--space-md);flex-direction:column;display:flex}.auth-form__label{gap:var(--space-xs);color:var(--color-text-secondary);font-size:.85rem;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;flex-direction:column;display:flex}.auth-form__input{padding:var(--space-sm) var(--space-md);background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-body);font-size:.95rem;transition:border-color .2s}.auth-form__input:focus{border-color:var(--color-accent-gold);outline:none}.auth-form__hint{color:var(--color-text-muted);text-transform:none;letter-spacing:normal;font-size:.75rem}.auth-form__submit{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-size:1rem}.turnstile-wrapper{padding:var(--space-sm) 0;border-radius:var(--radius-sm);background:var(--color-bg-dark);border:1px solid var(--color-border);justify-content:center;transition:border-color .4s,background .4s;display:flex;overflow:hidden}.turnstile-wrapper--verified{border-color:var(--color-accent-gold-dim);background:var(--color-accent-gold-muted)}.turnstile-container{width:100%}.turnstile-container iframe{margin:0 auto;width:100%!important;display:block!important}.auth-card__links{margin-top:var(--space-lg);text-align:center;font-size:.85rem}.auth-card__links a{color:var(--color-accent-gold);text-decoration:none}.auth-card__links a:hover{text-decoration:underline}.auth-card__divider{color:var(--color-text-muted);margin:0 var(--space-sm)}.site-nav__link--logout{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;padding:0}.dashboard-page{min-height:100vh;padding:6rem var(--space-lg) var(--space-xl);background:var(--color-bg-primary)}.dashboard-container{max-width:900px;margin:0 auto}.dashboard-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.dashboard-header__title{color:var(--color-accent-gold);font-family:Cinzel Decorative,serif;font-size:1.5rem}.dashboard-loading,.dashboard-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-xl)}.dashboard-grid{gap:var(--space-md);display:grid}.encounter-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.encounter-card__header{margin-bottom:var(--space-xs);justify-content:space-between;align-items:center;display:flex}.encounter-card__name{color:var(--color-text-primary);margin:0;font-size:1.1rem}.encounter-card__badge{border-radius:var(--radius-sm);padding:2px 8px;font-size:.75rem;font-weight:600}.encounter-card__badge--pre-combat{color:#88f;background:#6464ff26}.encounter-card__badge--combat{color:var(--color-accent-gold);background:#d4a84326}.encounter-card__meta{color:var(--color-text-muted);margin-bottom:var(--space-sm);font-size:.85rem}.encounter-card__actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.encounter-card__share-url{margin-top:var(--space-xs);color:var(--color-accent-gold);font-family:monospace;font-size:.8rem}.btn--small{padding:4px 12px;font-size:.8rem}.btn--outline{border:1px solid var(--color-accent-gold);color:var(--color-accent-gold);background:0 0}.btn--outline:hover{background:#d4a8431a}.btn--danger{color:#ff6b6b;background:#dc323233;border:1px solid #dc32324d}.btn--danger:hover{background:#dc32324d}.cloud-synced{color:#66bb6a;cursor:default}.subscription-gate{text-align:center;padding:var(--space-xl);color:var(--color-text-muted)}.subscription-gate h2{color:var(--color-accent-gold);margin-bottom:var(--space-sm)}.subscription-gate p{margin-bottom:var(--space-md)}.pricing-page{min-height:100vh;padding:6rem var(--space-lg) var(--space-xl);background:var(--color-bg-primary);text-align:center}.pricing-page__title{color:var(--color-accent-gold);margin-bottom:var(--space-sm);font-family:Cinzel Decorative,serif;font-size:2rem}.pricing-page__subtitle{color:var(--color-text-muted);max-width:600px;margin:0 auto var(--space-xl)}.pricing-grid{gap:var(--space-lg);grid-template-columns:1fr 1fr;max-width:800px;margin:0 auto;display:grid}@media (width<=680px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);text-align:left;position:relative}.pricing-card--featured{border-color:var(--color-accent-gold);box-shadow:0 0 20px #d4a84326}.pricing-card__badge{background:var(--color-accent-gold);color:var(--color-bg-primary);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;padding:4px 12px;font-size:.75rem;font-weight:700;position:absolute;top:-12px;right:20px}.pricing-card__name{color:var(--color-text-primary);margin-bottom:var(--space-sm);font-family:Cinzel Decorative,serif;font-size:1.3rem}.pricing-card__price{margin-bottom:var(--space-md)}.pricing-card__amount{color:var(--color-accent-gold);font-size:2.5rem;font-weight:700}.pricing-card__period{color:var(--color-text-muted);margin-left:4px;font-size:1rem}.pricing-card__features{margin-bottom:var(--space-lg);padding:0;list-style:none}.pricing-card__features li{padding:var(--space-xs) 0;color:var(--color-text-secondary);padding-left:1.5rem;position:relative}.pricing-card__features li:before{content:"✓";color:var(--color-accent-gold);font-weight:700;position:absolute;left:0}.pricing-card__cta{text-align:center;width:100%}.settings-page{min-height:100vh;padding:6rem var(--space-lg) var(--space-xl);background:var(--color-bg-primary)}.settings-container{max-width:600px;margin:0 auto}.settings-title{color:var(--color-accent-gold);margin-bottom:var(--space-lg);font-family:Cinzel Decorative,serif;font-size:1.5rem}.settings-section{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md)}.settings-section__title{color:var(--color-text-primary);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border);font-size:1.1rem}.settings-field{padding:var(--space-xs) 0;justify-content:space-between;align-items:center;display:flex}.settings-field__label{color:var(--color-text-muted);font-size:.9rem}.settings-field__value{color:var(--color-text-primary)}.settings-status--active{color:#66bb6a}.settings-status--past_due{color:#ff9800}.settings-status--canceled{color:#ef5350}.settings-status--none{color:var(--color-text-muted)}.settings-msg{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);margin-bottom:var(--space-sm);font-size:.9rem}.settings-msg--success{color:#66bb6a;background:#66bb6a26}.settings-msg--error{color:#ef5350;background:#ef535026}.settings__inline-form{align-items:center;gap:.5rem;display:flex}.settings__inline-form .auth-form__input{flex:1}.settings__edit-btn{margin-left:.5rem}.settings__danger-zone{border-top:2px solid #e74c3c;margin-top:1.5rem;padding-top:1.5rem}.settings__danger-zone .settings-section__title{color:#e74c3c}.settings__danger-btn{color:#e74c3c;border-color:#e74c3c}.settings__danger-warning{color:#e74c3c;margin-bottom:1rem}.settings__button-group{gap:.5rem;display:flex}.settings__delete-btn{background:#e74c3c}.profile-field{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.profile-field:last-child{border-bottom:none}.profile-field__label{color:var(--color-text-muted);align-items:center;gap:.35rem;font-size:.9rem;display:flex}.profile-field__value{color:var(--color-text-primary);font-weight:500}.site-nav__profile-wrapper{position:relative}.site-nav__profile-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-accent-gold);font-family:var(--font-heading);letter-spacing:.04em;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.8rem;display:flex}.site-nav__profile-toggle:hover{background:#c9a26714;border-color:#c9a2674d}.site-nav__profile-dropdown{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-lg);z-index:100;padding:.35rem 0;list-style:none;position:absolute;top:calc(100% + 6px);right:0}.site-nav__dropdown-link{width:100%;color:var(--color-text-secondary);text-align:left;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;padding:.5rem 1rem;font-size:.85rem;text-decoration:none;display:block}.site-nav__dropdown-link:hover{color:var(--color-text-primary);background:#ffffff0a}.site-nav__dropdown-link--danger{color:#e5484d}.site-nav__dropdown-link--danger:hover{color:#e5484d;background:#e5484d14}.site-nav__dropdown-divider{background:var(--color-border);height:1px;margin:.25rem 0}@media (width<=768px){.site-nav__profile-wrapper{position:static}.site-nav__profile-dropdown{box-shadow:none;background:0 0;border:none;min-width:auto;padding:0;position:static}.site-nav__dropdown-link{padding:.5rem 0}}.legal-page{min-height:80vh;padding:2rem 1rem}.legal-container{max-width:720px;margin:0 auto}.legal-title{color:var(--gold);margin-bottom:.25rem;font-size:2rem}.legal-updated{color:#888;margin-bottom:2rem;font-size:.85rem}.legal-section{margin-bottom:1.5rem}.legal-section h2{color:var(--gold);margin-bottom:.5rem;font-size:1.15rem}.legal-section p,.legal-section li{color:#ccc;line-height:1.7}.legal-section ul{margin-top:.5rem;padding-left:1.5rem}.legal-section a{color:var(--gold)}.legal-section table{color:#ccc}.legal-section th{color:var(--gold)}
