:root{font-family:Space Grotesk,IBM Plex Sans,Segoe UI,sans-serif;line-height:1.4;font-weight:450;color:#10251f;background:radial-gradient(circle at 15% 10%,#daf7d4 0,#f3f3e9 44%,#f4ece0);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button,input,textarea,select{font:inherit}#root{min-height:100vh}.shell{display:grid;gap:1rem;margin:0 auto;max-width:1160px;padding:1rem}.topbar{display:grid;gap:.9rem}.brand{font-size:1.2rem;font-weight:700}.nav-links{display:flex;flex-wrap:wrap;gap:.55rem}.nav-link{border:1px solid #a8b9ae;border-radius:999px;color:#2c493f;padding:.35rem .75rem;transition:transform .12s ease,background-color .12s ease}.nav-link:hover{background:#d9ebe0;transform:translateY(-1px)}.nav-link-active{background:#1d5d49;border-color:#1d5d49;color:#f4f8f5}.account-zone{align-items:center;display:flex;gap:.75rem}.account-email{color:#456458;font-size:.9rem;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{display:grid;gap:1rem}.panel{background:#f7f9f5;border:1px solid #c8d3c6;border-radius:18px;box-shadow:0 10px 30px #5f675f1f;padding:1rem}.eyebrow{color:#557666;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stack{display:grid;gap:1rem}.stack-sm{display:grid;gap:.35rem}.stack-xs{display:grid;gap:.2rem}.muted{color:#3e5d51}.kpi-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(170px,240px));justify-content:start}.kpi-card{align-items:start;display:grid;gap:.25rem}.kpi-label{color:#4d6e61;font-size:.82rem;text-transform:uppercase}.kpi-value{font-size:1.8rem;font-weight:700}.btn{background:linear-gradient(120deg,#1f6f56,#3a8965);border:none;border-radius:12px;color:#f4faf7;cursor:pointer;padding:.55rem .95rem}.btn:disabled{cursor:default;opacity:.6}.btn-secondary{background:#e3ebe4;color:#133226}.auth-shell{align-items:center;display:grid;min-height:100vh;padding:1rem}.auth-card{justify-self:center;max-width:460px;width:100%}.form-row{display:grid;gap:.4rem}.form-row-compact{width:min(100%,14rem)}.form-row-medium{width:min(100%,18rem)}input,textarea,select{background:#fff;border:1px solid #bacabc;border-radius:10px;color:#143126;padding:.55rem .65rem}.hint{color:#4d6e61;font-size:.85rem}.status-good{color:#1d6b4c}.status-bad{color:#8e3126}.field-grid{display:grid;gap:.85rem}.tag-row{display:flex;flex-wrap:wrap;gap:.5rem}.tag-btn{background:#e5ece5;border:1px solid #b8c8ba;border-radius:999px;color:#26453a;cursor:pointer;padding:.35rem .8rem}.tag-btn-active{background:#1f6f56;border-color:#1f6f56;color:#f3faf7}.outcome-header{align-items:flex-start;display:flex;justify-content:space-between;gap:.8rem}.actions-row{display:flex;flex-wrap:wrap;gap:.45rem}.section-head{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between}.form-disclosure{background:#f5faf5;border:1px solid #d2ded1;border-radius:12px;padding:.75rem}.pill{background:#d9e8dd;border-radius:999px;color:#2c5c49;display:inline-block;font-size:.74rem;padding:.15rem .52rem;text-transform:uppercase}.output-row{border:1px solid #d2ded1;border-radius:14px;display:grid;gap:.7rem;padding:.75rem}.dashboard-controls{display:grid;gap:.6rem}.action-form-grid{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}.action-form-grid .form-row{min-width:0}.numeric-log-field{width:min(100%,16rem)}.action-form-grid input[type=number]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;min-width:0;width:100%}.action-form-grid input[type=number]::-webkit-outer-spin-button,.action-form-grid input[type=number]::-webkit-inner-spin-button{margin:0;opacity:1}.number-input-shell{align-items:stretch;display:grid;gap:.35rem;grid-template-columns:minmax(0,1fr)}.number-stepper{display:none;gap:.2rem;grid-template-rows:repeat(2,minmax(0,1fr))}.number-step-btn{align-items:center;background:#e3ebe4;border:1px solid #bacabc;border-radius:8px;color:#133226;cursor:pointer;display:inline-flex;font-size:.95rem;justify-content:center;line-height:1;min-height:24px;min-width:28px;padding:.1rem .45rem}.number-step-btn:disabled{cursor:default;opacity:.55}@media (hover: none) and (pointer: coarse){.number-input-shell{grid-template-columns:minmax(0,1fr) auto}.number-stepper{display:grid}}.weekday-row{display:flex;flex-wrap:wrap;gap:.35rem}.chip{background:#eff3ef;border:1px solid #c4d1c5;border-radius:10px;color:#2d4f43;cursor:pointer;padding:.3rem .55rem}.chip-active{background:#cee2d3;border-color:#729b84}.starter-card{background:#f1f7ef;border:1px dashed #92b79f;border-radius:12px;display:grid;gap:.35rem;padding:.7rem}.week-controls{display:grid;gap:.65rem}.week-grid{display:grid;gap:.35rem;grid-template-columns:repeat(7,minmax(44px,1fr))}.day-cell{align-items:center;border-radius:10px;display:grid;min-height:44px;place-items:center}.day-label{color:#25463a;font-size:.74rem;font-weight:700}.day-green{background:#b9dfbf}.day-yellow{background:#f6e0a6}.day-red{background:#f2b3ac}.day-grey{background:#e2e7e2}.summary-cell{align-items:center;border-radius:12px;display:inline-flex;font-weight:700;justify-content:center;min-height:44px;padding:.35rem .6rem;width:fit-content}.summary-green{background:#b9dfbf}.summary-yellow{background:#f6e0a6}.summary-red{background:#f2b3ac}.shortfall-row{background:#f6f8f6;border:1px solid #d2ded1;border-radius:12px;display:grid;gap:.45rem;padding:.6rem}.toggle-row{align-items:center;display:flex;gap:.5rem}.metric-entry-form{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(160px,240px));justify-content:start}.metric-entry-form .btn{justify-self:start}.entry-row{align-items:center;background:#f6f8f6;border:1px solid #d2ded1;border-radius:12px;display:flex;justify-content:space-between;gap:.6rem;padding:.55rem .65rem}.chart-wrap{background:#f5faf5;border:1px solid #d3e0d5;border-radius:12px;padding:.45rem}.line-chart{height:auto;max-width:100%;width:100%}.chart-range{color:#4c6b5f;display:flex;font-size:.82rem;justify-content:space-between}.chart-title{color:#2b4f42;font-size:.9rem;margin-bottom:.3rem}.outcome-detail-header{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between}.suggested-link{color:#1d5d49;text-decoration:underline;text-underline-offset:2px}.suggested-link:hover{color:#2e7a5f}.skill-log-shell{background:#f7faf7;border:1px dashed #b8c9b9;border-radius:12px;padding:.6rem}.skill-log-panel{border-top:1px solid #d6e0d6;padding-top:.55rem}.skill-row{background:#f4f8f4;border:1px solid #d3ded4;border-radius:10px;display:grid;gap:.45rem;padding:.5rem}.skill-mini-form{display:grid;gap:.45rem;grid-template-columns:repeat(auto-fit,minmax(150px,220px));justify-content:start}@media (max-width: 880px){.topbar{gap:1.2rem}.account-zone{align-items:flex-start;flex-direction:column;gap:.4rem}.outcome-header{flex-direction:column}.week-grid{grid-template-columns:repeat(4,minmax(44px,1fr))}.entry-row{align-items:flex-start;flex-direction:column}}@media (max-width: 560px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-form-grid{grid-template-columns:1fr}.number-step-btn{min-height:28px;min-width:32px}}
