:root{--font-display:Arial, Helvetica, sans-serif;--font-ui:Arial, Helvetica, sans-serif;--font-mono:Arial, Helvetica, sans-serif;--bg:#faf6f1;--surface:#fffdfa;--surface-2:#f5eee6;--line:#ebe0d5;--line-strong:#dccbbd;--ink:#2b1b18;--ink-2:#5f4a44;--muted:#8f7a72;--maroon:maroon;--accent-ink:var(--maroon);--unread:#e0342b;--maroon-deep:#5c0b12;--maroon-hover:#6b0000;--maroon-soft:#f4e5e0;--maroon-tint:#e9cbc3;--good:#3d6e48;--radius:14px;--radius-sm:9px;--shadow:0 1px 2px #3c140a0a, 0 4px 16px #3c140a0a;--sidebar:236px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--font-ui);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-weight:560}h1{font-size:30px;line-height:1.15}h2{font-size:20px;line-height:1.25}h3{font-size:16px;line-height:1.3}p{margin:0}a{color:var(--accent-ink);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit;color:inherit}.mono{font-family:var(--font-mono);font-feature-settings:"zero" 0;letter-spacing:-.01em}.muted{color:var(--muted)}.ink-2{color:var(--ink-2)}.small{font-size:13px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}:focus-visible{outline:2px solid var(--maroon);outline-offset:2px}.shell{min-height:100%;display:flex}.sidebar{width:var(--sidebar);border-right:1px solid var(--line);background:var(--bg);overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;gap:4px;padding:26px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar>*{flex-shrink:0}.brand{color:var(--ink);align-items:center;gap:10px;padding:0 10px 22px;display:flex}.brand:hover{text-decoration:none}.brand-mark{background:var(--maroon);color:#fbf7f2;width:32px;height:32px;font:600 14px var(--font-display);border-radius:9px;place-items:center;display:grid}.brand-name{font:600 19px var(--font-display);letter-spacing:-.01em}.brand-sub{font:500 11px var(--font-ui);color:var(--muted);letter-spacing:.04em;display:block}.nav-link{border-radius:var(--radius-sm);color:var(--ink-2);align-items:center;gap:11px;padding:9px 12px;font-weight:500;display:flex}.nav-link:hover{background:var(--surface-2);text-decoration:none}.nav-link.active{background:var(--maroon-soft);color:var(--accent-ink)}.nav-section{margin:18px 12px 6px}.aurora-back{margin-top:auto}.aurora-back+.sidebar-foot{margin-top:8px}.sidebar-foot{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:12px 8px 0;display:flex}.sidebar-foot .who{flex:1;min-width:0;line-height:1.3}.sidebar-foot .who b{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;display:block;overflow:hidden}.main{margin-left:var(--sidebar);flex:1;min-width:0}.page{max-width:1080px;margin:0 auto;padding:40px 40px 80px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.page-head p{margin-top:6px}.topbar,.tabbar{display:none}@media (width<=860px){.sidebar{display:none}.main{margin-left:0;padding-bottom:76px}.page{padding:20px 18px 40px}h1{font-size:25px}.topbar{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#faf6f1eb;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex;position:sticky;top:0}.tabbar{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));display:flex;position:fixed;inset:auto 0 0}.tab{color:var(--muted);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0;font-size:11px;font-weight:500;display:flex}.tab:hover{text-decoration:none}.tab.active{color:var(--accent-ink)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card.flush{padding:0;overflow:hidden}.grid{gap:18px;display:grid}.grid-2{grid-template-columns:1.35fr 1fr}.grid-stats{grid-template-columns:repeat(4,1fr)}@media (width<=960px){.grid-2{grid-template-columns:1fr}}@media (width<=700px){.grid-stats{grid-template-columns:1fr 1fr}}.stack{flex-direction:column;gap:18px;display:flex}.row{align-items:center;gap:10px;display:flex}.row.wrap{flex-wrap:wrap}.spacer{flex:1}.stat .label{color:var(--muted);font-size:13px;font-weight:500}.stat .value{font:500 30px/1.1 var(--font-mono);letter-spacing:-.03em;margin-top:8px}.stat .value small{color:var(--muted);letter-spacing:0;margin-left:4px;font-size:15px}.stat .note{color:var(--ink-2);margin-top:6px;font-size:13px}:root{--control:38px}:is(.row,.list-item,form):has(>.input,>label>.input)>.btn.sm{height:var(--control);min-height:var(--control)}.btn{height:var(--control);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:14px;font-weight:550;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--maroon);border-color:var(--maroon);color:#fdf8f3}.btn.primary:hover{background:var(--maroon-hover)}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{color:var(--accent-ink)}.btn.sm{border-radius:8px;height:31px;padding:0 11px;font-size:13px}.btn.lg{border-radius:12px;height:48px;padding:0 22px;font-size:15px}.icon-btn{border-radius:9px;width:34px;height:34px;padding:0}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--ink-2);font-size:13px;font-weight:550}.input{width:100%;height:var(--control);border:1px solid var(--line-strong);background:var(--surface);border-radius:10px;outline:none;padding:0 12px}textarea.input{resize:vertical;height:auto;min-height:110px;padding:10px 12px;line-height:1.5}.input:focus{border-color:var(--maroon);box-shadow:0 0 0 3px var(--maroon-soft)}.check{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.check input{accent-color:var(--maroon);width:16px;height:16px}.segmented{background:var(--surface-2);border-radius:11px;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:550}.segmented button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #3c140a14}.badge{background:var(--surface-2);height:22px;color:var(--ink-2);border-radius:99px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.maroon{background:var(--maroon-soft);color:var(--accent-ink)}.badge.solid{background:var(--maroon);color:#fdf8f3}.badge.good{color:var(--good);background:#e6efe7}.avatar{background:var(--maroon-soft);width:34px;height:34px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:650;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar.sm{width:26px;height:26px;font-size:10.5px}.avatar.lg{width:44px;height:44px;font-size:15px}.list{flex-direction:column;display:flex}.list-item{border-top:1px solid var(--line);align-items:center;gap:14px;padding:13px 20px;display:flex}.list-item:first-child{border-top:0}a.list-item{color:inherit}a.list-item:hover,button.list-item:hover{background:var(--surface-2);text-decoration:none}button.list-item{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;width:100%}.date-tile{text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;width:46px;padding:5px 0 6px}.date-tile .m{text-transform:uppercase;letter-spacing:.06em;color:var(--accent-ink);font-size:10.5px;font-weight:650;display:block}.date-tile .d{font:500 19px/1.1 var(--font-mono);display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty{text-align:center;color:var(--muted);padding:34px 20px;font-size:14px}.error{background:var(--maroon-soft);color:var(--maroon-deep);border-radius:10px;padding:10px 14px;font-size:14px}.demo-banner{background:var(--maroon-deep);color:#f6e9e4;text-align:center;padding:7px 12px;font-size:13px}.demo-banner b{color:#fff}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:12px 20px;font-size:12px;font-weight:600}.table td{border-top:1px solid var(--line);vertical-align:middle;padding:11px 20px}.table tr:first-child td{border-top:0}.table .num{text-align:right;font-family:var(--font-mono)}.table-wrap{overflow-x:auto}.meter{background:var(--surface-2);border-radius:99px;min-width:60px;height:6px;overflow:hidden}.meter>i{background:var(--maroon);border-radius:99px;height:100%;display:block}.overlay{z-index:50;background:#2b1b1852;place-items:center;padding:18px;animation:.12s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:18px;width:min(520px,100%);max-height:calc(100dvh - 36px);padding:24px;overflow:auto;box-shadow:0 20px 60px #2b1b1833}.modal-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-foot{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}@keyframes fade{0%{opacity:0}}.cal-head{align-items:center;gap:8px;margin-bottom:14px;display:flex}.cal-head h2{min-width:180px}.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-dow{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:10px 10px 8px;font-size:12px;font-weight:600}.cal-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;border-top:0;border-left:0;flex-direction:column;gap:3px;min-width:0;min-height:104px;padding:7px 7px 8px;display:flex}.cal-cell:nth-child(7n){border-right:0}.cal-cell:hover{background:var(--surface-2)}.cal-cell.out .cal-num{color:#c8b8ae}.cal-cell.sel{background:#fbf1ee}.cal-num{font:500 13px var(--font-mono);color:var(--ink-2);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.cal-cell.today .cal-num{background:var(--maroon);color:#fdf8f3}.chip{white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:3px 6px;font-size:12px;font-weight:550;line-height:1.25;display:block;overflow:hidden}.chip.meeting{background:var(--maroon);color:#fdf8f3}.chip.event{background:var(--maroon-soft);color:var(--maroon-deep);box-shadow:inset 2px 0 0 var(--maroon)}.chip.past{opacity:.72}.chip.cancelled{opacity:.6;background:var(--surface-2);color:var(--muted);text-decoration:line-through}.badge.cancelled{color:#a8321f;background:#fbe9e7}.legend{color:var(--ink-2);gap:16px;font-size:13px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}@media (width<=700px){.cal-cell{align-items:center;min-height:54px;padding:4px}.cal-cell .chip{display:none}.cal-dots{gap:3px;display:flex!important}}.cal-dots{display:none}.cal-dots i{background:var(--maroon);border-radius:50%;width:5px;height:5px}.cal-dots i.event{background:var(--maroon-tint)}.chart{position:relative}.chart svg{width:100%;display:block;overflow:visible}.chart .axis-label{font:11px var(--font-mono);fill:var(--muted)}.chart .value-label{font:500 11px var(--font-mono);fill:var(--ink-2)}.chart .grid-line{stroke:var(--line);stroke-width:1px}.chart .bar{fill:var(--maroon);transition:fill .1s}.chart .bar.dim{fill:var(--maroon-tint)}.tooltip{pointer-events:none;background:var(--ink);color:#fbf5f0;white-space:nowrap;box-shadow:var(--shadow);border-radius:9px;padding:8px 11px;font-size:12.5px;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.tooltip b{font-weight:600;display:block}.chat{grid-template-columns:220px 1fr;height:calc(100dvh - 200px);min-height:460px;display:grid}.chat-channels{border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:14px 10px;display:flex;overflow-y:auto}.chan{text-align:left;cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-weight:500;display:flex}.chan:hover{background:var(--surface-2)}.chan.on{background:var(--maroon-soft);color:var(--accent-ink)}.chan .hash{font-family:var(--font-mono);opacity:.6}.chat-main{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-title{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 20px;display:flex}.chat-log{flex-direction:column;flex:1;padding:18px 20px 8px;display:flex;overflow-y:auto}.msg{gap:11px;padding:3px 0;display:flex;position:relative}.msg.first{margin-top:12px}.msg .gutter{flex:none;width:34px}.msg-meta{align-items:baseline;gap:8px;display:flex}.msg-meta b{font-size:14px;font-weight:600}.msg-meta time{font:11.5px var(--font-mono);color:var(--muted)}.msg-body{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}.msg-actions{opacity:0;background:var(--surface);border-radius:8px;gap:2px;display:flex;position:absolute;top:0;right:0}.msg:hover .msg-actions,.msg:focus-within .msg-actions,.msg.confirming .msg-actions{opacity:1}@media (hover:none){.msg:focus-within .msg-actions{opacity:1;box-shadow:0 2px 10px #30221b22}}.msg:focus,.modal:focus{outline:none}.sheet-handle{display:none}.day-sep{color:var(--muted);align-items:center;gap:12px;margin:18px 0 4px;font-size:12px;font-weight:600;display:flex}.day-sep:before,.day-sep:after{content:"";background:var(--line);flex:1;height:1px}.composer{border-top:1px solid var(--line);--row:44px;align-items:flex-end;gap:10px;padding:14px 20px 18px;display:flex}.composer textarea{height:var(--row);min-height:var(--row);resize:none;max-height:160px;padding:10px 12px;line-height:22px}.composer>.btn{height:var(--row);min-height:var(--row);flex:none}.composer>.icon-btn{width:var(--row)}@media (width<=860px){.chat{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;height:calc(100dvh - 200px)}.chat-channels{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;padding:6px 10px;overflow-x:auto}.chat-channels>.eyebrow{flex:none;padding:0 8px 0 6px!important}.chan{white-space:nowrap;flex:none}}.present{background:var(--bg);grid-template-columns:1fr 340px;min-height:100dvh;display:grid}.present-main{text-align:center;--qr:min(52vh, 440px, calc(100vw - 126px));flex-direction:column;justify-content:center;align-items:center;gap:22px;padding:40px;display:flex}.present-main h1{font-size:42px}.qr-frame{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:24px;padding:22px;line-height:0}.qr-frame svg{width:var(--qr);height:auto}.timer{width:var(--qr);background:var(--surface-2);border-radius:99px;height:4px;overflow:hidden}.timer i{background:var(--maroon);height:100%;transition:width .25s linear;display:block}.present-side{border-left:1px solid var(--line);background:var(--surface);flex-direction:column;gap:16px;max-height:100vh;padding:32px 24px;display:flex;overflow-y:auto}.big-count{font:500 64px/1 var(--font-mono);color:var(--accent-ink);letter-spacing:-.04em}.arrival{align-items:center;gap:10px;animation:.3s ease-out slide;display:flex}@keyframes slide{0%{opacity:0;transform:translateY(-6px)}}@media (width<=860px){.present{grid-template-columns:1fr}.present-side{border-left:0;border-top:1px solid var(--line);max-height:none}}@media (width<=600px){.present-main{--qr:min(52vh, calc(100vw - 76px));padding:72px 20px 32px}.present-main h1{font-size:32px}.qr-frame{border-radius:20px;padding:16px}}.center-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.solo{text-align:center;flex-direction:column;align-items:center;gap:16px;width:min(420px,100%);display:flex}.solo-icon{background:var(--maroon-soft);width:72px;height:72px;color:var(--accent-ink);border-radius:50%;place-items:center;display:grid}.solo-icon.good{color:var(--good);background:#e6efe7}.login{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login-art{background:var(--maroon);color:#f8ece6;flex-direction:column;justify-content:space-between;padding:48px;display:flex}.login-art h1{color:#fff;max-width:9em;font-size:52px;font-weight:520}.login-form{place-items:center;padding:32px;display:grid}.google-btn{gap:12px;width:100%;height:48px}@media (width<=860px){.login{grid-template-columns:1fr}.login-art{min-height:38vh;padding:32px 24px}.login-art h1{font-size:36px}}.spinner{border:2.5px solid var(--maroon-soft);border-top-color:var(--maroon);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.announce{border-top:1px solid var(--line);padding:18px 20px}.announce:first-child{border-top:0}.announce-body{white-space:pre-wrap;color:var(--ink-2);margin-top:6px;font-size:14.5px}.announce.pinned{background:linear-gradient(90deg, var(--maroon-soft), transparent 60%)}.card.hero{text-align:left;cursor:pointer;font:inherit;background:var(--maroon);color:#fbf3ee;border-color:var(--maroon);width:100%}.card.hero:hover{background:var(--maroon-hover)}.cal-layout{grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);align-items:start}@media (width<=960px){.cal-layout{grid-template-columns:1fr}}.medal{vertical-align:middle;filter:drop-shadow(0 1px 1px #3c140a2e);flex:none;display:inline-block}.medal.locked{filter:grayscale();opacity:.32}.medal-empty{border:2px dashed var(--line-strong);border-radius:50%;flex:none;width:64px;height:64px;display:inline-block}.tier-label{align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.rank{white-space:nowrap;background:var(--maroon-soft);height:24px;color:var(--maroon-deep);border-radius:99px;align-items:center;gap:5px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.rank.top{background:var(--maroon);color:#fdf8f3}.rank.admin{background:var(--ink);color:#fbf5f0}.rank.compact{gap:4px;height:18px;padding:0 7px;font-size:11px}.rank-option{cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:7px 4px;display:flex}.rank-option:hover{background:var(--surface-2)}.rank-option input{accent-color:var(--maroon);width:16px;height:16px}.icon-grid{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.icon-pick{border:1px solid var(--line);background:var(--surface);height:38px;color:var(--ink-2);cursor:pointer;border-radius:9px;place-items:center;display:grid}.icon-pick:hover{background:var(--surface-2)}.icon-pick.on{border-color:var(--maroon);background:var(--maroon-soft);color:var(--accent-ink)}.badge-hero{border-radius:var(--radius);background:var(--surface-2);align-items:center;gap:18px;padding:18px;display:flex}.ladder{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}@media (width<=420px){.ladder{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}}.rung{text-align:center;flex-direction:column;align-items:center;gap:4px;font-size:12.5px;display:flex}.rung b{font-weight:600}.rung.off b{color:var(--muted);font-weight:500}.rung-lock{color:var(--muted);background:var(--surface);border-radius:50%;padding:1px;position:absolute;bottom:-2px;right:-2px}.badge-card{color:inherit;align-items:center;gap:16px;display:flex}a.badge-card:hover{border-color:var(--line-strong);text-decoration:none}.solo .badge-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-top:6px;padding:14px 16px}.badge-card.unlocked{animation:.5s ease-out pop;border-color:var(--maroon)!important;background:var(--maroon-soft)!important}.badge-card.unlocked .medal{animation:.8s ease-out spin-in}@keyframes pop{0%{transform:scale(.96)}60%{transform:scale(1.02)}}@keyframes spin-in{0%{transform:rotateY(180deg)scale(.6)}}.levelup{color:var(--accent-ink);align-items:center;gap:5px;margin-top:2px;font-size:12px;font-weight:600;display:flex}.name-btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:600}.name-btn:hover{text-decoration:underline}.person-btn{text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;align-items:center;gap:14px;min-width:0;padding:0;display:flex}.person-btn:hover b{text-decoration:underline}.who-link{min-width:0;color:inherit;border-radius:10px;flex:1;align-items:center;gap:10px;margin:-4px;padding:4px;display:flex}.who-link:hover{background:var(--surface-2);text-decoration:none}.who-link.active{background:var(--maroon-soft)}.page.wide{max-width:none;padding:30px 32px 32px}.cal-card .cal-cell{gap:4px;min-height:max(118px,16.6667vh - 42px);padding:8px 8px 9px}.cal-card .cal-num{font-size:13.5px}.cal-card .chip{padding:4px 7px;font-size:12.5px}.cal-card .chip .t{font-family:var(--font-mono);opacity:.8;margin-right:5px;font-size:11px;font-weight:500}.cal-card .chip.tall{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.cal-add{opacity:0;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-left:auto;padding:2px;line-height:0}.cal-cell:hover .cal-add{opacity:1}.cal-add:hover{background:var(--maroon-soft);color:var(--accent-ink)}.cal-top{align-items:center;display:flex}.cal-agenda{display:none}@media (width<=860px){.page.wide{padding:20px 14px 40px}}@media (width<=700px){.cal-card .cal-cell{min-height:58px;padding:4px}.cal-add{display:none}.cal-agenda{margin-top:16px;display:block}.cal-card .chip{display:none!important}}button.chip{text-align:left;cursor:pointer;border:0;width:100%;font-family:inherit}button.chip:hover{filter:brightness(1.08)}.cal-head{flex-wrap:wrap}.msg-meta{flex-wrap:wrap;align-items:center;row-gap:2px}.name-btn{white-space:nowrap;text-align:left}.step{align-items:flex-start;gap:16px;display:flex}.step-num{background:var(--maroon);color:#fdf8f3;width:30px;height:30px;font:600 14px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.input-icon{display:block;position:relative}.input-icon svg{color:var(--muted);position:absolute;top:12px;left:12px}.input-icon .input{padding-left:36px}.prompt-preview summary{cursor:pointer;color:var(--ink-2)}.prompt-preview pre{white-space:pre-wrap;background:var(--surface-2);border-radius:10px;max-height:260px;margin:8px 0 0;padding:12px 14px;font:12px/1.5 ui-monospace,Consolas,monospace;overflow:auto}.import-table td{vertical-align:top}.import-table td:first-child{width:36px;padding-top:18px}.import-table input[type=checkbox]{accent-color:var(--maroon);width:16px;height:16px}.import-table tr.off>td:not(:first-child){opacity:.45}.input.invalid{border-color:var(--maroon);box-shadow:0 0 0 3px var(--maroon-soft)}.import-note{color:var(--accent-ink);align-items:center;gap:5px;margin-top:6px;font-size:12px;font-weight:550;display:flex}.import-bar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;bottom:12px;box-shadow:0 8px 30px #3c140a1a}.import-done{border-color:var(--good);align-items:center;gap:14px;margin-bottom:18px;display:flex}@media (width<=860px){.import-bar{bottom:84px}}.import-table td,.import-table th{padding-left:10px;padding-right:10px}.import-table .input{min-width:0}.import-table input[type=datetime-local]{width:200px}.import-table select.input{width:120px}.import-table td:nth-child(3) select.input{width:100%;min-width:170px}.club-mark{background:var(--maroon);color:#fbf7f2;font-family:var(--font-display);letter-spacing:-.02em;flex:none;place-items:center;font-weight:600;display:grid}.club-switch{border-radius:12px;margin:0 0 18px;gap:10px!important;padding:8px 10px 8px 8px!important}.club-switch:hover{background:var(--surface-2);text-decoration:none}.club-switch .brand-name{white-space:nowrap;text-overflow:ellipsis;font-size:16px;line-height:1.2;display:block;overflow:hidden}.clubs-shell{min-height:100dvh}.clubs-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;display:flex}.club-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.modal{text-align:left}.club-card{text-align:left;cursor:pointer;font:inherit;color:inherit;align-items:center;gap:14px;width:100%;display:flex}.club-card:hover{border-color:var(--line-strong);background:var(--surface-2)}.club-card.current{border-color:var(--maroon)}.club-card .club-name{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:560;display:block;overflow:hidden}.notice{color:var(--good);background:#e6efe7;border-radius:10px;padding:10px 14px;font-size:14px}.danger-zone{border-color:var(--maroon-tint)}.btn.danger{color:var(--accent-ink);border-color:var(--maroon-tint)}.btn.danger:disabled{color:var(--muted)}@media (width<=860px){.clubs-top{padding:12px 16px}}@media (width<=600px){.clubs-top .btn-label{display:none}.clubs-top .brand-name{white-space:nowrap}}.repeat-row{align-items:center;gap:6px;margin-top:6px;display:flex}.repeat-row select.input{width:96px;height:32px}.repeat-row input[type=number]{width:56px;height:32px;padding:0 6px;display:inline-block}.count-pill{background:var(--maroon);color:#fff;font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11.5px;font-weight:600;display:inline-flex}h3 .count-pill{vertical-align:2px;margin-left:6px}.dot-host{position:relative}.map-picker{flex-direction:column;gap:8px;display:flex}.map-box{z-index:0;border-radius:var(--radius-sm);border:1px solid var(--line);height:240px;position:relative;overflow:hidden}.nearby{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.nearby .grow{flex:1;min-width:200px}.scanner{z-index:200;background:#0d0607;place-items:center;display:grid;position:fixed;inset:0}.scanner video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scanner-frame{aspect-ratio:1;border:3px solid #fff;border-radius:18px;width:min(70vw,70vh,320px);position:relative;box-shadow:0 0 0 100vmax #0d060773}.scanner-close{top:max(16px, env(safe-area-inset-top));background:#ffffffeb;position:absolute;right:16px}.scanner-note{left:16px;right:16px;bottom:max(28px, env(safe-area-inset-bottom));text-align:center;color:#fff;text-shadow:0 1px 3px #0009;font-weight:500;position:absolute}.venue-control{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 0;display:flex}.unread-dot{background:var(--unread);border-radius:50%;flex:none;width:8px;height:8px;margin-left:auto}.chan.unread{color:var(--ink);font-weight:700}.chan.unread .hash{opacity:.9}.dot.unread{background:var(--unread)}.dot{background:var(--maroon);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;position:absolute;top:6px;right:calc(50% - 16px)}.icon-btn .dot{top:4px;right:4px}.toasts{z-index:60;pointer-events:none;flex-direction:column;gap:10px;width:min(360px,100vw - 28px);display:flex;position:fixed;bottom:20px;right:20px}.toast{pointer-events:auto;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--maroon);border-radius:12px;align-items:flex-start;gap:4px;padding:10px 6px 10px 12px;animation:.22s ease-out toast-in;display:flex;box-shadow:0 12px 32px #3c141429}.toast-body{text-align:left;cursor:pointer;min-width:0;color:inherit;font:inherit;background:0 0;border:0;flex:1;align-items:flex-start;gap:10px;padding:0;display:flex}.toast-body b{font-size:14px;display:block}.toast-body .small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.toast-icon{background:var(--maroon-soft);width:28px;height:28px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;display:grid}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=860px){.toasts{width:auto;inset:14px 14px auto}}.live-card{cursor:pointer;border-color:var(--maroon-soft);background:linear-gradient(90deg, var(--maroon-soft), var(--surface) 60%);align-items:center;gap:16px;display:flex}.live-dot{background:var(--maroon);border-radius:50%;flex:none;width:12px;height:12px;animation:1.8s ease-out infinite live-pulse;box-shadow:0 0 #80000073}@keyframes live-pulse{70%{box-shadow:0 0 0 10px #80000000}to{box-shadow:0 0 #80000000}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.notify-prompt{align-items:center;gap:12px;margin-bottom:18px;padding:12px 14px;display:flex}.or-line{align-items:center;gap:10px;display:flex}.or-line:before,.or-line:after{content:"";border-top:1px solid var(--line);flex:1}.gripe{z-index:49;flex-direction:column;align-items:flex-end;gap:8px;transition:opacity .15s ease-out;display:flex;position:fixed;bottom:16px;right:16px}.gripe.is-picking{opacity:0;pointer-events:none}.gripe-button{color:maroon;cursor:pointer;opacity:.85;background:#fff;border:1px solid #e3d4d0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex;box-shadow:0 2px 10px #421b2418}.gripe-button:hover,.gripe-button[aria-expanded=true]{opacity:1;background:#f7edeb}.gripe-button:focus-visible{outline-offset:2px;outline:2px solid maroon}.gripe-panel{box-sizing:border-box;transform-origin:100% 100%;background:#fff;border:1px solid #e3d4d0;border-radius:12px;width:min(300px,100vw - 32px);padding:12px;animation:.16s ease-out gripe-in;box-shadow:0 10px 40px #30221b22}.gripe-panel textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:72px;font:inherit;border:1px solid #ddd6d2;border-radius:8px;padding:8px 10px;font-size:14px}.gripe-actions{align-items:center;gap:8px;margin-top:8px;display:flex}.gripe-status{color:#62554e;flex:1;min-width:0;font-size:12px}.gripe-point{color:maroon;cursor:pointer;background:#fff;border:1px solid #e3d4d0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.gripe-point:hover{background:#f7edeb}.gripe-point:focus-visible,.gripe-chip-clear:focus-visible{outline-offset:2px;outline:2px solid maroon}.gripe-chip{color:#5c1f24;background:#f7edeb;border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:3px 3px 3px 8px;font-size:12px;display:flex}.gripe-chip svg{display:block}.gripe-chip-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gripe-chip-clear{width:26px;height:26px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;font-size:17px;line-height:1}.gripe-chip-clear:hover{background:#efdcd8}.gripe-layer{z-index:2147483000;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;opacity:0;background:#2a121818;transition:opacity .15s ease-out;position:fixed;inset:0}.gripe-layer.is-on{opacity:1}.gripe-hint{color:#fff;white-space:nowrap;cursor:default;background:#1f1416;border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:13px;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000004d}.gripe-hint-cancel{color:#fff;font:inherit;cursor:pointer;background:#ffffff26;border:0;border-radius:999px;padding:6px 12px;font-size:12px}.gripe-hint-cancel:hover{background:#ffffff40}.gripe-box{box-sizing:border-box;pointer-events:none;opacity:0;background:#80000014;border:2px solid maroon;border-radius:6px;width:0;height:0;transition:transform 90ms ease-out,width 90ms ease-out,height 90ms ease-out,opacity .12s;position:fixed;top:0;left:0}.gripe-box.is-visible{opacity:1}.gripe-box.is-drawing{border-style:dashed;transition:opacity .12s}.gripe-marker{z-index:59;box-sizing:border-box;pointer-events:none;background:#8000000f;border:2px dashed maroon;border-radius:6px;animation:.9s ease-out gripe-pulse;position:absolute}.gripe-marker span{color:#fff;white-space:nowrap;background:maroon;border-radius:6px;margin-bottom:4px;padding:2px 8px;font-size:11px;position:absolute;bottom:100%;left:-2px}@keyframes gripe-in{0%{opacity:0;transform:scale(.96)translateY(4px)}}@keyframes gripe-pulse{0%{box-shadow:0 0 #80000040}to{box-shadow:0 0 0 10px #80000000}}@media (prefers-reduced-motion:reduce){.gripe-panel,.gripe-marker{animation:none}.gripe,.gripe-layer,.gripe-box{transition:none}}@media (width>=861px){.toasts{bottom:62px}}.report-controls{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.report-controls .field{width:170px}.report-table .late,.list-item .late{color:#a8321f;font-weight:600}.rsvp{border-top:1px solid var(--line);padding-top:12px}.tag{color:var(--accent-ink);background:var(--maroon-soft);border-radius:4px;padding:0 3px;font-weight:600}.tag-me{color:#7a1d0c;background:#f9d9cf}.msg.tagged{background:#fdf1e8;border-radius:6px;box-shadow:inset 3px 0 #d9822b}.tag-input{flex:1;min-width:0;display:flex;position:relative}.tag-input>textarea{flex:1;width:100%}.tag-menu{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:10px;width:min(320px,100%);margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 10px 30px #30221b22}.modal .tag-menu{top:calc(100% + 4px);bottom:auto}.tag-menu li{cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:6px 8px;display:flex}.tag-menu li.on{background:var(--maroon-soft)}.tag-group{background:var(--maroon);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-weight:700;display:inline-grid}.count-pill.unread{background:var(--unread)}@media (pointer:coarse){.icon-btn{min-width:40px;min-height:40px}.btn.sm{min-height:38px;padding-left:12px;padding-right:12px}.chan{min-height:40px}.gripe-button{width:40px;height:40px}}.reactions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.reaction{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:14px;display:inline-flex}.reaction.mine{border-color:var(--maroon);background:var(--maroon-soft)}.react-wrap{position:relative}.react-menu{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:999px;gap:2px;padding:4px;display:flex;position:absolute;bottom:calc(100% + 4px);right:0;box-shadow:0 8px 24px #30221b22}.react-menu button{cursor:pointer;background:0 0;border:0;border-radius:50%;width:34px;height:34px;font-size:19px}.react-menu button:hover,.react-menu button.mine{background:var(--maroon-soft)}.edited{color:var(--muted);font-size:12px}.edit-msg{margin-top:2px}@media (width<=860px){.gripe.gripe-high{bottom:150px}}@media (width<=600px){.request-row{flex-wrap:wrap;row-gap:8px}.request-row>span:not(.avatar){flex:calc(100% - 60px)!important}.request-row>.btn:first-of-type{margin-left:auto}.member-row{flex-wrap:wrap;gap:6px}.member-row .person-btn{flex:100%;min-width:0}.member-row .member-ranks{order:3;min-width:0;padding-left:0;flex:1 1 0!important;justify-content:flex-start!important}.member-row>:not(.person-btn):not(.member-ranks){order:4}.att-meter{display:none!important}.overlay{place-items:end stretch;padding:0}.modal{width:100%;max-height:92dvh;padding:10px 20px calc(20px + env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:20px 20px 0 0;transition:transform .18s ease-out;animation:.24s cubic-bezier(.2,.8,.2,1) sheet-up}.sheet-handle{touch-action:none;height:22px;margin:-10px -20px 0;display:block}.sheet-handle:before{content:"";background:#d9cfca;border-radius:2px;width:40px;height:4px;margin:10px auto 0;display:block}.modal-head{touch-action:none;margin-bottom:14px}.modal-foot{bottom:calc(-20px - env(safe-area-inset-bottom));background:var(--surface);flex-wrap:wrap;margin-bottom:-4px;padding:12px 0 4px;position:sticky}}@keyframes sheet-up{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.modal{transition:none;animation:none}}.time-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.time-pair input{width:100%;min-width:0}@media (width<=600px){.time-pair{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.home-flow .home-split{display:contents}.home-flow .home-coming{order:1}.home-flow .home-stats{order:2}.home-flow .home-chart{order:3}.home-flow .home-news{order:4}.home-flow .home-badge{order:5}.home-flow .home-coming .list>.list-item:nth-child(n+4),.home-flow .home-news .announce:nth-child(n+2){display:none}.home-stats{gap:10px}.home-stats .stat{padding:14px}.home-stats .stat .value{margin-top:4px;font-size:23px}.home-stats .stat .note{margin-top:4px;font-size:12px}}.skeleton{gap:16px;display:grid}.sk{background:linear-gradient(90deg, var(--line) 0%, var(--surface-2) 50%, var(--line) 100%) 0 0 / 200% 100%;border-radius:6px;height:12px;animation:1.4s ease-in-out infinite sk-shine;display:block}.sk-thin{height:9px}.sk-title{border-radius:8px;width:46%;height:26px}.sk-big{width:40%;height:24px;margin-top:12px}.sk-tile{border-radius:10px;flex:none;width:44px;height:44px}.sk-head{gap:10px;margin-bottom:6px;display:grid}.sk-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.sk-row{border-top:1px solid var(--line);align-items:center;gap:14px;padding:14px 20px;display:flex}.sk-row:first-child{border-top:0}.sk-lines{flex:1;gap:8px;display:grid}.sk-chat .sk-row{border:0;padding:10px 4px}.sk-chat .sk-tile{border-radius:50%;width:36px;height:36px}@keyframes sk-shine{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=700px){.sk-stats{grid-template-columns:1fr 1fr;gap:10px}}@media (prefers-reduced-motion:reduce){.sk{animation:none}}.fab{display:none}@media (width<=860px){.hide-phone{display:none!important}.tab{-webkit-tap-highlight-color:transparent;gap:4px;padding:4px 0}.tab-icon{border-radius:15px;place-items:center;width:56px;height:30px;transition:background .15s ease-out;display:grid}.tab.active .tab-icon{background:var(--maroon-soft)}.tab.active{font-weight:600}.tab:active .tab-icon{background:var(--surface-2)}.tab .dot{top:3px;right:calc(50% - 24px)}.fab{z-index:21;right:16px;bottom:calc(86px + env(safe-area-inset-bottom));background:var(--maroon);color:#fff;height:52px;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;align-items:center;gap:8px;padding:0 20px 0 17px;font-size:15px;font-weight:600;transition:transform .12s ease-out;display:inline-flex;position:fixed;box-shadow:0 6px 18px #80000047,0 1px 3px #2b1b1833}.fab:active{transform:scale(.96)}.fab:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}.main:has(.fab){padding-bottom:150px}}@media (prefers-reduced-motion:reduce){.fab,.tab-icon{transition:none}}.scan-fab{display:none}@media (width<=860px){.scan-fab{z-index:21;left:16px;bottom:calc(86px + env(safe-area-inset-bottom));background:var(--maroon);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;place-items:center;width:52px;height:52px;padding:0;transition:transform .12s ease-out;display:grid;position:fixed;box-shadow:0 6px 18px #80000047,0 1px 3px #2b1b1833}.scan-fab:active{transform:scale(.96)}.scan-fab:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}.main.has-scan{padding-bottom:150px}.tabbar-6 .tab{font-size:10.5px}.tabbar-6 .tab-icon{width:48px}.tabbar-6 .tab .dot{right:calc(50% - 20px)}.topbar .aurora-btn{border:1px solid var(--line-strong);white-space:nowrap}}@media (prefers-reduced-motion:reduce){.scan-fab{transition:none}}.club-mark{overflow:hidden}.club-mark img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=860px){.clubs-top{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf6f1eb;position:sticky;top:0}.clubs-top .aurora-btn{border:1px solid var(--line-strong);white-space:nowrap}}@media (width<=600px){.clubs-top .aurora-btn .btn-label{display:inline}}@media (width<=430px){.clubs-top .brand-name{display:none}.clubs-top{gap:8px}}@media (width<=860px){.gripe{right:16px;bottom:calc(74px + env(safe-area-inset-bottom))}body:not(:has(.tabbar)) .gripe{bottom:calc(16px + env(safe-area-inset-bottom))}body:has(.checkin-fab) .gripe{bottom:calc(92px + env(safe-area-inset-bottom))}body:has(.fab) .gripe{bottom:calc(150px + env(safe-area-inset-bottom))}}.clip{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.att-when{white-space:nowrap;flex:none}@media (width<=600px){.att-row{flex-wrap:wrap;row-gap:4px}.att-row .att-who{flex:1 1 0!important}.att-row .att-when{flex:100%;order:3;padding-left:48px}.history-row .att-when{padding-left:60px}}.history-month{border-top:1px solid var(--line);padding:14px 20px 6px}.history-stats .value{white-space:nowrap}@media (width<=600px){.history-stats .value{font-size:24px}.history-stats .value small{margin-left:2px;font-size:13px}}.tap-row{cursor:pointer}.tap-row:hover td{background:var(--surface-2)}.tap-row a{color:inherit}.loc-fab,.corner-note{display:none}@media (width<=860px){.loc-fab{z-index:21;left:78px;bottom:calc(86px + env(safe-area-inset-bottom));background:var(--maroon);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:16px;place-items:center;width:52px;height:52px;padding:0;transition:transform .12s ease-out;display:grid;position:fixed;box-shadow:0 6px 18px #80000047,0 1px 3px #2b1b1833}.loc-fab:active{transform:scale(.96)}.loc-fab:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}.loc-fab.is-busy svg{animation:1s ease-in-out infinite loc-pulse}.corner-note{z-index:22;left:16px;bottom:calc(150px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:8px;max-width:calc(100vw - 90px);padding:10px 12px;font-size:13.5px;line-height:1.35;animation:.18s ease-out note-in;display:flex;position:fixed;box-shadow:0 10px 30px #30221b22}.corner-note svg{flex:none;margin-top:1px}.corner-note.ok svg{color:var(--good)}.corner-note.bad svg{color:var(--accent-ink)}}@keyframes loc-pulse{50%{opacity:.6;transform:scale(.82)}}@keyframes note-in{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.loc-fab,.corner-note{transition:none;animation:none}.loc-fab.is-busy svg{animation:none}}.loc-fab .near-dot{width:11px;height:11px;box-shadow:0 0 0 2px var(--maroon);background:#3ecf6e;border-radius:50%;position:absolute;top:6px;right:6px}@media (width>=861px){.corner-note{z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:8px;max-width:420px;padding:10px 12px;font-size:13.5px;display:flex;position:fixed;bottom:24px;left:268px;box-shadow:0 10px 30px #30221b22}.clubs-shell .corner-note{left:24px}.clubs-nav.tabbar{gap:4px;max-width:1120px;margin:0 auto;padding:14px 28px 0;display:flex}.clubs-nav .tab{color:var(--ink-2);border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:550;display:inline-flex}.clubs-nav .tab:hover{background:var(--surface-2);text-decoration:none}.clubs-nav .tab.active{background:var(--maroon-soft);color:var(--accent-ink)}.clubs-nav .tab-icon{display:inline-flex}.clubs-nav .tab-icon svg{width:17px;height:17px}}@media (width<=860px){.clubs-page{padding-bottom:150px}}.board-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-items:stretch;gap:16px;display:grid}.board-card{flex-direction:column;display:flex;position:relative;overflow:hidden}.board-card.is-featured{box-shadow:0 0 0 1px #e2b8ad, var(--shadow);border-color:#e2b8ad}.board-img{object-fit:cover;background:var(--surface-2);border-bottom:1px solid var(--line);width:100%;max-height:340px;display:block}.board-body{flex-direction:column;flex:1;gap:6px;min-width:0;padding:12px 14px;display:flex}.board-club{color:var(--ink-2);align-items:center;gap:6px;min-width:0;max-width:100%;font-size:12.5px;font-weight:550;display:inline-flex}.board-open{all:unset;cursor:pointer;min-width:0;display:block}.board-open:after{content:"";position:absolute;inset:0}.board-open:focus-visible{outline:none}.board-card:has(.board-open:focus-visible){outline:2px solid var(--maroon);outline-offset:2px}.board-title{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:15.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.board-when{color:var(--accent-ink);align-items:flex-start;gap:6px;font-size:12.5px;font-weight:550;display:inline-flex}.board-when svg{flex:none;margin-top:2px}.board-text{-webkit-line-clamp:3;color:var(--ink-2);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.board-foot{justify-content:space-between;align-items:center;margin-top:auto;padding-top:2px;display:flex}.badge.featured{background:var(--maroon);color:#fff;align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.vote{z-index:1;border:1px solid var(--line-strong);background:var(--surface);height:31px;color:var(--ink-2);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:99px;align-items:center;gap:3px;padding:0 10px 0 7px;font-size:13px;font-weight:650;display:inline-flex;position:relative}.vote:hover{border-color:var(--maroon);color:var(--accent-ink)}.vote.on{background:var(--maroon);border-color:var(--maroon);color:#fff}.vote.big{height:38px;padding:0 14px 0 10px;font-size:14px}@media (pointer:coarse){.vote:not(.big){height:38px}}.board-view-img{object-fit:contain;background:var(--surface-2);border-radius:12px;width:100%;max-height:62vh}.board-view-text{white-space:pre-wrap;color:var(--ink-2);overflow-wrap:anywhere}.board-view .btn{align-self:flex-start}.board-thumb{object-fit:cover;border:1px solid var(--line);border-radius:8px;width:64px;height:80px}@media (width<=860px){.board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.board-img{max-height:230px}.board-body{gap:5px;padding:10px 11px 11px}.board-title{font-size:14px}.board-text{-webkit-line-clamp:2;font-size:12.5px}.board-when{font-size:11.5px}}@media (width<=340px){.board-grid{grid-template-columns:1fr}}.board-muted{margin:0 0 14px}.board-mute{background:var(--surface-2);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.cropper{touch-action:none;cursor:grab;box-shadow:0 0 0 1px var(--line-strong), 0 8px 24px #30221b1f;-webkit-user-select:none;user-select:none;background:#fff;border-radius:28%;position:relative;overflow:hidden}.cropper:active{cursor:grabbing}.cropper:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}.cropper canvas{pointer-events:none;display:block}.cropper-zoom input[type=range]{accent-color:var(--maroon)}.cropper-zoom input[type=range]:focus{outline:none}.club-mark:has(img){box-shadow:0 0 0 1px var(--line);background:#fff}.picks{flex-wrap:wrap;gap:6px;display:flex}.picks-scroll{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.picks-scroll::-webkit-scrollbar{display:none}.pick{border:1px solid var(--line-strong);background:var(--surface);height:30px;color:var(--ink-2);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:99px;flex:none;padding:0 12px;font-size:13px;font-weight:550}@media (hover:hover){.pick:hover:not(:disabled):not(.on){border-color:var(--maroon);color:var(--accent-ink)}}.pick.on{background:var(--maroon);border-color:var(--maroon);color:#fff}.pick:disabled{opacity:.45;cursor:default}.tags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.tag{background:var(--maroon-soft);color:var(--accent-ink);border-radius:99px;padding:1px 8px;font-size:11.5px;font-weight:600}.browse-who{flex:1;min-width:0}.browse-desc{overflow-wrap:anywhere;display:block}.browse-actions{flex:none;align-items:center;gap:8px;display:flex}.board-place{z-index:1;max-width:100%;color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:2px;align-self:flex-start;align-items:flex-start;gap:6px;font-size:12.5px;font-weight:550;display:inline-flex;position:relative}.board-place:hover{color:var(--accent-ink);text-decoration-color:currentColor}.board-place svg{color:var(--accent-ink);flex:none;margin-top:2px}.board-place span{overflow-wrap:anywhere}@media (width<=600px){.browse-row{flex-wrap:wrap;row-gap:8px}.browse-row .browse-who{flex:calc(100% - 60px)}.browse-row .browse-actions{flex:100%;justify-content:flex-end}.board-place{font-size:11.5px}}.club-hero{align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.club-hero-text{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.club-hero-text h1{overflow-wrap:anywhere}.club-hero-text .tags{margin-top:0}.club-page-h{margin:0 0 12px}.browse-name{color:inherit;display:block}.browse-name:hover b{text-decoration:underline}@media (width<=600px){.club-hero{text-align:center;flex-direction:column;align-items:center;gap:12px}.club-hero-text{align-items:center}.club-hero-text .row{justify-content:center}}.club-switch .brand-name{white-space:normal;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}.checkin-fab{display:none}@media (width<=860px){.checkin-fab{z-index:21;left:16px;bottom:calc(86px + env(safe-area-inset-bottom));background:var(--maroon);color:#fff;height:52px;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;border:0;border-radius:16px;align-items:center;gap:8px;padding:0 20px 0 16px;font-size:15px;font-weight:600;transition:transform .12s ease-out;animation:.2s ease-out note-in;display:inline-flex;position:fixed;overflow:hidden;box-shadow:0 6px 18px #80000047,0 1px 3px #2b1b1833}.checkin-fab:active{transform:scale(.96)}.checkin-fab:focus-visible{outline:2px solid var(--maroon);outline-offset:3px}.checkin-fab.is-busy svg{animation:1s ease-in-out infinite loc-pulse}.checkin-fab .near-dot{width:10px;height:10px;box-shadow:0 0 0 2px var(--maroon);background:#3ecf6e;border-radius:50%;position:absolute;top:6px;right:6px}body:has(.fab) .checkin-fab{max-width:calc(100vw - 230px)}.corner-note{align-items:center}}@media (prefers-reduced-motion:reduce){.checkin-fab{transition:none;animation:none}.checkin-fab.is-busy svg{animation:none}}@media (width<=860px){body:not(:has(.checkin-fab)) .corner-note{bottom:calc(86px + env(safe-area-inset-bottom))}}.clubs-current{min-width:0;color:inherit;border-radius:12px;align-items:center;gap:10px;padding:4px 8px 4px 4px;display:inline-flex}.clubs-current:hover{background:var(--surface-2);text-decoration:none}.clubs-current .brand-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.boot{min-height:100dvh}.boot-bar{border-bottom:1px solid var(--line);background:var(--bg);height:64px}.boot .page{max-width:1100px;margin:0 auto}@media (width<=430px){.clubs-top .clubs-current .brand-name{max-width:34vw;display:block}}.votes{flex-direction:column;gap:12px;margin-bottom:18px;display:flex}.vote-card{flex-direction:column;gap:12px;display:flex}.vote-q{overflow-wrap:anywhere;margin-top:2px;font-size:16px;display:block}.poll-options{flex-direction:column;gap:6px;display:flex}.poll-option{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex;position:relative;overflow:hidden}.poll-option:disabled{cursor:default}.poll-option i{background:var(--maroon-soft);z-index:0;transition:width .3s ease-out;position:absolute;inset:0 auto 0 0}.poll-option>span{z-index:1;position:relative}.poll-option.mine{border-color:var(--maroon)}.poll-label{overflow-wrap:anywhere;align-items:center;gap:6px;display:inline-flex}.candidates{flex-direction:column;gap:6px;display:flex}.candidate{border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.candidate.choosable{cursor:pointer}.candidate.picked{border-color:var(--maroon);background:var(--maroon-soft)}.candidate.won{border-color:var(--good)}.candidate input{accent-color:var(--maroon)}.candidate-statement{overflow-wrap:anywhere;display:block}.candidate-votes{text-align:right;min-width:64px;position:relative}.candidate-votes i{background:var(--maroon);border-radius:3px;max-width:40px;height:6px;position:absolute;top:50%;right:22px;transform:translateY(-50%)}.election-result p{font-size:15px}.dues-mark{border:1px solid var(--line-strong);background:var(--surface);height:26px;color:var(--muted);font:inherit;cursor:pointer;border-radius:99px;flex:none;align-items:center;gap:4px;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.dues-mark.paid{color:#1e6b37;background:#e6f4ea;border-color:#b7dfc2}.app-q{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.app-row{gap:12px}.fair-qr svg{width:min(300px,70vw);height:auto}.club-links{flex-wrap:wrap;gap:6px;display:flex}.club-links.small{margin-top:10px}.club-link{border:1px solid var(--line-strong);background:var(--surface);height:32px;color:var(--ink-2);-webkit-tap-highlight-color:transparent;border-radius:99px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:550;text-decoration:none;display:inline-flex}.club-link:hover{border-color:var(--maroon);color:var(--accent-ink);text-decoration:none}.club-link svg{color:var(--accent-ink)}.club-links.small .club-link{height:28px;padding:0 10px;font-size:12.5px}@media (width<=600px){.club-hero-text .club-links{justify-content:center}.meet-row{flex-wrap:wrap;row-gap:6px}.meet-row .meet-who{flex:calc(100% - 130px)!important}.meet-row .meet-n{flex:none;order:2;width:auto!important}.meet-row .meet-badge{order:3;margin-left:58px}}.club-banner{aspect-ratio:3;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;border:1px solid var(--line);background:var(--surface-2);border-bottom:0;width:100%;display:block}.club-hero.has-banner{border-top-left-radius:0;border-top-right-radius:0}.club-hero.has-banner>.club-mark{box-shadow:0 0 0 4px var(--surface), 0 0 0 5px var(--line);margin-top:-54px}.club-card.has-banner{background-position:50%;background-repeat:no-repeat;background-size:cover}.banner-preview{aspect-ratio:3;object-fit:cover;border:1px solid var(--line);background:var(--surface-2);border-radius:12px;width:100%}.banner-preview.empty{color:var(--muted);place-items:center;font-size:13px;display:grid}.cropper.wide{border-radius:12px}@media (width<=600px){.club-hero.has-banner>.club-mark{margin-top:-60px}}.import-place{border-bottom:1px solid var(--line);background:var(--surface-2);flex-direction:column;gap:8px;padding:12px 20px 16px;display:flex}.pin-place{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.show-phone{display:none!important}@media (width<=700px){.show-phone{display:inline-flex!important}.home-links{display:none}.home-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.home-stats .stat-next{display:none}.home-stats .stat{padding:10px 11px!important}.home-stats .stat .label{font-size:11.5px}.home-stats .stat .value{margin-top:2px!important;font-size:20px!important}.home-stats .stat .value small{font-size:12px}.home-stats .stat .note{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden;font-size:11px!important}}.rank.group{background:var(--surface);border:1px dashed var(--line-strong);color:var(--ink-2)}.my-pages{flex-wrap:wrap;gap:6px;margin:-6px 0 14px;display:none}@media (width<=860px){.my-pages.show-phone-block{display:flex}}.todo-list{color:var(--ink-2);gap:6px;margin:0;padding-left:18px;display:grid}.money-row{align-items:center;gap:10px;display:flex}.money-bars{flex:1;gap:3px;display:grid}.money-bars i{border-radius:4px;min-width:2px;height:7px;display:block}.money-bars i.inc{background:var(--maroon)}.money-bars i.exp{background:#c9a59b}.money-kind{border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-weight:700;display:grid}.money-kind.income{color:#1e6b37;background:#e6f4ea}.money-kind.expense{background:var(--maroon-soft);color:var(--accent-ink)}.budget-row{border-top:1px solid var(--line);gap:6px;padding:10px 0;display:grid}.meter.over i{background:#b3261e}.checklist-head{width:100%}.checklist-body{gap:8px;padding:6px 20px 16px;display:grid}.task{align-items:center;gap:10px;display:flex}.task input[type=checkbox]{accent-color:var(--maroon);flex:none;width:18px;height:18px}.task-title{overflow-wrap:anywhere;flex:1;min-width:0}.task-title.done{color:var(--muted);text-decoration:line-through}.task select{width:auto;max-width:160px}.social-row{border-top:1px solid var(--line);gap:6px;padding:10px 0;display:grid}.social-row .up{color:#1e6b37}.social-row .down{color:#b3261e}.spark{align-items:flex-end;gap:3px;height:40px;display:flex}.spark i{background:var(--maroon);opacity:.85;border-radius:3px 3px 0 0;flex:1;max-width:18px}.post-form{gap:8px;padding:4px 20px 14px;display:grid}@media (width<=600px){.task{flex-wrap:wrap}.task select{flex:60%;max-width:none;margin-left:28px}.inv-row{flex-wrap:wrap}}.badge.type-badge{background:var(--surface);border:1px solid var(--line);color:var(--ink-2)}.type-row{gap:12px;padding:8px 14px}.event-types{border:1px solid var(--line);border-radius:12px;overflow:hidden}.hidden-types{padding:0 2px}.bars{gap:9px;display:grid}.bar-row{grid-template-columns:minmax(80px,38%) 1fr auto;align-items:center;gap:10px;display:grid}.bar-row .mono{text-align:right;min-width:28px}.key{border-radius:3px;width:10px;height:10px;display:inline-block}.key.inc{background:var(--maroon)}.key.exp{background:#c9a59b}.meter.done i{background:var(--good,#2f7d4f)}.warn-text{color:#8a5a00}.poll-row{border-bottom:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.poll-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:6px;max-width:460px;margin-top:6px;padding:12px 14px;display:grid}.poll-card .rsvp{margin-top:4px}.poll-head{flex-wrap:wrap;gap:8px;padding:10px 20px}.send-poll{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.error-text{color:var(--danger,#b3261e)}.going-list{flex-wrap:wrap;gap:6px;display:flex}.going-name{background:var(--maroon-50,#f6e9e6);color:var(--ink);border-radius:99px;padding:4px 10px;font-size:13px}.going-name.maybe{border:1px dashed var(--line);color:var(--ink-2);background:0 0}.composer-poll{flex:none;align-self:flex-end}@media (width<=600px){.poll-head>span:first-child{flex:100%!important}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#17110f;--surface:#211917;--surface-2:#2b211e;--line:#3a2d29;--line-strong:#4c3b36;--ink:#f3e9e4;--ink-2:#cdbbb3;--muted:#a08c84;--maroon:#a83a36;--accent-ink:#e8877d;--unread:#f0524a;--maroon-deep:#f2b3aa;--maroon-hover:#b94641;--maroon-soft:#3b1f1d;--maroon-tint:#6b3532;--good:#84c793;--danger:#f08a7a;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040}[data-theme=dark] .topbar,[data-theme=dark] .clubs-top{background:#17110feb}[data-theme=dark] .demo-banner{background:#4a0d12}[data-theme=dark] .tooltip,[data-theme=dark] .rank.admin{color:var(--bg)}[data-theme=dark] .segmented button.on{background:var(--line-strong)}[data-theme=dark] .cal-cell.out .cal-num{color:#5e4d47}[data-theme=dark] .cal-cell.sel{background:#2e2120}[data-theme=dark] .badge.cancelled{color:var(--danger);background:#3d1c19}[data-theme=dark] .report-table .late,[data-theme=dark] .list-item .late{color:var(--danger)}[data-theme=dark] .badge.good,[data-theme=dark] .solo-icon.good,[data-theme=dark] .notice{background:#1f3325}[data-theme=dark] .dues-mark.paid,[data-theme=dark] .money-kind.income{color:#8fd3a0;background:#1f3325;border-color:#2f5a3a}[data-theme=dark] .social-row .up{color:#8fd3a0}[data-theme=dark] .social-row .down{color:var(--danger)}[data-theme=dark] .warn-text{color:#e0b25a}[data-theme=dark] .money-bars i.exp,[data-theme=dark] .key.exp{background:#8a6a62}[data-theme=dark] .tag-me{color:#f6b9a8;background:#4a2620}[data-theme=dark] .msg.tagged{background:#2e2219}[data-theme=dark] .sheet-handle:before{background:var(--line-strong)}[data-theme=dark] .board-card.is-featured{box-shadow:0 0 0 1px #6a3b33, var(--shadow);border-color:#6a3b33}[data-theme=dark] .going-name{background:var(--maroon-soft)}[data-theme=dark] .gripe-button,[data-theme=dark] .gripe-panel,[data-theme=dark] .gripe-point{background:var(--surface);border-color:var(--line-strong);color:var(--accent-ink)}[data-theme=dark] .gripe-button:hover,[data-theme=dark] .gripe-button[aria-expanded=true],[data-theme=dark] .gripe-point:hover{background:var(--surface-2)}[data-theme=dark] .gripe-panel textarea{background:var(--surface-2);border-color:var(--line-strong);color:var(--ink)}[data-theme=dark] .gripe-status{color:var(--muted)}[data-theme=dark] .gripe-chip{background:var(--maroon-soft);color:var(--maroon-deep)}[data-theme=dark] .gripe-chip-clear:hover{background:var(--maroon-tint)}.msg.confirming{flex-wrap:wrap}.msg-confirm{background:0 0;flex:1 0 100%;justify-content:flex-end;align-items:center;gap:6px;padding:4px 4px 6px 45px;position:static}.msg-confirm button{-webkit-tap-highlight-color:transparent}.msg.confirming{background:var(--maroon-soft);border-radius:8px}.btn.danger-solid{color:#fff;background:#b3261e;border-color:#b3261e}.btn.danger-solid:hover{background:#961f18}.chat-poll{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:8px;max-width:460px;margin-top:6px;padding:10px 12px;display:grid}.chat-poll .poll-option{min-height:36px}.chat-poll p{margin:0}.poll-choice{text-align:left;white-space:normal;justify-content:flex-start;gap:12px;height:auto;padding:12px 14px}.poll-choice>span{gap:2px;display:grid}.poll-choice svg{color:var(--accent-ink);flex:none}.confirm-row{background:var(--maroon-soft);border-radius:10px;align-items:center;gap:8px;padding:8px 10px}.link-btn{font:inherit;color:var(--accent-ink);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.member-row.has-note{padding-bottom:4px}.member-note{text-align:left;width:100%;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:6px;padding:0 20px 12px 74px;font-size:13px;display:flex}.member-note svg{color:var(--accent-ink);flex:none;margin-top:3px}.member-note span{white-space:pre-wrap;overflow-wrap:anywhere}.member-note:hover span{text-underline-offset:2px;text-decoration:underline}.member-note-edit{padding:0 20px 14px 74px}.icon-btn.on{color:var(--accent-ink)}@media (width<=600px){.member-note,.member-note-edit{padding-left:20px;padding-right:16px}}.tour-layer{z-index:300;position:fixed;inset:0}.tour-dim{background:#140a089e;animation:.15s ease-out fade;position:fixed;inset:0}.tour-spot{box-shadow:0 0 0 3px var(--maroon), 0 0 0 9999px #140a089e;pointer-events:none;border-radius:12px;transition:top .25s,left .25s,width .25s,height .25s;position:fixed}.tour-spot:after{content:"";border-radius:14px;animation:1.6s ease-out infinite tour-ring;position:absolute;inset:-3px}@keyframes tour-ring{0%{box-shadow:0 0 #a83a368c}to{box-shadow:0 0 0 14px #a83a3600}}.tour{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 18px 14px;transition:top .25s,left .25s;position:fixed;box-shadow:0 18px 50px #0000004d}.tour h2{margin:0;font-size:18px}.tour-body{color:var(--ink-2);margin:0 0 14px;font-size:14.5px;line-height:1.5}.tour-icon{background:var(--maroon-soft);width:38px;height:38px;color:var(--accent-ink);border-radius:11px;flex:none;place-items:center;display:grid}.tour-icon svg{width:20px;height:20px}.tour-dots{gap:6px;margin-bottom:14px;display:flex}.tour-dots button{background:var(--line-strong);cursor:pointer;border:0;border-radius:99px;width:8px;height:8px;padding:0;transition:width .15s ease-out,background .15s}.tour-dots button.on{background:var(--maroon);width:22px}@media (prefers-reduced-motion:reduce){.tour-spot,.tour{transition:none}.tour-spot:after{animation:none}}.period-bar{gap:8px;margin-bottom:14px;display:grid}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select,.input,.gripe-panel textarea{font-size:16px}}.rankup{z-index:400;-webkit-backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 40%,#3a0e0aed,#0a0504f7 72%);place-items:center;padding:24px;animation:.25s ease-out fade;display:grid;position:fixed;inset:0;overflow:hidden}.rankup-card{z-index:1;text-align:center;color:#fdf6ee;max-width:360px;position:relative}.rankup-pin{perspective:600px;width:176px;height:176px;margin:0 auto 18px;position:relative}.rankup-pin .medal{z-index:1;filter:drop-shadow(0 10px 22px #00000073);animation:1.1s cubic-bezier(.2,.9,.25,1.2) both rankup-flip;position:relative}.rankup-glow{background:radial-gradient(circle,#ffd86b8c,#ffd86b00 65%);border-radius:50%;animation:2.4s ease-out .6s both rankup-glow;position:absolute;inset:-34px}.rankup-silver .rankup-glow,.rankup-platinum .rankup-glow{background:radial-gradient(circle,#ebf4fa8c,#ebf4fa00 65%)}.rankup-diamond .rankup-glow{background:radial-gradient(circle,#7fc7ef99,#7fc7ef00 65%)}.rankup-wood .rankup-glow{background:radial-gradient(circle,#e2ae7c8c,#e2ae7c00 65%)}.rankup-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#f3c9a8;margin:0;font-size:12px;font-weight:700;animation:.5s ease-out .7s both rankup-rise}.rankup h2{color:#fff;margin:6px 0 4px;font-size:30px;animation:.5s ease-out .8s both rankup-rise}.rankup-sub{color:#f1ddd0;margin:0;animation:.5s ease-out .9s both rankup-rise}.rankup-next{color:#cdb3a6;margin:10px 0 20px;font-size:13.5px;animation:.5s ease-out 1s both rankup-rise}.rankup-btn{min-width:140px;animation:.5s ease-out 1.1s both rankup-rise}.rankup-confetti{pointer-events:none;position:absolute;inset:0}.rankup-confetti i{opacity:0;animation-name:rankup-fall;animation-timing-function:cubic-bezier(.25,.6,.45,1);animation-fill-mode:forwards;position:absolute;top:-20px}@keyframes rankup-flip{0%{opacity:0;transform:rotateY(-540deg)scale(.25)}60%{opacity:1}to{opacity:1;transform:rotateY(0)scale(1)}}@keyframes rankup-glow{0%{opacity:0;transform:scale(.6)}30%{opacity:1;transform:scale(1.05)}to{opacity:.55;transform:scale(1)}}@keyframes rankup-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes rankup-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}to{opacity:.9;transform:translate3d(var(--drift), 105vh, 0) rotate(var(--spin))}}@media (prefers-reduced-motion:reduce){.rankup-pin .medal,.rankup-glow,.rankup-eyebrow,.rankup h2,.rankup-sub,.rankup-next,.rankup-btn{animation:none}.rankup-confetti{display:none}}.main:has(.chat-page){padding-bottom:0}.shell:has(.chat-page){min-height:0}.chat-page{max-width:none!important;padding:0!important}.chat-page .page-head{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.chat-page .chat.card{box-shadow:none;border:0;border-radius:0;min-height:0;margin:0}.chat-page .composer{padding-right:66px}body:has(.chat-page) .gripe{bottom:calc(var(--below-composer,0px) + (var(--composer-h,76px) - 34px) / 2)}:where(.btn,.pick,.segmented button,.chan,.nav-link,.tab,.who-link,.person-btn,.icon-pick,.reaction,.poll-option,.vote,.club-link,.chip,.cal-cell,.link-btn,.poll-choice,.tour-dots button,.gripe-button,.club-card,.board-card,.meet-row,.tap-row,.card.hero,.member-note,a.list-item,button.list-item){-webkit-tap-highlight-color:transparent;transition:background-color .15s ease-out,color .15s ease-out,border-color .15s ease-out,box-shadow .18s ease-out,transform .15s cubic-bezier(.2,.8,.2,1),opacity .15s ease-out}:where(.btn,.pick,.segmented button,.chan,.icon-pick,.reaction,.vote,.club-link,.link-btn,.gripe-button,.tour-dots button):not(:disabled):active{transition-duration:75ms;transform:scale(.96)}:where(.nav-link,.tab,.chip,.poll-option,.poll-choice,.person-btn,.who-link,.member-note,a.list-item,button.list-item,.tap-row,.meet-row):active{transition-duration:75ms;transform:scale(.985)}:where(.club-card,.board-card,.card.hero):active{transition-duration:75ms;transform:scale(.99)}.tab:active .tab-icon{transform:scale(.9)}.tab-icon{transition:background .15s ease-out,transform .15s cubic-bezier(.2,.8,.2,1)}@media (hover:hover){.btn.primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 14px #80000040}.btn:not(.primary):not(.ghost):not(:disabled):hover{border-color:var(--line-strong)}:where(.club-card,.board-card,.card.hero):hover{transform:translateY(-2px);box-shadow:0 10px 28px #3c140a1f}:where(a.list-item,button.list-item,.meet-row,.tap-row):hover{background-color:var(--surface-2)}.pick:not(.on):not(:disabled):hover{background:var(--surface-2)}.chip:hover{filter:brightness(1.04)}}.btn.primary:not(:disabled):active{box-shadow:none;transform:scale(.96)}:where(.club-card,.board-card,.card.hero):active{transform:scale(.99)}.segmented button.on{transition:background-color .2s ease-out,color .2s ease-out,box-shadow .2s ease-out}.page{animation:.2s ease-out page-in}@keyframes page-in{0%{opacity:0}to{opacity:1}}.react-menu,.tag-menu,.gripe-panel,.msg-actions.msg-confirm{transform-origin:100% 100%;animation:.14s cubic-bezier(.2,.8,.2,1) pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.msg-actions{transition:opacity .12s ease-out}input[type=checkbox],input[type=radio]{accent-color:var(--maroon)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:where(.btn,.pick,.club-card,.board-card,.card.hero,.tab,.nav-link):active,:where(.club-card,.board-card,.card.hero):hover,.btn.primary:hover{transform:none!important}}.people-pick{gap:8px;margin-top:8px;display:grid}.people-found{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:2px;padding:4px;display:grid}.people-option{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:baseline;gap:8px;padding:8px 10px;display:flex}.people-option:hover,.people-option:focus-visible{background:var(--surface-2)}.pick svg{vertical-align:-2px;margin-left:2px}.open-events{margin:4px 0 12px}.open-events-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:10px;display:flex}.open-events-head .section-h{margin:0}.board-section-h{margin:22px 0 0}.open-events-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.open-event{flex-direction:column;gap:6px;padding:12px 14px;display:flex;position:relative}.open-event-count{margin-top:2px}.open-event-foot{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex;position:relative}.open-event:has(.board-open:focus-visible){outline:2px solid var(--maroon);outline-offset:2px}.public-badge{background:var(--surface-2)}.section-h{letter-spacing:-.01em;font-size:16px;font-weight:650}.badge.guest{color:var(--accent-ink)}.public-list-h{margin:0 0 6px;font-size:13px;font-weight:650}.public-person{gap:10px;padding:9px 14px}.public-turnout{margin-bottom:8px}.public-stats{grid-template-columns:repeat(4,1fr)}@media (width<=640px){.public-stats{grid-template-columns:repeat(2,1fr)}.open-events-list{grid-template-columns:1fr}}.place-link{width:fit-content;text-decoration:none}.place-link:hover span{text-underline-offset:2px;text-decoration:underline}.open-event .board-place{z-index:1;width:fit-content;position:relative}.msg-link{color:var(--accent-ink);text-underline-offset:2px;overflow-wrap:anywhere;text-decoration:underline}.chat-photo{border:1px solid var(--line);border-radius:10px;width:fit-content;max-width:min(320px,100%);margin-top:4px;display:block;overflow:hidden}.chat-photo img{object-fit:contain;background:var(--surface-2);max-width:100%;max-height:320px;display:block}.chat-photo-wait{background:var(--surface-2);border-radius:10px;width:220px;max-width:100%;height:140px;margin-top:4px;display:block}.chat-video{background:#000;border-radius:10px;max-width:min(360px,100%);max-height:320px;margin-top:4px;display:block}.chat-file{border:1px solid var(--line);background:var(--surface);width:min(320px,100%);color:inherit;border-radius:10px;align-items:center;gap:10px;margin-top:4px;padding:10px 12px;text-decoration:none;display:flex}.chat-file:hover{background:var(--surface-2)}.chat-file.missing{display:block}.composer-file{border:1px solid var(--line);background:var(--surface);border-bottom:0;border-radius:10px 10px 0 0;align-items:center;gap:10px;margin:0 16px;padding:8px 10px;font-size:14px;display:flex}.composer-file img{object-fit:cover;border-radius:6px;width:40px;height:40px}.composer-attach{flex:none}.settings-page{max-width:980px}.settings-layout{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:24px;display:grid}.settings-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:16px}.settings-link{color:var(--ink-2);border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;font-weight:550;text-decoration:none;display:flex}.settings-link:hover{background:var(--surface-2);text-decoration:none}.settings-link.on{background:var(--maroon-soft,var(--surface-2));color:var(--accent-ink)}.settings-sub{margin:0 0 2px}@media (width<=760px){.settings-layout{grid-template-columns:minmax(0,1fr);gap:14px}.settings-nav{scrollbar-width:none;flex-direction:row;gap:6px;margin:0 -16px;padding:0 16px 4px;position:static;overflow-x:auto}.settings-nav::-webkit-scrollbar{display:none}.settings-link{border:1px solid var(--line);background:var(--surface);white-space:nowrap;flex:none;padding:8px 12px}.settings-link.on{border-color:var(--maroon)}}
