:root{color:#17211b;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f3f7f4;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}#root{min-height:100vh}:root{--background:#f3f7f4;--surface:#fff;--surface-muted:#f7faf8;--border:#dce7df;--border-strong:#bfd1c4;--text:#17211b;--text-muted:#637067;--primary:#186b46;--primary-dark:#105337;--primary-soft:#e6f4ec;--danger:#a53232;--danger-soft:#fff0f0;--success:#16663f;--success-soft:#e8f7ef;--shadow:0 20px 60px #193a281a}.page-shell,.dashboard-shell{min-height:100vh;padding:32px 20px}.page-shell{place-items:center;display:grid}.dashboard-shell{width:min(920px,100%);margin:0 auto}.auth-card,.form-card,.loading-card{background:var(--surface);border:1px solid var(--border);width:min(100%,520px);box-shadow:var(--shadow);border-radius:24px}.auth-card{padding:36px}.form-card{padding:32px}.wide-card{width:min(100%,700px)}.loading-card{text-align:center;padding:44px}.brand-mark{background:var(--primary);color:#fff;border-radius:15px;place-items:center;width:48px;height:48px;font-size:30px;font-weight:400;display:grid}.auth-heading,.section-heading{margin:24px 0}.auth-heading h1,.section-heading h1,.section-heading h2,.dashboard-header h1{margin:4px 0 8px;line-height:1.15}.auth-heading h1,.section-heading h1{font-size:clamp(28px,6vw,38px)}.section-heading h2{font-size:26px}.auth-heading p,.section-heading p{color:var(--text-muted);margin:0;line-height:1.6}.eyebrow{letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:12px;font-weight:750;color:var(--primary)!important}.form-stack{gap:20px;display:grid}.form-grid{gap:18px;display:grid}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.field-group{gap:8px;display:grid}.field-group>span,.choice-section legend{font-size:14px;font-weight:700}input,select{width:100%;min-height:48px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;outline:none;padding:11px 13px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #186b461f}input:disabled,select:disabled{color:#89928c;background:#edf1ee}.primary-button,.secondary-button,.text-button{border-radius:12px;min-height:48px;font-weight:750}.primary-button{color:#fff;background:var(--primary);border:1px solid var(--primary);padding:12px 18px}.primary-button:hover:not(:disabled){background:var(--primary-dark)}.primary-button:disabled{opacity:.6}.secondary-button{color:var(--primary);background:var(--surface);border:1px solid var(--border-strong);padding:12px 18px}.secondary-button:hover:not(:disabled){background:var(--primary-soft)}.text-button{color:var(--primary);background:0 0;border:0;padding:4px}.back-button{min-height:auto}.compact-button{min-height:42px;padding:9px 14px}.auth-divider{color:var(--text-muted);align-items:center;gap:12px;margin:24px 0 18px;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{background:var(--border);content:"";flex:1;height:1px}.message{border-radius:11px;padding:12px 14px;font-size:14px;line-height:1.5}.error-message{color:var(--danger);background:var(--danger-soft);border:1px solid #f1caca}.success-message{color:var(--success);background:var(--success-soft);border:1px solid #bfe5cf}.choice-section{border:0;min-width:0;margin:0;padding:0}.choice-section legend{margin-bottom:10px}.choice-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.choice-card{background:var(--surface-muted);border:1px solid var(--border);cursor:pointer;border-radius:13px;align-items:flex-start;gap:11px;min-width:0;padding:14px;display:flex}.choice-card:has(input:checked){background:var(--primary-soft);border-color:var(--primary)}.choice-card input{width:18px;min-height:18px;accent-color:var(--primary);margin-top:2px}.choice-card span{gap:3px;display:grid}.choice-card small{color:var(--text-muted);line-height:1.35}.measurement-panel{background:var(--surface-muted);border:1px solid var(--border);border-radius:15px;padding:18px}.measurement-panel h2,.measurement-panel h3{margin:0 0 15px;font-size:17px}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.dashboard-header h1{font-size:clamp(28px,5vw,40px)}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.summary-card{background:var(--surface);border:1px solid var(--border);border-radius:19px;justify-content:space-between;align-items:flex-start;gap:18px;min-height:166px;padding:22px;display:flex;box-shadow:0 10px 30px #193a280f}.summary-card>div:first-child{gap:7px;display:grid}.summary-card p{color:var(--text-muted);margin:0;font-size:14px}.summary-card strong{font-size:30px;line-height:1.2}.summary-card small{color:var(--text-muted)}.summary-count{white-space:nowrap;color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.empty-value{color:var(--text-muted);font-size:18px}.dashboard-form-card{width:100%}.loading-spinner{border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:34px;height:34px;margin:0 auto 18px;animation:.7s linear infinite spin}.loading-card p{color:var(--text-muted);margin:0}.startup-error{z-index:10;max-width:700px;color:var(--danger);background:var(--danger-soft);text-align:center;border:1px solid #f1caca;border-radius:12px;margin:0 auto;padding:12px 15px;position:fixed;top:16px;left:16px;right:16px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=680px){.page-shell,.dashboard-shell{padding:18px 14px}.auth-card,.form-card{border-radius:19px;padding:24px 20px}.two-columns,.choice-row,.summary-grid{grid-template-columns:1fr}.dashboard-header{align-items:flex-start}.dashboard-header .compact-button{white-space:nowrap}.summary-card{min-height:140px}}
