:root{--ink:#15120d;--ink-80:#2a251c;--ink-60:#574e3f;--ink-40:#8b816e;--paper:#f2ecdc;--paper-light:#f7f2e3;--paper-deep:#e6ddc3;--rule:#b8ae92;--rule-soft:#d8cfb4;--vermillion:#c23b1e;--vermillion-soft:#e25a3c;--indigo:#1f3a5f;--moegi:#586d25;--f-display:"Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;--f-serif:"Fraunces", "Iowan Old Style", "Palatino", serif;--f-sans:"Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--f-mono:"JetBrains Mono", ui-monospace, monospace;--fs-masthead:clamp(4.5rem, 13vw, 12rem);--fs-hero:clamp(2.75rem, 7vw, 6rem);--fs-display:clamp(1.875rem, 4vw, 3.25rem);--fs-h1:clamp(1.5rem, 2.5vw, 2.125rem);--fs-h2:1.125rem;--fs-body:1rem;--fs-sm:.8125rem;--fs-xs:.6875rem;--ease:cubic-bezier(.2, .9, .25, 1);--pad-x:clamp(1.25rem, 4vw, 3rem);--section-y:clamp(3.5rem, 9vh, 7rem)}*,:before,:after{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--f-sans);font-size:var(--fs-body);font-feature-settings:"palt", "kern";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:1;mix-blend-mode:multiply;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}p{line-height:1.65}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.eyebrow{font-family:var(--f-serif);font-style:italic;font-weight:300;font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60)}.label{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60)}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.display{font-family:var(--f-display);letter-spacing:-.01em;font-weight:700}.serif-it{font-family:var(--f-serif);font-style:italic;font-weight:300}.ink-accent{color:var(--vermillion)}.shell{z-index:2;flex-direction:column;min-height:100vh;display:flex;position:relative}.masthead{border-bottom:1px solid var(--ink);padding:1.25rem var(--pad-x) 1rem;background:var(--paper);z-index:10;position:sticky;top:0}.masthead-top{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);border-bottom:.5px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.75rem;padding-bottom:.6rem;display:flex}.masthead-clock{text-transform:none;letter-spacing:.04em;font-style:normal;font-family:var(--f-sans);font-size:var(--fs-xs);flex-wrap:wrap;align-items:baseline;gap:.55rem;display:inline-flex}.masthead-clock .mono{font-family:var(--f-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);font-size:.75rem}.masthead-clock .clock-sep{color:var(--rule)}.masthead-clock .clock-zone{font-family:var(--f-mono);letter-spacing:.16em;color:var(--ink-40);text-transform:uppercase;font-size:.625rem}.masthead-clock .clock-you{color:var(--ink-40)}.masthead-title{justify-content:space-between;align-items:center;gap:2rem;display:flex}.wordmark{font-family:var(--f-display);letter-spacing:-.015em;color:var(--ink);font-size:clamp(1.625rem,3vw,2.25rem);font-weight:800;line-height:1}.wordmark-dot{color:var(--vermillion)}.masthead nav{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;gap:clamp(1rem,3vw,2.25rem);display:flex}.masthead nav a{color:var(--ink-60);transition:color .3s var(--ease);padding-bottom:3px;position:relative}.masthead nav a:after{content:"";background:var(--vermillion);height:1px;transition:right .45s var(--ease);position:absolute;bottom:0;left:0;right:100%}.masthead nav a:hover,.masthead nav a.active{color:var(--ink)}.masthead nav a:hover:after,.masthead nav a.active:after{right:0}.masthead nav .nav-signout{font:inherit;font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60);cursor:pointer;transition:color .3s var(--ease);background:0 0;border:none;padding:0 0 3px;position:relative}.masthead nav .nav-signout:after{content:"";background:var(--vermillion);height:1px;transition:right .45s var(--ease);position:absolute;bottom:0;left:0;right:100%}.masthead nav .nav-signout:hover{color:var(--ink)}.masthead nav .nav-signout:hover:after{right:0}main{flex:1}.container{max-width:1280px;padding:0 var(--pad-x);margin:0 auto}.colophon{border-top:1px solid var(--ink);margin-top:var(--section-y);padding:2rem var(--pad-x);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.hero{padding:clamp(3rem,10vh,7rem) 0 clamp(2.5rem,6vh,5rem)}.hero-eyebrow{flex-wrap:wrap;align-items:baseline;gap:1.5rem;margin-bottom:2rem;display:flex}.hero-eyebrow .no{font-family:var(--f-serif);color:var(--vermillion);font-size:1rem;font-style:italic}.hero-jp{font-family:var(--f-display);font-size:var(--fs-masthead);letter-spacing:-.025em;color:var(--ink);margin:0;font-weight:800;line-height:.88}.hero-en{font-family:var(--f-serif);letter-spacing:-.005em;color:var(--ink-60);max-width:42ch;margin:1.25rem 0 0;font-size:clamp(1.125rem,1.9vw,1.625rem);font-style:italic;font-weight:300;line-height:1.4}.hero-divider{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60);align-items:center;gap:1.25rem;margin-top:2.5rem;display:flex}.hero-divider:before,.hero-divider:after{content:"";background:var(--rule);flex:1;height:.5px}.hero-divider span+span{color:var(--vermillion)}.section{padding:var(--section-y) 0;border-top:1px solid var(--ink)}.section-header{grid-template-columns:minmax(3rem,6rem) 1fr;align-items:baseline;gap:1.5rem;margin-bottom:3rem;display:grid}.section-no{font-family:var(--f-serif);color:var(--vermillion);font-size:clamp(1.75rem,3vw,2.5rem);font-style:italic;font-weight:300;line-height:1}.section-title{font-family:var(--f-display);font-size:var(--fs-display);letter-spacing:-.01em;margin:0;font-weight:700;line-height:1}.section-lede{font-family:var(--f-serif);color:var(--ink-60);max-width:48ch;margin:.75rem 0 0;font-size:1rem;font-style:italic}.event-grid{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=880px){.event-grid{grid-template-columns:1fr}}.event-card{border-right:.5px solid var(--rule);transition:background .35s var(--ease);color:inherit;flex-direction:column;gap:.75rem;padding:1.75rem 1.5rem 2.25rem;display:flex}.event-card:last-child{border-right:none}@media (width<=880px){.event-card{border-right:none;border-bottom:.5px solid var(--rule)}.event-card:last-child{border-bottom:none}}.event-card:hover{background:var(--paper-light)}.event-card .no{font-family:var(--f-serif);color:var(--vermillion);font-size:.875rem;font-style:italic}.event-card .status{width:fit-content;font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;background:var(--ink);color:var(--paper-light);padding:.25rem .55rem;display:inline-block}.event-card .status.status-open{background:var(--moegi)}.event-card .status.status-lottery{background:var(--indigo)}.event-card .status.status-waitlist{background:var(--vermillion)}.event-card h3{font-family:var(--f-display);letter-spacing:-.005em;color:var(--ink);margin:.25rem 0 1rem;font-size:clamp(1.25rem,1.8vw,1.5rem);font-weight:700;line-height:1.25}.event-card .meta{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-80);grid-template-columns:auto 1fr;gap:.45rem 1rem;margin:0;display:grid}.event-card .meta dt{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-40);font-weight:400}.event-card .meta dd{margin:0}.method-list{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}@media (width<=880px){.method-list{grid-template-columns:1fr}}.method-list li{border-right:.5px solid var(--rule);flex-direction:column;gap:.75rem;padding:2rem 1.5rem 2.5rem;display:flex}.method-list li:last-child{border-right:none}.method-list .step-no{font-family:var(--f-serif);color:var(--vermillion);font-size:1.25rem;font-style:italic}.method-list h3{font-family:var(--f-display);letter-spacing:-.005em;margin:0;font-size:1.375rem;font-weight:700}.method-list p{color:var(--ink-60);margin:0;font-size:.9375rem}.cta{text-align:center;padding:calc(var(--section-y) * 1.2) 0}.cta-eyebrow{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--vermillion);margin:0 0 1.5rem}.cta-title{font-family:var(--f-display);letter-spacing:-.02em;margin:0 0 2.5rem;font-size:clamp(2.25rem,5vw,4rem);font-weight:800;line-height:1}.btn-primary{background:var(--ink);color:var(--paper-light);font-family:var(--f-mono);font-size:var(--fs-sm);letter-spacing:.14em;text-transform:uppercase;transition:background .3s var(--ease), transform .3s var(--ease);align-items:center;gap:.75rem;padding:1rem 2rem;display:inline-flex}.btn-primary:hover{background:var(--vermillion);transform:translateY(-2px)}.btn-ghost{border-bottom:1px solid var(--ink);font-family:var(--f-mono);font-size:var(--fs-sm);letter-spacing:.14em;text-transform:uppercase;transition:color .3s var(--ease), border-color .3s var(--ease);align-items:center;gap:.5rem;padding:.75rem 0;display:inline-flex}.btn-ghost:hover{color:var(--vermillion);border-color:var(--vermillion)}.filter-bar{border-top:.5px solid var(--rule);border-bottom:.5px solid var(--rule);flex-wrap:wrap;gap:.5rem;margin-bottom:0;padding:1.5rem 0;display:flex}.filter-chip{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);border:.5px solid var(--rule);transition:all .25s var(--ease);background:0 0;padding:.5rem .95rem}.filter-chip:hover{color:var(--ink);border-color:var(--ink)}.filter-chip.active{color:var(--paper-light);background:var(--ink);border-color:var(--ink)}.event-list{margin:0;padding:0;list-style:none}.event-row{border-bottom:.5px solid var(--rule)}.event-row:last-child{border-bottom:1px solid var(--ink)}.event-row a{transition:background .3s var(--ease), padding-left .3s var(--ease);grid-template-columns:4rem minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:clamp(1rem,3vw,2.5rem);padding:2rem 0;display:grid}.event-row a:hover{background:var(--paper-light);padding-left:1rem}@media (width<=720px){.event-row a{grid-template-columns:2.5rem 1fr;gap:1rem}.row-meta-col{grid-column:2;padding-top:.5rem}}.row-idx{font-family:var(--f-serif);color:var(--vermillion);padding-top:.15rem;font-size:1.75rem;font-style:italic;font-weight:300;line-height:1}.row-body{min-width:0}.row-tag{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.6rem}.row-title{font-family:var(--f-display);letter-spacing:-.01em;color:var(--ink);margin:0 0 .75rem;font-size:clamp(1.375rem,2.5vw,2rem);font-weight:700;line-height:1.18}.row-meta{font-family:var(--f-serif);color:var(--ink-60);margin:0;font-size:.9375rem;font-style:italic}.row-meta-col{text-align:right;flex-direction:column;gap:.5rem;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:.08em}.row-slots{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);flex-direction:column;gap:.25rem;margin-top:.5rem;display:flex}.row-slots>div{justify-content:flex-end;gap:.75rem;display:flex}@media (width<=720px){.row-slots>div{justify-content:flex-start}}.event-detail-head{border-bottom:1px solid var(--ink);padding:clamp(2.5rem,7vh,5rem) 0 clamp(2rem,5vh,3.5rem)}.event-detail-head .tag{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--vermillion);margin-bottom:1.25rem}.event-detail-head h1{font-family:var(--f-display);letter-spacing:-.025em;max-width:22ch;margin:0 0 1.25rem;font-size:clamp(2.5rem,6vw,5rem);font-weight:800;line-height:.95}.event-detail-head .lede{font-family:var(--f-serif);color:var(--ink-60);max-width:50ch;margin:0;font-size:clamp(1.125rem,1.7vw,1.375rem);font-style:italic}.event-detail-body{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);padding:clamp(2.5rem,6vh,4.5rem) 0;display:grid}@media (width<=880px){.event-detail-body{grid-template-columns:1fr}}.event-body h2{font-family:var(--f-display);border-top:.5px solid var(--rule);margin:2.5rem 0 1rem;padding-top:2rem;font-size:1.5rem;font-weight:700}.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:1.5rem;margin:0;padding:0;list-style:none;display:grid}.speaker-card{border-top:.5px solid var(--rule);padding:1.25rem 0}.speaker-card .name{font-family:var(--f-display);margin:0 0 .25rem;font-size:1.125rem;font-weight:700}.speaker-card .role{font-family:var(--f-serif);font-style:italic;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(--paper-light);border:1px solid var(--ink);padding:1.75rem;position:sticky;top:6rem}.register-card .price{font-family:var(--f-display);letter-spacing:-.01em;margin:0 0 .25rem;font-size:2rem;font-weight:700}.register-card .price .unit{font-family:var(--f-mono);color:var(--ink-60);margin-left:.35rem;font-size:.9375rem;font-weight:400}.register-card .price-note{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-sm);color:var(--ink-60);margin:0 0 1.5rem}.register-card hr{background:var(--rule);border:none;height:.5px;margin:1.5rem 0}.register-card dl{grid-template-columns:auto 1fr;gap:.6rem 1rem;margin:0 0 1.5rem;display:grid}.register-card dt{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-40)}.register-card dd{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink);text-align:right;margin:0}.register-card .btn-primary{justify-content:center;width:100%}.slot-list{border-top:.5px solid var(--rule);margin:0 0 1.5rem;padding:0;list-style:none}.slot-list li{border-bottom:.5px solid var(--rule);grid-template-columns:1fr auto;align-items:baseline;gap:.75rem;padding:.875rem 0;display:grid}.slot-list .slot-name{font-family:var(--f-display);font-size:1rem;font-weight:500}.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 li{align-items:start}.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:.08em;color:var(--moegi);margin-left:.25rem}.slot-btn{background:var(--ink);color:var(--paper-light);font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .25s var(--ease), transform .25s var(--ease);white-space:nowrap;border:none;justify-content:center;align-items:center;padding:.35rem .7rem;font-size:.625rem;text-decoration:none;display:inline-flex}.slot-btn:hover:not(:disabled){background:var(--vermillion);transform:translateY(-1px)}.slot-btn:disabled{opacity:.5;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:32px;height:32px;color:var(--ink-60);cursor:pointer;transition:color .3s 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)}.notifications-dot{background:var(--vermillion);width:7px;height:7px;box-shadow:0 0 0 2px var(--paper);border-radius:50%;position:absolute;top:5px;right:5px}.notifications-panel{background:var(--paper-light);border:1px solid var(--ink);z-index:100;width:min(400px,100vw - 2rem);max-height:520px;font-family:var(--f-sans);text-transform:none;letter-spacing:normal;color:var(--ink);flex-direction:column;font-style:normal;display:flex;position:absolute;top:calc(100% + .75rem);right:0;box-shadow:6px 6px #15120d0f}.notifications-head{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:baseline;padding:1rem 1.25rem .75rem;display:flex}.notifications-head .eyebrow{margin:0}.notifications-markall{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--vermillion);cursor:pointer;background:0 0;border:none;padding:0}.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)}.notifications-list li{border-bottom:.5px solid var(--rule)}.notifications-list li:last-child{border-bottom:none}.notifications-list button{text-align:left;cursor:pointer;width:100%;transition:background .25s var(--ease);font-family:var(--f-sans);background:0 0;border:none;align-items:flex-start;gap:.75rem;padding:.9rem 1.25rem;display:flex}.notifications-list button:hover{background:var(--paper-deep)}.notifications-list .unread-mark{background:var(--vermillion);border-radius:50%;flex:none;width:7px;height:7px;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:15px}.notifications-list li.unread .item-body{margin-left:0}.item-body{flex:1;min-width:0}.item-title{font-family:var(--f-display);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.2rem;font-size:.9375rem;font-weight:700;line-height:1.3;overflow:hidden}.item-preview{color:var(--ink-60);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.35rem;font-size:.8125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.item-time{font-family:var(--f-mono);color:var(--ink-40);letter-spacing:.05em;font-size:.6875rem}.event-share-drawer{border-top:1px solid var(--ink);margin-top:2rem;padding:clamp(2rem,5vh,3rem) 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-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40)}.visibility-hint{color:var(--ink-60);max-width:60ch;margin:.5rem 0 2rem;font-size:.875rem}.share-link-form{border-top:.5px solid var(--rule);border-bottom:.5px solid var(--rule);margin:1.5rem 0;padding:1.25rem 0}.share-link-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1rem;display:grid}@media (width<=720px){.share-link-grid{grid-template-columns:1fr}}.share-link-grid label{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.35rem;display:block}.share-link-grid input{border:none;border-bottom:1px solid var(--ink);width:100%;font-family:var(--f-mono);color:var(--ink);background:0 0;outline:none;padding:.55rem 0;font-size:.9375rem}.share-link-grid input:focus{border-bottom-color:var(--vermillion)}.share-link-list{border-top:.5px solid var(--rule);margin:0;padding:0;list-style:none}.share-link-row{border-bottom:.5px solid var(--rule);grid-template-columns:1fr auto;gap:1rem;padding:1rem 0;display:grid}.share-link-row.inactive{opacity:.5}.share-link-main{min-width:0}.share-link-url{color:var(--ink);word-break:break-all;background:var(--paper-light);border-left:2px solid var(--vermillion);margin-bottom:.4rem;padding:.4rem .6rem;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.5rem;display:flex}.share-link-meta .meta-label{font-family:var(--f-serif);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-40);margin-right:.25rem;font-style:italic}.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:.4rem .75rem}.calendar-controls{border-top:1px solid var(--ink);border-bottom:.5px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;display:flex}.calendar-nav{align-items:center;gap:1rem;display:flex}.calendar-nav button{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);border:.5px solid var(--rule);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.55rem 1rem}.calendar-nav button:hover{color:var(--ink);border-color:var(--ink)}.calendar-range{color:var(--ink);letter-spacing:.02em;font-size:.875rem}.calendar-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.seg-switch{border:.5px solid var(--rule);display:inline-flex}.seg-switch button{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);border:none;border-right:.5px solid var(--rule);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.5rem .95rem}.seg-switch button:last-child{border-right:none}.seg-switch button.active{background:var(--ink);color:var(--paper-light)}.calendar-drawer{border-bottom:.5px solid var(--rule);padding:clamp(1.5rem,4vh,2.5rem) 0}.calendar-body{padding:clamp(2rem,5vh,3.5rem) 0 clamp(3rem,8vh,6rem)}.agenda{margin:0;padding:0;list-style:none}.agenda-day{border-bottom:.5px solid var(--rule);grid-template-columns:minmax(140px,180px) 1fr;gap:clamp(1rem,3vw,2rem);padding:1.5rem 0;display:grid}.agenda-day:first-child{border-top:1px solid var(--ink)}.agenda-day:last-child{border-bottom:1px solid var(--ink)}.agenda-day.today .agenda-date-num{color:var(--vermillion)}@media (width<=720px){.agenda-day{grid-template-columns:1fr;gap:.75rem}}.agenda-date{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.agenda-date-num{font-family:var(--f-display);letter-spacing:-.01em;font-size:1.5rem;font-weight:700}.agenda-date-dow{font-family:var(--f-serif);color:var(--ink-60);font-size:1rem;font-style:italic}.agenda-today{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--vermillion);margin-left:.5rem}.agenda-empty{color:var(--ink-40);font-size:.9375rem}.agenda-items{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.agenda-item{border-top:.5px solid var(--rule-soft);grid-template-columns:auto 1fr auto;gap:1.25rem;padding:.75rem 0;display:grid}.agenda-item:first-child{border-top:none;padding-top:0}.agenda-time{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;padding-top:.25rem;font-size:.875rem}.agenda-body{min-width:0}.agenda-kind-badge{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--paper-light);background:var(--ink);margin-bottom:.4rem;padding:.2rem .5rem;display:inline-block}.item-event .agenda-kind-badge{background:var(--indigo)}.item-booking .agenda-kind-badge{background:var(--moegi)}.item-appointment .agenda-kind-badge{background:var(--vermillion)}.agenda-title{font-family:var(--f-display);letter-spacing:-.005em;color:var(--ink);font-size:1.25rem;font-weight:700;line-height:1.25;display:block}.agenda-link{transition:color .3s var(--ease);text-decoration:none}.agenda-link:hover{color:var(--vermillion)}.agenda-meta,.agenda-desc{color:var(--ink-60);margin-top:.25rem;font-size:.8125rem}.agenda-meta{font-family:var(--f-mono)}.agenda-desc{font-family:var(--f-serif);font-style:italic}.agenda-remove{border:.5px solid var(--rule);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)}.new-appointment .form-row,.new-appointment .form-row-grid{margin-bottom:1.25rem}.new-appointment label{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.35rem;display:block}.new-appointment input[type=text],.new-appointment input[type=datetime-local]{border:none;border-bottom:1px solid var(--ink);width:100%;font-family:var(--f-sans);color:var(--ink);transition:border-color .3s var(--ease);background:0 0;outline:none;padding:.6rem 0;font-size:1rem}.new-appointment input:focus{border-bottom-color:var(--vermillion)}.new-appointment .form-row-grid{grid-template-columns:1fr 1fr;gap:1.5rem;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.5rem;display:flex}.new-appointment .radio-group label{font-family:var(--f-sans);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,3rem);margin-top:2rem;display:grid}@media (width<=720px){.share-lists{grid-template-columns:1fr}}.share-list{border-top:.5px solid var(--rule);margin:.75rem 0 0;padding:0;list-style:none}.share-list li{border-bottom:.5px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.share-list strong{font-family:var(--f-display);margin-right:.5rem;font-weight:700}.share-list .mono{color:var(--ink-40);font-size:.8125rem}.share-revoke{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--vermillion);cursor:pointer;background:0 0;border:none;padding:.25rem 0}.share-revoke:hover{text-decoration:underline}.inbox-new{border-top:1px solid var(--ink);border-bottom:.5px solid var(--rule);padding:clamp(2rem,5vh,3rem) 0}.inbox-new .eyebrow{margin-bottom:1rem}.inbox-search{grid-template-columns:1fr auto;gap:1rem;max-width:560px;display:grid}.inbox-search input{border:none;border-bottom:1px solid var(--ink);font-family:var(--f-sans);color:var(--ink);transition:border-color .3s var(--ease);background:0 0;outline:none;padding:.75rem 0;font-size:1rem}.inbox-search input:focus{border-bottom-color:var(--vermillion)}.inbox-search button{background:var(--ink);color:var(--paper-light);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease);border:none;padding:.6rem 1.25rem}.inbox-search button:hover:not(:disabled){background:var(--vermillion)}.inbox-search button:disabled{opacity:.4;cursor:not-allowed}.inbox-search-results{border-top:.5px solid var(--rule);max-width:560px;margin:1.25rem 0 0;padding:0;list-style:none}.inbox-search-results li{border-bottom:.5px solid var(--rule)}.inbox-search-results button{cursor:pointer;text-align:left;width:100%;font-family:var(--f-sans);transition:padding .25s var(--ease);background:0 0;border:none;justify-content:space-between;align-items:center;padding:.9rem 0;font-size:.9375rem;display:flex}.inbox-search-results button:hover{padding-left:.5rem}.inbox-search-results button strong{font-family:var(--f-display);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-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase}.inbox-list-wrap{padding:clamp(2.5rem,6vh,4rem) 0 clamp(3rem,8vh,6rem)}.inbox-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.inbox-list li{border-bottom:.5px solid var(--rule)}.inbox-list li:last-child{border-bottom:1px solid var(--ink)}.inbox-list a{transition:background .3s var(--ease), padding-left .3s var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1rem;padding:1.25rem 0;display:grid}.inbox-list a:hover{background:var(--paper-light);padding-left:1rem}.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:.75rem;margin-bottom:.25rem;display:flex}.inbox-title .name{font-family:var(--f-display);letter-spacing:-.005em;font-size:1.25rem;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-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40)}.inbox-preview{font-family:var(--f-serif);color:var(--ink-60);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.9375rem;font-style:italic;display:-webkit-box;overflow:hidden}.inbox-time{font-size:var(--fs-xs);color:var(--ink-40);letter-spacing:.05em;white-space:nowrap;padding-top:.45rem}.conversation-head{border-bottom:.5px solid var(--rule);padding:clamp(2.5rem,6vh,4rem) 0 clamp(1rem,3vh,2rem)}.conversation-head .back-link{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60);transition:color .3s var(--ease);margin-bottom:1rem;display:inline-block}.conversation-head .back-link:hover{color:var(--vermillion)}.conversation-head .eyebrow{margin:.5rem 0}.conversation-title{font-family:var(--f-display);letter-spacing:-.02em;margin:.5rem 0 .75rem;font-size:clamp(2rem,4vw,3.25rem);font-weight:800;line-height:1}.conversation-members{font-family:var(--f-serif);color:var(--ink-60);margin:0;font-size:.9375rem;font-style:italic}.conversation-body{padding:clamp(1.5rem,4vh,2.5rem) 0 clamp(3rem,6vh,5rem)}.chat-author-btn{font:inherit;font-family:var(--f-display);color:var(--ink);cursor:pointer;border:none;border-bottom:.5px dotted var(--ink-40);transition:border-color .3s var(--ease), color .3s var(--ease);background:0 0;padding:0;font-size:.875rem;font-weight:700;text-decoration:none}.chat-author-btn:hover{color:var(--vermillion);border-bottom-color:var(--vermillion)}.event-chat{border-top:1px solid var(--ink);padding:clamp(2.5rem,6vh,4rem) 0 clamp(2rem,5vh,3rem)}.event-chat--cta{text-align:center;padding:clamp(3rem,8vh,5rem) 0}.event-chat--cta .eyebrow{margin-bottom:1.25rem}.event-chat--cta h3{font-family:var(--f-display);letter-spacing:-.01em;margin:0 0 .75rem;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700}.event-chat--cta p{font-family:var(--f-serif);color:var(--ink-60);margin:0 0 2rem;font-style:italic}.chat-head{border-bottom:.5px solid var(--rule);justify-content:space-between;align-items:baseline;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.chat-head .eyebrow{margin:0}.chat-count{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;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-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);border:.5px solid var(--rule);cursor:pointer;transition:all .25s var(--ease);background:0 0;align-self:center;margin:.5rem auto 1rem;padding:.5rem 1rem}.chat-loadmore:hover:not(:disabled){color:var(--ink);border-color:var(--ink)}.chat-loadmore:disabled{opacity:.4;cursor:not-allowed}.chat-day{text-align:center;font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.1em;color:var(--ink-40);margin:1rem 0 .75rem}.chat-msg{max-width:65ch;padding:.5rem 0}.chat-msg.self{text-align:right;margin-left:auto}.chat-author{align-items:baseline;gap:.6rem;margin-bottom:.2rem;display:flex}.chat-msg.self .chat-author{justify-content:flex-end}.chat-author .name{font-family:var(--f-display);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.5}.chat-msg.self .chat-body{color:var(--ink);background:var(--paper-light);border-left:2px solid var(--vermillion);text-align:left;padding:.4rem .75rem;display:inline-block}.chat-compose{border-top:.5px solid var(--rule);grid-template-columns:1fr auto;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;display:grid}.chat-compose input{border:none;border-bottom:1px solid var(--ink);font-family:var(--f-sans);color:var(--ink);transition:border-color .3s var(--ease);background:0 0;outline:none;padding:.75rem 0;font-size:1rem}.chat-compose input:focus{border-bottom-color:var(--vermillion)}.chat-compose input::placeholder{color:var(--ink-40)}.chat-compose button{background:var(--ink);color:var(--paper-light);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease);border:none;padding:.6rem 1.25rem}.chat-compose button:hover:not(:disabled){background:var(--vermillion)}.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,4rem);min-height:70vh;padding:clamp(2.5rem,6vh,5rem) 0;display:grid}@media (width<=880px){.booking-layout{grid-template-columns:1fr}}.booking-aside{border-right:.5px solid var(--rule);padding-right:clamp(1.5rem,4vw,3rem)}@media (width<=880px){.booking-aside{border-right:none;border-bottom:.5px solid var(--rule);padding-bottom:2rem;padding-right:0}}.booking-aside .eyebrow{margin-bottom:1rem}.booking-aside .host-name{font-family:var(--f-display);letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(2rem,3.5vw,3rem);font-weight:800;line-height:1}.booking-aside .host-role{font-family:var(--f-serif);color:var(--ink-60);margin:0 0 2rem;font-size:1rem;font-style:italic}.booking-aside .event-type{border-top:.5px solid var(--rule);border-bottom:.5px solid var(--rule);margin-bottom:2rem;padding:1.25rem 0}.booking-aside .event-type h3{font-family:var(--f-display);margin:0 0 .5rem;font-size:1.375rem;font-weight:700}.booking-aside .event-type .dur{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60);letter-spacing:.08em}.booking-aside p{color:var(--ink-60);max-width:40ch;font-size:.9375rem}.calendar-head{border-bottom:.5px solid var(--rule);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.calendar-head h2{font-family:var(--f-display);margin:0;font-size:1.5rem;font-weight:700}.calendar-head .nav{gap:.5rem;display:flex}.calendar-head .nav button{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--ink-60);border:.5px solid var(--rule);transition:all .25s var(--ease);padding:.5rem .75rem}.calendar-head .nav button:hover{color:var(--ink);border-color:var(--ink)}.week-grid{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.day-col{flex-direction:column;gap:.4rem;display:flex}.day-col .day-head{text-align:center;border-bottom:.5px solid var(--rule);margin-bottom:.5rem;padding-bottom:.75rem}.day-col .dow{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40)}.day-col .dom{font-family:var(--f-display);margin-top:.25rem;font-size:1.375rem;font-weight:700;line-height:1.1}.day-col .dom.today{color:var(--vermillion)}.day-col .slot{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.05em;border:.5px solid var(--rule);background:var(--paper-light);color:var(--ink-80);text-align:center;transition:all .2s var(--ease);padding:.55rem .25rem}.day-col .slot:hover{border-color:var(--ink);color:var(--ink)}.day-col .slot.selected{background:var(--ink);color:var(--paper-light);border-color:var(--ink)}.day-col .slot.taken{color:var(--ink-40);cursor:not-allowed;background:0 0;text-decoration:line-through}.day-col .slot.taken:hover{border-color:var(--rule);color:var(--ink-40)}.rule{background:var(--ink);border:none;height:1px;margin:2rem 0}.rule-soft{background:var(--rule);border:none;height:.5px;margin:1.5rem 0}::selection{background:var(--vermillion);color:var(--paper-light)}.event-type-list{border-top:1px solid var(--ink);margin:2rem 0 0;padding:0;list-style:none}.event-type-list li{border-bottom:.5px solid var(--rule);grid-template-columns:1fr auto;align-items:start;gap:1rem;padding:1.25rem 0;display:grid}.event-type-list li.inactive{opacity:.55}.et-title{font-family:var(--f-display);letter-spacing:-.005em;margin-bottom:.3rem;font-size:1.25rem;font-weight:700}.et-meta{font-size:var(--fs-xs);color:var(--ink-60);letter-spacing:.05em;margin-bottom:.4rem}.et-desc{color:var(--ink-60);max-width:50ch;font-size:.875rem}.et-actions{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.et-actions .btn-ghost{font-size:var(--fs-xs);padding:.35rem .75rem}.availability-grid{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.day-rule{border-bottom:.5px solid var(--rule);grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:1rem;max-width:540px;padding:1rem 0;display:grid}.day-rule.disabled{opacity:.5}.day-rule-toggle{cursor:pointer;align-items:center;gap:.6rem;display:flex}.day-rule-toggle .day-name{font-family:var(--f-display);font-size:1.125rem;font-weight:700}.day-rule input[type=time]{border:none;border-bottom:1px solid var(--ink);font-family:var(--f-mono);color:var(--ink);background:0 0;outline:none;padding:.4rem 0;font-size:.9375rem}.day-rule input[type=time]:focus{border-bottom-color:var(--vermillion)}.day-rule input[type=time]:disabled{border-bottom-color:var(--rule);color:var(--ink-40)}.day-rule-sep{color:var(--ink-40);text-align:center}.booking-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.booking-list li{border-bottom:.5px solid var(--rule);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}.booking-list .b-when{color:var(--ink);font-size:.875rem}.booking-list .b-who strong{font-family:var(--f-display);font-size:1rem;font-weight:700}.booking-list .b-contact{color:var(--ink-60);font-size:.75rem}.public-et-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.public-et-list li{border-bottom:.5px solid var(--rule)}.public-et-list a{transition:padding-left .3s var(--ease), background .3s var(--ease);grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.5rem 0;display:grid}.public-et-list a:hover{background:var(--paper-light);padding-left:1rem}.pet-title{font-family:var(--f-display);letter-spacing:-.005em;margin-bottom:.3rem;font-size:1.5rem;font-weight:700}.pet-meta{font-size:var(--fs-xs);color:var(--ink-60);letter-spacing:.05em;margin-bottom:.4rem}.pet-desc{color:var(--ink-60);max-width:55ch;font-size:.9375rem}.pet-cta{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase}.day-head-btn{cursor:pointer;background:0 0;border:none;width:100%}.day-head-btn:disabled{cursor:not-allowed;opacity:.45}.day-col.selected-col .day-head{border-bottom-color:var(--vermillion)}.day-col.holiday-col .day-head{opacity:.65}.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-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.4rem;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{border:none;border-bottom:1px solid var(--ink);width:100%;font-family:var(--f-sans);color:var(--ink);transition:border-color .3s var(--ease);background:0 0;outline:none;padding:.65rem 0;font-size:1rem}.event-create-form textarea{resize:vertical;min-height:80px;padding:.75rem 0}.event-create-form input:focus,.event-create-form select:focus,.event-create-form textarea:focus{border-bottom-color:var(--vermillion)}.event-create-form .form-row-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=720px){.event-create-form .form-row-grid{grid-template-columns:1fr}}.slot-editor{border-top:.5px solid var(--rule);margin:.5rem 0 1rem;padding:0;list-style:none}.slot-editor li{border-bottom:.5px solid var(--rule);grid-template-columns:2fr 1fr 1fr auto;align-items:center;gap:.75rem;padding:.85rem 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 0!important;font-size:.9375rem!important}.slot-remove{border:.5px solid var(--rule);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)}.slot-add{margin-top:.5rem}.event-create-form .btn-primary{margin-top:1.5rem}.passkey-manager{padding:clamp(2rem,5vh,3rem) 0 clamp(3rem,8vh,5rem)}.pm-head{border-bottom:.5px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.pm-head .eyebrow{margin-bottom:.75rem}.pm-hint{max-width:48ch;color:var(--ink-60);margin:0;font-size:.9375rem}.pm-empty{text-align:center;color:var(--ink-40);padding:2.5rem 0;font-size:.9375rem}.pm-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.pm-row{border-bottom:.5px solid var(--rule);grid-template-columns:1fr auto;align-items:start;gap:1rem;padding:1.25rem 0;display:grid}.pm-row:last-child{border-bottom:1px solid var(--ink)}.pm-main{min-width:0}.pm-name{font-family:var(--f-display);letter-spacing:-.005em;margin-bottom:.35rem;font-size:1.125rem;font-weight:700}.pm-meta{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-60);flex-wrap:wrap;gap:1.5rem;display:flex}.pm-label{font-family:var(--f-serif);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-40);margin-right:.25rem;font-style:italic}.pm-delete{border:.5px solid var(--rule);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--vermillion);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.4rem .9rem}.pm-delete:hover:not(:disabled){background:var(--vermillion);color:var(--paper-light);border-color:var(--vermillion)}.pm-delete:disabled{opacity:.4;cursor:not-allowed}.auth-form{max-width:440px;padding:1.5rem 0 var(--section-y)}.auth-form label{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-40);margin-bottom:.5rem;display:block}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{border:none;border-bottom:1px solid var(--ink);width:100%;font-family:var(--f-display);color:var(--ink);transition:border-color .3s var(--ease);-webkit-appearance:none;background:0 0;outline:none;margin-bottom:2rem;padding:.85rem 0;font-size:1.25rem}.auth-form input:focus{border-bottom-color:var(--vermillion)}.auth-form input::placeholder{color:var(--ink-40)}.auth-form .btn-primary{justify-content:center;width:100%;margin-top:.5rem}.auth-form .divider{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);align-items:center;gap:1rem;margin:2rem 0 1.5rem;display:flex}.auth-form .divider:before,.auth-form .divider:after{content:"";background:var(--rule);flex:1;height:.5px}.auth-form .error{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--vermillion);border-top:.5px solid var(--vermillion);border-bottom:.5px solid var(--vermillion);margin:.5rem 0 1.5rem;padding:.75rem 0}.auth-form button[disabled]{opacity:.5;cursor:not-allowed}.cover-upload{margin-top:.5rem}.cover-dropzone{border:1.5px dashed var(--rule);cursor:pointer;color:var(--ink-40);font-family:var(--f-sans);font-size:var(--fs-sm);transition:border-color .2s var(--ease), color .2s var(--ease);border-radius:4px;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.cover-dropzone:hover{border-color:var(--vermillion);color:var(--ink-60)}.cover-preview{border-radius:4px;max-height:240px;position:relative;overflow:hidden}.cover-preview img{object-fit:cover;width:100%;max-height:240px;display:block}.cover-remove{background:var(--ink-80);color:var(--paper);font-family:var(--f-mono);font-size:var(--fs-xs);cursor:pointer;opacity:.8;border:none;border-radius:3px;padding:.25rem .75rem;transition:opacity .15s;position:absolute;top:.5rem;right:.5rem}.cover-remove:hover{opacity:1}.event-cover{border-radius:4px;max-height:400px;margin:2rem 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:1rem;display:flex}.month-grid-header button{cursor:pointer;font-family:var(--f-sans);font-size:var(--fs-sm);color:var(--ink-60);background:0 0;border:none;padding:.375rem 0}.month-grid-header button:hover{color:var(--ink)}.month-grid-label{font-family:var(--f-display);font-size:var(--fs-h2);color:var(--ink);font-weight:700}.month-grid{background:var(--rule-soft);border:.5px solid var(--rule);border-radius:4px;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.month-grid-dow{background:var(--paper-deep);text-align:center;font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--ink-40);padding:.5rem 0;font-weight:600}.month-grid-cell{background:var(--paper-light);cursor:pointer;text-align:left;min-height:4.5rem;transition:background .15s var(--ease);border:none;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.375rem;font-family:inherit;display:flex}.month-grid-cell:hover{background:var(--paper-deep)}.month-grid-cell.empty{background:var(--paper);cursor:default}.month-grid-cell.today{background:var(--paper);box-shadow:inset 0 0 0 2px var(--vermillion)}.month-grid-cell.expanded{background:var(--paper-deep)}.month-grid-day-num{font-family:var(--f-display);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)}.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(--paper-light);border:.5px solid var(--rule);border-radius:4px;margin-top:1rem;padding:1.25rem}.month-grid-detail-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.month-grid-detail-date{font-family:var(--f-display);font-size:var(--fs-h2);font-weight:700}.month-grid-detail-close{cursor:pointer;color:var(--ink-40);background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1}.month-grid-detail-close:hover{color:var(--ink)}.month-grid-detail-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.month-detail-item{border-bottom:.5px solid var(--rule-soft);align-items:center;gap:.75rem;padding:.375rem 0;display:flex}.month-detail-item:last-child{border-bottom:none}.month-detail-badge{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.08em;color:var(--ink-40);white-space:nowrap}.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:.5px solid var(--rule);font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--ink-60);cursor:pointer;transition:border-color .15s var(--ease), color .15s var(--ease);background:0 0;border-radius:3px;padding:.15rem .5rem}.lang-toggle:hover{border-color:var(--vermillion);color:var(--ink)}.poll-list-sections{flex-direction:column;gap:3rem;margin-top:2rem;display:flex}.poll-list-sections h2{font-family:var(--f-display);font-size:var(--fs-h2);margin-bottom:1rem}.poll-list{flex-direction:column;gap:.5rem;padding:0;list-style:none;display:flex}.poll-card{border:1px solid var(--rule-soft);transition:border-color .2s var(--ease), background .2s var(--ease);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.poll-card:hover{border-color:var(--vermillion);background:var(--paper-light)}.poll-title{font-family:var(--f-display);font-weight:600}.poll-meta{font-size:var(--fs-sm);color:var(--ink-40);align-items:center;gap:.75rem;display:flex}.poll-status{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;border:1px solid;padding:.1rem .5rem}.poll-status--open{border-color:var(--moegi);color:var(--moegi)}.poll-status--closed{border-color:var(--ink-40);color:var(--ink-40)}.empty-state{color:var(--ink-40);font-style:italic}.poll-candidates-fieldset{border:1px solid var(--rule-soft);margin:1.5rem 0;padding:1.5rem}.poll-candidates-fieldset legend{font-family:var(--f-display);padding:0 .5rem;font-weight:600}.poll-candidate-row{border-bottom:1px solid var(--rule-soft);align-items:flex-start;gap:.75rem;padding:1rem 0;display:flex}.poll-candidate-row:last-of-type{border-bottom:none}.poll-candidate-num{font-family:var(--f-serif);color:var(--vermillion);min-width:2rem;padding-top:.25rem;font-size:1.5rem;font-style:italic;font-weight:300}.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-soft);margin:2rem 0;overflow-x:auto}.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-sans);font-size:var(--fs-sm);text-align:center;flex-direction:column;align-items:center;gap:.15rem;padding:.75rem .5rem;font-weight:600;display:flex}.poll-grid-corner{font-family:var(--f-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-40);justify-content:center}.poll-grid-best{background:color-mix(in srgb, var(--moegi) 12%, var(--paper-deep))}.poll-col-best{background:color-mix(in srgb, var(--moegi) 6%, var(--paper))}.poll-best-badge{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--paper);background:var(--moegi);margin-top:.25rem;padding:.1rem .5rem}.poll-candidate-date{font-weight:600}.poll-candidate-time{font-size:var(--fs-xs);color:var(--ink-60)}.poll-candidate-label{font-size:var(--fs-xs);color:var(--ink-40);font-style:italic}.poll-grid-name{border-bottom:1px solid var(--rule-soft);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)}.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:600}.poll-cell{border-bottom:1px solid var(--rule-soft);text-align:center;justify-content:center;align-items:center;padding:.5rem;font-size:1.125rem;font-weight:700;display:flex}.poll-cell--available{color:var(--moegi);background:color-mix(in srgb, var(--moegi) 8%, transparent)}.poll-cell--maybe{color:#b8860b;background:#b8860b14}.poll-cell--unavailable{color:var(--vermillion);background:color-mix(in srgb, var(--vermillion) 5%, transparent)}.poll-cell--interactive{cursor:pointer;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:.15rem;font-weight:600}.tally-available{color:var(--moegi)}.tally-maybe{color:#b8860b}.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:1rem;margin-top:1.5rem;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-soft);transition:border-color .2s var(--ease);padding:1rem 1.25rem}.sub-event-card:hover{border-color:var(--rule)}.sub-event-header{justify-content:space-between;align-items:center;display:flex}.sub-event-title{font-family:var(--f-display);font-weight:600;font-size:var(--fs-h2)}.sub-event-desc{color:var(--ink-60);font-size:var(--fs-sm);margin:.35rem 0}.sub-event-meta{font-size:var(--fs-sm);color:var(--ink-40);gap:1rem;margin-top:.35rem;display:flex}.sub-event-access{font-size:var(--fs-xs);color:var(--ink-60);margin-top:.35rem;font-style:italic}.sub-event-form{border:1px dashed var(--rule-soft);margin-top:1rem;padding:1rem}.sub-event-form h3{font-family:var(--f-display);margin:0 0 1rem}.lottery-badge{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;border:1px solid var(--indigo);color:var(--indigo);vertical-align:middle;margin-left:.5rem;padding:.15rem .5rem;display:inline-block}.lottery-badge.drawn{border-color:var(--moegi);color:var(--moegi)}.slot-status-badge.open{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;border:1px solid var(--moegi);color:var(--moegi);vertical-align:middle;margin-left:.5rem;padding:.15rem .5rem;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-soft);margin-top:1.5rem;padding:1.25rem}.lottery-draw-section h3{font-family:var(--f-display);margin:0 0 1rem}.lottery-draw-row{border-bottom:.5px solid var(--rule-soft);flex-wrap:wrap;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.btn-lottery-draw{font-family:var(--f-mono);font-size:var(--fs-sm);border:1px solid var(--vermillion);color:var(--vermillion);cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);background:0 0;padding:.45rem 1rem;display:inline-block}.btn-lottery-draw:hover:not(:disabled){background:var(--vermillion);color:var(--paper)}.btn-lottery-draw:disabled{opacity:.5;cursor:not-allowed}.lottery-result{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--moegi);font-weight:600}.slot-reg-mode{align-items:center;gap:.5rem;width:100%;margin-top:.35rem;display:flex}.slot-reg-label{font-size:var(--fs-xs);color:var(--ink-40);font-family:var(--f-serif);white-space:nowrap;font-style:italic}.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}.attendee-summary{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-sm);color:var(--ink-60);margin-bottom:1rem}.attendee-summary .mono{font-family:var(--f-mono);font-style:normal;font-weight:600}.attendee-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.attendee-card{border:1px solid var(--rule-soft);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);flex-direction:column;gap:.2rem;padding:.75rem 1rem;display:flex}.attendee-card[style*=pointer]:hover{border-color:var(--ink);box-shadow:0 1px 4px #00000014}.attendee-name{font-family:var(--f-display);font-weight:600;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-mono);font-size:var(--fs-xs);letter-spacing:.06em}.attendee-status.confirmed{color:var(--moegi)}.attendee-status.waitlisted{color:var(--vermillion)}.analytics-panel{border:1px solid var(--rule-soft);margin-top:1rem;padding:1.5rem}.analytics-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;display:grid}.analytics-card{text-align:center;border:1px solid var(--rule-soft);padding:1rem .5rem}.analytics-number{font-family:var(--f-display);font-size:var(--fs-display);color:var(--ink);font-weight:700;line-height:1}.analytics-label{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--ink-40);letter-spacing:.08em;text-transform:uppercase;margin-top:.35rem}.fill-rate-bars{flex-direction:column;gap:.6rem;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-sans);font-size:var(--fs-sm);color:var(--ink-60);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fill-rate-track{background:var(--paper-deep);height:6px;position:relative;overflow:hidden}.fill-rate-bar{height:100%;transition:width .4s var(--ease);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:.5px solid var(--rule-soft);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{border-top:.5px solid var(--rule-soft);grid-column:1/-1;margin-top:.75rem;padding-top:.75rem}.ott-toggle{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-sm);color:var(--ink-60);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;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:1px solid var(--rule);color:var(--ink);text-align:center;background:0 0;padding:.3rem .4rem}.ott-list{border-top:.5px solid var(--rule-soft);margin:0;padding:0;list-style:none}.ott-row{border-bottom:.5px solid var(--rule-soft);align-items:center;gap:1rem;padding:.5rem 0;display:flex}.ott-row.used,.ott-row.expired{opacity:.5}.ott-token{font-size:var(--fs-xs);color:var(--ink-60);min-width:100px}.ott-status{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em}.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 .5rem!important}.checkin-dashboard{border:1px solid var(--rule-soft);border-left:3px solid var(--moegi);background:var(--paper-light);margin-top:1rem;padding:1.5rem}.checkin-stats{border-bottom:1px solid var(--rule-soft);flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.checkin-stat{flex-direction:column;gap:.15rem;display:flex}.checkin-stat-number{font-family:var(--f-display);color:var(--ink);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;line-height:1}.checkin-stat-label{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-40)}.checkin-code-section{margin-bottom:1.5rem}.checkin-code-display{font-family:var(--f-display);letter-spacing:.15em;color:var(--vermillion);text-align:center;border:2px dashed var(--rule);background:var(--paper);-webkit-user-select:all;user-select:all;padding:1rem 0;font-size:clamp(2.5rem,6vw,4rem);font-weight:800}.checkin-search{border:1px solid var(--rule-soft);background:var(--paper);width:100%;font-family:var(--f-sans);font-size:var(--fs-sm);color:var(--ink);margin-bottom:.75rem;padding:.5rem .75rem}.checkin-search:focus{border-color:var(--moegi);outline:none}.checkin-list{flex-direction:column;gap:0;display:flex}.checkin-row{border-bottom:1px solid var(--rule-soft);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:.75}.checkin-row-info{flex-wrap:wrap;flex:1;align-items:baseline;gap:.5rem;min-width:0;display:flex}.checkin-row-name{font-weight:600;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);letter-spacing:.06em}.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);letter-spacing:.04em;border-radius:2px;padding:.15rem .4rem}.checkin-time-badge.in{background:color-mix(in srgb, var(--moegi) 15%, transparent);color:var(--moegi)}.checkin-time-badge.out{background:color-mix(in srgb, var(--vermillion) 12%, transparent);color:var(--vermillion)}.checkin-undo-link{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--ink-40);text-underline-offset:2px;transition:color .25s var(--ease);text-decoration:underline}.checkin-undo-link:hover{color:var(--vermillion)}.checkin-self{border:1px solid var(--rule-soft);background:var(--paper-light);margin-top:1.25rem;padding:1.25rem}.checkin-self-form{margin-top:.25rem}.checkin-code-input{border:1px solid var(--rule-soft);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);outline:none}.checkin-self-status{flex-direction:column;gap:.35rem;margin-top:.5rem;display:flex}.checkin-self-badge{font-family:var(--f-mono);font-size:var(--fs-sm);letter-spacing:.06em;font-weight:600}.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);letter-spacing:.04em}.live-badge{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--paper-light);background:var(--vermillion);align-items:center;gap:.4rem;padding:.35rem .75rem;animation:2s ease-in-out infinite live-pulse;display:inline-flex}.live-badge:before{content:"";background:var(--paper-light);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{letter-spacing:.1em;padding:.2rem .5rem;font-size:.5625rem}.hashtag-pills{flex-wrap:wrap;gap:.4rem;margin:.75rem 0;display:flex}.hashtag-pill{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;background:var(--paper-deep);border:.5px solid var(--rule);color:var(--ink-60);transition:color .2s var(--ease), border-color .2s var(--ease);padding:.25rem .65rem;display:inline-block}.hashtag-pill:hover{color:var(--ink);border-color:var(--ink-60)}.sponsor-block{border-top:.5px solid var(--rule);border-bottom:.5px solid var(--rule);align-items:center;gap:.75rem;margin:1rem 0;padding:1rem 0;display:flex}.sponsor-block .sponsor-label{font-family:var(--f-serif);font-style:italic;font-size:var(--fs-sm);color:var(--ink-40)}.sponsor-block .sponsor-name{font-family:var(--f-display);color:var(--ink);font-size:1.125rem;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:1rem 0 2rem;padding-left:1.5rem;position:relative}.schedule-timeline:before{content:"";background:var(--rule);width:2px;position:absolute;top:0;bottom:0;left:0}.schedule-item{border-bottom:.5px solid var(--rule-soft);padding:.75rem 0 .75rem 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:8px;height:8px;margin-left:-3px;position:absolute;top:1.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);letter-spacing:.06em;font-variant-numeric:tabular-nums}.schedule-item-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.schedule-item-type{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--paper-light);padding:.15rem .45rem;font-size:.5625rem}.schedule-item-type.break,.schedule-item-type.lunch{background:var(--rule);color:var(--ink-80)}.schedule-item-type.networking{background:var(--moegi);color:var(--paper-light)}.schedule-item-title{font-family:var(--f-display);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-serif);font-style:italic;font-size:var(--fs-sm);color:var(--ink-60);margin-top:.15rem}.schedule-add-form{background:var(--paper-light);border:.5px solid var(--rule);margin-top:1rem;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-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);margin-bottom:.25rem;display:block}.schedule-add-form input,.schedule-add-form select,.schedule-add-form textarea{border:1px solid var(--rule);background:var(--paper);width:100%;font-family:var(--f-sans);font-size:var(--fs-sm);padding:.5rem}.report-form{background:var(--paper-light);border:.5px solid var(--rule);margin-top:2rem;padding:1.25rem}.report-form h4{font-family:var(--f-display);margin:0 0 .75rem;font-size:1rem;font-weight:700}.report-form label{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60);margin-top:.75rem;margin-bottom:.25rem;display:block}.report-form select,.report-form textarea{border:1px solid var(--rule);background:var(--paper);width:100%;font-family:var(--f-sans);font-size:var(--fs-sm);padding:.5rem}.report-form textarea{resize:vertical;min-height:3rem}.report-trigger{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;color:var(--ink-40);text-transform:uppercase;cursor:pointer;transition:color .2s var(--ease);margin-top:2rem;display:inline-block}.report-trigger:hover{color:var(--vermillion)}.category-cards{border-bottom:.5px solid var(--rule);flex-wrap:wrap;gap:.5rem;margin-bottom:0;padding:1.5rem 0;display:flex}.category-card{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.1em;border:.5px solid var(--rule);color:var(--ink-60);cursor:pointer;transition:all .25s var(--ease);background:0 0;padding:.6rem 1rem}.category-card:hover{color:var(--ink);border-color:var(--ink);background:var(--paper-light)}.category-card.active{color:var(--paper-light);background:var(--ink);border-color:var(--ink)}.map-embed{border:1px solid var(--rule);background:var(--paper-deep);width:100%;margin:1.5rem 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:.4rem;margin-top:.25rem;display:flex}.cohost-tag{font-family:var(--f-mono);font-size:var(--fs-xs);letter-spacing:.06em;color:var(--ink-60);background:var(--paper-deep);border:.5px solid var(--rule-soft);padding:.15rem .5rem}.cohost-invite-form{margin-top:.75rem}.cohost-invite-form input{border:1px solid var(--rule);background:var(--paper);font-family:var(--f-sans);font-size:var(--fs-sm);width:100%;max-width:300px;padding:.5rem}.cohost-search-results{margin-top:.5rem}.cohost-search-result{border-bottom:.5px solid var(--rule-soft);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.cohost-search-result .name{font-family:var(--f-display);font-weight:600;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-serif);font-style:italic;font-size:var(--fs-sm);color:var(--vermillion-soft);margin:.5rem 0}.trending-section{border-bottom:.5px solid var(--rule);padding:1.5rem 0}.trending-section h3{font-family:var(--f-display);font-size:var(--fs-h2);margin:0 0 1rem;font-weight:700}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:1rem;padding:.75rem 0}.embed-toggle{all:unset;cursor:pointer;font-family:var(--f-sans);font-size:var(--fs-sm);color:var(--ink-60);font-weight:600}.embed-body{margin-top:.75rem}.embed-snippet{background:var(--ink);color:var(--paper);font-family:var(--f-mono);font-size:var(--fs-xs);white-space:pre-wrap;word-break:break-all;border-radius:4px;padding:1rem;line-height:1.6;position:relative;overflow-x:auto}.embed-copy{position:absolute;top:.5rem;right:.5rem}.cf-section{margin-top:1rem}.cf-toggle{all:unset;cursor:pointer;font-family:var(--f-sans);font-size:var(--fs-sm);color:var(--ink-60);font-weight:600}.cf-body{margin-top:.75rem}.cf-list{margin:0 0 .75rem;padding:0;list-style:none}.cf-row{border-bottom:.5px solid var(--rule-soft);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:1px solid var(--rule);background:var(--paper-light);border-radius:3px;padding:.25rem .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:1px solid var(--rule);background:var(--paper-light);border-radius:3px;width:100%;margin-top:.25rem;padding:.25rem .5rem}.wh-section{margin-top:2rem}.wh-form{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.wh-form input[type=url]{font-family:var(--f-mono);font-size:var(--fs-sm);border:1px solid var(--rule);background:var(--paper-light);border-radius:3px;padding:.5rem}.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:.5px solid var(--rule-soft);justify-content:space-between;align-items:center;gap:1rem;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{padding:.125rem .375rem;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}
