:root{--ink:#1c1917;--ink-80:#44403c;--ink-60:#57534e;--ink-40:#a8a29e;--paper:#fafaf8;--paper-light:#fff;--paper-deep:#f0edea;--rule:#e7e5e4;--rule-soft:#f5f5f4;--vermillion:#e04e2b;--vermillion-soft:#f0775c;--indigo:#6366f1;--moegi:#16a34a;--surface:#fff;--surface-hover:#f8f6f4;--accent-soft:#e04e2b12;--indigo-soft:#6366f112;--moegi-soft:#16a34a12;--amber:#d97706;--f-heading:"Nunito", "Zen Maru Gothic", sans-serif;--f-body:"Zen Maru Gothic", "Nunito", "Hiragino Kaku Gothic ProN", sans-serif;--f-mono:"JetBrains Mono", ui-monospace, monospace;--f-display:var(--f-heading);--f-serif:var(--f-heading);--f-sans:var(--f-body);--fs-masthead:clamp(3.5rem, 10vw, 8rem);--fs-hero:clamp(2.5rem, 6vw, 5rem);--fs-display:clamp(1.75rem, 3.5vw, 2.75rem);--fs-h1:clamp(1.375rem, 2.5vw, 2rem);--fs-h2:1.125rem;--fs-body:1rem;--fs-sm:.8125rem;--fs-xs:.6875rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #7850280a;--shadow-md:0 2px 12px #78502812;--shadow-lg:0 8px 30px #78502817;--shadow-xl:0 16px 50px #7850281f;--ease:cubic-bezier(.2, .9, .25, 1);--pad-x:clamp(1.25rem, 4vw, 3rem);--section-y:clamp(2.5rem, 7vh, 5rem)}*,:before,:after{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;overflow-x:hidden}a{color:inherit;text-decoration:none}p{line-height:1.7}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.eyebrow{font-family:var(--f-heading);font-weight:600;font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60)}.label{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-60)}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.display{font-family:var(--f-heading);letter-spacing:-.01em;font-weight:800}.serif-it{font-family:var(--f-heading);font-weight:400}.ink-accent{color:var(--vermillion)}.shell{z-index:2;flex-direction:column;min-height:100vh;display:flex;position:relative}.masthead{padding:1.75rem var(--pad-x);z-index:10;background:0 0;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.wordmark{font-family:var(--f-heading);letter-spacing:-.02em;color:var(--ink);flex-shrink:0;font-size:clamp(1.4rem,2.5vw,1.75rem);font-weight:900;line-height:1}.wordmark-dot{color:var(--vermillion)}.pill-menu{z-index:20;pointer-events:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pill-trigger{z-index:2;background:var(--surface);border:1.5px solid var(--rule);border-radius:var(--radius-full);min-width:min(260px,100vw - 3rem);box-shadow:var(--shadow-md);cursor:pointer;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);transition:color .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);justify-content:center;align-items:center;gap:.6rem;padding:.85rem clamp(.75rem,3vw,1.5rem);font-weight:700;display:flex;position:relative}.pill-trigger:hover{color:var(--ink);border-color:var(--ink-40)}.pill-trigger.open{color:var(--vermillion);border-color:var(--rule);box-shadow:var(--shadow-md);background:var(--surface)}.pill-icon{flex-shrink:0}.pill-icon line{transition:transform .3s var(--ease), opacity .2s var(--ease);transform-origin:9px 9px}.pill-trigger.open .pill-icon-top{transform:translateY(4.5px)rotate(45deg)}.pill-trigger.open .pill-icon-mid{opacity:0}.pill-trigger.open .pill-icon-bot{transform:translateY(-4.5px)rotate(-45deg)}.pill-label{pointer-events:none}.pill-card{z-index:1;background:var(--surface);border:1.5px solid var(--rule);border-radius:var(--radius-xl);min-width:calc(260px + 1.5rem);box-shadow:var(--shadow-xl);clip-path:inset(0 0 100% 0 round var(--radius-xl));opacity:0;pointer-events:none;transition:clip-path .35s var(--ease), opacity .25s var(--ease);position:absolute;top:-.75rem;left:50%;transform:translate(-50%)}.pill-card.open{clip-path:inset(0 0 0 0 round var(--radius-xl));opacity:1;pointer-events:auto}.pill-items{flex-direction:column;gap:.1rem;margin-top:4.25rem;padding:0 .5rem .75rem;display:flex}.pill-item{font-family:var(--f-body);font-size:var(--fs-body);color:var(--ink-60);border-radius:var(--radius-md);transition:color .2s var(--ease), background .2s var(--ease);text-align:center;white-space:nowrap;padding:.7rem 1.25rem;font-weight:600;display:block}.pill-item:hover{color:var(--ink);background:var(--surface-hover)}.pill-item.active{color:var(--vermillion);background:var(--accent-soft)}.nav-right{font-family:var(--f-body);font-size:var(--fs-sm);flex-shrink:0;align-items:center;gap:clamp(.35rem,1.5vw,.75rem);font-weight:600;display:flex}.nav-right a{color:var(--ink-60);border-radius:var(--radius-full);transition:color .25s var(--ease), background .25s var(--ease);padding:.35rem .65rem;position:relative}.nav-right a:hover{color:var(--ink);background:var(--surface-hover)}.nav-right a.active{color:var(--vermillion);background:var(--accent-soft)}.nav-right .nav-inbox{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700;text-decoration:none;transition:color .15s}.nav-right .nav-inbox:hover,.nav-right .nav-inbox.active{color:var(--vermillion)}.nav-right .nav-profile{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700;text-decoration:none;transition:color .15s}.nav-right .nav-profile:hover,.nav-right .nav-profile.active{color:var(--vermillion)}.nav-right .nav-signout{font:inherit;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);border-radius:var(--radius-full);cursor:pointer;transition:color .25s var(--ease), background .25s var(--ease);background:0 0;border:none;padding:.35rem .65rem;font-weight:600}.nav-right .nav-signout:hover{color:var(--ink);background:var(--surface-hover)}@media (width<=640px){.pill-label{display:none}.pill-trigger{gap:0;min-width:auto;padding:.55rem .75rem}}main{flex:1}.container{max-width:1280px;padding:0 var(--pad-x);margin:0 auto}.colophon{margin:var(--section-y) var(--pad-x) 2rem;font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--ink-40);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.25rem 2rem;display:flex}.hero{padding:clamp(3rem,10vh,7rem) 0 clamp(2rem,5vh,4rem)}.hero-eyebrow{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.hero-eyebrow .no{font-family:var(--f-heading);color:var(--vermillion);background:var(--accent-soft);border-radius:var(--radius-full);padding:.25rem .75rem;font-size:.875rem;font-weight:700}.hero-jp{font-family:var(--f-heading);font-size:var(--fs-masthead);letter-spacing:-.03em;color:var(--ink);margin:0;font-weight:900;line-height:.95}.hero-en{font-family:var(--f-heading);color:var(--ink-60);max-width:48ch;margin:1rem 0 0;font-size:clamp(1.125rem,1.9vw,1.5rem);font-weight:400;line-height:1.5}.hero-divider{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-40);align-items:center;gap:1rem;margin-top:2rem;font-weight:600;display:flex}.hero-divider:before,.hero-divider:after{content:"";background:var(--rule);flex:1;height:1px}.hero-divider span+span{color:var(--vermillion)}.section{padding:var(--section-y) 0}.section-header{align-items:baseline;gap:1rem;margin-bottom:2rem;display:flex}.section-no{font-family:var(--f-heading);color:var(--vermillion);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;line-height:1}.section-title{font-family:var(--f-heading);font-size:var(--fs-display);letter-spacing:-.02em;margin:0;font-weight:800;line-height:1.1}.section-lede{font-family:var(--f-body);color:var(--ink-60);max-width:48ch;margin:.5rem 0 0;font-size:1rem}.event-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}@media (width<=880px){.event-grid{grid-template-columns:1fr}}.event-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow .3s var(--ease), transform .3s var(--ease);color:inherit;border:1px solid var(--rule);flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.event-card:last-child{border-right:none}@media (width<=880px){.event-card{border-right:none}}.event-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.event-card .no{font-family:var(--f-heading);color:var(--vermillion);font-size:.8125rem;font-weight:700}.event-card .status{width:fit-content;font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-full);background:var(--ink);color:var(--paper-light);padding:.3rem .75rem;font-weight:700;display:inline-block}.event-card .status.status-open{background:var(--moegi-soft);color:var(--moegi)}.event-card .status.status-lottery{background:var(--indigo-soft);color:var(--indigo)}.event-card .status.status-waitlist{background:var(--accent-soft);color:var(--vermillion)}.event-card h3{font-family:var(--f-heading);letter-spacing:-.01em;color:var(--ink);margin:.25rem 0 .75rem;font-size:clamp(1.125rem,1.6vw,1.375rem);font-weight:800;line-height:1.3}.event-card .meta{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-80);grid-template-columns:auto 1fr;gap:.4rem .75rem;margin:0;display:grid}.event-card .meta dt{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);font-weight:600}.event-card .meta dd{margin:0}.method-list{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=880px){.method-list{grid-template-columns:1fr}}.method-list li{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--rule);flex-direction:column;gap:.75rem;padding:1.75rem;display:flex}.method-list li:last-child{border-right:none}.method-list .step-no{font-family:var(--f-heading);color:var(--vermillion);background:var(--accent-soft);border-radius:var(--radius-md);justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.25rem;font-weight:800;display:flex}.method-list h3{font-family:var(--f-heading);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:800}.method-list p{color:var(--ink-60);margin:0;font-size:.9375rem}.pillar-grid{padding:var(--section-y) 0;grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}@media (width<=880px){.pillar-grid{grid-template-columns:1fr}}.pillar-card{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--rule);transition:box-shadow .35s var(--ease), transform .35s var(--ease);min-height:380px;color:inherit;flex-direction:column;gap:1.25rem;padding:3.5rem 2.5rem;text-decoration:none;display:flex}.pillar-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.pillar-no{font-family:var(--f-heading);font-weight:800;font-size:var(--fs-xs);color:var(--vermillion);letter-spacing:.08em}.pillar-title{font-family:var(--f-heading);font-size:var(--fs-display);color:var(--ink);letter-spacing:-.02em;margin:0;font-weight:900;line-height:1.15}.pillar-body{color:var(--ink-60);flex:1;margin:0;font-size:1rem;line-height:1.7}.pillar-cta{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--vermillion);transition:gap .25s var(--ease);align-items:center;gap:.5rem;margin-top:auto;font-weight:700;text-decoration:none;display:inline-flex}.pillar-cta:hover{gap:.75rem}.dd{width:100%;position:relative}.dd-trigger{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);width:100%;font-family:var(--f-body);font-size:var(--fs-body);color:var(--ink);cursor:pointer;transition:border-color .25s var(--ease), box-shadow .25s var(--ease);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .75rem;display:flex}.dd-trigger:hover{border-color:var(--ink-40)}.dd-open .dd-trigger,.dd-trigger:focus-visible{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.dd-placeholder{color:var(--ink-40)}.dd-chevron{color:var(--ink-40);transition:transform .25s var(--ease);flex-shrink:0}.dd-open .dd-chevron{transform:rotate(180deg)}.dd-menu{z-index:90;background:var(--paper-light);border:1.5px solid var(--rule);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:260px;animation:dd-enter .18s var(--ease);margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}@keyframes dd-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dd-item{border-radius:var(--radius-sm);font-family:var(--f-body);font-size:var(--fs-body);color:var(--ink);cursor:pointer;transition:background .15s var(--ease);justify-content:space-between;align-items:center;padding:.5rem .65rem;display:flex}.dd-item:hover{background:var(--paper-deep)}.dd-item-active{color:var(--vermillion);font-weight:600}.dd-check{color:var(--vermillion);flex-shrink:0}.dd-sm .dd-trigger{font-size:var(--fs-sm);border-radius:var(--radius-sm);padding:.35rem .5rem}.dd-sm .dd-menu{font-size:var(--fs-sm)}.dd-sm .dd-item{font-size:var(--fs-sm);padding:.35rem .5rem}.tp{width:100%;position:relative}.tp-trigger{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);width:100%;font-family:var(--f-mono);font-size:var(--fs-body);color:var(--ink);cursor:pointer;transition:border-color .25s var(--ease), box-shadow .25s var(--ease);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .75rem;display:flex}.tp-trigger:hover{border-color:var(--ink-40)}.tp-open .tp-trigger,.tp-trigger:focus-visible{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.tp-placeholder{color:var(--ink-40)}.tp-icon{color:var(--ink-40);flex-shrink:0}.tp-menu{z-index:90;background:var(--paper-light);border:1.5px solid var(--rule);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);height:220px;animation:dd-enter .18s var(--ease);grid-template-columns:1fr 1fr;gap:0;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.tp-col{margin:0;padding:.35rem;list-style:none;overflow-y:auto}.tp-col+.tp-col{border-left:1px solid var(--rule)}.tp-col-item{border-radius:var(--radius-sm);font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);cursor:pointer;transition:background .15s var(--ease);justify-content:center;align-items:center;padding:.4rem .5rem;display:flex}.tp-col-item:hover{background:var(--paper-deep)}.tp-col-item-active{background:var(--vermillion);color:#fff;font-weight:700}.tp-col-item-active:hover{background:var(--vermillion-soft)}.dtp{width:100%;position:relative}.dtp-trigger{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);width:100%;font-family:var(--f-body);font-size:var(--fs-body);color:var(--ink);cursor:pointer;transition:border-color .25s var(--ease), box-shadow .25s var(--ease);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .75rem;display:flex}.dtp-trigger:hover{border-color:var(--ink-40)}.dtp-open .dtp-trigger,.dtp-trigger:focus-visible{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.dtp-placeholder{color:var(--ink-40)}.dtp-icon{color:var(--ink-40);flex-shrink:0}.dtp-menu{z-index:90;background:var(--paper-light);border:1.5px solid var(--rule);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:dd-enter .18s var(--ease);display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}@media (width<=560px){.dtp-menu{flex-direction:column}}.dtp-cal{min-width:260px;padding:.75rem}.dtp-nav{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.dtp-nav-btn{border-radius:var(--radius-sm);width:1.75rem;height:1.75rem;color:var(--ink-60);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.125rem;display:flex}.dtp-nav-btn:hover{background:var(--paper-deep);color:var(--ink)}.dtp-nav-label{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--ink);font-weight:700}.dtp-dow{text-align:center;font-size:var(--fs-xs);color:var(--ink-40);grid-template-columns:repeat(7,1fr);margin-bottom:.25rem;font-weight:600;display:grid}.dtp-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dtp-day{border-radius:var(--radius-sm);width:2rem;height:2rem;font-size:var(--fs-sm);color:var(--ink);cursor:pointer;transition:background .15s var(--ease);background:0 0;border:none;justify-content:center;align-items:center;margin:0 auto;display:flex}.dtp-day:hover{background:var(--paper-deep)}.dtp-day-active{color:#fff;font-weight:700;background:var(--vermillion)!important}.dtp-time{border-left:1px solid var(--rule);min-width:120px;padding:.75rem .5rem}@media (width<=560px){.dtp-time{border-left:none;border-top:1px solid var(--rule)}}.dtp-time-label{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--ink-40);text-align:center;margin-bottom:.4rem;font-weight:700}.dtp-time-cols{grid-template-columns:1fr 1fr;gap:0;height:180px;display:grid;overflow:hidden}.dtp-time-col{margin:0;padding:.2rem;list-style:none;overflow-y:auto}.dtp-time-col+.dtp-time-col{border-left:1px solid var(--rule)}.dtp-time-item{border-radius:var(--radius-sm);font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);cursor:pointer;transition:background .15s var(--ease);justify-content:center;align-items:center;padding:.3rem .4rem;display:flex}.dtp-time-item:hover{background:var(--paper-deep)}.dtp-time-item-active{background:var(--vermillion);color:#fff;font-weight:700}.dtp-time-item-active:hover{background:var(--vermillion-soft)}.cp{display:inline-flex;position:relative}.cp-trigger{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);cursor:pointer;transition:border-color .25s var(--ease), box-shadow .25s var(--ease);align-items:center;gap:.6rem;padding:.5rem .75rem;display:inline-flex}.cp-trigger:hover{border-color:var(--ink-40)}.cp-open .cp-trigger{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.cp-swatch{border-radius:var(--radius-sm);border:1px solid #00000014;flex-shrink:0;width:1.5rem;height:1.5rem}.cp-hex{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60);text-transform:uppercase}.cp-menu{z-index:90;background:var(--paper-light);border:1.5px solid var(--rule);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:dd-enter .18s var(--ease);min-width:220px;padding:.75rem;position:absolute;top:calc(100% + 6px);left:0}.cp-presets{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.cp-preset{border-radius:var(--radius-sm);cursor:pointer;width:1.75rem;height:1.75rem;transition:transform .15s var(--ease), border-color .15s var(--ease);border:2px solid #0000}.cp-preset:hover{transform:scale(1.15)}.cp-preset-active{border-color:var(--ink)}.cp-custom{align-items:center;gap:.5rem;display:flex}.cp-native{cursor:pointer;background:0 0;border:none;width:2rem;height:2rem;padding:0}.cp-hex-input{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);text-transform:uppercase;flex:1;padding:.35rem .5rem}.cb{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:inline-flex}.cb-native{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.cb-box{border:1.5px solid var(--rule);background:var(--paper);width:1.25rem;height:1.25rem;transition:background .2s var(--ease), border-color .2s var(--ease);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cb-checked .cb-box{background:var(--vermillion);border-color:var(--vermillion);color:#fff}.cb-label{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink);line-height:1.3}.fu{position:relative}.fu-native{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.fu-trigger{background:var(--paper);border:2px dashed var(--rule);border-radius:var(--radius-lg);cursor:pointer;width:100%;min-height:100px;transition:border-color .25s var(--ease), background .25s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;display:flex}.fu-trigger:hover{border-color:var(--vermillion);background:var(--accent-soft)}.fu-disabled .fu-trigger{opacity:.5;cursor:not-allowed}.fu-icon{color:var(--ink-40)}.fu-trigger:hover .fu-icon{color:var(--vermillion)}.fu-label{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);font-weight:600}.fu-sub{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40)}.cta{text-align:center;padding:calc(var(--section-y) * 1.2) 0}.cta-eyebrow{font-family:var(--f-heading);font-weight:700;font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--vermillion);margin:0 0 1.25rem}.cta-title{font-family:var(--f-heading);letter-spacing:-.02em;margin:0 0 2rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:900;line-height:1.1}.btn-primary{background:var(--vermillion);color:#fff;font-family:var(--f-body);font-size:var(--fs-sm);letter-spacing:.04em;border-radius:var(--radius-md);transition:background .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);align-items:center;gap:.75rem;padding:.875rem 2rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #e04e2b40}.btn-primary:hover{background:#c7421f;transform:translateY(-2px);box-shadow:0 4px 16px #e04e2b4d}.btn-ghost{border:1.5px solid var(--rule);border-radius:var(--radius-md);font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);transition:color .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-weight:600;display:inline-flex}.btn-ghost:hover{color:var(--vermillion);border-color:var(--vermillion);background:var(--accent-soft)}.filter-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:0;padding:1.25rem 0;display:flex}.filter-chip{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-60);border:1.5px solid var(--rule);border-radius:var(--radius-full);transition:all .25s var(--ease);background:0 0;padding:.5rem 1rem;font-weight:600}.filter-chip:hover{color:var(--ink);border-color:var(--ink-40);background:var(--surface-hover)}.filter-chip.active{color:#fff;background:var(--vermillion);border-color:var(--vermillion)}.event-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.event-row{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--rule);transition:box-shadow .3s var(--ease), transform .3s var(--ease);overflow:hidden}.event-row:last-child{border-bottom:none}.event-row:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.event-row a{grid-template-columns:3.5rem minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:clamp(1rem,3vw,2rem);padding:1.25rem 1.5rem;transition:none;display:grid}.event-row a:hover{background:0 0;padding-left:1.5rem}@media (width<=720px){.event-row a{grid-template-columns:2.5rem 1fr;gap:1rem;padding:1rem 1.25rem}.row-meta-col{grid-column:2;padding-top:.5rem}}.row-idx{font-family:var(--f-heading);color:var(--vermillion);padding-top:.15rem;font-size:1.5rem;font-weight:800;line-height:1}.row-body{min-width:0}.row-tag{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.4rem;font-weight:600}.row-title{font-family:var(--f-heading);letter-spacing:-.01em;color:var(--ink);margin:0 0 .5rem;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:800;line-height:1.25}.row-meta{font-family:var(--f-body);color:var(--ink-60);margin:0;font-size:.9375rem}.row-meta-col{text-align:right;flex-direction:column;gap:.4rem;display:flex}@media (width<=720px){.row-meta-col{text-align:left}}.row-date{font-family:var(--f-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:.02em}.row-time{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);letter-spacing:.04em}.row-slots{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);flex-direction:column;gap:.25rem;margin-top:.35rem;display:flex}.row-slots>div{justify-content:flex-end;gap:.75rem;display:flex}@media (width<=720px){.row-slots>div{justify-content:flex-start}}.timeline{flex-direction:column;gap:0;padding-left:2rem;display:flex;position:relative}.timeline:before{content:"";background:var(--rule);width:2px;position:absolute;top:.6rem;bottom:0;left:.55rem}.timeline-day{position:relative}.timeline-day+.timeline-day{margin-top:2.5rem}.timeline-date-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex;position:relative}.timeline-date-pip{background:var(--vermillion);border:2px solid var(--surface);width:.85rem;height:.85rem;box-shadow:0 0 0 2px var(--vermillion);z-index:1;border-radius:50%;position:absolute;left:-1.85rem}.timeline-date-num{font-family:var(--f-heading);color:var(--ink);letter-spacing:-.02em;font-size:2.25rem;font-weight:800;line-height:1}.timeline-date-info{flex-direction:column;gap:.05rem;display:flex}.timeline-dow{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40);letter-spacing:.04em;line-height:1.3}.timeline-rel{font-family:var(--f-heading);color:var(--vermillion);font-size:1rem;font-weight:800;line-height:1.2}.timeline-events{margin-left:0}.timeline-events .event-row a{grid-template-columns:3.5rem minmax(0,1.6fr) minmax(0,1fr)}.timeline-events .row-idx{font-family:var(--f-mono);color:var(--vermillion);white-space:nowrap;letter-spacing:.02em;padding-top:.25rem;font-size:.8125rem;font-weight:700}@media (width<=720px){.timeline{padding-left:1.5rem}.timeline:before{left:.35rem}.timeline-date-pip{left:-1.45rem}.timeline-date-num{font-size:1.75rem}}.event-detail-head{padding:clamp(2rem,6vh,4rem) 0 clamp(1.5rem,4vh,2.5rem)}.event-detail-head .tag{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--vermillion);background:var(--accent-soft);border-radius:var(--radius-full);margin-bottom:1rem;padding:.3rem .75rem;font-weight:700;display:inline-block}.event-detail-head h1{font-family:var(--f-heading);letter-spacing:-.03em;max-width:24ch;margin:0 0 1rem;font-size:clamp(2rem,5vw,4rem);font-weight:900;line-height:1.05}.event-detail-head .lede{font-family:var(--f-body);color:var(--ink-60);max-width:55ch;margin:0;font-size:clamp(1.0625rem,1.5vw,1.25rem)}.event-detail-body{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(2rem,5vw,3.5rem);padding:clamp(2rem,5vh,3.5rem) 0;display:grid}@media (width<=880px){.event-detail-body{grid-template-columns:1fr}}.event-body h2{font-family:var(--f-heading);border-top:1px solid var(--rule);margin:2rem 0 .75rem;padding-top:1.5rem;font-size:1.375rem;font-weight:800}.event-body h2:first-child{border-top:none;margin-top:0;padding-top:0}.event-body p{color:var(--ink-80);max-width:60ch;font-size:1rem}.speaker-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.speaker-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--rule);padding:1.25rem}.speaker-card .name{font-family:var(--f-heading);margin:0 0 .2rem;font-size:1.0625rem;font-weight:800}.speaker-card .role{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin:0 0 .5rem}.speaker-card .bio{font-size:var(--fs-sm);color:var(--ink-60);margin:0}.register-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:1.75rem;position:sticky;top:6rem}.register-card .price{font-family:var(--f-heading);letter-spacing:-.01em;margin:0 0 .25rem;font-size:2rem;font-weight:900}.register-card .price .unit{font-family:var(--f-body);color:var(--ink-60);margin-left:.25rem;font-size:.9375rem;font-weight:400}.register-card .price-note{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin:0 0 1.25rem}.register-card hr{background:var(--rule);border:none;height:1px;margin:1.25rem 0}.register-card dl{grid-template-columns:auto 1fr;gap:.5rem .75rem;margin:0 0 1.25rem;display:grid}.register-card dt{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);font-weight:600}.register-card dd{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);text-align:right;margin:0}.walk-badge{background:var(--vermillion-bg,#e04e2b14);color:var(--vermillion);white-space:nowrap;border-radius:999px;margin-left:.4rem;padding:.1rem .45rem;font-size:.6875rem;font-weight:700;display:inline-block}.access-badge{font-family:var(--f-heading);letter-spacing:.03em;border-radius:999px;padding:.15rem .5rem;font-size:.6875rem;font-weight:700;display:inline-block}.access-badge--public{color:#2e7d32;background:#4caf501a}.access-badge--gated,.access-badge--keycard,.access-badge--buzzer{color:#e65100;background:#ff98001a}.access-badge--private_residence{color:#7b1fa2;background:#9c27b01a}.access-note{line-height:1.4;font-family:var(--f-body)!important;font-size:var(--fs-xs)!important;color:var(--ink-60)!important}.venue-amenities{border-top:1px solid var(--rule);margin-top:1rem;padding-top:1rem}.amenity-pills{flex-wrap:wrap;gap:.35rem;display:flex}.amenity-pill{font-family:var(--f-heading);color:var(--ink-60);background:var(--rule-soft);border:1px solid var(--rule);white-space:nowrap;border-radius:999px;padding:.2rem .55rem;font-size:.6875rem;font-weight:600;display:inline-block}.organizer-card{border-top:1px solid var(--rule);margin-top:1rem;padding-top:1rem}.organizer-info{align-items:baseline;gap:.5rem;margin-bottom:.75rem;display:flex}.organizer-name{font-family:var(--f-heading);color:var(--ink);font-size:1.125rem;font-weight:800;text-decoration:none;transition:color .15s}.organizer-name:hover{color:var(--vermillion)}.organizer-followers{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.host-stats{border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:.5rem;margin-bottom:.75rem;padding:.75rem 0;display:grid}.host-stat{text-align:center;flex-direction:column;align-items:center;display:flex}.host-stat-val{font-family:var(--f-heading);color:var(--ink);font-size:1.125rem;font-weight:800;line-height:1.2}.host-stat-label{font-family:var(--f-mono);color:var(--ink-40);letter-spacing:.04em;text-transform:uppercase;font-size:.625rem}.organizer-actions{gap:.5rem;display:flex}.follow-btn{font-family:var(--f-heading);color:#fff;background:var(--vermillion);border:1.5px solid var(--vermillion);border-radius:var(--radius-md);cursor:pointer;text-align:center;white-space:nowrap;flex:1;justify-content:center;align-items:center;padding:.55rem 1rem;font-size:.8125rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.follow-btn:hover{background:var(--vermillion-soft);border-color:var(--vermillion-soft);color:#fff;padding-left:1rem}.follow-btn.following{background:var(--surface);color:var(--ink-60);border-color:var(--rule)}.follow-btn.following:hover{border-color:var(--vermillion);color:var(--vermillion);background:var(--vermillion-bg,#e04e2b0f)}.dm-host-btn{border:1.5px solid var(--rule);border-radius:var(--radius-md);color:var(--ink-60);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;padding:.55rem 1rem;font-size:.8125rem;font-weight:700;transition:border-color .15s,color .15s;display:inline-flex}.dm-host-btn:hover{border-color:var(--vermillion);color:var(--vermillion);background:0 0;padding-left:1rem}.host-link{color:var(--ink-60);font-weight:600;text-decoration:none;transition:color .15s}.host-link:hover{color:var(--vermillion);text-decoration:underline}.register-card .btn-primary{justify-content:center;width:100%}.slot-list{margin:0 0 1.25rem;padding:0;list-style:none}.slot-list li{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;align-items:start;gap:.75rem;padding:.875rem 0;display:grid}.slot-list .slot-name{font-family:var(--f-heading);font-size:1rem;font-weight:700}.slot-list .slot-price{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);margin-left:.5rem}.slot-list .slot-count{font-family:var(--f-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--ink)}.slot-list .slot-count.full{color:var(--vermillion)}.slot-list .slot-count.open{color:var(--moegi)}.slot-list .slot-right{flex-direction:column;align-items:flex-end;gap:.4rem;display:flex}.slot-list .slot-waitlist{color:var(--ink-40);margin-top:.1rem;font-size:.6875rem;display:block}.slot-list .slot-my-status{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--moegi);margin-left:.25rem}.slot-btn{background:var(--ink);color:#fff;font-family:var(--f-body);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;transition:background .25s var(--ease), transform .25s var(--ease);white-space:nowrap;border:none;justify-content:center;align-items:center;padding:.4rem .85rem;font-size:.6875rem;font-weight:700;text-decoration:none;display:inline-flex}.slot-btn:hover:not(:disabled){background:var(--vermillion);transform:translateY(-1px)}.slot-btn:disabled{opacity:.4;cursor:not-allowed}.slot-btn--registered{background:var(--moegi)}.slot-btn--registered:hover:not(:disabled){background:var(--vermillion)}.slot-btn--waitlist{background:var(--indigo)}.notifications-wrap{align-items:center;display:inline-flex;position:relative}.notifications-bell{width:36px;height:36px;color:var(--ink-60);cursor:pointer;border-radius:var(--radius-sm);transition:color .25s var(--ease), background .25s var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.notifications-bell:hover{color:var(--ink);background:var(--surface-hover)}.notifications-dot{background:var(--vermillion);width:8px;height:8px;box-shadow:0 0 0 2px var(--paper-light);border-radius:50%;position:absolute;top:6px;right:6px}.notifications-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-xl);width:min(400px,100vw - 2rem);max-height:520px;box-shadow:var(--shadow-xl);z-index:100;font-family:var(--f-body);text-transform:none;letter-spacing:normal;color:var(--ink);flex-direction:column;font-style:normal;display:flex;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}.notifications-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:1rem 1.25rem .75rem;display:flex}.notifications-head .eyebrow{margin:0}.notifications-markall{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--vermillion);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.notifications-markall:hover{text-decoration:underline}.notifications-loading,.notifications-empty{text-align:center;color:var(--ink-40);margin:0;padding:2rem 1.25rem;font-size:.9375rem}.notifications-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.notifications-list::-webkit-scrollbar{width:5px}.notifications-list::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}.notifications-list li{border-bottom:1px solid var(--rule)}.notifications-list li:last-child{border-bottom:none}.notifications-list button{text-align:left;cursor:pointer;width:100%;transition:background .2s var(--ease);font-family:var(--f-body);background:0 0;border:none;align-items:flex-start;gap:.75rem;padding:.9rem 1.25rem;display:flex}.notifications-list button:hover{background:var(--surface-hover)}.notifications-list .unread-mark{background:var(--vermillion);border-radius:50%;flex:none;width:8px;height:8px;margin-top:.5rem}.notifications-list li.unread .item-title{color:var(--ink)}.notifications-list li:not(.unread) .item-title{color:var(--ink-60)}.notifications-list li:not(.unread) .item-body{margin-left:16px}.notifications-list li.unread .item-body{margin-left:0}.item-body{flex:1;min-width:0}.item-title{font-family:var(--f-heading);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.2rem;font-size:.9375rem;font-weight:700;line-height:1.35;overflow:hidden}.item-preview{color:var(--ink-60);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.3rem;font-size:.8125rem;line-height:1.45;display:-webkit-box;overflow:hidden}.item-time{font-family:var(--f-mono);color:var(--ink-40);letter-spacing:.03em;font-size:.6875rem}.event-share-drawer{margin-top:1.5rem;padding:clamp(1.5rem,4vh,2.5rem) 0}.event-share-drawer .visibility-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.event-share-drawer .visibility-row label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);font-weight:600}.visibility-hint{color:var(--ink-60);max-width:60ch;margin:.5rem 0 1.5rem;font-size:.875rem}.share-link-form{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);margin:1.25rem 0;padding:1.25rem}.share-link-grid{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1rem;display:grid}@media (width<=720px){.share-link-grid{grid-template-columns:1fr}}.share-link-grid label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.35rem;font-weight:600;display:block}.share-link-grid input{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);width:100%;font-family:var(--f-mono);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);outline:none;padding:.6rem .75rem;font-size:.9375rem}.share-link-grid input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.share-link-list{margin:0;padding:0;list-style:none}.share-link-row{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;gap:1rem;padding:1rem 0;display:grid}.share-link-row.inactive{opacity:.45}.share-link-main{min-width:0}.share-link-url{color:var(--ink);word-break:break-all;background:var(--paper);border-radius:var(--radius-sm);border-left:3px solid var(--vermillion);margin-bottom:.4rem;padding:.5rem .75rem;font-size:.75rem}.share-link-meta{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);flex-wrap:wrap;gap:1.25rem;display:flex}.share-link-meta .meta-label{font-family:var(--f-body);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-right:.25rem;font-weight:600}.share-link-actions{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.share-link-actions .btn-ghost{font-size:var(--fs-xs);padding:.35rem .75rem}.calendar-controls{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 0;display:flex}.calendar-nav{align-items:center;gap:.5rem;display:flex}.calendar-nav button{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);border:1.5px solid var(--rule);border-radius:var(--radius-sm);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.5rem .9rem;font-weight:600}.calendar-nav button:hover{color:var(--ink);border-color:var(--ink-40);background:var(--surface-hover)}.calendar-range{color:var(--ink);font-size:.875rem;font-weight:700}.calendar-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.seg-switch{border:1.5px solid var(--rule);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.seg-switch button{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);border:none;border-right:1px solid var(--rule);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.45rem .85rem;font-weight:600}.seg-switch button:last-child{border-right:none}.seg-switch button.active{background:var(--vermillion);color:#fff}.calendar-drawer{padding:clamp(1rem,3vh,2rem) 0}.calendar-body{padding:clamp(1.5rem,4vh,3rem) 0 clamp(2.5rem,7vh,5rem)}.agenda{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.agenda-day{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--rule);grid-template-columns:minmax(130px,170px) 1fr;gap:clamp(1rem,3vw,1.75rem);padding:1.25rem 1.5rem;display:grid}.agenda-day:first-child{border-top:none}.agenda-day:last-child{border-bottom:none}.agenda-day.today{border-color:var(--vermillion);box-shadow:0 0 0 1px var(--vermillion)}.agenda-day.today .agenda-date-num{color:var(--vermillion)}@media (width<=720px){.agenda-day{grid-template-columns:1fr;gap:.75rem;padding:1rem 1.25rem}}.agenda-date{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.agenda-date-num{font-family:var(--f-heading);font-size:1.375rem;font-weight:800}.agenda-date-dow{font-family:var(--f-body);color:var(--ink-60);font-size:.9375rem}.agenda-today{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--vermillion);border-radius:var(--radius-full);margin-left:.35rem;padding:.15rem .5rem;font-weight:700}.agenda-empty{color:var(--ink-40);font-size:.9375rem}.agenda-items{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.agenda-item{grid-template-columns:auto 1fr auto;gap:1rem;padding:.5rem 0;display:grid}.agenda-item:first-child{border-top:none;padding-top:0}.agenda-time{color:var(--ink-60);white-space:nowrap;font-variant-numeric:tabular-nums;padding-top:.15rem;font-size:.875rem}.agenda-body{min-width:0}.agenda-kind-badge{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-full);margin-bottom:.3rem;padding:.2rem .6rem;font-weight:700;display:inline-block}.item-event .agenda-kind-badge{background:var(--indigo-soft);color:var(--indigo)}.item-booking .agenda-kind-badge{background:var(--moegi-soft);color:var(--moegi)}.item-appointment .agenda-kind-badge{background:var(--accent-soft);color:var(--vermillion)}.agenda-title{font-family:var(--f-heading);color:var(--ink);font-size:1.125rem;font-weight:700;line-height:1.3;display:block}.agenda-link{transition:color .25s var(--ease);text-decoration:none}.agenda-link:hover{color:var(--vermillion)}.agenda-meta,.agenda-desc{color:var(--ink-60);margin-top:.2rem;font-size:.8125rem}.agenda-meta{font-family:var(--f-mono)}.agenda-remove{border:1.5px solid var(--rule);border-radius:var(--radius-sm);color:var(--ink-40);cursor:pointer;width:28px;height:28px;transition:all .25s var(--ease);background:0 0;justify-content:center;align-self:flex-start;align-items:center;font-size:1rem;display:flex}.agenda-remove:hover{color:var(--vermillion);border-color:var(--vermillion);background:var(--accent-soft)}.new-appointment .form-row,.new-appointment .form-row-grid{margin-bottom:1.25rem}.new-appointment label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.35rem;font-weight:600;display:block}.new-appointment input[type=text],.new-appointment input[type=datetime-local]{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);width:100%;font-family:var(--f-body);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);outline:none;padding:.6rem .75rem;font-size:1rem}.new-appointment input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.new-appointment .form-row-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}@media (width<=720px){.new-appointment .form-row-grid{grid-template-columns:1fr}}.new-appointment .visibility-row{flex-direction:column;gap:.5rem;display:flex}.new-appointment .radio-group{flex-wrap:wrap;gap:1.25rem;display:flex}.new-appointment .radio-group label{font-family:var(--f-body);text-transform:none;letter-spacing:0;color:var(--ink);align-items:center;gap:.5rem;margin:0;font-size:.9375rem;font-style:normal;display:inline-flex}.new-appointment .btn-primary{margin-top:.75rem}.share-lists{grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,2.5rem);margin-top:1.5rem;display:grid}@media (width<=720px){.share-lists{grid-template-columns:1fr}}.share-list{margin:.75rem 0 0;padding:0;list-style:none}.share-list li{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.share-list strong{font-family:var(--f-heading);margin-right:.5rem;font-weight:700}.share-list .mono{color:var(--ink-40);font-size:.8125rem}.share-revoke{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--vermillion);cursor:pointer;background:0 0;border:none;padding:.25rem 0;font-weight:600}.share-revoke:hover{text-decoration:underline}.inbox-new{border-bottom:1px solid var(--rule);padding:clamp(1.5rem,4vh,2.5rem) 0}.inbox-new .eyebrow{margin-bottom:1rem}.inbox-search{grid-template-columns:1fr auto;gap:.75rem;max-width:560px;display:grid}.inbox-search input{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);font-family:var(--f-body);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);outline:none;padding:.65rem .75rem;font-size:1rem}.inbox-search input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.inbox-search button{background:var(--vermillion);color:#fff;border-radius:var(--radius-sm);font-family:var(--f-body);font-size:var(--fs-sm);cursor:pointer;transition:background .25s var(--ease);border:none;padding:.6rem 1.25rem;font-weight:700}.inbox-search button:hover:not(:disabled){background:#c7421f}.inbox-search button:disabled{opacity:.4;cursor:not-allowed}.inbox-search-results{max-width:560px;margin:1rem 0 0;padding:0;list-style:none}.inbox-search-results li{border-bottom:1px solid var(--rule)}.inbox-search-results button{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;font-family:var(--f-body);transition:background .2s var(--ease);background:0 0;border:none;justify-content:space-between;align-items:center;padding:.75rem .5rem;font-size:.9375rem;display:flex}.inbox-search-results button:hover{background:var(--surface-hover)}.inbox-search-results button strong{font-family:var(--f-heading);margin-right:.5rem;font-weight:700}.inbox-search-results .mono{color:var(--ink-40);font-size:.8125rem}.inbox-search-results .ink-accent{font-family:var(--f-body);font-size:var(--fs-xs);font-weight:700}.inbox-list-wrap{padding:clamp(2rem,5vh,3.5rem) 0 clamp(2.5rem,7vh,5rem)}.inbox-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.inbox-list li{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--rule);transition:box-shadow .25s var(--ease);overflow:hidden}.inbox-list li:last-child{border-bottom:1px solid var(--rule)}.inbox-list li:hover{box-shadow:var(--shadow-sm)}.inbox-list a{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1rem;padding:1rem 1.25rem;transition:none;display:grid}.inbox-list a:hover{background:0 0}.inbox-list .unread-dot{background:var(--vermillion);border-radius:50%;width:8px;height:8px;margin-top:.55rem}.inbox-list li:not(.unread) .inbox-body{margin-left:16px}.inbox-body{min-width:0}.inbox-title{align-items:baseline;gap:.6rem;margin-bottom:.2rem;display:flex}.inbox-title .name{font-family:var(--f-heading);font-size:1.125rem;font-weight:700}.inbox-list li.unread .inbox-title .name{color:var(--ink)}.inbox-list li:not(.unread) .inbox-title .name{color:var(--ink-60)}.inbox-title .kind-badge{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);font-weight:600}.inbox-preview{font-family:var(--f-body);color:var(--ink-60);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.875rem;display:-webkit-box;overflow:hidden}.inbox-time{font-size:var(--fs-xs);color:var(--ink-40);white-space:nowrap;padding-top:.3rem}.conversation-head{border-bottom:1px solid var(--rule);padding:clamp(2rem,5vh,3.5rem) 0 clamp(1rem,2vh,1.5rem)}.conversation-head .back-link{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);transition:color .25s var(--ease);margin-bottom:.75rem;font-weight:600;display:inline-block}.conversation-head .back-link:hover{color:var(--vermillion)}.conversation-head .eyebrow{margin:.5rem 0}.conversation-title{font-family:var(--f-heading);letter-spacing:-.02em;margin:.5rem 0;font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:900;line-height:1.1}.conversation-members{font-family:var(--f-body);color:var(--ink-60);margin:0;font-size:.9375rem}.conversation-body{padding:clamp(1.25rem,3vh,2rem) 0 clamp(2.5rem,5vh,4rem)}.chat-author-btn{font:inherit;font-family:var(--f-heading);color:var(--ink);cursor:pointer;transition:color .25s var(--ease);background:0 0;border:none;padding:0;font-size:.875rem;font-weight:700;text-decoration:none}.chat-author-btn:hover{color:var(--vermillion)}.event-chat{padding:clamp(2rem,5vh,3.5rem) 0 clamp(1.5rem,4vh,2.5rem)}.event-chat--cta{text-align:center;padding:clamp(2.5rem,7vh,4rem) 0}.event-chat--cta .eyebrow{margin-bottom:1rem}.event-chat--cta h3{font-family:var(--f-heading);margin:0 0 .5rem;font-size:clamp(1.375rem,2.5vw,1.75rem);font-weight:800}.event-chat--cta p{font-family:var(--f-body);color:var(--ink-60);margin:0 0 1.5rem}.chat-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.chat-head .eyebrow{margin:0}.chat-count{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.chat-thread{flex-direction:column;gap:.25rem;min-height:200px;max-height:480px;padding:.5rem 0;display:flex;overflow-y:auto}.chat-thread::-webkit-scrollbar{width:6px}.chat-thread::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}.chat-loading,.chat-empty{color:var(--ink-40);text-align:center;margin:0;padding:2rem 0;font-size:.9375rem}.chat-loadmore{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);border:1.5px solid var(--rule);border-radius:var(--radius-full);cursor:pointer;transition:all .25s var(--ease);background:0 0;align-self:center;margin:.5rem auto .75rem;padding:.45rem 1rem;font-weight:600}.chat-loadmore:hover:not(:disabled){color:var(--ink);border-color:var(--ink-40);background:var(--surface-hover)}.chat-loadmore:disabled{opacity:.4;cursor:not-allowed}.chat-day{text-align:center;font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);margin:.75rem 0 .5rem;font-weight:600}.chat-msg{max-width:65ch;padding:.4rem 0}.chat-msg.self{text-align:right;margin-left:auto}.chat-author{align-items:baseline;gap:.5rem;margin-bottom:.15rem;display:flex}.chat-msg.self .chat-author{justify-content:flex-end}.chat-author .name{font-family:var(--f-heading);color:var(--ink);font-size:.875rem;font-weight:700}.chat-author .time{font-size:var(--fs-xs);color:var(--ink-40);font-variant-numeric:tabular-nums}.chat-body{color:var(--ink-80);white-space:pre-wrap;word-break:break-word;font-size:.9375rem;line-height:1.55}.chat-msg.self .chat-body{color:var(--ink);background:var(--accent-soft);border-radius:var(--radius-md);text-align:left;padding:.5rem .85rem;display:inline-block}.chat-compose{border-top:1px solid var(--rule);grid-template-columns:1fr auto;gap:.75rem;margin-top:1.25rem;padding-top:1rem;display:grid}.chat-compose input{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);font-family:var(--f-body);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);outline:none;padding:.65rem .75rem;font-size:1rem}.chat-compose input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.chat-compose input::placeholder{color:var(--ink-40)}.chat-compose button{background:var(--vermillion);color:#fff;border-radius:var(--radius-sm);font-family:var(--f-body);font-size:var(--fs-sm);cursor:pointer;transition:background .25s var(--ease);border:none;padding:.6rem 1.25rem;font-weight:700}.chat-compose button:hover:not(:disabled){background:#c7421f}.chat-compose button:disabled{opacity:.4;cursor:not-allowed}.booking-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(2rem,5vw,3.5rem);min-height:70vh;padding:clamp(2rem,5vh,4rem) 0;display:grid}@media (width<=880px){.booking-layout{grid-template-columns:1fr}}.booking-aside{padding-right:clamp(1.5rem,4vw,3rem)}@media (width<=880px){.booking-aside{border-bottom:1px solid var(--rule);padding-bottom:1.5rem;padding-right:0}}.booking-aside .eyebrow{margin-bottom:.75rem}.booking-aside .host-name{font-family:var(--f-heading);letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:900;line-height:1.1}.booking-aside .host-role{font-family:var(--f-body);color:var(--ink-60);margin:0 0 1.5rem;font-size:1rem}.booking-aside .event-type{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);margin-bottom:1.5rem;padding:1.25rem}.booking-aside .event-type h3{font-family:var(--f-heading);margin:0 0 .35rem;font-size:1.25rem;font-weight:800}.booking-aside .event-type .dur{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60)}.booking-aside p{color:var(--ink-60);max-width:40ch;font-size:.9375rem}.calendar-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.calendar-head h2{font-family:var(--f-heading);margin:0;font-size:1.375rem;font-weight:800}.calendar-head .nav{gap:.4rem;display:flex}.calendar-head .nav button{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);border:1.5px solid var(--rule);border-radius:var(--radius-sm);transition:all .25s var(--ease);padding:.4rem .7rem;font-weight:600}.calendar-head .nav button:hover{color:var(--ink);border-color:var(--ink-40)}.week-grid{grid-template-columns:repeat(7,1fr);gap:.4rem;display:grid}.day-col{flex-direction:column;gap:.35rem;display:flex}.day-col .day-head{text-align:center;margin-bottom:.4rem;padding-bottom:.6rem}.day-col .dow{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;color:var(--ink-40);font-weight:600}.day-col .dom{font-family:var(--f-heading);margin-top:.2rem;font-size:1.25rem;font-weight:800;line-height:1.1}.day-col .dom.today{color:var(--vermillion)}.day-col .slot{font-family:var(--f-mono);font-size:var(--fs-xs);border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-80);text-align:center;transition:all .2s var(--ease);padding:.5rem .25rem}.day-col .slot:hover{border-color:var(--vermillion);color:var(--vermillion);background:var(--accent-soft)}.day-col .slot.selected{background:var(--vermillion);color:#fff;border-color:var(--vermillion)}.day-col .slot.taken{color:var(--ink-40);cursor:not-allowed;background:var(--paper);text-decoration:line-through}.day-col .slot.taken:hover{border-color:var(--rule);color:var(--ink-40)}.rule{background:var(--rule);border:none;height:1px;margin:1.5rem 0}.rule-soft{background:var(--rule);border:none;height:1px;margin:1rem 0}::selection{background:var(--vermillion);color:#fff}.event-type-list{flex-direction:column;gap:.75rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.event-type-list li{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);transition:box-shadow .25s var(--ease);flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.event-type-list li:hover{box-shadow:var(--shadow-sm)}.event-type-list li.inactive{opacity:.45}.et-header{grid-template-columns:1fr auto;align-items:start;gap:1rem;padding:1.25rem 1.5rem;display:grid}.et-main{min-width:0}.et-title{font-family:var(--f-heading);margin-bottom:.25rem;font-size:1.125rem;font-weight:800}.et-meta{font-size:var(--fs-xs);color:var(--ink-60);margin-bottom:.35rem}.et-desc{color:var(--ink-60);max-width:50ch;margin-bottom:.5rem;font-size:.875rem}.et-actions{align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.et-actions .btn-ghost{font-size:var(--fs-xs);padding:.35rem .75rem}.et-sections{border-top:1px solid var(--rule-soft);padding:.25rem 1.5rem 1rem}@media (width<=720px){.et-header{grid-template-columns:1fr;padding:1rem}.et-sections{padding:.25rem 1rem .75rem}}.availability-grid{margin:0;padding:0;list-style:none}.day-rule{border-bottom:1px solid var(--rule);grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:.75rem;max-width:540px;padding:.75rem 0;display:grid}.day-rule.disabled{opacity:.45}.day-rule-toggle{cursor:pointer;align-items:center;gap:.5rem;display:flex}.day-rule-toggle .day-name{font-family:var(--f-heading);font-size:1rem;font-weight:700}.day-rule input[type=time]{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);font-family:var(--f-mono);color:var(--ink);transition:border-color .25s var(--ease);outline:none;padding:.4rem .6rem;font-size:.9375rem}.day-rule input[type=time]:focus{border-color:var(--vermillion)}.day-rule input[type=time]:disabled{border-color:var(--rule);color:var(--ink-40);background:var(--paper-deep)}.day-rule-sep{color:var(--ink-40);text-align:center}.booking-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.booking-list li{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 1.25rem;display:grid}.booking-list .b-when{color:var(--ink);font-size:.875rem}.booking-list .b-who strong{font-family:var(--f-heading);font-size:1rem;font-weight:700}.booking-list .b-contact{color:var(--ink-60);font-size:.75rem}.use-saved-btn{width:100%;font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--vermillion);background:var(--vermillion-bg,#e04e2b0f);border:1.5px dashed var(--vermillion);border-radius:var(--radius-md);cursor:pointer;text-align:center;margin-bottom:1rem;padding:.6rem 1rem;font-weight:700;transition:background .15s,border-style .15s;display:block}.use-saved-btn:hover{background:#e04e2b1f;border-style:solid}.guest-upsell{background:var(--vermillion-bg,#e04e2b0f);border-radius:var(--radius-md);border:1px solid #e04e2b26;margin-bottom:1.25rem;padding:1rem 1.25rem}.guest-upsell p{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin:0;line-height:1.6}.guest-upsell-en{font-size:var(--fs-xs)!important;color:var(--ink-40)!important;margin-top:.35rem!important}.guest-upsell a{color:var(--vermillion);font-weight:700;text-decoration:underline}.booking-mgmt-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.booking-mgmt-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem;transition:box-shadow .2s;display:flex}.booking-mgmt-card:hover{box-shadow:var(--shadow-sm)}.bm-time{align-items:center;gap:.75rem;display:flex}.bm-date{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);font-weight:600}.bm-status{font-family:var(--f-heading);letter-spacing:.03em;border-radius:999px;padding:.1rem .5rem;font-size:.6875rem;font-weight:700}.bm-status--confirmed{color:#2e7d32;background:#4caf501a}.bm-status--pending{color:#e65100;background:#ff98001a}.bm-status--cancelled{background:var(--rule-soft);color:var(--ink-40)}.bm-guest{font-family:var(--f-heading);font-size:1rem;font-weight:700}.bm-company{color:var(--ink-60);font-weight:400}.bm-furigana{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);font-weight:400;display:block}.bm-contact{font-size:var(--fs-xs);color:var(--ink-60);align-items:center;gap:.75rem;display:flex}.bm-loc{font-family:var(--f-heading);background:var(--rule-soft);border-radius:999px;padding:.1rem .4rem;font-size:.6875rem;font-weight:600}.bm-notes{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);background:var(--rule-soft);border-radius:var(--radius-md);padding:.5rem .75rem;line-height:1.5}.bm-actions{gap:.5rem;margin-top:.25rem;display:flex}.public-et-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.public-et-list li{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);transition:box-shadow .3s var(--ease), transform .3s var(--ease);overflow:hidden}.public-et-list li:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.public-et-list a{grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.5rem;transition:none;display:grid}.public-et-list a:hover{background:0 0}.pet-title{font-family:var(--f-heading);margin-bottom:.25rem;font-size:1.375rem;font-weight:800}.pet-meta{font-size:var(--fs-xs);color:var(--ink-60);margin-bottom:.3rem}.pet-desc{color:var(--ink-60);max-width:55ch;font-size:.9375rem}.pet-cta{font-size:var(--fs-sm);color:var(--vermillion);font-weight:700}.day-head-btn{cursor:pointer;background:0 0;border:none;width:100%}.day-head-btn:disabled{cursor:not-allowed;opacity:.4}.day-col.selected-col .day-head{border-bottom:2px solid var(--vermillion)}.day-col.holiday-col .day-head{opacity:.55}.day-col.holiday-col .holiday-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.event-create-form{max-width:760px;padding:clamp(2rem,5vh,3rem) 0 clamp(3rem,8vh,5rem)}.event-create-form .form-row,.event-create-form .form-row-grid{margin-bottom:1.5rem}.event-create-form label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.4rem;font-weight:600;display:block}.event-create-form input[type=text],.event-create-form input[type=number],.event-create-form input[type=datetime-local],.event-create-form select,.event-create-form textarea{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-sm);width:100%;font-family:var(--f-body);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);outline:none;padding:.65rem .75rem;font-size:1rem}.event-create-form textarea{resize:vertical;min-height:80px}.event-create-form input:focus,.event-create-form select:focus,.event-create-form textarea:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.event-create-form .form-row-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}@media (width<=720px){.event-create-form .form-row-grid{grid-template-columns:1fr}}.slot-editor{margin:.5rem 0 1rem;padding:0;list-style:none}.slot-editor li{border-bottom:1px solid var(--rule);grid-template-columns:2fr 1fr 1fr auto;align-items:center;gap:.75rem;padding:.75rem 0;display:grid}@media (width<=720px){.slot-editor li{grid-template-columns:1fr 1fr auto;gap:.5rem}.slot-editor li>input:first-child{grid-column:1/-1}}.slot-editor input{padding:.4rem .6rem!important;font-size:.9375rem!important}.slot-remove{border:1.5px solid var(--rule);border-radius:var(--radius-sm);color:var(--ink-40);cursor:pointer;width:28px;height:28px;transition:all .25s var(--ease);background:0 0;justify-content:center;align-items:center;font-size:1rem;display:flex}.slot-remove:hover{color:var(--vermillion);border-color:var(--vermillion);background:var(--accent-soft)}.slot-add{margin-top:.5rem}.event-create-form .btn-primary{margin-top:1.5rem}.form-hint{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);margin:0 0 .5rem}.amenity-toggle-grid{flex-wrap:wrap;gap:.4rem;display:flex}.amenity-chip{font-family:var(--f-heading);color:var(--ink-60);background:var(--surface);border:1.5px solid var(--rule);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;padding:.35rem .65rem;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.amenity-chip:hover{border-color:var(--ink-40)}.amenity-chip.active{background:var(--vermillion-bg,#e04e2b14);border-color:var(--vermillion);color:var(--vermillion)}.row-feature-pills{flex-wrap:wrap;gap:.3rem;margin-top:.35rem;display:flex}.feature-pill{font-family:var(--f-heading);color:var(--ink-40);background:var(--rule-soft);border:1px solid var(--rule);white-space:nowrap;letter-spacing:.02em;border-radius:999px;padding:.1rem .4rem;font-size:.625rem;font-weight:700;display:inline-block}.feature-pill--access{color:#e65100;background:#ff980014;border-color:#ff98004d}.station-tag{color:var(--ink-40);margin-left:.3rem;font-size:.8125rem;display:inline-block}.station-tag:before{content:"🚉 "}.dash-section-label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-40);margin:0 0 .75rem;font-weight:600}.dash-card-list{flex-direction:column;gap:.75rem;display:flex}.dash-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;transition:box-shadow .2s;display:flex}.dash-card:hover{box-shadow:var(--shadow-sm)}.dash-card--past{opacity:.6}.dash-card-main{flex:1;min-width:0}.dash-card-title{font-family:var(--f-heading);color:var(--ink);margin-bottom:.2rem;font-size:1.0625rem;font-weight:800;text-decoration:none;display:block}.dash-card-title:hover{color:var(--vermillion)}.dash-card-meta{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60)}.dash-card-stats{align-items:center;gap:.5rem;margin-top:.35rem;display:flex}.dash-fill{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--moegi,#6b8e23);font-weight:600}.dash-vis{font-family:var(--f-heading);letter-spacing:.03em;border-radius:999px;padding:.1rem .4rem;font-size:.625rem;font-weight:700}.dash-vis--public{color:#2e7d32;background:#4caf501a}.dash-vis--unlisted{color:#e65100;background:#ff98001a}.dash-vis--private{background:var(--rule-soft);color:var(--ink-40)}.dash-card-actions{flex-shrink:0;gap:.5rem;display:flex}.dash-stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;display:grid}.dash-stat-card{text-align:center;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);flex-direction:column;align-items:center;padding:1.5rem 1rem;display:flex}.dash-stat-num{font-family:var(--f-heading);color:var(--vermillion);font-size:2rem;font-weight:800;line-height:1.1}.dash-stat-label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-top:.35rem;font-weight:600}@media (width<=640px){.dash-card{flex-direction:column;align-items:stretch}.dash-card-actions{justify-content:flex-end}}.step-wizard{max-width:720px;margin:0 auto;padding:0 0 3rem}.step-indicator{justify-content:center;align-items:flex-start;gap:0;margin-bottom:2rem;padding:0 1rem;display:flex}.step-indicator-item{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex;position:relative}.step-indicator-line{background:var(--rule);z-index:0;width:100%;height:2px;position:absolute;top:1rem;right:50%}.step-indicator-line.completed{background:var(--vermillion)}.step-indicator-dot{z-index:1;border:2px solid var(--rule);background:var(--surface);width:2rem;height:2rem;font-family:var(--f-heading);color:var(--ink-40);cursor:default;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;transition:all .2s;display:flex;position:relative}.step-indicator-dot.active{border-color:var(--vermillion);background:var(--vermillion);color:#fff}.step-indicator-dot.completed{border-color:var(--vermillion);background:var(--vermillion-bg,#e04e2b14);color:var(--vermillion);cursor:pointer}.step-indicator-dot:disabled{cursor:default}.step-indicator-label{font-family:var(--f-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:.35rem;font-size:.625rem;font-weight:600;overflow:hidden}.step-indicator-label.active{color:var(--vermillion)}.step-header{text-align:center;margin-bottom:2rem}.step-title{font-family:var(--f-heading);color:var(--ink);margin:0 0 .25rem;font-size:1.5rem;font-weight:800}.step-subtitle{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-40);margin:0}.step-content{min-height:200px}.step-error{color:var(--vermillion);font-size:var(--fs-sm);text-align:center;margin:1rem 0 0}.step-nav{border-top:1px solid var(--rule);align-items:center;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.step-nav-spacer{flex:1}.step-back{font-size:var(--fs-sm)!important}.step-next{min-width:120px}.review-section{border-bottom:1px solid var(--rule-soft);padding:1rem 0}.review-section:last-child{border-bottom:none}.review-section h3{font-family:var(--f-heading);color:var(--ink);margin:0 0 .5rem;font-size:.9375rem;font-weight:800}.review-dl{grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:0;display:grid}.review-dl dt{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);font-weight:600}.dynamic-list{flex-direction:column;gap:.4rem;display:flex}.dynamic-list-row{align-items:center;gap:.5rem;display:flex}.dynamic-list-row input{flex:1}.schedule-row-edit{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.schedule-row-edit span{color:var(--ink-40)}.review-dl dd{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink);margin:0}@media (width<=640px){.step-indicator-label{display:none}.step-indicator-dot{width:1.75rem;height:1.75rem;font-size:.625rem}.step-title{font-size:1.25rem}}.confirmation-panel{background:var(--surface);border:2px solid var(--moegi,#6b8e23);border-radius:var(--radius-lg);text-align:center;margin-bottom:1.25rem;padding:1.5rem;position:relative}.confirmation-close{color:var(--ink-40);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.25rem;line-height:1;position:absolute;top:.75rem;right:.75rem}.confirmation-close:hover{color:var(--ink)}.confirmation-icon{color:#fff;background:var(--moegi,#6b8e23);border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;margin:0 auto .75rem;font-size:1.5rem;font-weight:800;display:flex}.confirmation-title{font-family:var(--f-heading);color:var(--ink);margin:0 0 .25rem;font-size:1.125rem;font-weight:800}.confirmation-subtitle{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60);margin:0 0 1rem}.confirmation-private-info{text-align:left;background:var(--rule-soft);border-radius:var(--radius-md);border-left:3px solid var(--vermillion);margin-top:.75rem;padding:1rem}.confirmation-private-label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-bottom:.35rem;font-weight:600}.confirmation-private-info p{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-80);white-space:pre-wrap;margin:0;line-height:1.6}.confirmation-note{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin:0;line-height:1.5}.post-reg-info{background:var(--rule-soft);border-left:3px solid var(--vermillion);border-radius:var(--radius-md);margin-bottom:1.25rem;padding:1rem 1.25rem}.post-reg-info p{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-80);white-space:pre-wrap;margin:0;line-height:1.6}.bookmark-btn{border:1.5px solid var(--rule);color:var(--ink-60);transition:all .15s}.bookmark-btn.bookmarked{border-color:var(--vermillion);color:var(--vermillion);background:var(--vermillion-bg,#e04e2b0f)}.reg-locked-banner{text-align:center;background:var(--rule-soft);border:1.5px dashed var(--rule);border-radius:var(--radius-lg);margin-bottom:1rem;padding:1.25rem}.reg-locked-label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-bottom:.35rem;font-weight:600}.reg-locked-countdown{font-family:var(--f-heading);color:var(--vermillion);font-size:1.5rem;font-weight:800;line-height:1.2}.reg-locked-date{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40);margin-top:.25rem}.qa-list{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.qa-item{border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.qa-pinned{border-color:var(--vermillion);border-left:3px solid var(--vermillion)}.qa-question{align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.qa-q-mark{width:1.75rem;height:1.75rem;font-family:var(--f-heading);color:#fff;background:var(--vermillion);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:800;display:flex}.qa-q-body{flex:1;min-width:0}.qa-q-body p{font-family:var(--f-body);color:var(--ink);margin:0;font-size:.9375rem;line-height:1.5}.qa-author{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.qa-host-actions{flex-shrink:0;gap:.35rem;display:flex}.qa-action-btn{font-family:var(--f-heading);color:var(--ink-40);border:1px solid var(--rule);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:.2rem .5rem;font-size:.6875rem;font-weight:700;transition:color .15s,border-color .15s}.qa-action-btn:hover{color:var(--vermillion);border-color:var(--vermillion)}.qa-action-del:hover{color:#c62828;border-color:#c62828}.qa-answer{background:var(--rule-soft);border-top:1px solid var(--rule);gap:.75rem;padding:.75rem 1.25rem 1rem;display:flex}.qa-a-mark{width:1.75rem;height:1.75rem;font-family:var(--f-heading);color:#fff;background:var(--moegi,#6b8e23);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:800;display:flex}.qa-answer p{font-family:var(--f-body);color:var(--ink-80);flex:1;margin:0;font-size:.9375rem;line-height:1.5}.qa-answer-form{border-top:1px solid var(--rule);flex-direction:column;gap:.5rem;padding:.75rem 1.25rem 1rem;display:flex}.qa-answer-form textarea{font-family:var(--f-body);font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);resize:vertical;box-sizing:border-box;width:100%;padding:.5rem .75rem}.qa-answer-form textarea:focus{border-color:var(--vermillion);outline:none}.qa-ask-form{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.qa-ask-form textarea{font-family:var(--f-body);font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);resize:vertical;box-sizing:border-box;width:100%;padding:.5rem .75rem}.qa-ask-form textarea:focus{border-color:var(--vermillion);outline:none}.qa-ask-form .btn-primary{font-size:var(--fs-sm);align-self:flex-start;padding:.45rem 1.25rem}.countdown-badge{font-family:var(--f-heading);color:var(--vermillion);background:var(--vermillion-bg,#e04e2b14);letter-spacing:.02em;border-radius:999px;padding:.3rem .85rem;font-size:.9375rem;font-weight:800;display:inline-block}.countdown-badge--sm{margin-top:.2rem;padding:.15rem .5rem;font-size:.6875rem;font-weight:700}.companion-list{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.companion-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.companion-label{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--ink-40);min-width:60px;font-weight:700}.companion-row input{min-width:100px;font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--paper);color:var(--ink);flex:1;padding:.35rem .6rem}.companion-row input:focus{border-color:var(--vermillion);outline:none}.profile-fields-form{flex-direction:column;gap:1rem;max-width:600px;display:flex}.profile-fields-form .form-row-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.profile-fields-form .form-row-grid{grid-template-columns:1fr}}.profile-fields-form label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-bottom:.35rem;font-weight:600;display:block}.profile-fields-form input,.profile-fields-form textarea{box-sizing:border-box;width:100%;font-family:var(--f-body);font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--paper);color:var(--ink);padding:.5rem .75rem}.profile-fields-form input:focus,.profile-fields-form textarea:focus{border-color:var(--vermillion);outline:none}.profile-fields-form textarea{resize:vertical}.profile-fields-form .btn-primary{align-self:flex-start;margin-top:.5rem}.filter-chip--geo{border-style:dashed}.distance-tag{font-family:var(--f-mono);color:#2e7d32;white-space:nowrap;background:#4caf501a;border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-size:.6875rem;font-weight:700;display:inline-block}.geo-error{font-size:var(--fs-xs);color:var(--vermillion);margin-left:.5rem}.bring-provide{grid-template-columns:1fr 1fr;gap:1.5rem;margin:1rem 0;display:grid}@media (width<=600px){.bring-provide{grid-template-columns:1fr;gap:1rem}}.bring-provide-col h3{font-family:var(--f-heading);color:var(--ink);margin:0 0 .5rem;font-size:.9375rem;font-weight:800}.bring-provide-col ul{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.bring-provide-col li{font-size:var(--fs-sm);color:var(--ink-80);align-items:flex-start;gap:.5rem;line-height:1.5;display:flex}.bring-provide-col li:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:.5rem}.bring-provide-col:first-child li:before{background:var(--vermillion)}.bring-provide-col:last-child li:before{background:var(--moegi,#6b8e23)}.highlights-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.highlight-item{background:var(--rule-soft);border-radius:var(--radius-md);font-family:var(--f-body);color:var(--ink-80);align-items:flex-start;gap:.75rem;padding:.75rem 1rem;font-size:.9375rem;line-height:1.5;display:flex}.highlight-item:before{content:"✦";color:var(--vermillion);flex-shrink:0;margin-top:.05rem;font-weight:700}.highlight-hidden{display:none!important}.highlights-expanded .highlight-hidden{display:flex!important}.see-more-btn{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--vermillion);cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:0;font-weight:700;transition:opacity .15s;display:inline-block}.see-more-btn:hover{opacity:.7}.cancel-policy{border-top:1px solid var(--rule-soft);padding:.75rem 0}.cancel-policy-text{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-80);margin:0;line-height:1.5}.cancel-policy-refund{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--vermillion);margin:.25rem 0 0;font-weight:700}.cancel-policy-note{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);margin:.25rem 0 0;line-height:1.4}.party-size-row{border-bottom:1px solid var(--rule);margin-bottom:1rem;padding-bottom:1rem}.party-size-row label{font-family:var(--f-body);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-40);margin-bottom:.5rem;font-weight:600;display:block}.party-size-controls{align-items:center;gap:.75rem;display:flex}.party-size-controls button{border:1.5px solid var(--rule);background:var(--surface);width:2rem;height:2rem;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;transition:border-color .15s,color .15s;display:flex}.party-size-controls button:hover:not(:disabled){border-color:var(--vermillion);color:var(--vermillion)}.party-size-controls button:disabled{opacity:.3;cursor:default}.party-size-num{font-family:var(--f-heading);color:var(--ink);text-align:center;min-width:2rem;font-size:1.5rem;font-weight:800}.party-size-note{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);margin:.5rem 0 0}.media-gallery{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin:.75rem 0;display:grid}.media-item{border-radius:var(--radius-md);background:var(--rule-soft);border:1px solid var(--rule);position:relative;overflow:hidden}.media-item img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.media-caption{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);margin:0;padding:.35rem .5rem}.media-author{font-family:var(--f-heading);color:var(--ink-40);padding:0 .5rem .35rem;font-size:.625rem;font-weight:700;display:block}.media-remove{border-radius:var(--radius-sm);background:#00000080;position:absolute;top:.35rem;right:.35rem;color:#fff!important;padding:.15rem .4rem!important;font-size:.65rem!important}.media-upload{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.media-upload input[type=file]{font-size:var(--fs-xs)}.media-upload input[type=text]{min-width:150px;font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);flex:1;padding:.4rem .75rem}.media-upload .btn-primary{font-size:var(--fs-xs);padding:.4rem 1rem}.review-summary{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin-left:.75rem;font-weight:400}.review-list{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.review-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);padding:1rem 1.25rem}.review-header{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.review-stars{color:var(--vermillion);letter-spacing:.05em;font-size:1rem}.review-author{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700}.review-comment{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-80);margin:0;line-height:1.5}.review-form{background:var(--rule-soft);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.review-form-rating{gap:.25rem;display:flex}.star-btn{color:var(--rule);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;transition:color .1s}.star-btn.active{color:var(--vermillion)}.star-btn:hover{color:var(--vermillion-soft)}.review-factor-bars{flex-direction:column;gap:.4rem;max-width:400px;margin-top:.75rem;display:flex}.factor-bar-row{grid-template-columns:140px 1fr 2rem;align-items:center;gap:.5rem;display:grid}.factor-label{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);white-space:nowrap}.factor-bar{background:var(--rule);border-radius:3px;height:6px;overflow:hidden}.factor-bar-fill{background:var(--vermillion);border-radius:3px;height:100%;transition:width .3s}.factor-val{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink);text-align:right;font-weight:600}.review-factors-inline{flex-wrap:wrap;gap:.4rem .75rem;margin-bottom:.35rem;display:flex}.review-factors-inline span{font-family:var(--f-mono);color:var(--ink-40);letter-spacing:.02em;font-size:.625rem}.review-overall{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--vermillion);font-weight:800}.review-form-factors{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.review-factor-input{align-items:center;gap:.75rem;display:flex}.review-factor-label{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);min-width:140px}.review-form textarea{font-family:var(--f-body);font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);resize:vertical;padding:.5rem .75rem}.review-form .btn-primary{font-size:var(--fs-sm);align-self:flex-start;padding:.45rem 1.25rem}.passkey-manager{padding:clamp(2rem,5vh,3rem) 0 clamp(3rem,8vh,5rem)}.pm-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.pm-head .eyebrow{margin-bottom:.5rem}.pm-hint{max-width:48ch;color:var(--ink-60);margin:0;font-size:.9375rem}.pm-empty{text-align:center;color:var(--ink-40);padding:2rem 0;font-size:.9375rem}.pm-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pm-row{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);grid-template-columns:1fr auto;align-items:start;gap:1rem;padding:1.25rem;display:grid}.pm-main{min-width:0}.pm-name{font-family:var(--f-heading);margin-bottom:.3rem;font-size:1.0625rem;font-weight:700}.pm-meta{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);flex-wrap:wrap;gap:1.25rem;display:flex}.pm-label{font-family:var(--f-body);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);margin-right:.25rem;font-weight:600}.pm-delete{border:1.5px solid var(--rule);border-radius:var(--radius-sm);font-family:var(--f-body);font-size:var(--fs-xs);color:var(--vermillion);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.4rem .9rem;font-weight:700}.pm-delete:hover:not(:disabled){background:var(--vermillion);color:#fff;border-color:var(--vermillion)}.pm-delete:disabled{opacity:.4;cursor:not-allowed}.auth-form{max-width:440px;padding:2rem 0 var(--section-y)}.auth-form label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.5rem;font-weight:600;display:block}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);width:100%;font-family:var(--f-heading);color:var(--ink);transition:border-color .25s var(--ease), box-shadow .25s var(--ease);-webkit-appearance:none;outline:none;margin-bottom:1.5rem;padding:.85rem .75rem;font-size:1.125rem;font-weight:600}.auth-form input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft)}.auth-form input::placeholder{color:var(--ink-40);font-weight:400}.auth-form .btn-primary{justify-content:center;width:100%;margin-top:.5rem}.auth-form .divider{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-40);align-items:center;gap:.75rem;margin:1.5rem 0 1.25rem;font-weight:600;display:flex}.auth-form .divider:before,.auth-form .divider:after{content:"";background:var(--rule);flex:1;height:1px}.auth-form .error{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--vermillion);background:var(--accent-soft);border-radius:var(--radius-sm);margin:.5rem 0 1.25rem;padding:.75rem;font-weight:600}.auth-form button[disabled]{opacity:.45;cursor:not-allowed}.cover-upload{margin-top:.5rem}.cover-dropzone{border:2px dashed var(--rule);border-radius:var(--radius-lg);cursor:pointer;color:var(--ink-40);font-family:var(--f-body);font-size:var(--fs-sm);transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);justify-content:center;align-items:center;padding:2.5rem 1rem;display:flex}.cover-dropzone:hover{border-color:var(--vermillion);color:var(--ink-60);background:var(--accent-soft)}.cover-preview{border-radius:var(--radius-lg);max-height:240px;position:relative;overflow:hidden}.cover-preview img{object-fit:cover;width:100%;max-height:240px;display:block}.cover-remove{color:#fff;border-radius:var(--radius-sm);font-family:var(--f-body);font-size:var(--fs-xs);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c1917bf;border:none;padding:.3rem .75rem;font-weight:600;transition:background .15s;position:absolute;top:.75rem;right:.75rem}.cover-remove:hover{background:var(--vermillion)}.event-cover{border-radius:var(--radius-xl);max-height:400px;margin:1.5rem 0 0;overflow:hidden}.event-cover img{object-fit:cover;width:100%;max-height:400px;display:block}.month-grid-wrapper{padding:.5rem 0}.month-grid-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.month-grid-header button{cursor:pointer;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);border-radius:var(--radius-sm);transition:background .2s var(--ease), color .2s var(--ease);background:0 0;border:none;padding:.375rem .5rem;font-weight:600}.month-grid-header button:hover{color:var(--ink);background:var(--surface-hover)}.month-grid-label{font-family:var(--f-heading);font-size:var(--fs-h2);color:var(--ink);font-weight:800}.month-grid{background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius-md);grid-template-columns:repeat(7,1fr);gap:2px;display:grid;overflow:hidden}.month-grid-dow{background:var(--paper-deep);text-align:center;font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);padding:.45rem 0;font-weight:700}.month-grid-cell{background:var(--surface);cursor:pointer;text-align:left;min-height:4.25rem;transition:background .15s var(--ease);border:none;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.375rem;font-family:inherit;display:flex}.month-grid-cell:hover{background:var(--surface-hover)}.month-grid-cell.empty{background:var(--paper);cursor:default}.month-grid-cell.today{background:var(--accent-soft)}.month-grid-cell.expanded{background:var(--surface-hover)}.month-grid-day-num{font-family:var(--f-heading);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700;line-height:1}.month-grid-cell.today .month-grid-day-num{color:var(--vermillion);font-weight:800}.month-grid-dots{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.month-grid-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.month-grid-dot.dot-event{background:var(--vermillion)}.month-grid-dot.dot-booking{background:var(--indigo)}.month-grid-dot.dot-appointment{background:var(--moegi)}.month-grid-more{font-family:var(--f-mono);color:var(--ink-40);font-size:.5625rem}.month-grid-detail{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:.75rem;padding:1.25rem}.month-grid-detail-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.month-grid-detail-date{font-family:var(--f-heading);font-size:var(--fs-h2);font-weight:800}.month-grid-detail-close{cursor:pointer;color:var(--ink-40);border-radius:var(--radius-sm);transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:none;padding:.25rem;font-size:1.25rem;line-height:1}.month-grid-detail-close:hover{color:var(--ink);background:var(--surface-hover)}.month-grid-detail-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.month-detail-item{border-bottom:1px solid var(--rule);align-items:center;gap:.6rem;padding:.35rem 0;display:flex}.month-detail-item:last-child{border-bottom:none}.month-detail-badge{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);white-space:nowrap;font-weight:700}.month-detail-item.item-event .month-detail-badge{color:var(--vermillion)}.month-detail-item.item-booking .month-detail-badge{color:var(--indigo)}.lang-toggle{border:1.5px solid var(--rule);border-radius:var(--radius-full);font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);cursor:pointer;transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);background:0 0;padding:.2rem .6rem;font-weight:600}.lang-toggle:hover{border-color:var(--vermillion);color:var(--vermillion);background:var(--accent-soft)}.poll-list-sections{flex-direction:column;gap:2.5rem;margin-top:1.5rem;display:flex}.poll-list-sections h2{font-family:var(--f-heading);font-size:var(--fs-h2);margin-bottom:.75rem;font-weight:800}.poll-list{flex-direction:column;gap:.5rem;padding:0;list-style:none;display:flex}.poll-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.poll-card:hover{border-color:var(--vermillion);box-shadow:var(--shadow-sm)}.poll-title{font-family:var(--f-heading);font-weight:700}.poll-meta{font-size:var(--fs-sm);color:var(--ink-40);align-items:center;gap:.75rem;display:flex}.poll-status{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;border-radius:var(--radius-full);padding:.2rem .6rem;font-weight:700}.poll-status--open{background:var(--moegi-soft);color:var(--moegi)}.poll-status--closed{background:var(--paper-deep);color:var(--ink-40)}.empty-state{color:var(--ink-40)}.poll-candidates-fieldset{border:1px solid var(--rule);border-radius:var(--radius-lg);margin:1.25rem 0;padding:1.5rem}.poll-candidates-fieldset legend{font-family:var(--f-heading);padding:0 .5rem;font-weight:700}.poll-candidate-row{border-bottom:1px solid var(--rule);align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.poll-candidate-row:last-of-type{border-bottom:none}.poll-candidate-num{font-family:var(--f-heading);color:var(--vermillion);min-width:2rem;padding-top:.25rem;font-size:1.375rem;font-weight:800}.poll-candidate-fields{flex:1;grid-template-columns:1fr 1fr 1fr;gap:.75rem;display:grid}.poll-candidate-fields label{font-size:var(--fs-xs);color:var(--ink-40);margin-bottom:.25rem;display:block}.poll-candidate-remove{font-size:var(--fs-sm);color:var(--vermillion);cursor:pointer;padding-top:1.25rem}@media (width<=640px){.poll-candidate-fields{grid-template-columns:1fr}.poll-card{flex-direction:column;align-items:flex-start;gap:.5rem}}.poll-grid-wrapper{border:1px solid var(--rule);border-radius:var(--radius-lg);margin:1.5rem 0;overflow:hidden}.poll-grid{min-width:max-content;display:grid}.poll-grid-header{background:var(--paper-deep);border-bottom:2px solid var(--rule);font-family:var(--f-body);font-size:var(--fs-sm);text-align:center;flex-direction:column;align-items:center;gap:.1rem;padding:.65rem .5rem;font-weight:700;display:flex}.poll-grid-corner{font-family:var(--f-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-40);justify-content:center}.poll-grid-best{background:var(--moegi-soft)}.poll-col-best{background:color-mix(in srgb, var(--moegi) 4%, var(--surface))}.poll-best-badge{font-family:var(--f-body);font-size:var(--fs-xs);color:#fff;background:var(--moegi);border-radius:var(--radius-full);margin-top:.2rem;padding:.1rem .5rem;font-weight:700}.poll-candidate-date{font-weight:700}.poll-candidate-time{font-size:var(--fs-xs);color:var(--ink-60)}.poll-candidate-label{font-size:var(--fs-xs);color:var(--ink-40)}.poll-grid-name{border-bottom:1px solid var(--rule);font-size:var(--fs-sm);align-items:center;gap:.35rem;padding:.5rem .75rem;display:flex}.poll-you{font-size:var(--fs-xs);color:var(--vermillion);font-weight:700}.poll-tally-label{border-top:2px solid var(--rule);font-weight:700}.poll-vote-label{color:var(--vermillion);border-top:1px dashed var(--rule);font-weight:700}.poll-cell{border-bottom:1px solid var(--rule);text-align:center;justify-content:center;align-items:center;padding:.5rem;font-size:1.0625rem;font-weight:700;display:flex}.poll-cell--available{color:var(--moegi);background:var(--moegi-soft)}.poll-cell--maybe{color:var(--amber);background:#d9770612}.poll-cell--unavailable{color:var(--vermillion);background:var(--accent-soft)}.poll-cell--interactive{cursor:pointer;border-radius:var(--radius-sm);transition:transform .15s var(--ease);border-top:1px dashed var(--rule);position:relative}.poll-cell--interactive:hover{transform:scale(1.05)}.poll-cell-hint{color:var(--ink-40);font-size:.5625rem;font-weight:400;position:absolute;bottom:2px}.poll-tally{font-size:var(--fs-xs);border-top:2px solid var(--rule);flex-direction:column;gap:.1rem;font-weight:700}.tally-available{color:var(--moegi)}.tally-maybe{color:var(--amber)}.tally-unavailable{color:var(--vermillion)}.poll-deadline{font-size:var(--fs-sm);color:var(--ink-60);margin-top:.5rem}.poll-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.25rem;display:flex}.sub-event-list{flex-direction:column;gap:.75rem;padding:0;list-style:none;display:flex}.sub-event-card{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);transition:box-shadow .2s var(--ease);padding:1rem 1.25rem}.sub-event-card:hover{box-shadow:var(--shadow-sm)}.sub-event-header{justify-content:space-between;align-items:center;display:flex}.sub-event-title{font-family:var(--f-heading);font-weight:700;font-size:var(--fs-h2)}.sub-event-desc{color:var(--ink-60);font-size:var(--fs-sm);margin:.3rem 0}.sub-event-meta{font-size:var(--fs-sm);color:var(--ink-40);gap:.75rem;margin-top:.3rem;display:flex}.sub-event-access{font-size:var(--fs-xs);color:var(--ink-60);margin-top:.3rem}.sub-event-form{border:1.5px dashed var(--rule);border-radius:var(--radius-md);margin-top:.75rem;padding:1rem}.sub-event-form h3{font-family:var(--f-heading);margin:0 0 .75rem;font-weight:700}.lottery-badge{font-family:var(--f-body);font-size:var(--fs-xs);border-radius:var(--radius-full);background:var(--indigo-soft);color:var(--indigo);vertical-align:middle;margin-left:.5rem;padding:.15rem .6rem;font-weight:700;display:inline-block}.lottery-badge.drawn{background:var(--moegi-soft);color:var(--moegi)}.slot-status-badge.open{font-family:var(--f-body);font-size:var(--fs-xs);border-radius:var(--radius-full);background:var(--moegi-soft);color:var(--moegi);vertical-align:middle;margin-left:.5rem;padding:.15rem .6rem;font-weight:700;display:inline-block}.lottery-deadline{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40);margin-top:.25rem}.lottery-draw-section{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);margin-top:1.25rem;padding:1.25rem}.lottery-draw-section h3{font-family:var(--f-heading);margin:0 0 .75rem;font-weight:700}.lottery-draw-row{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.btn-lottery-draw{font-family:var(--f-body);font-size:var(--fs-sm);border:1.5px solid var(--vermillion);border-radius:var(--radius-sm);color:var(--vermillion);cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;padding:.5rem 1rem;font-weight:700;display:inline-block}.btn-lottery-draw:hover:not(:disabled){background:var(--vermillion);color:#fff}.btn-lottery-draw:disabled{opacity:.4;cursor:not-allowed}.lottery-result{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--moegi);font-weight:700}.slot-reg-mode{align-items:center;gap:.5rem;width:100%;margin-top:.3rem;display:flex}.slot-reg-label{font-size:var(--fs-xs);color:var(--ink-40);white-space:nowrap;font-weight:600}.seg-switch--sm{display:inline-flex}.seg-switch--sm button{font-size:var(--fs-xs);padding:.2rem .6rem}.slot-lottery-deadline{align-items:center;gap:.5rem;width:100%;margin-top:.25rem;display:flex}.slot-lottery-deadline label{font-size:var(--fs-xs);color:var(--ink-40);white-space:nowrap}.slot-lottery-deadline input{font-size:var(--fs-sm);flex:1;padding:.3rem .5rem}.attendee-summary{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin-bottom:.75rem}.attendee-summary .mono{font-family:var(--f-mono);font-weight:700}.attendee-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem;display:grid}.attendee-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);flex-direction:column;gap:.15rem;padding:.75rem 1rem;display:flex}.attendee-card[style*=pointer]:hover{border-color:var(--ink-40);box-shadow:var(--shadow-sm)}.attendee-name{font-family:var(--f-heading);font-weight:700;font-size:var(--fs-body);line-height:1.3}.attendee-slot{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.attendee-status{font-family:var(--f-body);font-size:var(--fs-xs);font-weight:700}.attendee-status.confirmed{color:var(--moegi)}.attendee-status.waitlisted{color:var(--vermillion)}.analytics-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);margin-top:.75rem;padding:1.5rem}.analytics-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;display:grid}.analytics-card{text-align:center;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-md);padding:1rem .5rem}.analytics-number{font-family:var(--f-heading);font-size:var(--fs-display);color:var(--ink);font-weight:900;line-height:1}.analytics-label{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);letter-spacing:.04em;text-transform:uppercase;margin-top:.3rem;font-weight:600}.fill-rate-bars{flex-direction:column;gap:.5rem;display:flex}.fill-rate-row{grid-template-columns:100px 1fr 50px;align-items:center;gap:.75rem;display:grid}.fill-rate-label{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fill-rate-track{background:var(--paper-deep);border-radius:3px;height:6px;position:relative;overflow:hidden}.fill-rate-bar{height:100%;transition:width .4s var(--ease);border-radius:3px;position:absolute;top:0;left:0}.fill-rate-pct{text-align:right;font-size:var(--fs-xs);color:var(--ink-60)}.analytics-timeline{margin:0;padding:0;list-style:none}.analytics-timeline li{border-bottom:1px solid var(--rule);font-size:var(--fs-sm);justify-content:space-between;padding:.35rem 0;display:flex}.analytics-timeline li .mono{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60)}.ott-section{grid-column:1/-1;margin-top:.75rem;padding-top:.75rem}.ott-toggle{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-weight:600;display:flex}.ott-toggle:hover{color:var(--ink)}.ott-count{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.ott-body{margin-top:.75rem}.ott-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.ott-batch{align-items:center;gap:.5rem;display:flex}.ott-batch-input{width:60px;font-family:var(--f-mono);font-size:var(--fs-sm);border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);text-align:center;padding:.3rem .5rem}.ott-list{margin:0;padding:0;list-style:none}.ott-row{border-bottom:1px solid var(--rule);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.ott-row.used,.ott-row.expired{opacity:.45}.ott-token{font-size:var(--fs-xs);color:var(--ink-60);min-width:100px}.ott-status{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;font-weight:700}.ott-status--unused{color:var(--moegi)}.ott-status--used{color:var(--ink-40)}.ott-status--expired{color:var(--vermillion)}.ott-copy{margin-left:auto;font-size:var(--fs-xs)!important;padding:.2rem .6rem!important}.checkin-dashboard{background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--moegi);border-radius:var(--radius-lg);margin-top:.75rem;padding:1.5rem}.checkin-stats{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.checkin-stat{flex-direction:column;gap:.1rem;display:flex}.checkin-stat-number{font-family:var(--f-heading);color:var(--ink);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:900;line-height:1}.checkin-stat-label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-40);font-weight:600}.checkin-code-section{margin-bottom:1.25rem}.checkin-code-display{font-family:var(--f-heading);letter-spacing:.15em;color:var(--vermillion);text-align:center;border:2px dashed var(--rule);border-radius:var(--radius-lg);background:var(--accent-soft);-webkit-user-select:all;user-select:all;padding:1rem;font-size:clamp(2.25rem,5vw,3.5rem);font-weight:900}.checkin-search{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);width:100%;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink);margin-bottom:.75rem;padding:.5rem .75rem}.checkin-search:focus{border-color:var(--moegi);box-shadow:0 0 0 3px var(--moegi-soft);outline:none}.checkin-list{flex-direction:column;gap:0;display:flex}.checkin-row{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.checkin-row.pending{color:var(--ink-40)}.checkin-row.checked-in{color:var(--ink)}.checkin-row.checked-out{color:var(--ink-40);opacity:.65}.checkin-row-info{flex-wrap:wrap;flex:1;align-items:baseline;gap:.5rem;min-width:0;display:flex}.checkin-row-name{font-weight:700;font-size:var(--fs-body);white-space:nowrap}.checkin-row-slot{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.checkin-row-email{font-size:var(--fs-xs);color:var(--ink-40)}.checkin-row-status{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.checkin-time-badge{font-family:var(--f-mono);font-size:var(--fs-xs);border-radius:var(--radius-full);padding:.2rem .5rem}.checkin-time-badge.in{background:var(--moegi-soft);color:var(--moegi)}.checkin-time-badge.out{background:var(--accent-soft);color:var(--vermillion)}.checkin-undo-link{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);text-underline-offset:2px;transition:color .25s var(--ease);font-weight:600;text-decoration:underline}.checkin-undo-link:hover{color:var(--vermillion)}.checkin-self{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);margin-top:1rem;padding:1.25rem}.checkin-self-form{margin-top:.25rem}.checkin-code-input{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);font-family:var(--f-mono);font-size:var(--fs-body);letter-spacing:.15em;text-transform:uppercase;color:var(--ink);flex:1;min-width:0;padding:.5rem .75rem}.checkin-code-input:focus{border-color:var(--moegi);box-shadow:0 0 0 3px var(--moegi-soft);outline:none}.checkin-self-status{flex-direction:column;gap:.3rem;margin-top:.5rem;display:flex}.checkin-self-badge{font-family:var(--f-body);font-size:var(--fs-sm);font-weight:700}.checkin-self-badge.in{color:var(--moegi)}.checkin-self-badge.out{color:var(--vermillion)}.checkin-self-time{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.live-badge{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--vermillion);border-radius:var(--radius-full);align-items:center;gap:.4rem;padding:.3rem .75rem;font-weight:700;animation:2s ease-in-out infinite live-pulse;display:inline-flex}.live-badge:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite live-dot;display:inline-block}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.82}}@keyframes live-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.live-badge--sm{padding:.2rem .5rem;font-size:.5625rem}.hashtag-pills{flex-wrap:wrap;gap:.4rem;margin:.6rem 0;display:flex}.hashtag-pill{font-family:var(--f-body);font-size:var(--fs-xs);background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-full);color:var(--ink-60);transition:color .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);padding:.3rem .7rem;font-weight:600;display:inline-block}.hashtag-pill:hover{color:var(--vermillion);border-color:var(--vermillion);background:var(--accent-soft)}.sponsor-block{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);align-items:center;gap:.75rem;margin:1rem 0;padding:1rem;display:flex}.sponsor-block .sponsor-label{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-40);font-weight:600}.sponsor-block .sponsor-name{font-family:var(--f-heading);color:var(--ink);font-size:1.0625rem;font-weight:700}.sponsor-block .sponsor-name a{color:var(--ink);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);transition:text-decoration-color .2s var(--ease)}.sponsor-block .sponsor-name a:hover{-webkit-text-decoration-color:var(--vermillion);text-decoration-color:var(--vermillion)}.schedule-timeline{margin:.75rem 0 1.5rem;padding-left:1.5rem;position:relative}.schedule-timeline:before{content:"";background:var(--rule);border-radius:1px;width:2px;position:absolute;top:0;bottom:0;left:0}.schedule-item{border-bottom:1px solid var(--rule);padding:.6rem 0 .6rem 1.25rem;position:relative}.schedule-item:last-child{border-bottom:none}.schedule-item:before{content:"";background:var(--ink);border:2px solid var(--paper);border-radius:50%;width:10px;height:10px;margin-left:-4px;position:absolute;top:1rem;left:-1.5rem}.schedule-item.muted:before{background:var(--rule)}.schedule-item-time{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);font-variant-numeric:tabular-nums}.schedule-item-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.2rem;display:flex}.schedule-item-type{font-family:var(--f-body);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-full);background:var(--ink);color:#fff;padding:.15rem .5rem;font-size:.5625rem;font-weight:700}.schedule-item-type.break,.schedule-item-type.lunch{background:var(--paper-deep);color:var(--ink-60)}.schedule-item-type.networking{background:var(--moegi-soft);color:var(--moegi)}.schedule-item-title{font-family:var(--f-heading);color:var(--ink);font-size:1rem;font-weight:700}.schedule-item.muted .schedule-item-title{color:var(--ink-60);font-weight:400}.schedule-item-speaker{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);margin-top:.1rem}.schedule-add-form{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-md);margin-top:.75rem;padding:1rem}.schedule-add-form .form-row-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.schedule-add-form label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-60);margin-bottom:.25rem;font-weight:600;display:block}.schedule-add-form input,.schedule-add-form select,.schedule-add-form textarea{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);width:100%;font-family:var(--f-body);font-size:var(--fs-sm);padding:.5rem .6rem}.report-form{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);margin-top:1.5rem;padding:1.25rem}.report-form h4{font-family:var(--f-heading);margin:0 0 .75rem;font-size:1rem;font-weight:700}.report-form label{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-60);margin-top:.75rem;margin-bottom:.25rem;font-weight:600;display:block}.report-form select,.report-form textarea{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);width:100%;font-family:var(--f-body);font-size:var(--fs-sm);padding:.5rem .6rem}.report-form textarea{resize:vertical;min-height:3rem}.report-trigger{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-40);text-transform:uppercase;cursor:pointer;transition:color .2s var(--ease);margin-top:1.5rem;font-weight:600;display:inline-block}.report-trigger:hover{color:var(--vermillion)}.category-cards{flex-wrap:wrap;gap:.5rem;margin-bottom:0;padding:1.25rem 0;display:flex}.category-card{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.04em;border:1.5px solid var(--rule);border-radius:var(--radius-full);color:var(--ink-60);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.55rem 1rem;font-weight:600}.category-card:hover{color:var(--ink);border-color:var(--ink-40);background:var(--surface-hover)}.category-card.active{color:#fff;background:var(--vermillion);border-color:var(--vermillion)}.map-embed{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--paper-deep);width:100%;margin:1.25rem 0;padding-bottom:56.25%;position:relative;overflow:hidden}.map-embed iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.cohost-list{flex-wrap:wrap;gap:.35rem;margin-top:.2rem;display:flex}.cohost-tag{font-family:var(--f-body);font-size:var(--fs-xs);color:var(--ink-60);background:var(--paper-deep);border:1px solid var(--rule);border-radius:var(--radius-full);padding:.2rem .6rem;font-weight:600}.cohost-invite-form{margin-top:.75rem}.cohost-invite-form input{border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);font-family:var(--f-body);font-size:var(--fs-sm);width:100%;max-width:300px;padding:.5rem .6rem}.cohost-search-results{margin-top:.5rem}.cohost-search-result{border-bottom:1px solid var(--rule);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.cohost-search-result .name{font-family:var(--f-heading);font-weight:700;font-size:var(--fs-sm)}.cohost-search-result .email{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60)}.address-redacted{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--vermillion-soft);margin:.5rem 0}.trending-section{padding:1.25rem 0}.trending-section h3{font-family:var(--f-heading);font-size:var(--fs-h2);margin:0 0 .75rem;font-weight:800}body.embed-mode .masthead,body.embed-mode .colophon{display:none!important}body.embed-mode .shell{min-height:auto}body.embed-mode main{padding-top:0}.embed-section{margin-top:.75rem;padding:.75rem 0}.embed-toggle{all:unset;cursor:pointer;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700}.embed-body{margin-top:.75rem}.embed-snippet{background:var(--ink);color:var(--paper);font-family:var(--f-mono);font-size:var(--fs-xs);border-radius:var(--radius-md);white-space:pre-wrap;word-break:break-all;padding:1rem;line-height:1.6;position:relative;overflow-x:auto}.embed-copy{position:absolute;top:.5rem;right:.5rem}.cf-section{margin-top:.75rem}.cf-toggle{all:unset;cursor:pointer;font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);font-weight:700}.cf-body{margin-top:.75rem}.cf-list{margin:0 0 .75rem;padding:0;list-style:none}.cf-row{border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.cf-row input[type=text],.cf-row select{font-size:var(--fs-sm);border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);padding:.3rem .5rem}.cf-row .cf-label-input{flex:1;min-width:120px}.cf-row .cf-type-select{width:100px}.cf-options-input{font-size:var(--fs-xs);border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);width:100%;margin-top:.25rem;padding:.3rem .5rem}.wh-section{margin-top:1.5rem}.wh-form{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.wh-form input[type=url]{font-family:var(--f-mono);font-size:var(--fs-sm);border:1.5px solid var(--rule);border-radius:var(--radius-sm);background:var(--paper);padding:.5rem .6rem}.wh-events-grid{flex-wrap:wrap;gap:.75rem;display:flex}.wh-events-grid label{font-size:var(--fs-sm);cursor:pointer;align-items:center;gap:.25rem;display:flex}.wh-list{margin:0;padding:0;list-style:none}.wh-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.wh-url{font-family:var(--f-mono);font-size:var(--fs-xs);word-break:break-all;flex:1}.wh-events-tags{flex-wrap:wrap;gap:.25rem;display:flex}.wh-events-tags .tag{border-radius:var(--radius-full);padding:.125rem .4rem;font-size:.5625rem}.wh-secret{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40)}.ical-link{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--indigo);align-items:center;gap:.5rem;padding:.25rem 0;text-decoration:none;display:inline-flex}.ical-link:hover{text-decoration:underline}.class-info-grid{padding:var(--section-y) 0 0;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.class-info-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem 1.5rem}.class-info-card h3{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--ink-40);letter-spacing:.04em;margin:0 0 .5rem;font-weight:700}.class-info-value{font-family:var(--f-heading);color:var(--ink);margin:0;font-size:1.125rem;font-weight:800}.class-info-value a{color:var(--vermillion);text-decoration:none}.class-info-value a:hover{text-decoration:underline}.class-info-sub{font-size:var(--fs-sm);color:var(--ink-60);margin:.25rem 0 0}.class-tags{flex-wrap:wrap;gap:.5rem;padding:1.25rem 0 0;display:flex}.class-tag{font-size:var(--fs-xs);background:var(--accent-soft);color:var(--vermillion);border-radius:var(--radius-full);padding:.25rem .65rem;font-weight:600}.session-list{flex-direction:column;gap:.75rem;margin-top:1.25rem;display:flex}.session-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .25s var(--ease);flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.session-card:hover{box-shadow:var(--shadow-md)}.session-cancelled{opacity:.5}.session-top{align-items:flex-start;gap:1.25rem;padding:1.25rem 1.5rem .75rem;display:flex}.session-date{flex-direction:column;flex-shrink:0;gap:.15rem;min-width:180px;display:flex}.session-day{font-family:var(--f-heading);font-size:var(--fs-body);color:var(--ink);font-weight:700}.session-time{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60)}.session-content{flex:1;min-width:0}.session-title{font-family:var(--f-heading);color:var(--ink);margin:0 0 .25rem;font-size:1.0625rem;font-weight:800;line-height:1.3}.session-desc{font-family:var(--f-body);font-size:var(--fs-sm);color:var(--ink-60);max-width:50ch;margin:0;line-height:1.5}.session-content--empty{align-items:center;display:flex}.session-add-detail{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--ink-40);border:1.5px dashed var(--rule);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:.35rem .75rem;font-weight:700;transition:color .15s,border-color .15s}.session-add-detail:hover{color:var(--vermillion);border-color:var(--vermillion)}.session-edit-btn{font-family:var(--f-heading);font-size:var(--fs-xs);color:var(--ink-40);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.25rem .5rem;font-weight:700;transition:color .15s}.session-edit-btn:hover{color:var(--vermillion)}.session-edit-form{flex-direction:column;gap:.5rem;padding:0 1.5rem .75rem;display:flex}.session-edit-form input,.session-edit-form textarea{font-family:var(--f-body);font-size:var(--fs-sm);border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--paper);color:var(--ink);box-sizing:border-box;width:100%;padding:.5rem .75rem}.session-edit-form input:focus,.session-edit-form textarea:focus{border-color:var(--vermillion);outline:none}.session-edit-form textarea{resize:vertical;min-height:3rem}.session-edit-actions{gap:.5rem;display:flex}.session-edit-actions .btn-primary{font-size:var(--fs-xs);padding:.4rem 1rem}.session-edit-actions .btn-ghost{font-size:var(--fs-xs);padding:.4rem .75rem}.session-bottom{border-top:1px solid var(--rule-soft);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem 1.25rem;display:flex}.session-meta{flex:1;align-items:center;gap:.75rem;display:flex}.session-seats{font-size:var(--fs-sm);color:var(--moegi);font-weight:600}.session-seats-full{color:var(--vermillion)}.session-waitlist{font-size:var(--fs-xs);color:var(--ink-40)}.session-badge-cancelled{font-size:var(--fs-xs);color:var(--ink-40);background:var(--paper-deep);border-radius:var(--radius-full);padding:.15rem .5rem;font-weight:700}.session-action{flex-shrink:0}.session-action .btn-primary{font-size:var(--fs-xs);padding:.5rem 1.25rem}@media (width<=720px){.session-top{flex-direction:column;gap:.5rem}.session-date{min-width:auto}.session-bottom{flex-direction:column;align-items:stretch;gap:.5rem}.session-action{text-align:right}}.class-guest-form{background:var(--paper-deep);border-radius:var(--radius-lg);margin:1.25rem 0;padding:1.25rem}.class-guest-note{font-size:var(--fs-sm);color:var(--ink-60);margin:0 0 .75rem}.class-guest-fields{gap:.75rem;display:flex}.class-guest-fields input{background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--radius-md);font-family:var(--f-body);font-size:var(--fs-sm);flex:1;padding:.55rem .75rem}.class-guest-fields input:focus{border-color:var(--vermillion);box-shadow:0 0 0 3px var(--accent-soft);outline:none}@media (width<=560px){.class-guest-fields{flex-direction:column}}.class-msg{font-size:var(--fs-sm);border-radius:var(--radius-md);margin:.75rem 0;padding:.65rem 1rem;font-weight:600}.class-msg-error{color:var(--vermillion);background:var(--accent-soft)}.class-msg-ok{color:var(--moegi);background:#16a34a14}
