@font-face{font-family:BoardManrope;src:url('assets/manrope_medium.ttf');font-weight:500;font-display:swap}@font-face{font-family:BoardManrope;src:url('assets/manrope_semi_bold.ttf');font-weight:600;font-display:swap}
/* ProfileScreen.kt and LeaderboardRulesScreen.kt: preserve the mobile hierarchy on web. */
:root{--muted:#68705f;--line:#e3e6db;--soft-primary:#fcece2;--soft-primary-ink:#b83a1c;--soft-mint:#e7eee2;--soft-mint-ink:#2f8a6b;--soft-danger:#fbe0e0;--soft-danger-ink:#c26b6b;--surface-secondary:#eff1e8}
html[data-theme="dark"]{--bg:#14110f;--card:#221d19;--ink:#f3ebe3;--muted:#c2b6ab;--line:#3a332c;--paper:#14110f;--sage:#173329;--green:#a5b89a;--soft-primary:#32241a;--soft-primary-ink:#ef7951;--soft-mint:#173329;--soft-mint-ink:#a5b89a;--soft-danger:#381f1f;--soft-danger-ink:#f2a8a8;--surface-secondary:#1e1a17}
html[data-theme="dark"] .topbar,html[data-theme="dark"] .bottom-nav{background:#14110ff0}
.ui-icon{width:22px;height:22px;display:block;flex:none}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border-radius:50%;flex:none;text-decoration:none;color:var(--muted)}.icon-button:hover{background:var(--surface-secondary)}.heading-actions{display:flex;align-items:center;gap:12px}.heading-actions .pill{display:flex;align-items:center;gap:5px}.heading-actions .pill .ui-icon{width:16px;height:16px}.rules-entry{color:var(--muted)}.leaderboard-rules-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:8px;color:var(--muted);font-size:12px;text-decoration:none}.leaderboard-rules-link:hover{text-decoration:underline}.board-page .board-credit{margin-top:0}
.profile-page,.rules-page,.rules-basics{font-family:BoardManrope,Arial,sans-serif}.profile-page{max-width:920px;padding-top:32px;padding-bottom:32px}.profile-page-heading,.rules-page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.profile-page .profile-page-heading h1,.rules-page .rules-page-heading h1{font:600 30px/36px BoardManrope,Arial,sans-serif;letter-spacing:-.7px;margin:0}.profile-page-heading .icon-button{color:var(--ink)}.profile-content{min-height:calc(100svh -232px);display:flex;flex-direction:column;justify-content:space-between;gap:32px}.profile-upper{max-width:760px}.profile-identity{display:flex;align-items:center;gap:12px}.profile-identity .avatar.large{width:58px;height:58px;font-size:21px;margin:0;flex:none}.profile-name{flex:1;min-width:0}.profile-name h2{font-size:22px;line-height:29px;font-weight:600;overflow-wrap:anywhere;margin:0}.profile-name p{font-size:14px;line-height:20px;margin:4px 0 0;color:var(--muted);overflow-wrap:anywhere}.profile-edit{color:var(--soft-primary-ink);font-size:14px;min-height:44px;padding:8px 12px;flex:none}.profile-socials{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 0 0;min-height:44px;color:var(--ink)}.profile-socials.social-links{font-size:12px}.social-chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:240px;padding:8px 11px;border-radius:30px;background:var(--soft-mint);border:1px solid var(--line);font-size:12px;text-decoration:none;color:var(--ink)}.social-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-icon,.social-chip .ui-icon{width:13px;height:13px;flex:none;fill:currentColor}.social-add{display:flex;align-items:center;gap:7px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:30px;font-size:12px;color:var(--muted)}.social-add .ui-icon{width:16px;height:16px}.social-edit{width:44px;height:44px;border:1px solid var(--line);color:var(--muted)}.social-edit .ui-icon{width:15px;height:15px}.profile-effort{margin-top:24px}.daily-activity{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:20px;border-radius:24px;background:var(--soft-mint);padding:24px;color:var(--ink)}.daily-activity h2,.daily-activity span{font-size:14px;line-height:20px;font-weight:400;margin:0}.daily-reps strong{display:block;font-size:60px;line-height:68px;font-weight:400;letter-spacing:-2px}.daily-points{position:relative;display:flex;flex-direction:column;gap:6px;padding-left:24px}.daily-points:before{content:'';position:absolute;left:0;top:50%;height:80px;width:1px;transform:translateY(-50%);background:currentColor;opacity:.2}.daily-points .ui-icon{width:22px;height:22px;color:var(--soft-primary-ink)}.daily-points strong{font-size:28px;line-height:34px;font-weight:400;letter-spacing:-.7px}.profile-lifetime{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.profile-lifetime article{padding:20px;background:var(--card);border:1px solid var(--line);border-radius:19px}.profile-lifetime strong{display:block;font-size:31px;line-height:38px;letter-spacing:-.7px;font-weight:400}.profile-lifetime h2{font-size:14px;line-height:20px;font-weight:400;color:var(--muted);margin:5px 0 0}.profile-streak{display:flex;align-items:center;gap:12px;width:100%;max-width:760px;text-align:left;border-top:1px solid var(--line);padding:16px 0;font-size:14px;font-weight:700}.profile-streak>span:nth-child(2){flex:1}.streak-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--soft-primary);color:var(--soft-primary-ink)}.profile-streak>.ui-icon{color:var(--muted);width:20px;height:20px}.account-signout{margin-top:24px}.account-delete{text-align:center;max-width:680px;margin:40px 0 24px}.account-delete .link{font-size:14px}.web-account-extras{max-width:680px;margin-top:32px;color:var(--muted);font-size:13px}.web-account-extras summary{cursor:pointer;padding:12px 0}
.rules-page{max-width:1040px;padding-top:32px}.rules-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 16px;border-bottom:1px solid var(--line);margin-bottom:24px}.rules-tabs button{min-height:48px;border:1px solid var(--line);padding:10px 18px;border-radius:32px;background:var(--surface-secondary);color:var(--muted);font:400 14px/20px BoardManrope,Arial,sans-serif}.rules-tabs button[aria-selected="true"]{background:var(--soft-primary);border-color:var(--soft-primary-ink);color:var(--soft-primary-ink)}.rules-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:40px}.rule-explanation h2{font-size:18px;line-height:23px;margin:0 0 8px}.rule-explanation p{font-size:15px;line-height:23px;color:var(--muted);margin:0;min-height:115px;max-width:54ch}.rule-explanation .rule-deadline{min-height:0;font-size:14px;line-height:20px;color:var(--soft-primary-ink);margin-top:16px}.rules-example-area>h2{font-size:22px;line-height:29px;margin:0 0 16px}.rules-example{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:4px 5px 0 var(--soft-primary);padding:24px}.example-overline{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;line-height:20px;color:var(--muted)}.example-overline>span:first-child{font-size:12px;font-weight:700;letter-spacing:.8px}.rules-example h3{font-size:18px;line-height:23px;min-height:46px;margin:16px 0}.example-score{display:flex;align-items:baseline;gap:8px;margin:0 0 16px}.example-score strong{font-size:44px;line-height:44px;letter-spacing:-2px;font-weight:700}.example-score>span{font-size:14px;line-height:20px;color:var(--muted)}.example-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.example-day{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:12px;line-height:16px;color:var(--muted)}.example-bar{position:relative;width:28px;height:72px;background:var(--surface-secondary);border-radius:8px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.example-bar>span{height:var(--bar-height);width:100%;background:var(--soft-mint-ink);border-radius:8px;animation:rule-bar-reveal .2s ease-out;transform-origin:bottom}.example-bar>span.current{background:var(--soft-primary-ink)}.example-bar .ui-icon{color:var(--soft-danger-ink);width:20px;height:20px;margin-bottom:4px}.example-status{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:10px;background:var(--soft-mint);color:var(--soft-mint-ink);font-size:14px;line-height:20px;min-height:40px;margin:16px 0}.example-status .ui-icon{width:16px;height:16px}.example-status.missed{background:var(--soft-danger);color:var(--soft-danger-ink)}.example-caption{font-size:15px;line-height:23px;color:var(--muted);min-height:115px;margin:16px 0}.example-next{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 14px;border-radius:14px;background:var(--soft-primary);color:var(--soft-primary-ink);font-size:15px;line-height:23px;font-weight:700}.example-next .ui-icon{width:20px;height:20px}.example-note{font-size:12px;line-height:16px;color:var(--muted);margin:16px 0 0}.scoring-basics-link{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:24px auto 0;color:var(--muted);font-size:14px}.scoring-basics-link .ui-icon{width:20px;height:20px}
.rules-basics{width:min(600px,calc(100% - 32px));max-height:calc(100svh - 48px);padding:0;overflow:hidden;border-radius:24px;background:var(--bg);box-shadow:0 20px 80px #0003;display:none;flex-direction:column}.rules-basics[open]{display:flex}.rules-basics>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px 12px;flex:none}.rules-basics>header h2{font-size:22px;line-height:29px;margin:0}.rules-basics-body{overflow:auto;padding:0 24px 16px;overscroll-behavior:contain}.points-hero{background:#193e32;color:#fff8e9;border-radius:24px;padding:24px}.points-hero h3{font-size:30px;line-height:36px;letter-spacing:-.7px;margin:0 0 16px}.points-equation{display:flex;gap:12px;align-items:center}.points-equation>div{display:flex;flex:1;flex-direction:column;align-items:center;gap:6px;padding:16px;background:#315646;border-radius:16px}.points-equation .ui-icon{color:#d1dfa9}.points-equation strong{font-size:44px;line-height:44px;letter-spacing:-2px}.points-equation span{font-size:14px;line-height:20px;color:#c5d2c5}.points-hero p{font-size:14px;line-height:20px;color:#c5d2c5;margin:16px 0 0}.utc-day-note{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.utc-day-note h3{font-size:18px;line-height:23px;margin:0}.utc-day-note p{font-size:15px;line-height:23px;color:var(--muted);margin:8px 0}.utc-day-note strong{color:var(--ink);font-weight:700}.earned-note{display:flex;align-items:center;gap:8px;font-size:14px;line-height:20px;color:var(--muted);margin:20px 0 0}.earned-note .ui-icon{width:20px;height:20px;color:var(--soft-mint-ink)}.rules-basics footer{padding:0 24px 12px;border-top:1px solid var(--line);flex:none}.basics-done{min-height:48px;width:100%;font-size:15px;font-weight:700;color:var(--ink)}
@keyframes rule-bar-reveal{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media(max-width:999px){.rules-columns{grid-template-columns:1fr;gap:16px}.rule-explanation p{min-height:92px}.rule-explanation .rule-deadline{min-height:0}.profile-page{padding-top:24px;padding-bottom:96px}.profile-content{min-height:calc(100svh -328px)}.profile-page-heading{margin-bottom:24px}.rules-page{max-width:620px}.rules-example h3{min-height:23px}}
@media(max-width:480px){.profile-page{padding-left:24px;padding-right:24px}.profile-page .profile-page-heading h1{font-size:30px}.rules-page{padding-left:24px;padding-right:24px}.rules-page .rules-page-heading h1{font-size:24px;line-height:30px}.rules-tabs{gap:7px}.rules-tabs button{flex:1;padding-left:9px;padding-right:9px;white-space:nowrap}.rules-example{padding:20px}.example-caption{min-height:115px}.rules-basics{width:100%;max-width:none;max-height:90svh;margin:auto 0 0;border-radius:24px 24px 0 0;border-bottom:0}.rules-basics>header{padding-top:16px}.profile-name h2{font-size:22px}.profile-name p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.example-bar>span{animation:none}}
.profile-editor-page{font-family:BoardManrope,Arial,sans-serif;max-width:820px;padding-top:32px}.profile-editor-page>h1{font:600 30px/36px BoardManrope,Arial,sans-serif;letter-spacing:-.7px}.profile-editor-page form{max-width:680px;display:flex;flex-direction:column;min-height:calc(100svh -280px);gap:32px}.profile-editor-body{flex:1}.profile-editor-page .profile-photo-editor{display:flex;flex-direction:column;align-items:center;gap:8px;margin:24px 0 32px}.profile-editor-page .profile-photo-control{position:relative;display:block;padding:0;margin:0;border:0;cursor:pointer}.profile-photo-control .avatar.large{width:72px;height:72px;font-size:24px}.photo-badge{position:absolute;right:-2px;bottom:-2px;display:grid;place-items:center;width:32px;height:32px;border:3px solid var(--bg);background:#17362c;color:#fffaec;border-radius:50%}.photo-badge .ui-icon{width:17px;height:17px}.profile-editor-page .profile-handle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin:8px 0}.profile-handle .ui-icon{width:14px;height:14px}.profile-editor-links{margin-top:28px}.profile-editor-links h2{display:flex;align-items:center;justify-content:space-between;font-size:14px;line-height:20px}.profile-editor-links h2>span{font-size:12px;color:var(--muted);font-weight:400}.profile-editor-links .settings{background:var(--card)}.profile-editor-links .settings button{display:flex;align-items:center;gap:12px;min-height:52px;font-size:14px}.profile-editor-links .social-icon{width:18px;height:18px}.profile-editor-links .editor-link-name{flex:1;float:none;color:var(--ink)}.profile-editor-links .settings .ui-icon{width:18px;height:18px;color:var(--muted)}.no-links{padding:17px;font-size:14px;color:var(--muted);margin:0}.profile-editor-page .profile-save{max-width:none;display:flex;align-items:center;justify-content:center;gap:8px;background:#17362c;color:#fffaec;border-color:transparent;margin-top:0;min-height:52px}.profile-save .ui-icon{width:18px;height:18px}
@media(max-width:480px){.profile-editor-page{padding-left:24px;padding-right:24px}.profile-editor-page form{min-height:calc(100svh -280px)}}

.profile-editor-links .editor-link-name b,.profile-editor-links .editor-link-name small{display:block;float:none;text-align:left}.profile-editor-links .editor-link-name b{font-size:13px;font-weight:600}.profile-editor-links .editor-link-name small{font-size:12px;color:var(--muted);margin-top:4px}.profile-editor-links .settings button{min-height:76px}.profile-editor-links .social-icon{box-sizing:content-box;padding:8px;background:var(--surface-secondary);border-radius:9px;width:16px;height:16px}.editor-add-link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:var(--card);margin-top:12px;font-size:13px;font-weight:600}.editor-add-link .ui-icon{width:18px;height:18px}.daily-reps strong{font-weight:500}.daily-points strong,.profile-lifetime strong,.rules-example h3,.rule-explanation h2,.rules-example-area>h2,.points-hero h3,.rules-basics h2,.points-equation strong,.example-score strong,.profile-streak{font-weight:600}
@media(min-width:1000px){.rule-explanation p{min-height:0}.rules-example h3{min-height:23px}.example-caption{min-height:69px}}

.profile-name-field{border:1px solid var(--line);border-radius:19px;padding:17px;background:var(--card)}.profile-name-field:focus-within{outline:2px solid var(--soft-primary-ink);outline-offset:2px}.profile-editor-page .profile-name-field label{font-size:11px;font-weight:600;color:var(--muted);margin:0}.profile-editor-page .profile-name-field input{font:600 17px/24px BoardManrope,Arial,sans-serif;padding:8px 0;border:0;background:transparent;border-radius:0;outline:none;margin-top:0;min-height:44px}.profile-editor-page .profile-name-field .profile-handle{margin-bottom:0}.profile-save:disabled{background:var(--surface-secondary);color:var(--muted);opacity:1}
.profile-editor-page .profile-save:not(:disabled){background:#17362c;color:#fffaec}.profile-editor-page .profile-save:disabled{background:var(--surface-secondary);color:var(--muted);opacity:1}

.app-shell{background:var(--bg)}.topbar,.bottom-nav{background:#f4f1e8f0}
.profile-page-heading{max-width:760px}
