:root{--paper: #faf6ef;--paper-sunk: #f3ebdd;--surface: #fffdf8;--surface-2: #f7efe2;--hairline: rgba(60, 44, 34, .1);--hairline-strong: rgba(60, 44, 34, .16);--ink: #2c2420;--ink-2: #5c5049;--ink-3: #8a7d72;--accent: #b5462b;--accent-strong: #97371f;--accent-tint: rgba(181, 70, 43, .12);--accent-tint-2: rgba(181, 70, 43, .18);--on-accent: #fffaf5;--member-1: #e07a5f;--member-2: #e6a94d;--member-3: #7fa663;--member-4: #6d9bb3;--member-5: #c56b86;--member-6: #9b7bc4;--radius-card: 20px;--radius-lg: 24px;--radius-md: 14px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(60, 44, 34, .06), 0 8px 24px rgba(60, 44, 34, .08);--shadow-raised: 0 2px 6px rgba(60, 44, 34, .08), 0 16px 40px rgba(60, 44, 34, .12);--shadow-bar: 0 -1px 2px rgba(60, 44, 34, .04), 0 -10px 30px rgba(60, 44, 34, .09);--tap-min: 44px;--header-h: 56px;--space: 16px;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;min-height:100dvh;background-color:var(--paper);background-image:radial-gradient(60% 42% at 18% -8%,rgba(224,122,95,.1),transparent 70%),radial-gradient(56% 40% at 96% 4%,rgba(230,169,77,.09),transparent 72%),radial-gradient(70% 48% at 50% 108%,rgba(155,123,196,.07),transparent 70%);background-attachment:fixed;color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}button{font-family:inherit;color:inherit;-webkit-tap-highlight-color:transparent}.no-motion *,.no-motion *:before,.no-motion *:after{transition:none!important;animation:none!important}.app{min-height:100dvh}.shell{display:flex;flex-direction:column;min-height:100dvh}.shell__header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;padding-top:calc(10px + env(safe-area-inset-top));min-height:calc(var(--header-h) + env(safe-area-inset-top));background:color-mix(in srgb,var(--paper) 82%,transparent);-webkit-backdrop-filter:saturate(1.3) blur(14px);backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid var(--hairline)}.wordmark{display:inline-flex;align-items:baseline;gap:3px;font-size:27px;font-weight:800;letter-spacing:-.035em;color:var(--accent);text-shadow:0 1px 0 rgba(255,255,255,.5);-webkit-user-select:none;user-select:none}.wordmark__dot{width:8px;height:8px;border-radius:50%;background:var(--member-2);box-shadow:0 1px 2px #3c2c2240;transform:translateY(-1px)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);padding:0;border:none;border-radius:50%;background:var(--member-1);color:var(--ink);font-size:17px;font-weight:800;line-height:1;cursor:pointer;box-shadow:var(--shadow-card),inset 0 0 0 2px #ffffff73;transition:transform .14s ease,box-shadow .14s ease}button.avatar:active{transform:scale(.94)}.shell__content{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:22px 18px 28px}.tabbar{position:sticky;bottom:0;z-index:20;display:flex;gap:4px;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 86%,transparent);-webkit-backdrop-filter:saturate(1.3) blur(16px);backdrop-filter:saturate(1.3) blur(16px);border-top:1px solid var(--hairline);box-shadow:var(--shadow-bar)}.tabbar__btn{position:relative;flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:var(--tap-min);padding:6px 4px;border:none;background:transparent;border-radius:var(--radius-md);color:var(--ink-2);cursor:pointer;transition:color .16s ease}.tabbar__btn.is-active{color:var(--accent)}.tabbar__pill{position:absolute;top:2px;right:2px;bottom:2px;left:2px;z-index:0;border-radius:var(--radius-md);background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent-tint-2)}.tabbar__icon,.tabbar__label{position:relative;z-index:1}.tabbar__icon{width:24px;height:24px;display:block}.tabbar__label{font-size:11px;font-weight:700;letter-spacing:.01em}.panel{max-width:460px;margin:6vh auto 0;padding:34px 26px 38px;text-align:center;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.panel__emoji{font-size:46px;line-height:1;display:block;margin-bottom:14px;filter:drop-shadow(0 4px 6px rgba(60,44,34,.14))}.panel__title{margin:0 0 8px;font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.panel__line{margin:0 auto;max-width:34ch;font-size:15px;color:var(--ink-2)}.onboard{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:28px 20px calc(28px + env(safe-area-inset-bottom));padding-top:calc(28px + env(safe-area-inset-top))}.onboard__splash{display:flex;align-items:center;justify-content:center;opacity:.9}.onboard__card{width:100%;max-width:420px;padding:32px 26px 30px;text-align:center;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised)}.onboard__wordmark{font-size:40px;margin-bottom:14px}.onboard__emoji{display:block;font-size:44px;line-height:1;margin-bottom:14px;filter:drop-shadow(0 4px 6px rgba(60,44,34,.14))}.onboard__title{margin:0 0 8px;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.onboard__tagline{margin:0 auto 10px;max-width:26ch;font-size:18px;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--ink)}.onboard__sub{margin:0 auto;max-width:34ch;font-size:15px;color:var(--ink-2)}.onboard__muted{margin:22px auto 4px;max-width:32ch;font-size:14px;color:var(--ink-3)}.onboard__form{display:flex;flex-direction:column;gap:10px;margin-top:22px;text-align:left}.onboard__label{font-size:13px;font-weight:700;color:var(--ink-2);margin-left:2px}.onboard__input{width:100%;min-height:var(--tap-min);padding:12px 14px;font-family:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1.5px solid var(--hairline-strong);border-radius:var(--radius-md);transition:border-color .14s ease,box-shadow .14s ease}.onboard__input::placeholder{color:var(--ink-3)}.onboard__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.onboard__input--code{font-size:24px;font-variant-numeric:tabular-nums;text-align:center;letter-spacing:.35em}.onboard__btn{width:100%;min-height:var(--tap-min);margin-top:4px;padding:12px 18px;font-size:16px;font-weight:800;letter-spacing:-.005em;color:var(--on-accent);background:var(--accent);border:none;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-card);transition:background .14s ease,transform .12s ease,opacity .14s ease}.onboard__btn:active{transform:scale(.98);background:var(--accent-strong)}.onboard__btn:disabled{opacity:.5;cursor:default}.onboard__btn--ghost{margin-top:22px;color:var(--accent);background:transparent;box-shadow:inset 0 0 0 1.5px var(--hairline-strong)}.onboard__btn--ghost:active{background:var(--accent-tint)}.onboard__dev{margin-top:18px;padding:8px 12px;font-size:12px;font-weight:700;color:var(--ink-3);background:transparent;border:1px dashed var(--hairline-strong);border-radius:var(--radius-pill);cursor:pointer}.onboard__dev:disabled{opacity:.5;cursor:default}.onboard__error{margin:16px auto 0;max-width:34ch;font-size:14px;font-weight:600;color:var(--accent-strong)}.onboard__members{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}.member-card{--card-accent: var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:116px;padding:18px 12px;background:var(--surface);border:1.5px solid var(--hairline);border-radius:var(--radius-card);box-shadow:var(--shadow-card);cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,transform .12s ease}.member-card:active{border-color:var(--card-accent);box-shadow:var(--shadow-raised)}.member-card:disabled{cursor:default}.member-card__avatar{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;font-size:30px;line-height:1;border-radius:50%;background:color-mix(in srgb,var(--card-accent) 22%,var(--surface));box-shadow:inset 0 0 0 2px var(--card-accent)}.member-card__name{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}.member-card__status{font-size:12px;font-weight:600;color:var(--ink-3)}
