:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--radius-sm: .75rem;--radius-md: 1.2rem;--radius-lg: 2rem;--shadow: 0 24px 70px rgb(28 16 45 / 18%)}:root[data-theme=light]{--background: #f3e6cf;--surface: #fbf1df;--surface-strong: #fff8eb;--text: #241a12;--muted: #665843;--border: #d8c29d;--primary: #6f3dbd;--primary-contrast: #ffffff;--secondary: #d9902f;--accent: #2f766f;--hero-gradient: radial-gradient(circle at 12% 8%, rgb(255 238 197 / 65%) 0, transparent 28%), linear-gradient(135deg, #f8ecd8 0%, #f1e1c6 100%)}:root[data-theme=dark]{--background: #130f1d;--surface: #1d1729;--surface-strong: #251b36;--text: #fbf7ff;--muted: #c9bfd8;--border: #3a2d50;--primary: #b992ff;--primary-contrast: #1a1028;--secondary: #ffc766;--accent: #64d8cf;--hero-gradient: radial-gradient(circle at 14% 8%, rgb(90 61 26 / 32%) 0, transparent 28%), linear-gradient(135deg, #171220 0%, #1d1729 100%)}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100%;background:var(--background)}#app{display:flex;min-height:100vh;flex-direction:column}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 78%,white);outline-offset:4px}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;padding:.75rem 1rem;border-radius:999px;background:var(--primary);color:var(--primary-contrast);font-weight:900;text-decoration:none;transform:translateY(-160%);transition:transform .15s ease}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:1rem clamp(1rem,4vw,3rem);border-bottom:1px solid color-mix(in srgb,var(--border) 78%,transparent);background:color-mix(in srgb,var(--background) 86%,transparent);box-shadow:0 8px 28px #0000000d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;gap:.75rem;align-items:center;text-decoration:none}.brand-mark{display:grid;width:3rem;height:3rem;place-items:center;border-radius:1rem;color:var(--primary-contrast);background:linear-gradient(135deg,var(--primary),#8f5be8);font-weight:900;box-shadow:var(--shadow)}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:.75rem;max-width:13rem}.site-header nav{display:flex;justify-content:center;gap:.35rem}.site-header nav a{padding:.65rem .9rem;border-radius:999px;color:var(--muted);text-decoration:none;font-weight:700}.site-header nav a:hover,.site-header nav a.active{color:var(--text);background:var(--surface-strong)}.header-actions,.hero-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.button,.theme-toggle,.menu-button{border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--text);cursor:pointer;font:inherit;font-weight:800;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:hover,.theme-toggle:hover,.menu-button:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.button{display:inline-flex;gap:.5rem;align-items:center;justify-content:center;padding:.72rem 1rem}.button-large{padding:.95rem 1.25rem;font-size:1.05rem}.button-primary{border-color:transparent;background:var(--primary);color:var(--primary-contrast)}.button-secondary{background:transparent}.theme-toggle,.menu-button{min-width:2.8rem;height:2.8rem}.menu-button{display:none;padding:0 1rem}main{flex:1 0 auto;overflow:hidden}.section-shell{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,8vw,6rem) 0}.narrow{width:min(820px,calc(100% - 2rem))}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;width:min(1180px,calc(100% - 2rem));margin-top:1rem;padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,4vw,3rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--hero-gradient)}.eyebrow{margin:0 0 .75rem;color:var(--accent);font-size:.8rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:13ch;margin-bottom:1rem;font-size:clamp(2.6rem,6vw,5rem);line-height:.96;letter-spacing:-.065em}h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.05em}h3{font-size:1.35rem}.lead{color:var(--muted);font-size:clamp(1.02rem,1.5vw,1.18rem);line-height:1.6}.hero-card,.event-card,.info-panel,.steps article,.weekly-grid article,.principles article{border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 14px 45px #00000014}.hero-card{padding:clamp(1.25rem,3vw,1.75rem);transform:rotate(.75deg)}.hero-card ul,.info-panel ul{padding-left:1.25rem;color:var(--muted);line-height:1.8}.dice-row{display:flex;gap:.75rem;margin-bottom:1rem;font-size:2rem}.split-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;align-items:start}.principles{display:grid;gap:1rem}.principles article{display:flex;gap:1rem;align-items:center;padding:1rem}.principles span{display:grid;flex:0 0 2rem;height:2rem;place-items:center;border-radius:50%;background:var(--accent);color:var(--background);font-weight:900}.principles p{margin:0;font-weight:750}.section-heading{max-width:720px;margin-bottom:2rem}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.event-card,.info-panel,.steps article{padding:1.5rem}.event-card p:not(.cadence),.info-panel p,.steps p{color:var(--muted);line-height:1.7}.cadence{color:var(--primary);font-weight:900}.feature-card a{color:var(--primary);font-weight:900;text-decoration:none}.cta-band{display:flex;justify-content:space-between;gap:2rem;align-items:center;width:min(1120px,calc(100% - 2rem));margin:0 auto 5rem;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius-lg);background:var(--surface-strong);border:1px solid var(--border)}.cta-band h2{max-width:780px;margin:0}.page-hero{text-align:center}.page-hero h1{max-width:none;font-size:clamp(2.4rem,5.5vw,4rem)}.weekly-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.75rem}.weekly-grid article{padding:1rem;text-align:center}.weekly-grid strong{display:block;color:var(--primary);font-size:1.4rem}.weekly-grid span{display:block;margin-top:.5rem;color:var(--muted);font-size:.95rem}.accent-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,var(--surface)),var(--surface))}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.steps span{display:grid;width:2.4rem;height:2.4rem;place-items:center;margin-bottom:1rem;border-radius:50%;color:var(--primary-contrast);background:var(--primary);font-weight:900}.events-hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:2rem;align-items:stretch;width:min(1180px,calc(100% - 2rem));margin-top:1rem;padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,4vw,3rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--hero-gradient)}.events-hero h1{max-width:9ch}.calendar-summary{display:flex;flex-direction:column;justify-content:center;gap:.85rem;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-strong) 88%,transparent);box-shadow:var(--shadow)}.calendar-summary strong{font-size:1.5rem;line-height:1}.calendar-summary p{margin:0;color:var(--muted);line-height:1.6}.calendar-icon{font-size:3rem}.calendar-board{padding-top:clamp(2rem,5vw,4rem)}.calendar-toolbar{display:flex;justify-content:space-between;gap:1.5rem;align-items:end;margin-bottom:1.5rem}.calendar-toolbar h2{margin-bottom:0}.filter-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.filter-chips button{padding:.6rem .85rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--muted);cursor:pointer;font:inherit;font-weight:850}.filter-chips button.active,.filter-chips button:hover{background:var(--primary);color:var(--primary-contrast);border-color:transparent}.calendar-state{padding:clamp(1.5rem,4vw,2.5rem);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);line-height:1.7}.calendar-state h3{color:var(--text)}.calendar-state code{padding:.1rem .35rem;border-radius:.35rem;background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--text)}.calendar-state-warning{border-style:solid}.agenda-list{display:grid;gap:1rem}.agenda-card{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:1.25rem;align-items:center;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 14px 45px #00000014}.agenda-card time{display:grid;place-items:center;min-height:6rem;padding:.85rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--primary) 14%,var(--surface-strong));text-align:center}.agenda-card time span{color:var(--primary);font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.agenda-card time strong{font-size:1.35rem;line-height:1}.agenda-meta,.event-tags,.agenda-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.agenda-meta{margin-bottom:.5rem;color:var(--primary);font-size:.9rem;font-weight:850}.agenda-content h3{margin-bottom:.4rem}.agenda-content p{margin-bottom:.8rem;color:var(--muted);line-height:1.6;white-space:pre-line}.agenda-content p a{color:var(--primary);font-weight:800;text-decoration-thickness:.12em;text-underline-offset:.18em;overflow-wrap:anywhere}.event-tags span{padding:.3rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:.8rem;font-weight:900}.agenda-actions{justify-content:flex-end}.calendar-fallback{padding-top:1rem}.calendar-frame-wrap{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);box-shadow:var(--shadow)}.calendar-frame-wrap iframe{display:block;width:100%;height:min(72vh,720px);min-height:520px;border:0}.site-footer{flex-shrink:0;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 82%,var(--background));color:var(--muted)}.footer-inner{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:1.5rem;align-items:center;width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:2rem 0}.footer-brand strong{display:block;color:var(--text);font-size:1.1rem}.site-footer p{margin:.25rem 0 0}.site-footer a{color:var(--primary);font-weight:900;text-decoration:none}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}.footer-nav a{padding:.45rem .65rem;border-radius:999px;color:var(--muted);font-size:.92rem}.footer-nav a:hover{background:var(--surface-strong);color:var(--text)}.discord-icon{width:1.2em;height:1.2em;flex:0 0 auto}.footer-discord{display:inline-flex;gap:.45rem;align-items:center}.copyright{font-size:.85rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:920px){.site-header{grid-template-columns:1fr auto auto}.menu-button{display:inline-block}.site-header nav{position:absolute;inset:100% 1rem auto;display:none;flex-direction:column;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);box-shadow:var(--shadow)}.site-header nav.open{display:flex}.header-actions .button{display:none}.hero,.events-hero,.split-section,.calendar-toolbar,.agenda-card{grid-template-columns:1fr}.calendar-toolbar{align-items:start}.filter-chips,.agenda-actions{justify-content:flex-start}.card-grid,.steps{grid-template-columns:1fr}.weekly-grid{grid-template-columns:repeat(2,1fr)}.cta-band{flex-direction:column;align-items:flex-start}.footer-inner{grid-template-columns:1fr;align-items:start}.footer-nav{justify-content:flex-start}}@media(max-width:520px){.brand small{display:none}.brand-mark{width:2.5rem;height:2.5rem}.hero{padding-inline:1rem}.weekly-grid{grid-template-columns:1fr}.calendar-frame-wrap iframe{min-height:420px}}
