:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1e2528;font-synthesis:none;text-rendering:optimizelegibility;background:#f7f4ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background-color:#f7f4ea;background-image:linear-gradient(90deg,#2a5a5d0f 1px,#0000 1px),linear-gradient(#2a5a5d0f 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh}.topbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f4eaf0;border-bottom:1px solid #ded8ca;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;display:flex;position:sticky;top:0}.brand,.top-actions,.habit-title,.section-heading,.tabs,.field span,.date-box label{align-items:center;display:flex}.brand{gap:12px;min-width:0}.brand h1{margin:0;font-size:1.3rem;line-height:1.1}.brand p,.section-heading p,.habit-title p,.program-row p,.balance-card p{color:#657174;margin:4px 0 0}.brand-mark,.habit-icon{color:#255c4f;background:#e7f1ec;border:1px solid #cbd8d2;border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid}.brand-mark{background:0 0;border:0;padding:0;overflow:hidden}.brand-mark img{width:44px;height:44px;display:block}.top-actions{gap:8px}.icon-button,.tab,.profile,.primary-button,.secondary-button,.danger-button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;display:inline-flex}.icon-button{color:#263238;background:#fff;border-color:#d9d2c1;width:46px;position:relative}.icon-button span{color:#fff;background:#b93a32;border-radius:999px;min-width:20px;height:20px;padding:0 5px;font-size:.75rem;font-weight:700;line-height:20px;position:absolute;top:-7px;right:-7px}.layout{grid-template-columns:280px minmax(0,1fr);gap:22px;width:min(1220px,100%);margin:0 auto;padding:22px;display:grid}.sidebar,.workspace,.habit-tile,.program-row,.parent-lock,.balance-card,.inline-form,.table-wrap{background:#fffdf8;border:1px solid #ded8ca;border-radius:8px;box-shadow:0 1px #1e25280a}.sidebar{align-self:start;padding:14px}.profile-strip{gap:10px;display:grid}.profile{color:#263238;background:#fff;border-color:#ded8ca;justify-content:flex-start;width:100%;padding:10px;font-weight:700}.profile span{background:color-mix(in srgb, var(--kid-color) 15%, white);width:34px;height:34px;color:var(--kid-color);border-radius:8px;place-items:center;display:grid}.profile.active{border-color:var(--kid-color);box-shadow:inset 4px 0 0 var(--kid-color)}.date-box,.score-panel{border-top:1px solid #ebe5d8;margin-top:16px;padding-top:16px}.date-box label{color:#4b585c;gap:8px;margin-bottom:8px;font-weight:700}input,select{color:#1e2528;background:#fff;border:1px solid #d6cfbf;border-radius:8px;width:100%;min-height:44px;padding:9px 10px}input:focus,select:focus,button:focus-visible{outline-offset:2px;outline:3px solid #2a5a5d2e}.score-panel{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.score-panel div{background:#f4efe2;border-radius:8px;min-width:0;padding:9px}.score-panel span,.balance-card span{color:#657174;text-transform:uppercase;font-size:.78rem;font-weight:700;display:block}.score-panel strong,.balance-card strong{margin-top:3px;font-size:1.45rem;display:block}.workspace{min-width:0;padding:16px}.tabs{border-bottom:1px solid #ebe5d8;gap:8px;padding-bottom:8px;overflow-x:auto}.tab{color:#4b585c;background:0 0;flex:none;padding:0 14px}.tab.active{color:#fff;background:#244f52}.status-line{color:#604b10;background:#fff8df;border:1px solid #d8c38f;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:.93rem}.pending-approval-callout,.approval-note{color:#604b10;background:#fff8df;border:1px solid #d8c38f;border-radius:8px}.pending-approval-callout{gap:4px;padding:12px 14px;display:grid}.pending-approval-callout strong{font-size:1rem}.pending-approval-callout span{color:#6f5a1d}.approval-note{padding:8px 10px;font-size:.92rem;font-weight:700}.approval-note.active{background:#fff1c2;border-color:#c79b55}.view-stack{gap:16px;margin-top:16px;display:grid}.section-heading{justify-content:space-between;gap:14px}.section-heading h2{margin:0;font-size:1.45rem}.habit-grid,.program-grid,.balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.habit-tile{gap:12px;padding:14px;display:grid}.habit-tile.done{background:#fbfffc;border-color:#a9cdbd}.habit-title{align-items:flex-start;gap:10px}.habit-title h3,.program-row h3{margin:0;font-size:1.05rem}.habit-title p{font-size:.91rem;line-height:1.35}.points{color:#5d4810;background:#f0e2b8;border-radius:999px;flex:none;margin-left:auto;padding:5px 8px;font-weight:800}.field{gap:6px;display:grid}.field span{color:#4b585c;gap:7px;font-size:.9rem;font-weight:700}.primary-button,.secondary-button,.danger-button{padding:0 14px;font-weight:800}.primary-button{color:#fff;background:#244f52}.primary-button:disabled{color:#52605f;cursor:default;background:#cfd8d6}.secondary-button{color:#244f52;background:#fff;border-color:#d6cfbf}.danger-button{color:#fff;background:#8f312c}.compact-button{min-height:38px;padding:0 10px}.inline-form{align-items:end;gap:12px;padding:14px;display:flex}.inline-form .field{flex:180px}.inline-form .grow{flex-grow:2}.program-row{gap:12px;padding:14px;display:grid}.progress-track{background:#e8e2d4;border-radius:999px;height:12px;overflow:hidden}.progress-track span{border-radius:inherit;background:#2f7d68;height:100%;display:block}.thresholds{flex-wrap:wrap;gap:7px;display:flex}.thresholds span{color:#596568;border:1px solid #ded8ca;border-radius:999px;padding:5px 8px;font-size:.82rem}.thresholds .met{color:#255c4f;background:#e7f1ec;border-color:#2f7d68;font-weight:800}.table-wrap{overflow:auto}.table-title{justify-content:space-between;align-items:baseline;gap:12px;padding:12px 12px 0;display:flex}.table-title h3{margin:0;font-size:1rem}.table-title p{color:#657174;margin:0;font-size:.9rem}table{border-collapse:collapse;width:100%;min-width:620px}.habit-settings-table{min-width:1160px}.habit-settings-table th:nth-child(2),.habit-settings-table td:nth-child(2){width:230px}.habit-settings-table th:nth-child(3),.habit-settings-table td:nth-child(3),.habit-settings-table th:nth-child(4),.habit-settings-table td:nth-child(4),.habit-settings-table th:nth-child(5),.habit-settings-table td:nth-child(5){width:130px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #ebe5d8;padding:11px 12px}th{color:#344146;text-transform:uppercase;background:#f1f3f4;font-size:.82rem}td input.check-input{width:22px;height:22px;min-height:22px;padding:0}.checkbox-field{justify-content:end;align-self:stretch}.decision-actions{flex-wrap:wrap;gap:8px;display:flex}.parent-lock{text-align:center;gap:14px;max-width:360px;margin:28px auto;padding:20px;display:grid}.parent-lock h2{margin:0}.balance-card{padding:14px}@media (width<=900px){.layout{grid-template-columns:1fr;padding:14px}.sidebar{grid-template-columns:1.2fr .8fr;gap:12px;display:grid}.profile-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.date-box,.score-panel{border-top:0;margin-top:0;padding-top:0}.score-panel{grid-column:1/-1}}@media (width<=720px){.topbar{align-items:flex-start;padding:12px}.brand h1{font-size:1.05rem}.brand p{font-size:.82rem}.brand-mark,.brand-mark img{width:40px;height:40px}.layout{padding:10px}.sidebar,.habit-grid,.program-grid,.balance-grid{grid-template-columns:1fr}.inline-form{display:grid}.score-panel strong{font-size:1.15rem}}
