:root,[data-theme="sage"]{--ink:#123f3b;--teal:#166c5a;--mint:#ddf5e7;--lime:#e7f7a9;--bg:#f5f7f6;--surface:#fff;--soft:#e4f2e8;--line:#e5ebe8;--muted:#647972;--widget:#e5f2e9}
[data-theme="sky"]{--ink:#183b56;--teal:#26719a;--mint:#dceef8;--lime:#ccecf5;--bg:#f2f7fb;--surface:#fff;--soft:#dceef8;--line:#dae6ee;--muted:#637c8e;--widget:#dfedf6}
[data-theme="sand"]{--ink:#48371f;--teal:#85622f;--mint:#f4e4c2;--lime:#f2d998;--bg:#fbf6ec;--surface:#fffdfa;--soft:#f4e4c2;--line:#eadfc9;--muted:#796b56;--widget:#f5e8cc}
[data-theme="lilac"]{--ink:#3e315d;--teal:#6f5595;--mint:#eae0f7;--lime:#dfcef4;--bg:#f7f4fb;--surface:#fff;--soft:#eae0f7;--line:#e5ddee;--muted:#776c88;--widget:#eee4f8}
[data-theme="rose"]{--ink:#52313a;--teal:#945366;--mint:#f6dfe7;--lime:#f2cad8;--bg:#fcf5f7;--surface:#fff;--soft:#f6dfe7;--line:#eddde2;--muted:#826c73;--widget:#f8e3ea}
[data-theme="night"]{--ink:#eff7f4;--teal:#79c8a8;--mint:#263d36;--lime:#b8e8b8;--bg:#111917;--surface:#1b2824;--soft:#263d36;--line:#31473f;--muted:#afc2bb;--yellow:#67592d;--widget:#1b2824;color-scheme:dark}
body,.app{background:var(--bg);color:var(--ink)}
.my-card,.leaderboard,.profile-form,.friend-card,.history-row,.empty-state,.ranking-sticky,.week-button,.records-details summary,.chat-message,.profile-chip,.auth-screen{background:var(--surface);border-color:var(--line)}
.trust-note,.new-group-button,.invite-group,.history-link,.mobile-nav button.active,.friend-card button,.chat-message.own{background:var(--soft);color:var(--ink)}
.period-tabs,.confirm-zone,.chat-compose,.demo-bar{background:color-mix(in srgb,var(--soft) 62%,var(--surface))}
.period-tabs .selected,.profile-form input:not([type=file]),.auth-screen input,.group-picker-slot select,.chat-compose textarea{background:var(--surface);color:var(--ink);border-color:var(--line)}
.mobile-nav{background:color-mix(in srgb,var(--surface) 94%,transparent);border-color:var(--line)}
.record-button,.primary-button,.confirm-zone button,.brandmark{background:var(--ink);color:var(--bg)}
.theme-settings{border:0;border-top:1px solid var(--line);margin:24px 0 8px;padding:22px 0 0}.theme-settings legend{font-size:15px;font-weight:800;padding:0}.theme-settings>p,.theme-settings>small{display:block;color:var(--muted);font-size:12px;margin:4px 0 13px}.theme-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.theme-picker button{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--surface);color:var(--ink);border:2px solid var(--line);border-radius:13px;padding:9px 5px;font-size:12px}.theme-picker button.selected{border-color:var(--teal);box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 20%,transparent);font-weight:800}.theme-picker i{display:block;width:32px;height:32px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000012}.theme-picker [data-theme-choice="sage"] i{background:#9bcdb7}.theme-picker [data-theme-choice="sky"] i{background:#9dcce5}.theme-picker [data-theme-choice="sand"] i{background:#dec28d}.theme-picker [data-theme-choice="lilac"] i{background:#c8afe6}.theme-picker [data-theme-choice="rose"] i{background:#dfa9b9}.theme-picker [data-theme-choice="night"] i{background:#1b2824}
[data-theme="night"] .rank-row:not(.rank-place-1):not(.rank-place-2):not(.rank-place-3),[data-theme="night"] .cost-card,[data-theme="night"] .health-highlight{background:var(--surface);border-color:var(--line)}
[data-theme="night"] .rank-row.rank-place-1,[data-theme="night"] .rank-row.rank-place-2,[data-theme="night"] .rank-row.rank-place-3{color:#2d281f}
.auth-screen .consent-row{display:flex;align-items:flex-start;gap:10px;margin:18px 0;line-height:1.8}.auth-screen .consent-row input{display:block;width:20px;height:20px;flex:0 0 20px;margin:4px 0 0;accent-color:var(--teal)}.consent-row span{font-size:13px}.consent-row a,.terms-link,.legal-back{text-decoration:underline;color:var(--teal);font-weight:700}.terms-link{width:max-content}
.legal-page{width:min(680px,100%);min-height:100dvh;margin:0 auto;padding:28px 16px;background:var(--bg)}.legal-back{display:inline-block;margin-bottom:16px}.legal-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:26px 22px}.legal-card h1{margin:5px 0 13px}.legal-card>p{color:var(--muted)}.legal-card ol{padding-right:22px;margin:18px 0}.legal-card li{padding:6px 4px;line-height:1.9}.legal-card .legal-note{background:var(--soft);color:var(--ink);border-radius:13px;padding:13px;margin-top:18px;font-size:13px}

.poetry-welcome{width:min(410px,calc(100vw - 30px));padding:34px 25px 27px;text-align:center;border:1px solid color-mix(in srgb,var(--teal) 28%,var(--line));border-radius:28px;background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--soft) 72%,var(--surface)));color:var(--ink);box-shadow:0 26px 90px #081d1740}.poetry-welcome::backdrop{background:#071915a8;backdrop-filter:blur(7px)}.poetry-ornament{width:52px;height:52px;margin:2px auto 10px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--lime);font-size:25px;box-shadow:0 8px 30px color-mix(in srgb,var(--ink) 24%,transparent)}.poetry-kicker{font-size:13px;font-weight:900;letter-spacing:.2px;color:var(--teal)}.poetry-welcome h2{font-size:14px;font-weight:500;color:var(--muted);margin:4px 0 15px}.poetry-welcome blockquote{white-space:pre-line;margin:0;padding:22px 5px;font-size:20px;font-weight:800;line-height:2.25;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.poetry-welcome>a{display:block;width:max-content;max-width:100%;margin:14px auto 20px;color:var(--teal);font-size:12px;text-decoration:underline}.poetry-welcome .primary-button{width:100%}


.iphone-quick-card{display:grid;grid-template-columns:52px 1fr;gap:8px 12px;align-items:center;margin:22px 0;padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.iphone-quick-card img{width:52px;height:52px;border-radius:14px}.iphone-quick-card h3{font-size:15px;margin:0}.iphone-quick-card p{font-size:12px;line-height:1.7;color:var(--muted);margin:2px 0}.iphone-quick-card .primary-button{grid-column:1/-1;text-align:center;padding:9px}.quick-setup{width:min(440px,100%);min-height:100dvh;margin:auto;padding:42px 24px;display:flex;flex-direction:column;justify-content:center;background:var(--bg);color:var(--ink)}.quick-setup>img{width:96px;height:96px;border-radius:25px;margin:0 auto 22px}.quick-setup h1{font-size:30px;margin:0 0 8px}.quick-setup>p:not(.eyebrow){color:var(--muted);line-height:2}.quick-setup ol{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:17px 38px 17px 18px;line-height:2.1}.quick-setup .primary-button{text-align:center;padding:12px;margin-top:12px}.quick-setup small{color:var(--muted);text-align:center;margin-top:12px}

.privacy-promise{margin:.35rem 0 1rem;padding:.8rem .9rem;border:1px solid color-mix(in srgb,var(--teal) 28%,transparent);border-radius:14px;background:color-mix(in srgb,var(--teal) 8%,var(--surface));font-size:.82rem;line-height:1.8;color:var(--ink)}
.feedback-card,.danger-zone{display:grid;gap:.7rem;margin-top:1.25rem;padding:1rem;border-radius:18px;background:color-mix(in srgb,var(--surface) 88%,var(--teal) 12%);border:1px solid color-mix(in srgb,var(--line) 75%,transparent)}
.feedback-card h3,.danger-zone h3{margin:0}.feedback-card p,.danger-zone p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.7}.feedback-card textarea{resize:vertical;min-height:78px}
.danger-zone{background:#fff7f5;border-color:#f0c7be}.danger-zone h3{color:#9d3527}.danger-button{border:0;border-radius:13px;padding:.85rem 1rem;background:#b64232;color:#fff;font:inherit;font-weight:800;cursor:pointer}.danger-button:disabled{opacity:.5}
.account-dialog{width:min(430px,calc(100vw - 28px));border:0;border-radius:24px;padding:1.4rem;color:var(--ink);background:var(--surface)}.account-dialog form,.account-dialog label{display:grid;gap:.5rem}.account-dialog form{gap:.85rem}.account-dialog input{box-sizing:border-box;width:100%;padding:.75rem .8rem;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit}.account-dialog h2{margin:.25rem 0}.account-dialog p{line-height:1.8}.dev-reset-link{display:inline-block;margin-top:.5rem;font-weight:800;color:var(--teal)}
