@import "https://fonts.googleapis.com/css2?family=Fraunces:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--cream:#f7efe2;--paper:#fffaf0;--paper-2:#fbf1de;--paper-strong:#fffdf8f5;--paper-soft:#fffaf1d6;--ink:#102d2f;--muted:#69786e;--teal:#004c49;--teal-2:#0f6760;--leaf:#5aa65a;--mint:#bde5d8;--orange:#f9a51a;--coral:#ff724c;--gold:#f8d47b;--sky:#7cc6cb;--line:#102d2f1f;--line-strong:#102d2f2e;--glass-line:#ffffff8f;--shadow:0 24px 70px #1e2a1a33;--shadow-soft:0 14px 36px #1e2a1a1a;--shadow-deep:0 34px 90px #18261b33;--panel-shadow:0 18px 38px #1c2b2014;--sans:"Manrope", sans-serif;--serif:"Fraunces", serif;color:var(--ink);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#ffe59d57,#0000 34%),radial-gradient(circle at 88% 84%,#9fc4873d,#0000 22%),linear-gradient(135deg,#f2dfbd 0%,#f8efd9 38%,#e2ecd9 100%);line-height:1.4}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{color:inherit;font:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s,background-color .18s,border-color .18s,color .18s,opacity .18s}button:disabled{cursor:default}h1,h2,h3,p{margin:0}#root{min-height:100vh}.citrus-app{gap:20px;min-height:100vh;padding:24px 52px 48px;display:grid;position:relative;overflow:clip visible}.citrus-app:before{content:"";z-index:0;filter:blur(18px);pointer-events:none;background:radial-gradient(circle,#fff3bc80,#0000 72%);border-radius:50%;width:min(36vw,520px);height:min(36vw,520px);position:fixed;inset:6% 18% auto auto}.scene-leaf{z-index:0;opacity:.72;pointer-events:none;background:linear-gradient(135deg,#245f2e,#7eaa45);border-radius:100% 0;width:210px;height:100px;position:fixed;box-shadow:0 18px 34px #19472133}.scene-leaf-one{top:-18px;right:70px;rotate:-20deg}.scene-leaf-two{bottom:26px;right:-56px;rotate:145deg}.citrus-slice{z-index:0;background:radial-gradient(circle, #fff0a7 0 12%, transparent 13%), repeating-conic-gradient(from 3deg, #ff9f18 0 20deg, #ffc444 20deg 38deg);pointer-events:none;border:12px solid #fff5d8f0;border-radius:50%;width:230px;height:230px;position:fixed;bottom:-58px;left:-50px;box-shadow:0 18px 42px #97540e2e}.mode-switch{z-index:10;border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf0e0;border-radius:999px;gap:6px;width:max-content;margin:0 auto;padding:6px;display:flex;position:relative;box-shadow:0 18px 40px #3a32211f}.mode-switch button{min-width:146px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:11px 18px;font-size:15px;font-weight:800}.mode-switch button.active{color:var(--ink);background:linear-gradient(#ffe8b6,#ffd273);box-shadow:inset 0 0 0 1px #d58f172e,0 6px 18px #e8a52b2e}.app-status-strip{z-index:10;flex-wrap:wrap;justify-content:center;gap:10px;margin:-6px auto 0;display:flex;position:relative}.app-status-strip span{color:var(--teal);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf0bd;border:1px solid #ffffff80;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;box-shadow:0 10px 22px #3a322114}.app-status-strip button{color:var(--teal);background:#ffffffd1;border:1px solid #004c4924;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;box-shadow:0 10px 22px #3a322114}.device-stage{z-index:1;grid-template-columns:minmax(820px,1fr) 390px;align-items:start;gap:42px;max-width:1500px;min-height:calc(100vh - 116px);margin:0 auto;display:grid;position:relative}.single-dashboard,.single-phone{z-index:1;place-items:center;min-height:calc(100vh - 116px);display:grid;position:relative}.dashboard-shell{background:linear-gradient(180deg, var(--paper-strong), #fffaf1fa);width:min(100%,1160px);min-width:0;min-height:840px;box-shadow:var(--shadow-deep);isolation:isolate;border:1px solid #0d212352;border-radius:34px;grid-template-columns:235px minmax(0,1fr);display:grid;position:relative;overflow:hidden}.dashboard-shell:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 100% 0,#ffdc962e,#0000 28%),linear-gradient(#ffffff5c,#0000 28%);position:absolute;inset:0}.dashboard-shell.framed{min-height:830px}.sidebar{background:linear-gradient(180deg, #005b56fa, #003a37fa), var(--teal);color:#fff8e7;border-right:1px solid #ffffff0f;flex-direction:column;padding:34px 22px;display:flex}.logo-lockup{grid-template-columns:54px 1fr;align-items:center;gap:14px;margin-bottom:34px;display:grid}.logo-mark{background:radial-gradient(circle, #fff3bd 0 18%, transparent 20%), repeating-conic-gradient(#f7941d 0 26deg, #ffc84e 26deg 45deg);border-radius:50%;place-items:center;width:48px;height:48px;display:grid;box-shadow:inset 0 0 0 4px #fff2ca}.logo-mark span{background:#8cc747;border-radius:100% 0;width:22px;height:12px;margin-top:-30px;rotate:-20deg}.logo-lockup strong,.logo-lockup small{letter-spacing:4px;display:block}.logo-lockup strong{font-family:var(--serif);font-size:21px}.logo-lockup small{margin-top:2px;font-size:11px}.sidebar-nav{gap:10px;display:grid}.sidebar-nav button{color:#fff8e7d1;text-align:left;background:0 0;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:13px;padding:14px 15px;font-weight:800;display:flex}.sidebar-nav button:hover{color:#fff;background:#ffffff14}.sidebar-nav .nav-active{color:#fff;background:linear-gradient(#ffffff2e,#ffffff1f);box-shadow:inset 0 0 0 1px #ffffff14}.family-level{background:#ffffff14;border:1px solid #ffffff2e;border-radius:22px;gap:8px;margin-top:auto;padding:18px;display:grid;box-shadow:inset 0 1px #ffffff0f}.family-level>svg{color:var(--gold)}.family-level span,.family-level small{color:#fff8e7cc;font-size:12px}.family-level strong{color:var(--gold);font-family:var(--serif);font-size:19px;display:block}.family-level b{font-size:15px}.level-track{background:#00000038;border-radius:999px;height:10px;overflow:hidden}.level-track span{border-radius:inherit;background:linear-gradient(90deg,#ffd159,#ff9f18);width:78%;height:100%;display:block}.dashboard-main{z-index:1;background:linear-gradient(#ffffff14,#0000 26%);min-width:0;padding:34px 34px 36px;position:relative}.dashboard-header{border-bottom:1px solid #102d2f14;justify-content:space-between;gap:22px;margin-bottom:32px;padding-bottom:24px;display:flex}.dashboard-header p,.dashboard-header span{color:var(--muted);font-size:13px}.dashboard-header h1{font-family:var(--serif);letter-spacing:-.03em;margin:6px 0 10px;font-size:42px;line-height:.96}.dashboard-header p{letter-spacing:.08em;text-transform:uppercase}.dashboard-header span{max-width:460px;line-height:1.55;display:block}.dashboard-actions{align-items:center;gap:14px;display:flex}.mobile-section-nav{display:none}.add-child,.secondary-action,.icon-button{border:0;justify-content:center;align-items:center;display:inline-flex}.add-child{color:#fff;background:linear-gradient(#005f5a,#004c49);border-radius:14px;gap:8px;padding:13px 18px;font-weight:800;box-shadow:0 14px 26px #004c492e}.secondary-action{color:var(--teal);background:#ffffffb8;border:1px solid #004c4924;border-radius:14px;gap:8px;padding:12px 15px;font-size:13px;font-weight:900;box-shadow:0 10px 22px #202c1f14}.add-child:hover,.add-child:focus-visible,.secondary-action:hover,.secondary-action:focus-visible{transform:translateY(-1px);box-shadow:0 18px 30px #004c4938}.icon-button{background:#ffffffb8;border:1px solid #102d2f1a;border-radius:50%;width:46px;height:46px;position:relative;box-shadow:0 10px 22px #202c1f14}.icon-button em{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;font-style:normal;font-weight:900;display:grid;position:absolute;top:2px;right:0}.child-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:20px;display:grid}.child-card{text-align:left;min-height:190px;box-shadow:var(--panel-shadow);background:linear-gradient(#ffffffeb,#fffaf2e0);border:1px solid #102d2f1a;border-radius:22px;gap:14px;min-width:0;padding:18px;display:grid;position:relative;overflow:hidden}.child-card:before{content:"";background:linear-gradient(90deg,#f8b33f,#4ca159);border-radius:999px;width:72px;height:4px;position:absolute;top:0;left:18px}.child-card:hover,.child-card:focus-visible{transform:translateY(-2px);box-shadow:0 22px 42px #1f2c211a}.child-card.selected{border-color:#004c4933;box-shadow:0 22px 42px #004c491a}.achievement-chip{color:#785015;background:#fff3cc;border:1px solid #edbe4c33;border-radius:999px;align-items:center;gap:6px;width:max-content;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.avatar{color:#17302e;border:3px solid #ffffffc2;border-radius:50%;place-items:center;width:52px;height:52px;font-weight:900;display:grid}.avatar.sun{background:linear-gradient(135deg,#ffd270,#f39224)}.avatar.leaf{background:linear-gradient(135deg,#b9e38d,#4c9a50)}.avatar.sky{background:linear-gradient(135deg,#b3edf0,#55aab4)}.avatar.mini{border-width:2px;width:36px;height:36px;font-size:13px}.avatar.tiny{border-width:2px;width:30px;height:30px;font-size:12px}.child-card-head{justify-content:space-between;align-items:flex-start;width:100%;display:flex}.child-card-top{grid-template-columns:56px 1fr;align-items:center;gap:12px;display:grid}.child-card h2{font-family:var(--serif);font-size:23px;line-height:1.1}.child-card span,.child-card small,.allowance-line{color:var(--muted);font-size:12px}.allowance-line,.child-card-foot,.row-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.child-card-foot strong{color:#408b2c}.child-card-goal{background:#fff1c7b3;border-radius:10px;gap:3px;padding:8px 10px;display:grid}.child-card-goal b{color:var(--teal);font-size:12px}.progress{background:#e9dfd1;border-radius:999px;height:7px;overflow:hidden}.progress span{border-radius:inherit;background:linear-gradient(90deg, var(--orange), var(--leaf));height:100%;display:block}.dashboard-grid{grid-template-columns:1.1fr 1.45fr 1.1fr;gap:18px;display:grid}.panel{box-shadow:var(--panel-shadow);background:linear-gradient(#ffffffeb,#fffbf5e0);border:1px solid #102d2f17;border-radius:24px;align-content:start;min-width:0;padding:18px;display:grid;position:relative}.panel:before{content:"";background:linear-gradient(90deg,#f9a51adb,#004c49d1);border-radius:999px;width:54px;height:3px;position:absolute;inset:0 auto auto 18px}.panel header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.panel h3{font-family:var(--serif);font-size:18px;line-height:1.02}.panel header>b{background:var(--coral);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;display:grid}.panel header button{color:var(--teal);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:800;display:inline-flex}.category-list,.pending-list,.rules-list,.streak-list{gap:10px;display:grid}.category-row{grid-template-columns:42px 1fr;align-items:center;gap:11px;display:grid}.category-icon,.rule-icon{color:var(--teal);background:#d9efe7;border-radius:8px;place-items:center;display:grid}.category-icon{width:38px;height:38px}.category-row strong,.pending-row strong,.reward-rule strong{font-size:14px}.category-row .progress{margin-top:7px}.pending-row{border-bottom:1px solid #102d2f14;grid-template-columns:36px 1fr auto auto auto;align-items:center;gap:9px;padding:6px 0 12px;display:grid}.empty-copy,.modal-copy{color:var(--muted);font-size:13px}.pending-row:last-child{border-bottom:0;padding-bottom:0}.pending-row span,.pending-row small,.reward-rule span,.streak-list span,.phone-frame small,.phone-frame span{color:var(--muted);font-size:11px;display:block}.pending-row b{color:#7b5624;background:#fff1c7;border-radius:999px;padding:6px 8px;font-size:11px}.pending-row button{background:var(--coral);color:#fff;border:0;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:900}.pending-row .dismiss{width:31px;height:31px;color:var(--muted);background:0 0;border:1px solid #102d2f26;place-items:center;padding:0;display:grid}.reward-rule{background:#ffffff94;border:1px solid #102d2f14;border-radius:16px;grid-template-columns:42px 1fr;align-items:center;gap:11px;padding:12px;display:grid}.rule-icon{width:36px;height:36px}.rule-icon.move{background:#c9efe9}.rule-icon.nutrition{color:#dd4f2b;background:#ffe2d4}.rule-icon.chore{color:#93600d;background:#ffe9b5}.rule-icon.kindness{color:#4a7b22;background:#e6f3cd}.rule-icon.grade{color:#8a5b00;background:#fff0bf}.chart-panel{grid-column:span 2}.chart-legend{gap:28px;margin-bottom:16px;display:flex}.chart-legend span{color:var(--muted);align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.chart-legend i{background:var(--teal);border-radius:999px;width:14px;height:7px;display:block}.chart-legend i.max{background:repeating-linear-gradient(90deg, var(--coral) 0 5px, transparent 5px 9px)}.mini-chart{background:linear-gradient(#f7f1e4d1,#ffffff8a);border:1px solid #102d2f14;border-radius:18px;grid-template-columns:repeat(12,1fr);align-items:end;gap:8px;height:138px;padding:14px 12px 12px;display:grid}.mini-chart-column{place-items:end stretch;height:100%;display:grid;position:relative}.mini-chart-column i,.mini-chart-column span{border-radius:5px 5px 0 0;min-height:12px;display:block}.mini-chart-column i{background:repeating-linear-gradient(90deg,#ff724c99 0 5px,#ff724c24 5px 9px);position:absolute;inset:auto 0 0}.mini-chart-column span{background:linear-gradient(180deg, #9bb6a6, var(--teal));position:relative}.streak-list div{background:#ffffff85;border-radius:14px;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.streak-list strong{color:#7e5600;align-items:center;gap:4px;font-size:12px;display:inline-flex}.payout-panel{text-align:center;background:linear-gradient(#fffcf6f0,#fff6dcb8)}.wallet-illo{width:92px;height:70px;color:var(--teal);background:#fff2c9;border-radius:30px;place-items:center;margin:0 auto 8px;display:grid;position:relative}.wallet-illo svg:last-child{color:var(--orange);position:absolute;bottom:5px;left:4px}.payout-panel>span{color:var(--muted);font-size:12px}.payout-panel>strong{font-family:var(--serif);margin:3px 0 12px;font-size:28px;display:block}.payout-panel>button{background:var(--teal);color:#fff;border:0;border-radius:7px;width:100%;padding:11px;font-weight:900}.access-card{gap:12px;display:grid}.access-card-head{grid-template-columns:38px 1fr;align-items:center;gap:11px;display:grid}.access-card-head>svg{width:38px;height:38px;color:var(--teal);background:#d9efe7;border-radius:12px;padding:8px;display:grid}.access-card-head strong{font-size:14px;display:block}.access-card-head span{color:var(--muted);text-transform:capitalize;font-size:11px;display:block}.empty-family-panel{width:min(100%,370px);min-height:520px;box-shadow:var(--panel-shadow);background:#fffaf0db;border:1px solid #102d2f24;border-radius:24px;align-content:center;align-self:stretch;gap:14px;padding:34px;display:grid}.empty-family-mark{color:#9a650b;background:#fff1c7;border-radius:16px;place-items:center;width:54px;height:54px;display:grid}.empty-family-panel span{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:900}.empty-family-panel h2{max-width:280px;font-family:var(--serif);font-size:31px;line-height:1.02}.empty-family-panel p{max-width:300px;color:var(--muted);font-size:14px;line-height:1.7}.empty-family-panel .primary-action{width:max-content}.phone-frame{width:min(100%,370px);min-height:790px;box-shadow:var(--shadow-deep);background:radial-gradient(circle at 76% 10%,#ffe897eb 0 9%,#0000 28%),linear-gradient(#e7f3df 0%,#fff5e2 34%,#fff9ee 100%);border:10px solid #111818;border-radius:46px;padding:20px 18px 18px;position:relative}.phone-top{justify-content:space-between;align-items:center;margin-bottom:14px;padding:0 12px;display:flex}.phone-top div{background:#0b1011;border-radius:999px;width:88px;height:26px}.phone-top span{color:var(--ink);font-size:12px;font-weight:900}.phone-header{grid-template-columns:44px 1fr 36px;align-items:center;gap:10px;margin-bottom:16px;display:grid}.phone-header .avatar{width:42px;height:42px}.phone-header h2{font-family:var(--serif);font-size:25px}.phone-header button{background:#ffffffad;border:1px solid #102d2f14;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.achievement-strip{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px;display:grid}.achievement-strip button{text-align:left;background:linear-gradient(#ffffffe0,#fffaf0c2);border:1px solid #102d2f17;border-radius:20px;gap:8px;min-height:146px;padding:14px;display:grid;box-shadow:0 14px 24px #2433230f}.achievement-strip button:hover,.achievement-strip button:focus-visible{transform:translateY(-2px);box-shadow:0 18px 30px #24332314}.achievement-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.achievement-mascot-frame{background:linear-gradient(#fff8e6,#ffe8b9);border-radius:16px;place-items:center;width:52px;height:52px;display:grid;box-shadow:inset 0 0 0 1px #ffc55252}.achievement-strip strong{font-size:14px;line-height:1.1}.achievement-strip .progress{margin-top:0}.achievement-card-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.achievement-card-foot b{color:var(--teal);font-size:12px}.achievement-card-foot span{text-align:right;max-width:88px}.achievement-rank-pill{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:10px;font-weight:900;display:inline-flex}.achievement-rank-pill.locked{color:#6d665f;background:#ebe2d6}.achievement-rank-pill.bronze{color:#7f4415;background:#f2d0ac}.achievement-rank-pill.silver{color:#576574;background:#e2e8f1}.achievement-rank-pill.gold{color:#8a5b00;background:#ffe49b}.achievement-rank-pill.platinum{color:#0d6b63;background:#cdeee7}.achievement-rank-pill.emerald{color:#2e7e2f;background:#d6f1ce}.achievement-rank-pill.diamond{color:#2662a8;background:#d7ebff}.achievement-card.locked{background:linear-gradient(#faf6f0eb,#f1eae1d1)}.achievement-card.bronze{background:linear-gradient(#fff3e5f2,#f7e1cce0)}.achievement-card.silver{background:linear-gradient(#f8fbfff2,#e6ecf3e0)}.achievement-card.gold{background:linear-gradient(#fff9e2f5,#ffe7b3e6)}.achievement-card.platinum{background:linear-gradient(#effffaf2,#d5f1eae6)}.achievement-card.emerald{background:linear-gradient(#f5fff1f5,#d7f3d1e6)}.achievement-card.diamond{background:linear-gradient(#f1f9fff5,#d7ebffe6)}.achievement-mascot-svg{width:38px;height:38px}.piggy-card{color:#fff;background:radial-gradient(circle at 12% 18%,#ffd9802e,#0000 30%),linear-gradient(135deg,#005c57,#003d3b);border-radius:22px;grid-template-columns:1fr 112px;gap:12px;min-height:158px;margin-bottom:14px;padding:20px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 34px #003d3b38}.piggy-card span,.piggy-card small{color:#ffffffd1}.piggy-card strong{margin:6px 0 0;font-size:29px;display:block}.piggy-card p{margin-top:8px;font-size:12px;font-weight:800}.piggy-card .progress{background:#ffffff59;margin-top:10px}.piggy-art{color:#ffc081;place-items:center;display:grid}.piggy-art svg:last-child{color:#ffb72d;margin-top:-26px;margin-left:64px}.kid-access-note{background:#ffffffa8;border:1px solid #004c491a;border-radius:16px;gap:4px;margin:-3px 0 13px;padding:10px 12px;display:grid}.kid-access-note strong{color:var(--teal);font-size:13px}.today-list,.quick-log,.phone-metrics,.savings-goal{margin-bottom:13px}.today-list header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.today-list h3,.quick-log h3{font-family:var(--serif);font-size:18px}.today-list header div>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.today-list header button{color:var(--muted);background:0 0;border:0;font-size:11px;font-weight:800}.mission-list{background:radial-gradient(circle at 86% 0,#ffd46b38,#0000 32%),#ffffffa3;border:1px solid #102d2f14;border-radius:20px;padding:13px;box-shadow:0 16px 24px #2433230d}.mission-summary{color:#7b5624;background:#fff2c7;border-radius:999px;margin:-3px 0 10px;padding:7px 10px;font-size:11px;font-weight:900}.today-list>button{text-align:left;background:#fffc;border:1px solid #102d2f17;border-bottom:0;grid-template-columns:22px 32px 1fr auto;align-items:center;gap:10px;width:100%;min-height:50px;padding:11px 12px;display:grid}.today-list>button:first-of-type{border-radius:12px 12px 0 0}.today-list>button:last-of-type{border-bottom:1px solid #102d2f17;border-radius:0 0 12px 12px}.today-list>button.done>svg:first-child{color:var(--leaf)}.today-list>button.done{background:#f2fcf3db}.today-list>button.waiting>svg:first-child{color:#c7b7a2}.today-list>button.waiting{background:#fff9eeeb}.today-list .rule-icon{width:28px;height:28px}.today-list b{color:var(--teal);font-size:11px}.quick-log>div{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.quick-log button{min-height:82px;color:var(--teal);background:#d8f0df;border:0;border-radius:16px;place-items:center;gap:7px;padding:14px 8px;font-weight:800;display:grid;box-shadow:0 12px 18px #2433230d}.quick-log button:nth-child(2){background:#bfeae7}.quick-log button:nth-child(3){color:#ac3f22;background:#ffd9c9}.quick-log button:nth-child(4){color:#87590a;background:#ffe3a0}.quick-log button:nth-child(5){color:#4a7b22;background:#e6f3cd}.quick-log button:nth-child(6){color:#8a5b00;background:#fff0bf}.quick-log button:hover,.quick-log button:focus-visible,.today-list>button:hover,.today-list>button:focus-visible,.savings-goal:hover,.savings-goal:focus-visible{transform:translateY(-2px);box-shadow:0 18px 24px #24332314}.phone-metrics{grid-template-columns:1fr 1fr;gap:12px;display:grid}.phone-metrics article,.savings-goal{background:#ffffffb3;border:1px solid #102d2f17;border-radius:16px;padding:14px;box-shadow:0 14px 20px #2433230a}.phone-metrics strong{margin:5px 0 2px;font-size:22px;display:block}.phone-metrics svg{color:var(--orange)}.savings-goal{width:100%;color:inherit;text-align:left;background:linear-gradient(135deg,#d9ead5,#f6edce);border:1px solid #102d2f17;grid-template-columns:1fr 22px;align-items:center;gap:10px;display:grid}.savings-goal strong{margin:3px 0;display:block}.savings-goal .progress{margin-top:8px}.toast{z-index:30;color:#fff9ed;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#102d2feb;border:1px solid #ffffff94;border-radius:999px;align-items:center;gap:8px;max-width:min(420px,100vw - 48px);padding:12px 16px;font-size:13px;font-weight:800;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 30px #102d2f3d}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d212366;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{width:min(820px,100%);max-height:min(760px,100vh - 48px);box-shadow:var(--shadow-deep);background:linear-gradient(#fffcf5fa,#fff9eef5);border:1px solid #0d212338;border-radius:28px;padding:24px;overflow:auto}.modal-card>header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.modal-card>header span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:900}.modal-card>header h2{font-family:var(--serif);margin-top:3px;font-size:28px}.modal-card>header .dismiss{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);background:#ffffffa3;border-radius:50%;place-items:center;display:grid}.modal-stack{gap:12px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label,.rule-editor label,.modal-field{color:var(--muted);gap:6px;font-size:12px;font-weight:900;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.rule-editor input,.inline-action-form input,.modal-field input,.modal-field textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#ffffffc7;border-radius:10px;padding:11px 12px;font-weight:700}.modal-field textarea{resize:vertical;min-height:116px}.form-grid textarea{resize:vertical;min-height:92px}.full-field,.checkbox-field,.setup-price{grid-column:1/-1}.checkbox-field{align-items:center;gap:8px;display:inline-flex}.checkbox-field input{width:auto}.setup-price{background:#d9efe7;border:1px solid #004c491f;border-radius:18px;gap:4px;padding:16px;display:grid}.setup-price strong{font-family:var(--serif);font-size:26px}.setup-price span{color:var(--teal);font-size:13px;font-weight:800}.inline-action-form{grid-template-columns:1fr auto;gap:10px;display:grid}.inline-action-form button{color:#785015;background:#fff1c7;border:0;border-radius:10px;padding:11px 14px;font-weight:900}.primary-action{background:var(--teal);color:#fff;border:0;border-radius:10px;padding:12px 16px;font-weight:900}.primary-action:disabled{opacity:.45}.summary-strip{flex-wrap:wrap;gap:8px;display:flex}.summary-strip span{color:#785015;background:#fff1c7;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.summary-strip.compact span{padding:7px 9px;font-size:10px}.modal-pending-list{gap:0}.detail-row,.rule-editor,.payout-row,.invite-row,.activity-row,.achievement-row,.plan-card,.goal-detail,.child-picker{border:1px solid var(--line);background:#fffcf6d1;border-radius:18px;align-items:center;gap:12px;padding:15px;display:grid;box-shadow:0 12px 22px #232f240a}.detail-row{grid-template-columns:42px 1fr}.rule-editor{grid-template-columns:42px 1fr 92px 82px}.payout-row,.invite-row,.child-picker{grid-template-columns:38px 1fr auto}.plan-card{grid-template-columns:1fr auto}.activity-row{grid-template-columns:42px 1fr auto}.achievement-row{grid-template-columns:56px 1fr auto}.goal-detail{grid-template-columns:48px 1fr}.child-picker{width:100%;color:inherit;text-align:left}.detail-row span,.rule-editor span,.payout-row span,.payout-row small,.invite-row span,.invite-row small,.activity-row span,.activity-row small,.achievement-row span,.achievement-row small,.plan-card span,.goal-detail span{color:var(--muted);font-size:12px;display:block}.goal-detail small{color:var(--teal);margin-top:4px;font-size:12px;font-weight:800;display:block}.plan-card strong{font-family:var(--serif);font-size:24px;display:block}.plan-card b{color:var(--teal);background:#d9efe7;border-radius:999px;padding:8px 10px;font-size:11px}.achievement-row-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;display:flex}.detail-row .progress,.achievement-row .progress{margin-top:8px}.activity-row-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.status-chip{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:5px 8px;font-size:10px;font-weight:900;display:inline-flex}.status-chip.pending{color:#7b5624;background:#fff1c7}.status-chip.approved{color:var(--teal);background:#d9efe7}.status-chip.dismissed{color:#8a4e2f;background:#efe3d9}.payout-row button{background:var(--teal);color:#fff;border:0;border-radius:9px;padding:9px 12px;font-weight:900}.invite-row button{color:#785015;background:#fff1c7;border:0;border-radius:9px;padding:9px 12px;font-weight:900}.invite-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.invite-actions button:first-child{background:var(--teal);color:#fff}.payout-row button:disabled{color:var(--teal);background:#d9efe7}.achievement-medal{width:52px;height:52px;color:var(--muted);background:linear-gradient(#fff8e6,#ffe8b9);border-radius:18px;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffc55252}.achievement-row.unlocked .achievement-medal{color:#8a5b00;background:#fff1c7}.achievement-row>b,.activity-row>b{color:var(--teal);text-align:center;background:#d9efe7;border-radius:999px;padding:7px 9px;font-size:11px}.achievement-row.locked>b{color:#6d665f;background:#ece1d4}.achievement-row.bronze>b{color:#7f4415;background:#f2d0ac}.achievement-row.silver>b{color:#576574;background:#e2e8f1}.achievement-row.gold>b{color:#8a5b00;background:#ffe49b}.achievement-row.platinum>b{color:#0d6b63;background:#cdeee7}.achievement-row.emerald>b{color:#2e7e2f;background:#d6f1ce}.achievement-row.diamond>b{color:#2662a8;background:#d7ebff}@media (width<=1360px){.citrus-app{padding:20px 20px 36px}.device-stage{grid-template-columns:1fr;gap:28px;width:100%;max-width:100%;min-height:auto}.phone-frame{justify-self:center}}@media (width<=1180px){.child-card-grid,.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-panel{grid-column:span 2}}@media (width<=900px){.mode-switch{justify-content:center;width:100%}.mode-switch button{flex:1 1 0;min-width:0}.dashboard-shell{min-height:unset;grid-template-columns:1fr;width:100%;max-width:100%}.sidebar{display:none}.dashboard-main{padding:22px}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header h1{font-size:38px}.dashboard-header span{max-width:none}.app-status-strip{justify-content:flex-start}.dashboard-actions{flex-flow:wrap;align-items:center}.mobile-section-nav{scrollbar-width:none;gap:10px;margin:0 0 20px;padding-bottom:4px;display:flex;overflow-x:auto}.mobile-section-nav::-webkit-scrollbar{display:none}.mobile-section-nav button{white-space:nowrap;color:var(--muted);background:#ffffffc7;border:1px solid #102d2f1a;border-radius:999px;align-items:center;gap:8px;padding:10px 13px;display:inline-flex;box-shadow:0 10px 18px #202c1f0d}.mobile-section-nav .mobile-nav-active{color:#fff;background:linear-gradient(#005f5a,#004c49);border-color:#004c495c}.child-card-grid,.dashboard-grid{grid-template-columns:1fr}.allowance-line{grid-template-columns:1fr auto;display:grid}.child-card-foot{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.child-card-foot strong{grid-column:1/-1}.child-card-foot span:last-child{text-align:right}.chart-panel{grid-column:auto}.pending-row,.rule-editor,.payout-row,.invite-row,.plan-card,.activity-row{grid-template-columns:1fr}.pending-row .avatar{display:none}.modal-card{padding:20px}}@media (width<=640px){.achievement-strip,.phone-metrics{grid-template-columns:1fr}.quick-log>div{grid-template-columns:repeat(2,1fr)}}@media (width<=460px){.citrus-app{padding:12px 10px 28px}.scene-leaf{opacity:.56}.citrus-slice{width:190px;height:190px;bottom:-74px;left:-96px}.mode-switch{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.phone-frame{border-width:7px;border-radius:34px;width:min(100%,370px);min-height:0;padding:14px}.mode-switch button{white-space:nowrap;text-align:center;min-width:0;padding:10px 8px;font-size:11px}.form-grid,.rule-editor,.payout-row,.invite-row,.plan-card,.activity-row,.achievement-row{grid-template-columns:1fr}.toast{justify-content:center;max-width:100%;margin:-2px auto 0;position:static}.app-status-strip{justify-content:center}}
