@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-50:#ecfdf5;--brand-100:#d1fae5;--brand-200:#a7f3d0;--brand-400:#34d399;--brand-500:#10b981;--brand-600:#059669;--brand-700:#047857;--brand-900:#064e3b;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;font-family:Inter,system-ui,sans-serif;color:var(--slate-800);background:var(--slate-50)}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;background:var(--slate-50);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{cursor:pointer}a{text-decoration:none}.login-view{min-height:100vh;background:var(--slate-900);display:flex;align-items:center;padding:24px;position:relative;overflow:hidden}.login-glow{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none}.login-glow-green{width:380px;height:380px;background:#05966933;right:-80px;top:-100px}.login-glow-blue{width:300px;height:300px;background:#2563eb1a;left:-80px;bottom:-100px}.login-panel{width:100%;max-width:448px;margin:auto;position:relative;z-index:1}.login-logo{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,var(--brand-400),var(--brand-600));display:grid;place-items:center;color:#fff;font-size:34px;box-shadow:0 12px 25px #05966940;margin-bottom:30px}.login-panel h1{color:#fff;font-size:30px;letter-spacing:-.035em;margin:0 0 8px}.login-panel>p{color:var(--slate-400);font-size:14px;margin:0 0 32px}.login-panel label{display:grid;gap:7px;color:var(--slate-400);font-size:12px;font-weight:500;margin-bottom:20px}.label-row{display:flex;justify-content:space-between}.label-row small{color:var(--brand-400)}.login-panel input{border:1px solid var(--slate-700);background:#1e293b80;color:#fff;border-radius:12px;padding:14px 16px;outline:none}.login-panel input:focus{border-color:var(--brand-500);box-shadow:0 0 0 1px var(--brand-500)}.login-submit{width:100%;border:0;border-radius:12px;background:var(--brand-600);color:#fff;padding:14px 18px;font-weight:600;display:flex;justify-content:center;gap:10px;margin-top:8px;box-shadow:0 10px 22px #05966940}.login-submit:hover{background:var(--brand-500)}.form-error{color:#fca5a5;font-size:13px;margin:-8px 0 12px}.patient-app{min-height:100vh}.patient-header{height:65px;background:#fff;border-bottom:1px solid var(--slate-200);position:sticky;top:0;z-index:20;box-shadow:0 1px 3px #0f172a0d}.patient-header-inner{max-width:1024px;height:100%;padding:0 24px;margin:auto;display:flex;align-items:center;justify-content:space-between}.patient-brand{display:flex;align-items:center;gap:10px;color:var(--slate-900);font-size:18px;font-weight:700}.patient-brand span{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--brand-500),var(--brand-700));display:grid;place-items:center;color:#fff;font-size:20px}.desktop-tabs{height:100%;display:flex;gap:32px}.desktop-tabs a{display:flex;align-items:center;color:var(--slate-500);font-size:14px;font-weight:500;border-bottom:2px solid transparent}.desktop-tabs a.active{color:var(--brand-600);font-weight:700;border-color:var(--brand-600)}.profile-actions{display:flex;align-items:center;gap:16px}.quick-book{padding:7px 12px;border-radius:8px;background:var(--brand-50);color:var(--brand-700);font-size:12px;font-weight:600}.profile-avatar{width:36px;height:36px;border:2px solid #fff;border-radius:50%;background:var(--brand-500);color:#fff;font-weight:700;box-shadow:0 1px 4px #0f172a20}.patient-main{width:100%;max-width:1024px;margin:auto;padding:24px 24px 48px}.mobile-tabs{display:none}.welcome-card{min-height:210px;padding:32px;border-radius:16px;background:var(--slate-900);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 28px #0f172a1a}.welcome-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:var(--brand-500);filter:blur(70px);opacity:.45;right:-30px;top:-150px}.welcome-card>div{position:relative;z-index:1}.phase-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:999px;background:#10b98133;border:1px solid #34d3994d;color:#6ee7b7;font-size:10px;font-weight:700;letter-spacing:.09em}.phase-pill i{width:6px;height:6px;border-radius:50%;background:var(--brand-400)}.welcome-card h1{font-size:30px;margin:16px 0 5px;letter-spacing:-.035em}.welcome-card p{margin:0;color:var(--slate-300);font-size:14px}.nutritionist-chip{background:#ffffff1a;border:1px solid #ffffff1a;border-radius:12px;padding:12px;display:flex;align-items:center;gap:12px}.nutritionist-chip>span{width:40px;height:40px;border-radius:50%;background:var(--slate-800);display:grid;place-items:center}.nutritionist-chip div{display:grid}.nutritionist-chip small{text-transform:uppercase;font-size:9px;color:var(--slate-400)}.nutritionist-chip strong{font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:16px 0 26px}.metric-card{min-height:142px;background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:16px;box-shadow:0 1px 3px #0f172a0d;display:flex;flex-direction:column;gap:10px}.metric-label{display:flex;align-items:center;gap:8px;color:var(--slate-500);font-size:12px;font-weight:500}.metric-label button{margin-left:auto;border:0;border-radius:5px;background:var(--brand-50);color:var(--brand-700);font-size:10px;padding:4px 7px}.icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-weight:700}.icon.amber{background:#fffbeb;color:#f59e0b}.icon.blue{background:#eff6ff;color:#3b82f6}.icon.green{background:var(--brand-50);color:var(--brand-600)}.icon.purple{background:#faf5ff;color:#a855f7}.metric-card>strong{font-size:24px;color:var(--slate-900)}.metric-card strong small{font-size:11px;color:var(--slate-400);font-weight:500}.meter{height:6px;border-radius:99px;background:var(--slate-100);overflow:hidden;margin-top:auto}.meter i{display:block;height:100%;border-radius:inherit}.amber-fill{background:#fbbf24}.blue-fill{background:#60a5fa}.green-fill{background:var(--brand-500)}.metric-card p{font-size:11px;color:var(--slate-500);margin:auto 0 0}.metric-card .positive{color:var(--brand-600);font-weight:600}.appointment-metric{cursor:pointer}.dashboard-columns{display:grid;grid-template-columns:2fr 1fr;gap:24px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-title h2,.dashboard-columns aside>h2{font-size:18px;color:var(--slate-900);margin:0}.section-title a{font-size:12px;color:var(--brand-600);font-weight:700}.meal-list{display:grid;gap:12px}.meal-card{width:100%;border:1px solid var(--slate-200);border-radius:12px;background:#fff;padding:15px;display:flex;align-items:center;gap:14px;text-align:left;box-shadow:0 1px 3px #0f172a0d}.meal-card:hover{border-color:var(--slate-300)}.meal-card.completed{background:var(--slate-50);opacity:.72}.meal-check{width:20px;height:20px;border:2px solid var(--slate-300);border-radius:5px;display:grid;place-items:center;color:#fff;flex:none}.completed .meal-check{background:var(--brand-500);border-color:var(--brand-500)}.meal-emoji{width:40px;height:40px;border-radius:50%;background:var(--slate-50);display:grid;place-items:center;font-size:19px}.meal-copy{flex:1;min-width:0;display:grid;gap:4px}.meal-copy small{font-size:10px;font-weight:700;color:var(--slate-500);text-transform:uppercase;letter-spacing:.05em}.meal-copy strong{font-size:14px;color:var(--slate-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.completed .meal-copy strong{text-decoration:line-through;color:var(--slate-400)}.kcal{font-size:11px;color:var(--slate-400);background:var(--slate-100);padding:4px 7px;border-radius:5px}.dashboard-columns aside{display:grid;align-content:start;gap:14px}.medical-card{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:16px;padding:20px}.medical-card>div{display:flex;gap:12px}.medical-card>div>span{color:var(--brand-600)}.medical-card p{font-size:13px;line-height:1.5;color:var(--brand-900);margin:0}.medical-card p strong{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.06em;margin-bottom:5px}.medical-card hr{border:0;border-top:1px solid var(--brand-200);margin:18px 0}.support-card{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:15px;color:var(--slate-700);font-size:13px;font-weight:600;display:flex;justify-content:space-between}.state-card{background:#fff;border:1px solid var(--slate-200);border-radius:14px;padding:24px;color:var(--slate-500)}.state-card.error{color:#b91c1c}.state-card button{margin-left:10px}.plan-heading,.appointments-heading{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 1px 3px #0f172a0d}.plan-heading span{display:inline-block;background:var(--slate-100);color:var(--slate-600);padding:5px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em}.plan-heading h1,.appointments-heading h1{font-size:25px;color:var(--slate-900);margin:10px 0 4px}.plan-heading p,.appointments-heading p{margin:0;color:var(--slate-500);font-size:14px}.plan-heading button{border:1px solid var(--slate-200);background:#fff;border-radius:12px;padding:11px 16px;color:var(--slate-700);font-weight:600}.macro-card{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:24px;margin-top:16px}.macro-card h2{font-size:14px;margin:0 0 20px}.macro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.macro-grid p{display:flex;justify-content:space-between;font-size:13px;margin:0 0 8px}.macro-grid small{display:block;text-align:right;color:var(--slate-400);font-size:10px;margin-top:6px}.day-tabs{display:flex;gap:8px;overflow:auto;border-bottom:1px solid var(--slate-200);padding:24px 0 10px}.day-tabs button{border:1px solid transparent;background:transparent;border-radius:8px;padding:9px 14px;color:var(--slate-600);white-space:nowrap}.day-tabs button.active{background:var(--brand-50);border-color:var(--brand-200);color:var(--brand-700);font-weight:700}.plan-meals{display:grid;gap:14px;margin-top:16px}.plan-meals article{display:grid;grid-template-columns:220px 1fr;gap:24px;background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:20px}.plan-meal-label{display:flex;gap:14px;border-right:1px solid var(--slate-100)}.plan-meal-label>span{width:48px;height:48px;border-radius:50%;background:var(--slate-50);display:grid;place-items:center;font-size:22px}.plan-meal-label h3{margin:4px 0;font-size:15px}.plan-meal-label small{color:var(--slate-500)}.plan-items p{margin:0 0 8px;font-size:13px;color:var(--slate-700)}.plan-items p b{color:var(--brand-500)}.appointments-heading button,.confirm-booking{border:0;border-radius:12px;background:var(--brand-600);color:#fff;padding:13px 18px;font-weight:700}.list-heading{font-size:14px;margin:24px 0 12px}.appointment-list{display:grid;gap:12px}.appointment-list article{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:20px;display:flex;align-items:center;gap:20px;box-shadow:0 1px 3px #0f172a0d}.date-tile{width:56px;height:56px;border-radius:12px;background:var(--brand-50);border:1px solid var(--brand-100);display:grid;place-content:center;text-align:center;color:var(--brand-700);flex:none}.date-tile small{font-size:9px;text-transform:uppercase;font-weight:800}.date-tile strong{font-size:20px}.appointment-info{flex:1}.appointment-info>div{display:flex;gap:10px;align-items:center}.appointment-info h3{margin:0;font-size:16px}.appointment-info span{font-size:10px;background:var(--slate-100);padding:4px 7px;border-radius:5px;font-weight:700}.appointment-info p{font-size:13px;color:var(--slate-500);margin:7px 0 0}.appointment-list a{background:#2563eb;color:#fff;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:600}.reschedule{border:1px solid var(--slate-200);background:#fff;border-radius:8px;padding:10px 14px;color:var(--slate-700)}.booking-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:grid;place-items:center;padding:16px}.booking-sheet{width:100%;max-width:448px;background:#fff;border-radius:16px;padding:28px;position:relative;display:grid;gap:18px;box-shadow:0 24px 60px #0f172a40}.booking-sheet h2{font-size:21px;margin:0}.booking-sheet>p{font-size:12px;color:var(--slate-500);margin:-12px 0 0}.booking-sheet label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--slate-700)}.booking-sheet input,.booking-sheet select{border:1px solid var(--slate-300);border-radius:12px;padding:12px;background:#fff}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-close{position:absolute;right:18px;top:16px;border:0;background:var(--slate-100);border-radius:50%;width:32px;height:32px;color:var(--slate-500);font-size:20px}.nutritionist-page{min-height:100vh;padding:32px max(24px,5vw);background:var(--slate-50)}.nutritionist-page header{display:flex;justify-content:space-between}.nutritionist-page header span{color:var(--brand-600);font-size:12px;font-weight:700}.nutritionist-page header h1{margin:5px 0 25px}.nutritionist-page header button{height:40px;border:1px solid var(--slate-200);background:#fff;border-radius:8px}.professional-hero{background:var(--slate-900);color:#fff;border-radius:18px;padding:32px}.professional-hero h2{font-size:34px;margin:10px 0}.professional-hero p{color:var(--slate-300)}.professional-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.professional-metrics article{background:#fff;border:1px solid var(--slate-200);border-radius:15px;padding:22px;display:grid;gap:10px}.professional-metrics small{color:var(--slate-500)}.professional-metrics strong{font-size:30px}@media(max-width:768px){.desktop-tabs{display:none}.patient-header-inner{padding:0 16px}.quick-book{display:none}.patient-main{padding:20px 16px 92px}.mobile-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;height:68px;padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--slate-200);box-shadow:0 -4px 12px #0f172a0d}.mobile-tabs a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--slate-400);font-size:10px;font-weight:700}.mobile-tabs a span{font-size:21px}.mobile-tabs a.active{color:var(--brand-600)}.welcome-card{padding:24px;display:block}.nutritionist-chip{margin-top:24px;width:max-content}.metric-grid{grid-template-columns:1fr 1fr}.dashboard-columns,.macro-grid{grid-template-columns:1fr}.plan-meals article{grid-template-columns:1fr}.plan-meal-label{border-right:0;border-bottom:1px solid var(--slate-100);padding-bottom:14px}.appointments-heading{align-items:flex-start;flex-direction:column}.appointments-heading button{width:100%}.appointment-list article{align-items:flex-start;flex-wrap:wrap}.appointment-info{min-width:180px}.appointment-list a,.reschedule{width:100%;text-align:center}.booking-overlay{align-items:end;padding:0}.booking-sheet{max-width:none;border-radius:24px 24px 0 0}.professional-metrics{grid-template-columns:1fr}}@media(max-width:420px){.metric-grid{grid-template-columns:1fr}.welcome-card h1{font-size:25px}.nutritionist-chip{width:100%}.meal-card{gap:10px}.kcal{display:none}.booking-fields{grid-template-columns:1fr}}@media print{.patient-header,.mobile-tabs,.plan-heading button{display:none}.patient-main{max-width:none}.plan-heading,.macro-card,.plan-meals article{box-shadow:none}}.nutrimed-alert{border:1px solid #d7e4de!important;border-radius:16px!important;padding:28px!important;font-family:inherit!important}.nutrimed-alert .swal2-title{color:#17382d!important;font-size:23px!important}.nutrimed-alert .swal2-html-container{color:#63766e!important;font-size:14px!important;line-height:1.55!important}.nutrimed-alert__confirm,.nutrimed-alert__cancel{min-height:42px!important;border-radius:9px!important;padding:0 18px!important;font-family:inherit!important;font-weight:750!important}.nutrimed-alert__confirm{background:#287a58!important}.nutrimed-alert__cancel{background:#edf2f0!important;color:#40574f!important}.nutrimed-toast{border:1px solid #d7e4de!important;border-radius:12px!important;box-shadow:0 14px 36px #102a201f!important;font-family:inherit!important}.nutrimed-toast .swal2-title{color:#29483d!important;font-size:13px!important}.swal2-container{z-index:10000!important}@media(max-width:600px){.nutrimed-alert{width:calc(100% - 28px)!important;padding:24px 18px!important}.nutrimed-toast{width:calc(100% - 24px)!important}}.global-loader{position:fixed;z-index:1000;top:0;left:0;right:0;height:3px;pointer-events:none;background:#10b9811a}.loader-track{height:100%;overflow:hidden}.loader-track i{display:block;width:42%;height:100%;background:linear-gradient(90deg,transparent,var(--brand-400),var(--brand-600),transparent);animation:loader-slide 1s linear infinite;will-change:transform}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes loader-slide{0%{transform:translate(-120%)}to{transform:translate(340%)}}.profile-menu{position:relative}.profile-menu summary{list-style:none}.profile-menu summary::-webkit-details-marker{display:none}.profile-menu[open] .profile-avatar{box-shadow:0 0 0 4px var(--brand-100)}.profile-popover{position:absolute;right:0;top:48px;width:248px;background:#fff;border:1px solid var(--slate-200);border-radius:14px;padding:8px;box-shadow:0 18px 48px #0f172a24;transform-origin:top right;animation:popover-in .18s cubic-bezier(.23,1,.32,1);z-index:40}.profile-summary{display:flex;align-items:center;gap:11px;padding:10px;margin-bottom:4px}.profile-summary>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--brand-100);color:var(--brand-700);font-size:12px;font-weight:800}.profile-summary div{display:grid;gap:3px;min-width:0}.profile-summary strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-summary small{font-size:11px;color:var(--slate-500)}.profile-popover>a,.profile-popover>button{width:100%;display:flex;padding:10px;border:0;border-radius:8px;background:transparent;color:var(--slate-700);font-size:13px;text-align:left}.profile-popover>a:hover,.profile-popover>button:hover{background:var(--slate-50)}.profile-popover>button{color:#b91c1c}.profile-popover hr{border:0;border-top:1px solid var(--slate-100);margin:5px 0}@keyframes popover-in{0%{opacity:0;transform:translateY(-5px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.skeleton{position:relative;overflow:hidden;background:#e8eef0;border-radius:14px}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#ffffffa6 48%,transparent 76%);transform:translate(-100%);animation:skeleton-wave 1.35s linear infinite;will-change:transform}@keyframes skeleton-wave{to{transform:translate(100%)}}.dashboard-skeleton,.plan-skeleton{display:grid;gap:16px}.skeleton-hero{height:238px}.skeleton-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.skeleton-card{height:154px}.skeleton-columns{display:grid;grid-template-columns:2fr 1fr;gap:28px}.skeleton-list,.skeleton-side{height:280px}.skeleton-plan-head{height:138px}.skeleton-macros{height:158px}.skeleton-tabs{height:48px}.skeleton-plan-row{height:136px}.appointment-skeleton{display:grid;gap:12px}.skeleton-appointment{height:104px}.empty-state{text-align:center;padding:42px 24px}.empty-state>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--brand-50);color:var(--brand-600);margin:0 auto 12px;font-size:24px}.empty-state h3{margin:0 0 6px;color:var(--slate-800)}.empty-state p{margin:0;font-size:13px}.profile-page>header{margin-bottom:22px}.profile-page>header span{font-size:10px;letter-spacing:.1em;color:var(--brand-600);font-weight:800}.profile-page>header h1{font-size:28px;letter-spacing:-.04em;margin:7px 0}.profile-page>header p{color:var(--slate-500);margin:0}.profile-grid{display:grid;grid-template-columns:280px 1fr;gap:18px}.profile-identity,.profile-details{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:28px;box-shadow:0 2px 8px #0f172a0a}.profile-identity{text-align:center}.large-avatar{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-400),var(--brand-700));color:#fff;font-size:23px;font-weight:800;margin:0 auto 18px;box-shadow:0 10px 24px #0596692e}.profile-identity h2{margin:0 0 5px;font-size:20px}.profile-identity p{font-size:13px;color:var(--slate-500)}.verified-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--brand-50);color:var(--brand-700);font-size:11px;font-weight:700}.profile-details h2{font-size:17px;margin:0 0 20px}.profile-details dl{margin:0}.profile-details dl>div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:14px 0;border-top:1px solid var(--slate-100)}.profile-details dt{font-size:12px;color:var(--slate-500)}.profile-details dd{margin:0;font-size:13px;font-weight:600;color:var(--slate-800)}.privacy-note{margin:22px 0 0;padding:13px;background:var(--slate-50);border-radius:9px;font-size:12px;color:var(--slate-500);line-height:1.5}.patient-main{padding-top:30px}.welcome-card{min-height:238px;padding:38px 40px}.metric-grid{margin-top:18px;margin-bottom:30px}.metric-card{padding:18px;min-height:154px}.dashboard-columns{gap:28px}.meal-card{min-height:74px;padding:16px 18px}.meal-list .meal-card{grid-template-columns:44px minmax(0,1fr) auto;cursor:default}.medical-card{padding:22px}.plan-heading,.appointments-heading{padding:28px}.plan-meals article,.appointment-list article{padding:22px}.patient-header-inner{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;column-gap:34px;min-height:78px}.desktop-tabs{justify-content:center;gap:clamp(12px,1.7vw,30px);min-width:0}.desktop-tabs a{padding-inline:0;white-space:nowrap}.profile-actions{justify-self:end;gap:14px;padding-left:22px;border-left:1px solid #e5ebe8}.welcome-card+app-clinical-progress{display:block;margin-top:20px}.notification-trigger{position:relative;display:grid;place-items:center;width:34px;height:34px;color:#40546d;border-radius:9px}.notification-trigger:hover{background:#f1f6f4;color:#157654}.notification-trigger svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.notification-trigger b{position:absolute;top:1px;right:1px;min-width:15px;height:15px;padding:0 3px;display:grid;place-items:center;border:2px solid #fff;border-radius:999px;background:#d94b4b;color:#fff;font-size:9px;line-height:1;font-variant-numeric:tabular-nums}@media(max-width:900px){.patient-header-inner{column-gap:20px}.desktop-tabs{gap:16px}.profile-actions{padding-left:16px}}@media(max-width:768px){.profile-popover{position:fixed;right:16px;top:58px}.skeleton-metrics{grid-template-columns:1fr 1fr}.skeleton-columns,.profile-grid{grid-template-columns:1fr}.profile-details dl>div{grid-template-columns:1fr;gap:5px}.patient-main{padding-top:22px}.welcome-card{padding:26px}.metric-card{min-height:142px}}@media(max-width:420px){.skeleton-metrics{grid-template-columns:1fr}.skeleton-hero{height:280px}.profile-identity,.profile-details{padding:22px}}@media(prefers-reduced-motion:reduce){.loader-track i,.skeleton:after{animation-duration:2s}.profile-popover{animation:none}}@media(max-width:960px){.desktop-tabs,.patient-header .profile-actions{display:none}.mobile-tabs{display:flex}.patient-main{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.patient-header-inner{grid-template-columns:1fr auto}.patient-header{min-height:64px}.notification-popover,.profile-popover{max-width:calc(100vw - 24px)}}@media(max-width:480px){.skeleton-metrics,.metric-grid{grid-template-columns:1fr}.profile-identity,.profile-details{padding:22px}.appointment-list article{display:grid;grid-template-columns:56px minmax(0,1fr)}.appointment-list article>:is(a,button){grid-column:1/-1;width:100%}.appointment-info{min-width:0}.appointment-info :where(h3,p),.patient-documents :where(h2,p){overflow-wrap:anywhere}}.notification-menu{position:relative}.notification-menu summary{list-style:none;color:var(--slate-600);font-size:12px;font-weight:700;cursor:pointer}.notification-menu summary::-webkit-details-marker{display:none}.notification-menu summary b{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:99px;background:#dc3f36;color:#fff;font-size:9px;margin-left:4px}.notification-popover{position:absolute;right:0;top:38px;width:320px;max-height:360px;overflow:auto;background:#fff;border:1px solid var(--slate-200);border-radius:14px;padding:7px;box-shadow:0 18px 48px #0f172a24;z-index:50}.notification-popover button{width:100%;display:grid;gap:4px;text-align:left;border:0;border-radius:9px;background:#fff;padding:11px;color:var(--slate-700)}.notification-popover button.unread{background:var(--brand-50)}.notification-popover button strong{font-size:12px}.notification-popover button span,.notification-popover p{font-size:11px;color:var(--slate-500);margin:0}.patient-documents .document-kind{font-size:9px;color:var(--brand-700);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.patient-documents article>button{border:0;border-radius:9px;padding:10px 14px;background:var(--brand-600);color:#fff;font-weight:700}.substitution{display:block;color:var(--brand-700);margin:4px 0 0 18px}.meal-instructions{margin-top:10px!important;padding-top:10px;border-top:1px solid var(--slate-100)}@media(max-width:768px){.notification-menu{display:none}}.pro-shell{min-height:100vh;background:#f4f7f6}.pro-shell>aside{position:fixed;inset:0 auto 0 0;width:246px;padding:26px 18px;background:#10241f;color:#dce8e4;display:flex;flex-direction:column;z-index:30}.pro-brand{display:flex;align-items:center;gap:12px;color:#fff;padding:0 8px 30px}.pro-brand>b{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#48c598;color:#0b2a20;font-size:21px}.pro-brand>span{font-size:17px;font-weight:700;letter-spacing:-.03em}.pro-brand small{display:block;color:#86a69b;font-size:8px;letter-spacing:.14em;margin-top:3px}.pro-shell aside nav{display:grid;gap:5px}.pro-shell aside nav a{color:#a9c0b8;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:600}.pro-shell aside nav a:hover,.pro-shell aside nav a.active{background:#1b3a31;color:#fff}.pro-user{margin-top:auto;border-top:1px solid #ffffff17;padding:20px 4px 0;display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}.pro-user>span{width:36px;height:36px;border-radius:50%;background:#dff7ed;color:#176a4c;display:grid;place-items:center;font-size:11px;font-weight:800}.pro-user div{display:grid;min-width:0}.pro-user strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.pro-user small{font-size:10px;color:#86a69b}.pro-user button{border:0;background:none;color:#86a69b;font-size:11px}.pro-stage{min-height:100vh;margin-left:246px}.pro-mobile-head{display:none}.pro-page{max-width:1240px;margin:auto;padding:42px 42px 70px}.pro-page-head,.builder-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.pro-page h1,.builder-head h1{font-size:30px;letter-spacing:-.045em;margin:0 0 7px;color:#142b24}.pro-page-head p,.builder-head p{color:#65766f;margin:0;font-size:13px}.pro-primary,.pro-secondary{border:0;border-radius:9px;padding:11px 16px;font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center}.pro-primary{background:#167a58;color:#fff}.pro-primary:hover{background:#106346}.pro-primary:disabled{background:#9caea7;cursor:not-allowed}.pro-secondary{background:#fff;color:#24463a;border:1px solid #cad8d3}.pro-panel{background:#fff;border:1px solid #dce6e2;border-radius:14px;padding:24px;box-shadow:0 5px 18px #163e2f0a}.pro-welcome{min-height:194px;padding:34px 38px;background:#ccefe2;display:flex;justify-content:space-between;align-items:flex-end;border-radius:18px;margin-bottom:18px;position:relative;overflow:hidden}.pro-welcome:after{content:"";position:absolute;width:270px;height:270px;border:50px solid #fff6;border-radius:50%;right:-60px;top:-145px}.pro-welcome h2{font-size:26px;letter-spacing:-.04em;margin:0 0 8px;color:#10392b}.pro-welcome p{max-width:560px;color:#366b59;font-size:13px;line-height:1.6}.pro-welcome a{z-index:1;color:#0e6043;font-size:12px;font-weight:800}.pro-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.pro-stat-grid article{background:#fff;padding:22px;border:1px solid #dce6e2;border-radius:14px;display:grid;gap:8px}.pro-stat-grid span{font-size:11px;color:#6b7c76;text-transform:uppercase;letter-spacing:.06em}.pro-stat-grid strong{font-size:30px;color:#152e25;font-variant-numeric:tabular-nums}.pro-stat-grid a,.pro-stat-grid small{font-size:11px;color:#248063}.pro-panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.pro-panel h2{font-size:17px;letter-spacing:-.025em;color:#173229;margin:0 0 6px}.pro-panel p{color:#6f7e79;font-size:12px}.pro-empty{padding:42px 12px;display:grid;gap:5px;text-align:center;color:#7a8984;font-size:12px}.pro-empty strong{color:#324c43;font-size:14px}.pro-list{display:grid}.pro-list>a,.pro-list>div{padding:14px 2px;border-top:1px solid #edf2f0;display:flex;justify-content:space-between;align-items:center;color:#263e36}.pro-list div div,.pro-list>a div{display:grid;gap:4px}.pro-list strong{font-size:13px}.pro-list span{font-size:11px;color:#73827d}.pro-list b,.builder-actions>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;background:#fff5d9;color:#8a6500;border-radius:99px;padding:6px 9px}.pro-list b.published,.builder-actions>span.published{background:#ddf7eb;color:#166344}.pro-form{margin-bottom:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label,.pro-form label,.builder-footer>label{display:grid;gap:7px;font-size:11px;color:#566b63;font-weight:700}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.pro-toolbar input,.meal-editor input,.meal-editor select,.meal-notes textarea,.food-picker input,.builder-footer textarea,.builder-meta input,.builder-meta select{width:100%;border:1px solid #cfdbd7;border-radius:8px;background:#fbfcfc;color:#19362c;padding:10px 11px;outline:none}.form-grid textarea,.meal-notes textarea,.builder-footer textarea{min-height:84px;resize:vertical}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,.food-picker input:focus{border-color:#24956e;box-shadow:0 0 0 3px #c9f3e3}.form-grid.textareas textarea{min-height:105px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:20px}.form-message{margin-right:auto;color:#a23e35}.success-text{margin-right:auto;color:#167a58}.inline-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center}.pro-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.pro-toolbar input{width:min(420px,100%)}.pro-toolbar span{font-size:11px;color:#7a8984}.pro-table-wrap{overflow:auto}.pro-table{width:100%;border-collapse:collapse;font-size:12px}.pro-table th{text-align:left;color:#84918d;font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:11px 13px;border-bottom:1px solid #dce6e2}.pro-table td{padding:15px 13px;border-bottom:1px solid #edf2f0}.pro-table td:first-child{display:grid;gap:4px}.pro-table td small{color:#7a8984}.pro-table a{color:#167a58;font-weight:700}.record-head{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;margin-bottom:25px}.record-head>a{font-size:11px;color:#65766f}.record-title{display:flex;align-items:center;gap:14px}.record-title>span{width:48px;height:48px;border-radius:14px;background:#d7f3e8;color:#116a4a;display:grid;place-items:center;font-weight:800}.record-title h1{font-size:25px;margin:0}.record-title p{font-size:11px;color:#6b7c76;margin:4px 0 0}.record-tabs{display:flex;gap:4px;border-bottom:1px solid #d8e2de;margin-bottom:20px;overflow:auto}.record-tabs button{border:0;background:none;padding:12px 15px;color:#74837e;font-size:12px;white-space:nowrap;border-bottom:2px solid transparent}.record-tabs button.active{color:#126c4d;border-color:#20a574;font-weight:700}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.record-facts{margin:10px 0 0}.record-facts>div{display:grid;grid-template-columns:140px 1fr;gap:14px;padding:13px 0;border-top:1px solid #edf2f0;font-size:12px}.record-facts dt{color:#788781}.record-facts dd{margin:0;color:#263e36}.measure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.measure-grid div{background:#f2f7f5;border-radius:10px;padding:17px;display:grid;gap:2px}.measure-grid strong{font-size:21px}.measure-grid span{font-size:9px;text-transform:uppercase;color:#74837e}.timeline{display:grid}.timeline>div{display:grid;gap:5px;padding:14px 2px;border-top:1px solid #edf2f0}.timeline time{font-size:9px;color:#83918c;text-transform:uppercase}.timeline strong{font-size:12px}.timeline span{font-size:11px;color:#6e7e78}.form-help{margin-top:-2px}.food-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.food-grid article{border:1px solid #e1e9e6;border-radius:11px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px}.food-grid article>div{display:grid;gap:4px}.food-grid article span{font-size:10px;color:#75857f}.food-grid article>b{font-size:18px;color:#176d50}.food-grid article>b small{font-size:9px}.food-grid dl{grid-column:1/-1;margin:0;display:flex;gap:18px;padding-top:10px;border-top:1px solid #edf2f0}.food-grid dl div{display:flex;gap:6px;font-size:10px}.food-grid dt{color:#82908b}.food-grid dd{margin:0;font-weight:700}.builder-page{max-width:1380px}.builder-head{align-items:center}.builder-head>a{display:block;color:#697b74;font-size:11px;margin-bottom:10px}.builder-actions{display:flex;align-items:center;gap:9px}.builder-message{padding:12px 15px;border-radius:9px;background:#e1f7ed;color:#176a4d;font-size:12px;margin-bottom:14px}.builder-message.error{background:#fff0ed;color:#a13a31}.builder-meta{margin-bottom:14px}.target-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.target-strip label{display:grid;grid-template-columns:1fr auto;align-items:center;background:#f1f6f4;border-radius:9px;padding:11px}.target-strip label span{grid-column:1/-1;font-size:9px;text-transform:uppercase;color:#71827c}.target-strip input{border:0!important;padding:4px 0!important;background:transparent!important;font-size:20px;font-weight:800}.target-strip small{font-size:9px;color:#768680}.day-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:15px 0}.day-tabs button{border:1px solid #d9e4e0;background:#fff;border-radius:9px;padding:10px 5px;color:#667872;display:grid;gap:3px}.day-tabs button.active{background:#173b30;border-color:#173b30;color:#fff}.day-tabs span{font-size:11px;font-weight:700}.day-tabs small{font-size:8px;opacity:.72}.meal-stack{display:grid;gap:12px}.meal-editor>header{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.meal-editor>header>div{display:grid;grid-template-columns:150px 110px 1fr;gap:8px;flex:1}.text-danger{border:0;background:none;color:#a74238;font-size:10px}.meal-item-row{display:grid;grid-template-columns:1.2fr 90px 170px 1fr 30px;gap:12px;align-items:center;border-top:1px solid #edf2f0;padding:11px 0;font-size:10px}.meal-item-row>div{display:grid}.meal-item-row span{color:#6f8079}.meal-item-row input{padding:8px!important}.meal-item-row button{border:0;background:#fff0ed;color:#9a3f36;width:26px;height:26px;border-radius:7px}.food-picker{position:relative;margin-top:10px}.food-results{position:absolute;z-index:10;left:0;right:0;top:44px;background:#fff;border:1px solid #d4e0dc;border-radius:10px;box-shadow:0 12px 30px #173b3020;max-height:240px;overflow:auto;padding:5px}.food-results button{width:100%;border:0;background:#fff;display:flex;justify-content:space-between;padding:10px;border-radius:7px;text-align:left}.food-results button:hover{background:#edf7f3}.food-results button span{display:grid}.food-results small{color:#788982}.meal-notes{margin-top:14px}.meal-notes textarea{min-height:58px}.add-meal{border:1px dashed #9db9af;background:#edf7f3;color:#17694d;border-radius:11px;padding:15px;font-weight:700}.builder-footer{margin-top:14px;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:end}.builder-footer>div{display:grid;text-align:right;color:#1b4939;font-size:12px}.builder-footer>div span{font-size:10px;color:#74857f;margin-top:4px}::selection{background:#bcebd9;color:#123b2d}:focus-visible{outline:3px solid #66d6ad;outline-offset:2px}@media(max-width:980px){.pro-shell>aside{transform:translate(-100%);transition:transform .25s cubic-bezier(.2,.8,.2,1)}.pro-shell>aside.open{transform:translate(0)}.pro-stage{margin-left:0}.pro-mobile-head{height:58px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;background:#10241f;color:#fff}.pro-mobile-head button{border:0;background:none;color:#fff}.pro-page{padding:28px 22px 60px}.record-grid{grid-template-columns:1fr}.day-tabs{overflow:auto;grid-template-columns:repeat(7,minmax(92px,1fr))}.meal-item-row{grid-template-columns:1fr 80px 1fr 30px}.meal-item-row>span:nth-of-type(2){display:none}}@media(max-width:680px){.pro-page-head,.builder-head{align-items:stretch;flex-direction:column}.pro-page-head .pro-primary{align-self:flex-start}.pro-stat-grid,.food-grid,.form-grid,.form-grid.compact,.target-strip{grid-template-columns:1fr 1fr}.record-head{grid-template-columns:1fr auto}.record-head>a{grid-column:1/-1}.record-title p{line-height:1.5}.builder-actions{flex-wrap:wrap}.meal-editor{padding:16px}.meal-editor>header>div{grid-template-columns:1fr 100px}.meal-name{grid-column:1/-1}.meal-item-row{grid-template-columns:1fr auto}.meal-item-row>span:nth-of-type(2),.meal-item-row input{grid-column:1/-1}.builder-footer{grid-template-columns:1fr}.builder-footer>div{text-align:left}.pro-welcome{padding:28px;min-height:210px;flex-direction:column;align-items:flex-start}.pro-welcome:after{opacity:.5}.pro-table{min-width:600px}}@media(max-width:430px){.pro-page{padding:22px 14px 50px}.pro-stat-grid,.form-grid,.form-grid.compact,.target-strip,.food-grid{grid-template-columns:1fr}.record-title>span{display:none}.measure-grid{grid-template-columns:repeat(3,1fr)}.pro-panel{padding:18px}}.builder-page .day-tabs button span{font-size:12px;font-weight:750}.builder-page .day-tabs button small{font-variant-numeric:tabular-nums}.builder-page .meal-editor>header>div{grid-template-columns:180px 158px minmax(260px,1fr)}.builder-page .meal-editor>header input[type=time]{min-width:158px;padding-right:8px;font-variant-numeric:tabular-nums}.meal-details{display:grid;grid-template-columns:1fr;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid #e6ece9}.meal-field-head{min-height:18px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#29463c}.meal-field-head strong{font-size:11px;font-weight:750}.meal-field-head span,.meal-field-head small{color:#74847e;font-size:10px;font-weight:500}.food-picker>input{width:100%}.food-results{max-height:264px;overflow-y:auto;margin-top:6px;padding:6px;border:1px solid #cad8d3;border-radius:10px;background:#fff;box-shadow:0 10px 24px #19362c12;overscroll-behavior:contain}.food-results>p{margin:0;padding:14px;color:#677871;font-size:11px}.food-results>p.error{color:#9d332d}.food-results button{width:100%;min-height:48px;padding:8px 10px;border:0;border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;color:#19362c}.food-results button:hover,.food-results button:focus-visible{background:#eef6f2;outline:none}.food-results button span{display:grid;gap:2px}.food-results button strong{font-size:11px}.food-results button small{color:#74847e;font-size:10px}.food-results button b{font-size:10px;color:#557067}.meal-notes{display:block!important;width:100%;color:inherit!important;font-size:inherit!important;font-weight:inherit!important}.meal-notes textarea{width:100%;min-height:82px!important;margin:0;resize:vertical}.meal-notes textarea::placeholder{font-size:11px}.meal-editor .meal-items:empty{display:none}@media(max-width:760px){.builder-page .meal-editor>header>div{grid-template-columns:minmax(150px,1fr) 150px}.builder-page .meal-name{grid-column:1/-1}.meal-details{grid-template-columns:1fr}.food-results{position:static;margin-top:14px}.builder-page .day-tabs{grid-template-columns:repeat(7,minmax(112px,1fr))}}.meal-details .food-results{margin-top:14px}.day-nutrients{display:flex;align-items:center;gap:18px;margin:12px 0 18px;padding:10px 14px;border:1px solid #dce7e2;border-radius:9px;background:#f8fbf9;color:#34554a;font-size:11px;font-variant-numeric:tabular-nums}.day-nutrients strong{color:#183d30}.day-nutrients span{font-weight:700}.day-nutrients small{margin-left:4px;color:#75857f;font-weight:500}@media(max-width:680px){.day-nutrients{flex-wrap:wrap;gap:8px 14px}}@media(prefers-reduced-motion:reduce){.pro-shell>aside{transition:none}}.preparation-panel{margin-top:18px}.preparation-form{margin-bottom:24px}.preparation-form textarea{min-height:74px}.food-grid article>p{grid-column:1/-1;margin:0;color:#697b74;line-height:1.5}.availability-form{display:grid;grid-template-columns:1fr 100px 100px auto;gap:8px;margin-bottom:15px}.availability-form input,.availability-form select,.meet-row input{border:1px solid #cfdbd7;border-radius:8px;padding:9px;background:#fbfcfc}.meet-row{display:flex;gap:8px;margin-top:4px}.meet-row input{flex:1}.timeline a{color:#167a58;font-size:11px;font-weight:700}@media(max-width:680px){.availability-form{grid-template-columns:1fr 1fr}.availability-form select{grid-column:1/-1}}.document-upload{display:grid;grid-template-columns:160px 1fr auto;gap:10px;padding:14px;background:#f2f7f5;border-radius:10px;margin-bottom:16px}.document-upload select,.document-upload input{border:1px solid #cfdbd7;border-radius:8px;padding:9px;background:#fff}.document-upload--metadata{grid-template-columns:1fr 1fr;gap:14px;padding:18px}.document-upload--metadata label{display:grid;gap:7px;color:#4e625a;font-size:11px;font-weight:700}.document-upload--metadata label>span{color:#7a8a84;font-size:10px;font-weight:500}.document-upload--metadata input{width:100%}.document-upload--metadata .document-file{grid-column:1/-1}.document-upload--metadata>.pro-primary{grid-column:2;justify-self:end}.print-plan{display:none}@media(max-width:680px){.document-upload,.document-upload--metadata{grid-template-columns:1fr}.document-upload--metadata>.pro-primary{grid-column:1;width:100%}}@media print{.pro-shell>aside,.pro-mobile-head,.builder-actions,.builder-head a,.builder-message,.food-picker,.add-meal,.text-danger,.day-tabs,.meal-stack{display:none!important}.pro-stage{margin:0}.pro-page{padding:0;max-width:none}.builder-head{display:block;margin-bottom:14px}.builder-meta,.builder-footer{box-shadow:none}.builder-meta input,.builder-meta select,.builder-footer textarea{border:0;background:transparent;padding:0;appearance:none}.print-plan{display:grid;grid-template-columns:1fr 1fr;gap:12px}.print-plan article{border:1px solid #cfd9d5;border-radius:8px;padding:12px;break-inside:avoid}.print-plan h2{font-size:13pt;margin:0 0 8px}.print-plan h3{font-size:10pt;margin:7px 0 3px}.print-plan h3 small{font-weight:400;color:#65766f}.print-plan ul{margin:0;padding-left:17px}.print-plan li,.print-plan p{font-size:8.5pt;line-height:1.35}.print-plan li span{color:#65766f}.builder-page{font-size:10pt}@page{size:A4;margin:14mm}}:root{--pro-control-h:40px;--pro-radius:9px;--pro-border:#cbd9d4;--pro-border-hover:#9fb7ae;--pro-focus:#1f8a65;--pro-primary:#197653;--pro-primary-hover:#125f42;--pro-danger:#b83a32;--pro-danger-bg:#fff0ee;--pro-muted-bg:#f3f7f5}.pro-page :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){height:var(--pro-control-h);min-height:var(--pro-control-h);padding:0 12px;border:1px solid var(--pro-border);border-radius:var(--pro-radius);background:#fff;color:#19362c;font-size:12px;line-height:1;box-shadow:none;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.pro-page :where(textarea){min-height:80px;padding:10px 12px;border:1px solid var(--pro-border);border-radius:var(--pro-radius);background:#fff;color:#19362c;font:inherit;font-size:12px;line-height:1.45;box-shadow:none;outline:none;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.pro-page :where(input,select,textarea):hover{border-color:var(--pro-border-hover)}.pro-page :where(input,select,textarea):focus{border-color:var(--pro-focus);box-shadow:0 0 0 3px #1f8a6518}.pro-page :where(input,textarea)::placeholder{color:#8b9994;opacity:1}.pro-page :where(input,select,textarea):disabled{background:#eef3f1;color:#899792;cursor:not-allowed}.pro-primary,.pro-secondary,.text-danger,.add-meal,.logout-button{min-height:38px;border-radius:var(--pro-radius);padding:0 14px;font-size:12px;font-weight:700;line-height:1;border:1px solid transparent;box-shadow:none;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.pro-primary{background:var(--pro-primary);color:#fff}.pro-primary:hover{background:var(--pro-primary-hover)}.pro-secondary{background:#fff;border-color:var(--pro-border);color:#274a3e}.pro-secondary:hover{background:var(--pro-muted-bg);border-color:var(--pro-border-hover)}.text-danger{background:transparent;color:var(--pro-danger);padding-inline:10px}.text-danger:hover{background:var(--pro-danger-bg)}.pro-primary:active,.pro-secondary:active,.text-danger:active{transform:translateY(1px)}.pro-primary:disabled,.pro-secondary:disabled{background:#dce5e1;border-color:#dce5e1;color:#83918c;cursor:not-allowed;transform:none}.pro-toolbar{min-height:42px}.pro-toolbar label{display:block;flex:0 1 360px}.pro-toolbar input[type=search],.pro-toolbar>input[type=search]{width:min(360px,100%);height:40px!important;min-height:40px!important;padding:0 13px!important;font-size:12px!important;border-radius:9px!important}.pro-toolbar input[type=search]::-webkit-search-cancel-button{opacity:.55}.pro-shell>aside{width:246px}.pro-shell.sidebar-collapsed>aside{width:78px;padding-inline:12px}.pro-shell.sidebar-collapsed .pro-stage{margin-left:78px}.pro-shell aside nav a{display:flex;align-items:center;gap:12px;min-height:44px}.pro-shell aside nav a svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pro-shell.sidebar-collapsed .pro-brand{padding-inline:8px;justify-content:center}.pro-shell.sidebar-collapsed .pro-brand>span,.pro-shell.sidebar-collapsed aside nav a span,.pro-shell.sidebar-collapsed .sidebar-toggle span,.pro-shell.sidebar-collapsed .pro-user div,.pro-shell.sidebar-collapsed .logout-button{display:none}.pro-shell.sidebar-collapsed aside nav a{justify-content:center;padding-inline:0}.pro-shell.sidebar-collapsed .pro-user{grid-template-columns:1fr;justify-items:center}.sidebar-toggle{width:100%;min-height:38px;margin-top:auto;margin-bottom:10px;border:1px solid #ffffff14;border-radius:9px;background:transparent;color:#91aaa1;display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px}.sidebar-toggle:hover{background:#1b3a31;color:#fff}.sidebar-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.pro-shell.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}.pro-user{margin-top:0}.logout-button{min-height:30px;padding:0 8px!important;color:#ef7d76!important;background:transparent!important}.logout-button:hover{color:#fff!important;background:#9f302b!important}.ui-button--add{background:var(--pro-primary);border-color:var(--pro-primary);color:#fff}.ui-button--edit{background:#fff;border-color:var(--pro-border);color:#274a3e}.ui-button--delete{background:transparent;border-color:transparent;color:var(--pro-danger)}.ui-button--delete:hover{background:var(--pro-danger-bg)}.pro-mobile-head button{min-height:36px;border:1px solid #ffffff20;border-radius:8px;background:transparent;color:#fff;padding:0 12px;font-weight:700}.ui-skeleton{display:grid;gap:14px}.ui-skeleton>*:not(.ui-skeleton__stats):not(.ui-skeleton__columns),.ui-skeleton__stats>div,.ui-skeleton__columns>div{position:relative;overflow:hidden;background:#e5ece9;border-radius:12px}.ui-skeleton>*:not(.ui-skeleton__stats):not(.ui-skeleton__columns):after,.ui-skeleton__stats>div:after,.ui-skeleton__columns>div:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,#ffffffa8 48%,transparent 76%);transform:translate(-100%);animation:pro-skeleton 1.3s linear infinite}.ui-skeleton__hero{height:194px}.ui-skeleton__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ui-skeleton__stats>div{height:142px}.ui-skeleton__panel{height:270px}.ui-skeleton__toolbar{height:42px;width:min(360px,100%)}.ui-skeleton__row{height:64px}.ui-skeleton__row--large{height:150px}.ui-skeleton__identity{height:62px;width:55%}.ui-skeleton__tabs{height:43px}.ui-skeleton__columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ui-skeleton__columns>div{height:340px}@keyframes pro-skeleton{to{transform:translate(100%)}}@media(max-width:980px){.pro-shell.sidebar-collapsed .pro-stage{margin-left:0}.pro-shell.sidebar-collapsed>aside{width:246px;padding-inline:18px}.pro-shell.sidebar-collapsed .pro-brand{padding-inline:8px;justify-content:flex-start}.pro-shell.sidebar-collapsed .pro-brand>span,.pro-shell.sidebar-collapsed aside nav a span,.pro-shell.sidebar-collapsed .sidebar-toggle span,.pro-shell.sidebar-collapsed .pro-user div,.pro-shell.sidebar-collapsed .logout-button{display:initial}.pro-shell.sidebar-collapsed aside nav a{justify-content:flex-start;padding-inline:14px}.pro-shell.sidebar-collapsed .pro-user{grid-template-columns:36px 1fr auto;justify-items:stretch}.sidebar-toggle{display:none}}@media(max-width:680px){.ui-skeleton__stats,.ui-skeleton__columns{grid-template-columns:1fr}.ui-skeleton__stats>div{height:100px}}@media(prefers-reduced-motion:reduce){.ui-skeleton>*:after,.ui-skeleton__stats>div:after,.ui-skeleton__columns>div:after{animation:none}.pro-shell>aside,.pro-stage{transition:none}}.admin-stats{grid-template-columns:repeat(4,1fr)}.admin-grid{margin:18px 0}.admin-assignments{display:grid;max-height:440px;overflow:auto}.admin-assignments>label{display:grid;grid-template-columns:1fr 190px;gap:14px;align-items:center;padding:11px 0;border-top:1px solid #edf2f0}.admin-assignments>label>span{display:grid;gap:3px}.admin-assignments strong{font-size:12px}.admin-assignments small{font-size:10px;color:#72827c}.admin-audit{margin-top:18px}@media(max-width:680px){.admin-stats{grid-template-columns:1fr 1fr}.admin-assignments>label{grid-template-columns:1fr}}.pro-primary:disabled,.pro-secondary:disabled{background:#dce5e1;border-color:#c8d4cf;color:#50615b}.clinical-progress{margin:0 0 26px;padding:17px 20px;border:1px solid #dfe6e3;border-radius:11px;background:#fff}.clinical-progress__summary{display:flex;align-items:center;justify-content:space-between;gap:18px}.clinical-progress h2{margin:0 0 3px;font-size:14px;color:#18362d}.clinical-progress__summary p{margin:0;color:#65766f;font-size:11px}.clinical-progress__summary>strong{font-size:19px;color:#274a3e;font-variant-numeric:tabular-nums}.clinical-progress progress{display:block;width:100%;height:5px;margin:11px 0 13px;accent-color:#557d6f}.clinical-progress__stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.clinical-progress__stages li{min-width:0;border-radius:7px;background:#f5f7f6;color:#4e5e58}.clinical-progress__stages a,.clinical-progress__owned{min-height:48px;display:flex;align-items:center;gap:8px;padding:8px 9px;color:inherit}.clinical-progress__stages a:hover{background:#edf2f0;border-radius:7px}.clinical-progress__stages li span:first-child{width:21px;height:21px;flex:0 0 21px;display:grid;place-items:center;border-radius:50%;background:#e1e7e4;color:#596a64;font-size:10px;font-weight:800}.clinical-progress__stages li div div,.clinical-progress__stages a div{display:grid;gap:2px;min-width:0}.clinical-progress__stages strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clinical-progress__stages small{font-size:9px;color:#687871}.clinical-progress__stages a>b{margin-left:auto;color:#71817b;font-size:16px}.clinical-progress__stages li.complete{color:#244c3f;background:#f1f6f4}.clinical-progress__stages li.complete span:first-child{background:#d8e8e2;color:#315e4f}.clinical-progress__details{margin-top:11px;border-top:1px solid #e8edeb;padding-top:10px}.clinical-progress__details summary{width:max-content;max-width:100%;color:#52665e;font-size:10px;font-weight:700;cursor:pointer}.clinical-progress__details ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:10px 0 0;padding:0;list-style:none}.clinical-progress__details li{display:flex;gap:7px;align-items:flex-start;padding:5px 7px;color:#697871;font-size:10px}.clinical-progress__details li span:first-child{color:#8a9893}.clinical-progress__details li.complete{color:#315e4f}.ui-back{width:max-content;display:inline-flex;align-items:center;gap:7px;margin-bottom:20px;color:#476158;font-size:12px;font-weight:700}.ui-back svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ui-back:hover{color:var(--pro-primary)}.ui-back:focus-visible,.pro-primary:focus-visible,.pro-secondary:focus-visible{outline:3px solid #1f8a6530;outline-offset:2px}.record-head{margin-bottom:24px}.record-title p{display:flex;flex-wrap:wrap;gap:5px 14px}.record-title p span{color:#65766f}.record-tabs{margin-bottom:30px}.sectioned-form{display:grid;gap:0}.sectioned-form fieldset{min-width:0;margin:0;padding:25px 0;border:0;border-top:1px solid #e6ece9}.sectioned-form legend{padding:0;font-size:14px;font-weight:700;color:#18362d}.sectioned-form fieldset>p{max-width:68ch;margin:6px 0 18px;color:#687871;font-size:11px;line-height:1.55}.sectioned-form label b{color:#8b3933}.sectioned-form label>span{display:block}.sectioned-form .form-grid{gap:18px}.sectioned-form textarea{min-height:92px}@media(max-width:760px){.clinical-progress__stages{grid-template-columns:1fr 1fr}.clinical-progress__details ul{grid-template-columns:1fr}}@media(max-width:430px){.clinical-progress{padding:15px}.clinical-progress__stages,.record-head{grid-template-columns:1fr}.record-head .pro-primary{width:100%}}.measurement-form{margin:22px 0;padding:22px;border:1px solid #dfe8e4;border-radius:10px;background:#f8fbf9}.measurement-form h3{margin:0 0 16px;font-size:14px}.measurement-form textarea{min-height:72px}.measurement-history>div{grid-template-columns:120px 1fr 1fr auto}.measurement-history .pro-secondary{justify-self:end}@media(max-width:680px){.measurement-history>div{grid-template-columns:1fr auto}.measurement-history>div span{grid-column:1/-1}}.history-panel:has(.measurement-form) .measurement-form{border-color:#7fb9a2;background:#f0f9f5;box-shadow:0 10px 28px #19362c12}.history-panel:has(.measurement-form) .measurement-form h3{color:#176a4c}.history-panel:has(.measurement-form) .measurement-history{opacity:.38;filter:saturate(.5);pointer-events:none}.measurement-history{transition:opacity .18s ease,filter .18s ease}.measurement-form,.document-upload--metadata,.preparation-form,.availability-form{margin:22px 0;padding:22px;border:1px solid #7fb9a2;border-radius:10px;background:#f0f9f5;box-shadow:0 10px 28px #19362c12}.measurement-form h3,.measurement-form :where(label),.document-upload--metadata :where(label),.preparation-form :where(label){color:#176a4c}.measurement-form :where(label),.document-upload--metadata :where(label),.preparation-form :where(label){font-size:11px;font-weight:700}.measurement-form .form-grid,.preparation-form .form-grid{gap:16px}.measurement-form .form-actions,.preparation-form .form-actions{margin-top:18px;padding-top:16px;border-top:1px solid #d7e9e1}.measurement-form :where(input,select,textarea),.document-upload--metadata :where(input,select,textarea),.preparation-form :where(input,select,textarea),.availability-form :where(input,select){background:#fff}.document-upload--metadata>.pro-primary{align-self:end}.availability-form{align-items:end}@media(max-width:680px){.measurement-form,.document-upload--metadata,.preparation-form,.availability-form{padding:18px}}.agenda-page{max-width:1380px}.agenda-notice{margin-bottom:18px;padding:12px 15px;border:1px solid #b8d8cb;border-radius:9px;background:#edf8f3;color:#245d49;font-size:12px;font-weight:650}.agenda-form{margin-bottom:22px;padding:26px;border:1px solid #7fb9a2;border-radius:12px;background:#f0f9f5;box-shadow:0 12px 30px #19362c12}.agenda-form__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.agenda-form__head h2{margin:0 0 5px;color:#173b2f;font-size:18px}.agenda-form__head p{margin:0;color:#587067;font-size:11px}.agenda-form label,.availability-form label{display:grid;gap:7px;color:#355c4e;font-size:11px;font-weight:700}.agenda-form label small{color:#687f76;font-size:10px;font-weight:500}.agenda-form .form-actions{margin-top:20px;padding-top:18px;border-top:1px solid #d3e7de}.agenda-form .form-actions>span{margin-right:auto;color:#6a7f77;font-size:10px}.agenda-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:20px;align-items:start}.agenda-list .pro-panel-head>strong{min-width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e5f3ed;color:#176a4c;font-size:12px}.appointment-row{grid-template-columns:128px minmax(180px,1fr)!important}.appointment-row>.meet-row,.appointment-row>.appointment-actions,.appointment-row>.meeting-link{grid-column:2}.agenda-empty{min-height:180px;place-content:center}.appointment-history{margin-top:18px;padding-top:16px;border-top:1px solid #e2e9e6}.appointment-history summary{color:#315c4d;font-size:11px;font-weight:750;cursor:pointer}.appointment-history>p{margin:6px 0 14px;color:#70827b;font-size:10px}.history-list{display:grid;gap:8px}.history-list>div{display:grid;grid-template-columns:128px 1fr auto;gap:12px;padding:10px 0;border-top:1px solid #edf1ef;font-size:11px}.history-list span{color:#70827b}.availability-panel{position:sticky;top:24px}.availability-form{grid-template-columns:minmax(130px,1fr) 106px 106px!important;gap:12px;margin:18px 0;padding:20px}.availability-form>.pro-primary{grid-column:1/-1;justify-self:end}.availability-error{grid-column:1/-1;color:#9d332d;font-size:10px}.availability-list{display:grid}.availability-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-top:1px solid #e7ecea}.availability-list>div>div{display:grid;gap:3px}.availability-list strong{font-size:12px}.availability-list span{color:#6d7f78;font-size:10px}@media(max-width:980px){.agenda-layout{grid-template-columns:1fr}.availability-panel{position:static}}@media(max-width:680px){.agenda-form{padding:18px}.agenda-form__head{align-items:stretch;flex-direction:column}.agenda-form__head .pro-secondary{width:100%}.appointment-row{grid-template-columns:1fr!important}.appointment-row>*{grid-column:1!important}.availability-form{grid-template-columns:1fr 1fr!important}.availability-form label:first-child,.availability-form>.pro-primary,.availability-error{grid-column:1/-1}.availability-form>.pro-primary{width:100%}.history-list>div{grid-template-columns:1fr auto}.history-list>div span{grid-column:1/-1}}.pro-page form.pro-form,.food-form,.recipe-form{margin-bottom:22px;padding:26px;border:1px solid #7fb9a2;border-radius:12px;background:#f0f9f5;box-shadow:0 12px 30px #19362c12}.pro-page form.pro-form .form-actions,.food-form .form-actions,.recipe-form .form-actions{margin-top:20px;padding-top:18px;border-top:1px solid #d3e7de}.pro-page form.pro-form label,.food-form label,.recipe-form label{color:#355c4e}.food-page,.recipe-page{max-width:1380px}.food-form label{display:grid;gap:7px;font-size:11px;font-weight:700}.food-form label>small{color:#71827b;font-size:9px;font-weight:500}.field-error{color:#9d332d!important}.food-tags{min-width:0;margin:0;padding:14px;border:1px solid #c7ddd4;border-radius:9px;background:#f7fcfa;display:flex;flex-wrap:wrap;gap:9px 18px}.food-tags legend{padding:0 5px;color:#355c4e;font-size:11px;font-weight:700}.food-tags label{display:flex;align-items:center;gap:7px;font-weight:600}.food-tags input{accent-color:#197653}.source-guidance{margin:0 0 22px;padding:18px 20px;border:1px solid #d5e3dd;border-radius:11px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}.source-guidance h2{margin:0 0 5px;color:#19362c;font-size:14px}.source-guidance p{max-width:85ch;margin:0;color:#677a72;font-size:11px;line-height:1.55}.source-guidance>span{flex:none;padding:7px 10px;border-radius:99px;background:#eaf5f0;color:#24634c;font-size:9px;font-weight:750}.food-source{grid-column:1/-1;color:#778780;font-size:9px}.recipe-form label{display:grid;gap:7px;font-size:11px;font-weight:700}.recipe-form textarea{min-height:100px}.recipe-ingredients{margin-top:22px;padding-top:20px;border-top:1px solid #d3e7de}.recipe-ingredients__head h3{margin:0 0 4px;color:#193b30;font-size:14px}.recipe-ingredients__head p{margin:0 0 14px;color:#687d75;font-size:10px}.recipe-food-search{position:relative}.recipe-food-search>input{width:100%}.recipe-food-search .food-results{position:absolute;z-index:10;inset:auto 0;background:#fff}.ingredient-list{display:grid;gap:8px;margin-top:12px}.ingredient-list>div:not(.pro-empty){display:grid;grid-template-columns:minmax(180px,1fr) 120px auto;align-items:end;gap:12px;padding:12px 14px;border:1px solid #d5e5de;border-radius:9px;background:#fff}.ingredient-list>div>div{display:grid;gap:3px}.ingredient-list strong{font-size:11px}.ingredient-list span{color:#71817b;font-size:9px}.recipe-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}.recipe-totals>span{padding:12px;border:1px solid #d5e5de;border-radius:8px;background:#fff;display:grid;gap:4px}.recipe-totals small{color:#71817b;font-size:9px}.recipe-totals strong{color:#1f6249;font-size:13px}.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recipe-grid article{padding:18px;border:1px solid #dfe7e3;border-radius:10px;display:grid;grid-template-columns:1fr auto;gap:10px;background:#fff}.recipe-grid h2{margin:0 0 3px;font-size:14px}.recipe-grid p{grid-column:1/-1;margin:0;color:#697a73;font-size:10px}.recipe-grid article>strong{color:#247251;font-size:17px}.recipe-grid article>strong small{font-size:8px}.recipe-grid dl{grid-column:1/-1;display:flex;gap:20px;margin:0;padding-top:10px;border-top:1px solid #edf1ef}.recipe-grid dl div{display:flex;gap:5px;font-size:9px}.recipe-grid dt{color:#798881}.recipe-grid dd{margin:0;font-weight:700}.recipe-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}@media(max-width:680px){.pro-page form.pro-form,.food-form,.recipe-form{padding:18px}.source-guidance{align-items:flex-start;flex-direction:column}.ingredient-list>div:not(.pro-empty){grid-template-columns:1fr}.recipe-totals,.recipe-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.recipe-totals,.recipe-grid{grid-template-columns:1fr}}.food-head-actions{display:flex;gap:9px}.category-manager,.external-catalog{margin-bottom:22px;padding:24px;border:1px solid #7fb9a2;border-radius:12px;background:#f0f9f5;box-shadow:0 12px 30px #19362c12}.category-create{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:10px;margin-bottom:18px}.category-create label,.external-search label{display:grid;gap:7px;color:#355c4e;font-size:11px;font-weight:700}.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.category-list>div:not(.pro-empty){display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #d5e5de;border-radius:9px;background:#fff}.category-list>div>span{font-size:11px;font-weight:700}.category-list>div>div{display:flex;gap:5px}.category-list .pro-secondary,.category-list .text-danger{min-height:32px}.external-catalog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.external-catalog__head h2{margin:0 0 5px;color:#173b2f;font-size:17px}.external-catalog__head p{max-width:75ch;margin:0;color:#5f746c;font-size:11px;line-height:1.5}.provider-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.provider-status span{padding:6px 9px;border-radius:99px;background:#e4e9e7;color:#71807b;font-size:9px;font-weight:700}.provider-status span.enabled{background:#d9eee5;color:#176a4c}.external-search{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.external-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.external-results article{padding:15px;border:1px solid #d5e5de;border-radius:9px;background:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.external-results article>div{display:grid;gap:3px}.external-results article span,.external-results article small{color:#70817a;font-size:9px}.external-results dl{grid-column:1/-1;display:flex;gap:14px;margin:0;padding-top:10px;border-top:1px solid #edf1ef}.external-results dl div{display:flex;gap:4px;font-size:9px}.external-results dd{margin:0;font-weight:700}.external-results button{justify-self:end}.external-disabled{padding:15px;border:1px dashed #b9cec5;border-radius:9px;color:#667a72;font-size:11px;text-align:center}@media(max-width:680px){.food-head-actions,.external-catalog__head{align-items:stretch;flex-direction:column}.food-head-actions>*{width:100%}.category-manager,.external-catalog{padding:18px}.category-create,.external-search,.category-list,.external-results{grid-template-columns:1fr}.provider-status{justify-content:flex-start}.external-search button{width:100%}}.food-source-mode{width:max-content;max-width:100%;margin-bottom:14px;padding:4px;border:1px solid #cbdad4;border-radius:10px;background:#fff;display:flex;gap:3px}.food-source-mode button{min-height:36px;padding:0 14px;border:0;border-radius:7px;background:transparent;color:#587067;font-size:11px;font-weight:700}.food-source-mode button.active{background:#197653;color:#fff}.external-search{grid-template-columns:minmax(170px,.35fr) minmax(260px,1fr) auto}@media(max-width:680px){.food-source-mode{width:100%}.food-source-mode button{flex:1}.external-search{grid-template-columns:1fr}}.ingredient-list>div:not(.pro-empty){grid-template-columns:minmax(180px,1fr) 150px 78px}.ingredient-list>div:not(.pro-empty)>label{min-width:0}.ingredient-list>div:not(.pro-empty)>label input{width:100%}.ingredient-list>div:not(.pro-empty)>.text-danger{align-self:end;justify-self:stretch;min-width:78px}.recipe-grid>.pro-empty{grid-column:1/-1;min-height:220px;display:grid;place-content:center;justify-items:center;text-align:center}.recipe-grid>.pro-empty strong{font-size:13px}.recipe-grid>.pro-empty span{max-width:42ch}@media(max-width:680px){.ingredient-list>div:not(.pro-empty){grid-template-columns:minmax(0,1fr) 120px}.ingredient-list>div:not(.pro-empty)>div{grid-column:1/-1}.ingredient-list>div:not(.pro-empty)>.text-danger{grid-column:2}}@media(max-width:430px){.ingredient-list>div:not(.pro-empty){grid-template-columns:1fr}.ingredient-list>div:not(.pro-empty)>div,.ingredient-list>div:not(.pro-empty)>.text-danger{grid-column:1}.ingredient-list>div:not(.pro-empty)>.text-danger{width:100%}}.ingredient-list>div:not(.pro-empty){min-height:0!important;padding:10px 14px!important;align-items:center!important}.ingredient-list>div:not(.pro-empty)>div{align-self:center}.ingredient-list>div:not(.pro-empty)>label{display:grid!important;gap:4px!important;margin:0!important}.ingredient-list>div:not(.pro-empty)>label input{height:34px!important;min-height:34px!important}.ingredient-list>div:not(.pro-empty)>.text-danger{align-self:center!important;min-height:34px!important;padding:0 8px!important}.pro-page,.pro-panel,.record-grid>*,.workflow-grid>*,.agenda-layout>*,.form-grid>*,.meal-item-row>*,.pro-toolbar>*{min-width:0}.pro-page :where(input,select,textarea){max-width:100%}.pro-list :where(strong,span),.pro-table td,.meal-item-row :where(strong,span),.history-list :where(strong,span),.food-grid :where(strong,span){overflow-wrap:anywhere}.pro-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.record-tabs{max-width:100%;overflow-x:auto;display:flex;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}.record-tabs button{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start}.pro-drawer-backdrop{display:none}@media(max-width:1180px)and (min-width:981px){.pro-page{padding-inline:28px}.agenda-layout{grid-template-columns:1fr}.availability-panel{position:static}.workflow-grid{grid-template-columns:minmax(0,1fr) 250px}.builder-page .meal-editor>header>div{grid-template-columns:150px 140px minmax(180px,1fr)}}@media(max-width:980px){.pro-shell>aside{width:min(286px,calc(100vw - 48px));height:100dvh;padding-top:max(26px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom));box-shadow:18px 0 48px #071b1540}.pro-drawer-backdrop{position:fixed;inset:0;z-index:29;display:block;border:0;background:#071b1580}.pro-mobile-head{position:sticky;top:0;z-index:20;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.pro-page{width:100%;padding-inline:clamp(18px,3vw,30px)}.agenda-layout{grid-template-columns:1fr}.availability-panel{position:static}.category-list,.external-results,.recipe-grid{grid-template-columns:1fr 1fr}.agenda-form__head,.external-catalog__head{min-width:0}.builder-page .meal-editor>header>div{grid-template-columns:minmax(140px,1fr) 140px}.recipe-food-search .food-results{max-height:min(320px,50dvh);overflow:auto}}@media(max-width:768px){.pro-page{padding-top:24px}.pro-page h1,.builder-head h1,.workflow-head h1{font-size:clamp(24px,6vw,30px)}.pro-panel-head{align-items:flex-start;flex-wrap:wrap}.pro-panel-head>button{flex:0 0 auto}.form-actions{flex-wrap:wrap;gap:10px}.form-actions>span{flex:1 1 100%}.agenda-form__head,.external-catalog__head{align-items:stretch;flex-direction:column}.agenda-form__head .pro-secondary{width:100%}.form-grid,.form-grid.compact{grid-template-columns:1fr 1fr}.category-list,.external-results,.recipe-grid{grid-template-columns:1fr}.category-list>div:not(.pro-empty){min-width:0}.recipe-food-search .food-results{position:static;margin-top:8px}.builder-page .meal-editor>header>div{grid-template-columns:minmax(0,1fr) 130px}.builder-page .meal-editor>header input[type=time]{min-width:0;width:100%}.builder-page .day-tabs{grid-template-columns:repeat(7,minmax(84px,1fr));scroll-snap-type:x mandatory}.builder-page .day-tabs button{scroll-snap-align:start}.meal-item-row>*,.food-results button>span{min-width:0}.day-nutrients{display:grid;grid-template-columns:1fr 1fr}.availability-form{grid-template-columns:1fr 1fr!important}.availability-form label:first-child,.availability-form>.pro-primary,.availability-error{grid-column:1/-1}.availability-form>.pro-primary{width:100%}.pro-primary,.pro-secondary,.text-danger{min-height:44px}}@media(max-width:600px){.pro-page{padding:20px 16px calc(54px + env(safe-area-inset-bottom))}.pro-page-head,.builder-head{gap:16px;margin-bottom:20px}.pro-page-head>.pro-primary,.pro-page-head>button,.builder-actions>*{width:100%}.form-grid,.form-grid.compact,.target-strip{grid-template-columns:1fr}.pro-page form.pro-form,.food-form,.recipe-form,.agenda-form,.category-manager,.external-catalog{padding:18px}.pro-panel-head{display:flex;flex-direction:column;align-items:stretch}.pro-panel-head>button{width:100%}.meet-row{flex-direction:column}.meet-row>*{width:100%}.appointment-row{grid-template-columns:1fr!important}.appointment-row>*{grid-column:1!important}.category-list>div:not(.pro-empty){align-items:stretch;flex-direction:column}.category-list>div>div,.recipe-actions{display:grid;grid-template-columns:1fr 1fr}.external-results article{grid-template-columns:1fr}.external-results article>button{width:100%;justify-self:stretch}.recipe-totals{grid-template-columns:1fr 1fr}.ingredient-list>div:not(.pro-empty){grid-template-columns:minmax(0,1fr) 110px}.generated-actions>:not(div){width:100%;flex:none!important}.measurement-history>div,.history-list>div{grid-template-columns:1fr}.measurement-history>div>*,.history-list>div>*{grid-column:1!important}.pro-toolbar{align-items:stretch;flex-direction:column}.pro-toolbar input[type=search],.pro-toolbar>input[type=search]{width:100%}.document-upload input[type=file]{max-width:100%}}@media(max-width:480px){.pro-page{padding-inline:14px}.pro-panel{padding:16px}.builder-page .meal-editor>header>div{grid-template-columns:1fr}.builder-page .meal-name,.builder-page .meal-editor>header input[type=time]{grid-column:1}.meal-editor>header{align-items:stretch;flex-direction:column}.meal-editor>header>.text-danger{width:100%}.builder-page .day-tabs{grid-template-columns:repeat(7,minmax(74px,1fr))}.day-nutrients{grid-template-columns:1fr 1fr;gap:8px}.day-nutrients>*:first-child{grid-column:1/-1}.recipe-totals{grid-template-columns:1fr}.ingredient-list>div:not(.pro-empty){grid-template-columns:1fr}.ingredient-list>div:not(.pro-empty)>*,.ingredient-list>div:not(.pro-empty)>.text-danger{grid-column:1!important;width:100%}.category-list>div>div,.recipe-actions{grid-template-columns:1fr}.clinical-progress__summary{align-items:flex-start;flex-direction:column}.admin-stats{grid-template-columns:1fr}.measure-grid{grid-template-columns:1fr 1fr}.pro-table{min-width:560px}}@media(pointer:coarse){.pro-shell aside nav a,.record-tabs button,.day-tabs button,.question-sections button{min-height:44px}.text-danger{min-height:44px}}.patient-cards{display:none}.agenda-list .pro-panel-head>strong{align-self:flex-start;flex:none;width:32px;min-width:32px;border-radius:50%}.agenda-list .timeline{min-height:0}.agenda-list .agenda-empty{min-height:150px}.plan-version-action{display:flex!important;align-items:center;gap:10px}.plan-version-action small{min-width:42px;color:#176a4c;font-size:11px;font-weight:800;text-align:right}.builder-readonly-fields{min-width:0;margin:0;padding:0;border:0}.builder-readonly-fields:disabled{opacity:1}.builder-readonly-fields:disabled :is(input,select,textarea){color:#344b43;background:#f3f6f5;cursor:default}.admin-shell>aside{display:flex!important;flex-direction:column}.admin-shell .sidebar-toggle{margin-top:auto}.admin-shell .pro-user{margin-top:12px!important}.admin-reference-page{max-width:1420px}.reference-layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:20px;align-items:start}.reference-nav{padding:20px}.reference-nav>div{padding:2px 4px 16px;border-bottom:1px solid #e6ece9}.reference-nav h2{margin:0 0 4px;font-size:17px}.reference-nav>div>span{color:#71817b;font-size:10px}.reference-nav nav{display:grid;gap:4px;padding-top:12px}.reference-nav nav button{width:100%;min-height:42px;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:#536760;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:650;text-align:left}.reference-nav nav button b{color:#91a19b;font-size:18px;font-weight:400}.reference-nav nav button:hover{background:#f2f7f4;color:#1d4939}.reference-nav nav button.active{background:#e5f3ed;color:#176a4c;font-weight:800}.reference-nav nav button.active b{color:#176a4c}.reference-content{min-width:0}.reference-form{margin-bottom:20px;padding:18px;border:1px solid #dce8e3;border-radius:10px;background:#f7faf8}.reference-table code{padding:4px 7px;border-radius:6px;background:#f1f5f3;color:#39564b;font:600 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.reference-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e4f5ec;color:#176a4c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.reference-status.inactive{background:#f1f2f2;color:#6c7773}.reference-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.reference-actions button{min-height:36px;padding:8px 11px}.reference-table th:last-child,.reference-table td:last-child{text-align:right}@media(max-width:900px){.reference-layout{grid-template-columns:1fr}.reference-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-content{padding:20px}}@media(max-width:600px){.reference-nav nav{grid-template-columns:1fr}.reference-table .pro-table{min-width:660px}.reference-actions{justify-content:flex-start}}.admin-dashboard-page{max-width:1420px}.admin-create-form{margin-bottom:20px}.admin-operations{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;margin-top:20px;align-items:start}.admin-operations>.pro-panel{min-width:0}.admin-professionals .admin-user-actions{display:flex;align-items:center;gap:10px}.admin-user-actions>small{padding:5px 8px;border-radius:999px;background:#e4f5ec;color:#176a4c;font-size:9px;font-weight:800;text-transform:uppercase}.admin-user-actions>small.inactive{background:#f1f2f2;color:#6c7773}.admin-audit time{white-space:nowrap;color:#52675f;font-variant-numeric:tabular-nums}@media(max-width:960px){.admin-operations{grid-template-columns:1fr}}@media(max-width:600px){.admin-professionals>div{align-items:stretch;flex-direction:column}.admin-professionals .admin-user-actions{justify-content:space-between}.admin-assignments>label select{width:100%}}.admin-professionals-panel{margin-top:20px}.admin-professionals{display:grid}.admin-professional-row{display:grid;grid-template-columns:42px minmax(220px,1fr) minmax(220px,.65fr) auto;gap:16px;align-items:center;padding:16px 2px;border-top:1px solid #e7ecea}.admin-professional-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e3f3ec;color:#176a4c;font-size:11px;font-weight:850}.admin-professional-row>div{display:grid;gap:4px}.admin-professional-row>div>strong{color:#203a31;font-size:13px}.admin-professional-row>div>span{color:#71817b;font-size:10px}.admin-professional-row dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.admin-professional-row dl>div{display:grid;gap:4px}.admin-professional-row dt{color:#83908b;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.07em}.admin-professional-row dd{margin:0;color:#304a41;font-size:12px;font-weight:750}.admin-professional-row dd small{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e4f5ec;color:#176a4c;font-size:9px;font-weight:800;text-transform:uppercase}.admin-professional-row dd small.inactive{background:#f1f2f2;color:#6c7773}@media(max-width:800px){.admin-professional-row{grid-template-columns:42px minmax(0,1fr) auto}.admin-professional-row dl{grid-column:2/-1}.admin-professional-row>button{grid-column:2/-1;width:100%}}.admin-appointments-page{max-width:1420px}.appointment-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.appointment-summary article{padding:18px 20px;border:1px solid #dce5e1;border-radius:11px;background:#fff}.appointment-summary span{display:block;margin-bottom:8px;color:#71817b;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.appointment-summary strong{color:#173b2f;font-size:24px;font-variant-numeric:tabular-nums}.admin-appointment-list td strong,.admin-appointment-list td small{display:block}.admin-appointment-list td small{margin-top:4px;color:#71817b;font-size:10px}.appointment-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef2f0;color:#55645f;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.appointment-status.status-confirmada{background:#e4f5ec;color:#176a4c}.appointment-status.status-solicitada{background:#fff2d6;color:#8a6415}.appointment-status.status-cancelada{background:#fbe9e7;color:#a5382c}.appointment-status.status-completada{background:#e8eef8;color:#345c91}@media(max-width:700px){.appointment-summary{grid-template-columns:1fr 1fr}.admin-appointment-list .pro-table{min-width:760px}}.admin-appointments-empty{width:100%;min-height:210px;display:grid;place-content:center;justify-items:center;text-align:center;border-top:1px solid #e4ebe8}.pro-shell>aside:not(.collapsed) .pro-user{grid-template-columns:36px minmax(0,1fr)!important;align-items:center}.pro-shell>aside:not(.collapsed) .pro-user>div strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.25}.pro-shell>aside:not(.collapsed) .pro-user .logout-button{grid-column:1/-1;width:100%;min-height:34px;margin-top:3px;border:1px solid #ffffff17!important;border-radius:7px;background:#ffffff08!important;text-align:center}.pro-shell>aside:not(.collapsed) .pro-user .logout-button:hover{background:#ffffff12!important;color:#ff9a91!important}.patient-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.patient-actions :where(a,button){min-height:36px;padding:0 12px;border-radius:8px;font:inherit;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.patient-open{border:1px solid #b8d8ca;background:#eaf6f0;color:#176a4c!important}.patient-open:hover{background:#dcefe6}.patient-resend{border:1px solid #cbd9d3;background:#fff;color:#31564a}.patient-delete{border:1px solid #efcbc8;background:#fff7f6;color:#a13b34}.patient-delete:hover{background:#fcebea}.patient-pending{width:max-content;margin-top:5px;padding:4px 7px;border-radius:99px;background:#fff3d9;color:#825c16!important;font-size:8px!important;font-weight:800}@media(max-width:600px){.agenda-list .pro-panel-head{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:start}.agenda-list .pro-panel-head>div{min-width:0}.agenda-list .pro-panel-head>strong{grid-column:2;grid-row:1}.agenda-list .agenda-empty{min-height:128px;padding-block:24px}.patient-directory{display:block!important;min-height:0!important;height:auto!important;padding:14px!important}.patient-directory .pro-toolbar{position:static!important;display:flex!important;min-height:0!important;height:auto!important;margin:0 0 12px!important;gap:8px}.patient-directory .pro-toolbar label{flex:none!important;width:100%}.patient-directory .pro-toolbar label,.patient-directory .pro-toolbar input{display:block!important}.patient-table{display:none}.patient-cards{position:static!important;display:grid;gap:10px;margin:0}.patient-cards>article{padding:14px;border:1px solid #dce6e2;border-radius:10px;background:#fff;color:#1d3c32;display:grid;gap:12px}.patient-cards>article>div:first-child{display:grid;gap:3px}.patient-cards span{color:#71817b;font-size:10px;overflow-wrap:anywhere}.patient-cards dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.patient-cards dl>div{display:grid;gap:3px;padding:9px;border-radius:7px;background:#f4f8f6}.patient-cards dt{color:#75857f;font-size:8px;text-transform:uppercase}.patient-cards dd{margin:0;font-size:11px;font-weight:700;overflow-wrap:anywhere}.patient-cards .patient-actions{display:grid;grid-template-columns:1fr 1fr}.patient-cards .patient-actions>a{grid-column:1/-1}.patient-cards .patient-actions button{width:100%;min-height:42px}.patient-cards .patient-actions:not(:has(.patient-resend)) .patient-delete{grid-column:1/-1}.pro-toolbar{min-height:0}.pro-toolbar+.patient-cards{margin-top:0}}.activation-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#10241f;color:#18352c}.activation-card{width:min(100%,480px);padding:42px;border-radius:18px;background:#fff;box-shadow:0 28px 70px #071b154d}.activation-brand{display:inline-flex;gap:8px;align-items:center;margin-bottom:38px;color:#167a58;font-weight:800}.activation-brand span{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#dff7ed}.activation-card h1{margin:0 0 12px;font-size:30px;letter-spacing:-.04em;color:#132d25}.activation-card>p{color:#61736c;line-height:1.65}.activation-card form{display:grid;gap:18px;margin:28px 0 20px}.activation-card label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#40564e}.activation-card input{height:46px;border:1px solid #cbd9d4;border-radius:9px;padding:0 13px;background:#fff}.activation-card input:focus{outline:3px solid #1f8a6520;border-color:#1f8a65}.activation-card input:disabled{background:#f1f5f3;color:#71817b}.activation-card .pro-primary{width:100%;height:44px}.activation-card>small{display:block;color:#71817b}.activation-loading{padding:50px 0;color:#61736c;text-align:center}.activation-success{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#dff7ed;color:#167a58;font-size:28px;margin-bottom:22px}.form-error{margin:0;color:#a9342d;font-size:12px}.onboarding-page{max-width:1040px;margin:auto;padding:56px 28px 100px}.onboarding-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.onboarding-head h1{font-size:34px;letter-spacing:-.045em;margin:0 0 8px}.onboarding-head p{margin:0;color:#64748b}.save-state{font-size:12px;color:#61736c}.onboarding-progress{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:24px;padding:18px 22px;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.onboarding-progress div{display:grid;gap:4px}.onboarding-progress strong{font-size:13px}.onboarding-progress span{font-size:11px;color:#64748b}.onboarding-progress progress{width:100%;height:8px;accent-color:#059669}.questionnaire{display:grid;grid-template-columns:220px 1fr;gap:24px;margin-top:24px}.question-sections{display:grid;align-content:start;gap:5px}.question-sections button{border:0;background:transparent;padding:11px;text-align:left;border-radius:9px;color:#64748b;font-size:12px;font-weight:700}.question-sections button span{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:9px;border-radius:50%;background:#e8eeeb;color:#456057}.question-sections button.active{background:#e5f6ef;color:#047857}.question-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:30px}.question-panel-head{padding-bottom:22px;border-bottom:1px solid #edf1ef}.question-panel-head span{font-size:11px;color:#64748b}.question-panel-head h2{font-size:23px;margin:5px 0 0}.question-list{display:grid;gap:22px;padding:26px 0}.question-list label{display:grid;gap:7px;color:#334155;font-size:13px;font-weight:700}.question-list label>span b{color:#059669}.question-list small{font-weight:400;color:#64748b}.question-list input,.question-list select,.question-list textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:11px;background:#fff;color:#1e293b;outline:none}.question-list textarea{min-height:100px;resize:vertical}.question-list :is(input,select,textarea):focus{border-color:#059669;box-shadow:0 0 0 3px #10b9811f}.question-panel footer{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid #edf1ef}.patient-primary,.patient-secondary{min-height:40px;border:1px solid transparent;border-radius:9px;padding:0 16px;font-size:12px;font-weight:800}.patient-primary{background:#059669;color:#fff}.patient-secondary{background:#fff;border-color:#cbd5e1;color:#334155}.patient-primary:disabled,.patient-secondary:disabled{opacity:.5;cursor:not-allowed}.submitted-state,.patient-error,.patient-loading{margin-top:24px;padding:34px;background:#fff;border:1px solid #e2e8f0;border-radius:14px}.submitted-state h2,.patient-error h1{margin-top:0}.submitted-state p,.patient-error p{color:#64748b;line-height:1.6}.workflow-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}.workflow-head a{display:inline-block;margin-bottom:18px;color:#167a58;font-size:12px;font-weight:700}.workflow-head h1{font-size:30px;margin:0 0 6px}.workflow-head p{margin:0;color:#65766f;font-size:13px}.episode-status{padding:8px 11px;border-radius:999px;background:#dff7ed;color:#176a4c;font-size:11px;font-weight:800}.workflow-steps{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:20px;border-bottom:1px solid #dfe7e4}.workflow-steps button{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 8px;border:0;border-bottom:2px solid transparent;background:transparent;color:#73827c;font-size:11px;font-weight:700}.workflow-steps button span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#e4ebe8}.workflow-steps button.active{border-color:#167a58;color:#144a38}.workflow-steps button.complete span{background:#d9f4e9;color:#167a58}.workflow-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.workflow-aside{align-self:start;padding:24px;border-radius:13px;background:#18362d;color:#fff}.workflow-aside h2{font-size:16px;margin:0 0 10px}.workflow-aside p{font-size:12px;line-height:1.65;color:#b8cbc4}.workflow-aside .pro-primary{width:100%;background:#51c99d;color:#0f3125}.intake-review h3{font-size:12px;margin:24px 0 8px;color:#167a58}.intake-review dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5ebe8;border:1px solid #e5ebe8}.intake-review dl div{background:#fff;padding:13px}.intake-review dt,.calculation-detail dt{font-size:10px;color:#73827c;margin-bottom:4px}.intake-review dd,.calculation-detail dd{margin:0;font-size:12px;line-height:1.5;white-space:pre-line}.assessment-form{max-width:900px}.requirement-result{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:24px 0}.requirement-result div{padding:15px 10px;border-radius:9px;background:#f0f6f3;text-align:center}.requirement-result strong,.requirement-result span{display:block}.requirement-result strong{font-size:17px;color:#173d30}.requirement-result span{font-size:9px;color:#71817b;margin-top:4px}.calculation-detail{display:grid;gap:8px}.calculation-detail div{padding:10px 0;border-top:1px solid #e5ebe8}.readiness-list{list-style:none;padding:0;margin:22px 0;display:grid;gap:8px}.readiness-list li{display:flex;gap:12px;align-items:center;padding:14px;border-radius:9px;background:#fff4ed;color:#8b4c28}.readiness-list li>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#f8dcc9;font-weight:800}.readiness-list li div{display:grid;gap:3px}.readiness-list small{color:#765e50}.readiness-list li.ready{background:#ecf8f3;color:#176a4c}.readiness-list li.ready>span{background:#cfeddf}.readiness-list li.ready small{color:#55736a}.readiness-blockers{padding:14px;border-radius:9px;background:#fff3f1;color:#963d36;font-size:12px}.generated-workspace{display:grid;gap:18px}.generated-actions{display:flex;align-items:center;gap:8px;padding:17px 20px;border-radius:12px;background:#fff;border:1px solid #dfe7e4}.generated-actions>div{margin-right:auto}.generated-actions h2{margin:0 0 4px;font-size:16px}.generated-actions p{margin:0;color:#71817b;font-size:11px}.document-sheet{width:min(100%,790px);min-height:880px;margin:auto;padding:52px 60px;background:#fff;border:1px solid #dfe7e4;box-shadow:0 18px 45px #173a2f12}.document-sheet header,.document-sheet footer{display:flex;justify-content:space-between;color:#71817b;font-size:10px}.document-sheet header{padding-bottom:20px;border-bottom:1px solid #dfe7e4}.document-sheet section{padding:30px 0}.document-sheet section+section{border-top:1px solid #dfe7e4}.document-sheet h3{font-size:18px;color:#173d30}.generated-copy{white-space:pre-wrap;font-size:12px;line-height:1.75;color:#334b43}.document-sheet footer{margin-top:40px;padding-top:15px;border-top:1px solid #dfe7e4}.workflow-toast{position:fixed;right:24px;bottom:24px;z-index:50;padding:13px 17px;border-radius:9px;background:#18362d;color:#fff;box-shadow:0 12px 30px #0e271f33;font-size:12px}.multi-options{display:flex;flex-wrap:wrap;gap:8px}.multi-options label{display:flex;grid-template-columns:none;align-items:center;gap:7px;padding:9px 11px;border:1px solid #d9e2de;border-radius:9px;background:#f8faf9;font-weight:500}.multi-options input{width:16px;height:16px;padding:0;accent-color:#059669}@media(max-width:850px){.questionnaire,.workflow-grid{grid-template-columns:1fr}.question-sections{display:flex;overflow:auto}.question-sections button{white-space:nowrap}.workflow-steps{overflow:auto;grid-template-columns:repeat(5,minmax(125px,1fr))}.requirement-result{grid-template-columns:repeat(2,1fr)}.generated-actions{align-items:stretch;flex-wrap:wrap}.generated-actions>div{width:100%}.document-sheet{padding:36px 30px}}.workflow-guide{position:sticky;top:24px}.workflow-guide__eyebrow{display:block;margin-bottom:12px;color:#80d5b5;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.workflow-guide h2{margin-bottom:8px}.workflow-guide p{margin:0}.workflow-guide p strong{color:#fff}.workflow-guide ul{display:grid;gap:9px;margin:18px 0 22px;padding:0;list-style:none}.workflow-guide li{position:relative;padding-left:17px;color:#c2d5ce;font-size:11px;line-height:1.45}.workflow-guide li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:#5acaa0}.workflow-guide .pro-primary{margin-top:auto}@media(max-width:850px){.workflow-guide{position:static}}.intake-edit .pro-panel-head>span{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #bfe3d2;border-radius:999px;background:#edf9f3;color:#237252;font-size:11px;font-weight:800;line-height:1;white-space:nowrap}.intake-edit .pro-panel-head>span:before{content:"";width:7px;height:7px;border-radius:50%;background:#35a875}.assessment-form .form-message{display:none}.regeneration-alert{margin-bottom:18px;padding:15px 17px;border:1px solid #e6c88f;border-radius:10px;background:#fff8e8;color:#6f521e}.regeneration-alert strong{font-size:12px}.regeneration-alert p{margin:5px 0 0;font-size:11px;line-height:1.5}.regeneration-alert ul{margin:8px 0 0;padding-left:18px;font-size:11px}.generated-workspace>.regeneration-alert{margin-bottom:14px}.workflow-steps button:disabled{cursor:not-allowed;opacity:.45}.workflow-steps button:disabled:hover{color:#73827c}.intake-edit fieldset{margin:0;padding:22px 0;border:0;border-top:1px solid #e6ece9}.intake-edit fieldset:first-of-type{border-top:0}.intake-edit legend{padding:0 0 14px;color:#176a4c;font-size:12px;font-weight:800}.intake-edit label>span{display:block}.intake-edit label b{color:#9d332d}.intake-edit label small{color:#74847e;font-size:10px;font-weight:500}.intake-edit select[multiple]{height:112px!important;padding:7px 10px!important}.generated-actions a.pro-secondary{color:#274a3e}@media(max-width:600px){.activation-card{padding:30px 22px}.onboarding-page{padding:30px 16px 90px}.onboarding-head{align-items:flex-start;flex-direction:column}.onboarding-progress{grid-template-columns:1fr}.question-panel{padding:22px 18px}.workflow-head{align-items:flex-start;flex-direction:column}.intake-review dl{grid-template-columns:1fr}.generated-actions button{flex:1}.document-sheet{padding:28px 20px}.document-sheet header{display:grid;gap:5px}.workflow-toast{left:14px;right:14px;bottom:76px}.requirement-result{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.workflow-aside .pro-primary{background:var(--pro-primary);color:#fff}@media(max-width:850px){.questionnaire,.question-panel,.workflow-grid{min-width:0}.question-sections,.workflow-steps{max-width:100%;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.question-sections button,.workflow-steps button{scroll-snap-align:start}.generated-actions>*{min-width:0}}@media(max-width:600px){.question-panel footer{display:grid;grid-template-columns:1fr;gap:9px}.question-panel footer button{width:100%}.generated-actions>:not(div){width:100%;flex:none}.episode-status{white-space:normal}.requirement-result{grid-template-columns:1fr 1fr}.multi-options label{max-width:100%;overflow-wrap:anywhere}}@media(max-width:430px){.requirement-result{grid-template-columns:1fr}.workflow-steps{grid-template-columns:repeat(5,minmax(108px,1fr))}.question-sections button{min-height:44px}.activation-page{padding:16px}.activation-card{padding:26px 18px}}.onboarding-page{padding-top:32px;padding-bottom:72px}.patient-page-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 34px;border:1px solid #dce7e2;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f172a08}.patient-page-header>div{min-width:0}.patient-page-header span{display:block;margin-bottom:7px;color:#27805b;font-size:10px;font-weight:800;letter-spacing:.12em}.patient-page-header h1{margin:0;color:#172036;font-size:28px;letter-spacing:-.035em}.patient-page-header p{margin:7px 0 0;color:#64748b;font-size:14px;line-height:1.5}.patient-page-header button{flex:0 0 auto;border:0;border-radius:10px;padding:14px 18px;background:#3e9870;color:#fff;font-weight:800}.patient-page-header button:hover{background:#257a55}.plan-notes{margin:14px 2px 0;color:#52667b;font-size:13px;line-height:1.55}.patient-empty-state{min-height:180px;display:grid;grid-template-columns:48px minmax(0,440px);align-content:center;justify-content:center;gap:16px;padding:32px 28px;border:1px dashed #cad9d3;border-radius:16px;background:#fff;color:#29443a;text-align:left}.patient-empty-state__mark{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#eaf6f0;color:#25805b}.patient-empty-state__mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.patient-empty-state h2{margin:1px 0 6px;font-size:16px;letter-spacing:-.02em}.patient-empty-state p{margin:0;color:#64748b;font-size:13px;line-height:1.55}.patient-empty-state button{margin-top:14px;border:0;border-radius:8px;padding:9px 13px;background:#e9f7f0;color:#176b4b;font-size:12px;font-weight:800}.patient-empty-state button:hover{background:#d9f1e5}.patient-documents{margin-top:18px}.patient-documents .patient-empty-state{margin-top:0}.plan-empty{max-width:680px;margin:32px auto}.meal-list .patient-empty-state{min-height:150px}.appointment-list .patient-empty-state{margin-top:12px}@media(max-width:600px){.onboarding-page{padding-top:24px}.patient-empty-state{grid-template-columns:1fr;text-align:center;justify-items:center;padding:28px 22px}.patient-empty-state__mark{margin-bottom:2px}}.patient-page-header__actions{display:flex;align-items:center;gap:14px}.patient-page-header__actions small{color:#61736c;font-size:12px}.onboarding-page>.patient-page-header{margin-bottom:18px}.onboarding-page>.patient-page-header+.onboarding-progress{margin-top:18px}.onboarding-page{padding-top:16px}.onboarding-page>app-patient-page-header{display:block;margin-bottom:18px}.onboarding-page>app-patient-page-header+.onboarding-progress{margin-top:0}app-appointments:has(.ui-skeleton) .appointments-heading,app-appointments:has(.ui-skeleton) .list-heading,app-patient-documents:has(.ui-skeleton)>app-patient-page-header{display:none}.intake-review .pro-panel-head>span{padding:6px 10px;border:1px solid #bfe4d3;border-radius:999px;background:#e8f7ef;color:#176a4c;font-size:11px;font-weight:800}.intake-review dl{gap:8px;background:transparent;border:0}.intake-review dl div{border:1px solid #e1e9e5;border-radius:8px}.assessment-form{width:100%;margin-inline:auto}.generated-summary{padding:18px;border-radius:10px;background:#f5f9f7;color:#263d34}.generated-plan{padding:4px 0;font-size:12px;line-height:1.75;color:#31463e}.document-sheet section:has(.generated-plan){padding-bottom:30px}.pdf-shell{margin-top:14px;overflow:hidden;border:1px solid #151917;border-radius:12px;background:#202422;box-shadow:0 14px 34px #14241e26}.pdf-workspace{height:calc(100vh - 250px);min-height:720px;display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;border-top:1px solid #3a403d;background:#292e2c}.pdf-workspace.thumbnails-hidden{grid-template-columns:1fr}.pdf-workspace.thumbnails-hidden .pdf-thumbnails{display:none}.pdf-review{display:block;width:100%;height:100%;min-height:0;overflow:hidden;overscroll-behavior:contain;background:#353a38}.pdf-review pdf-viewer{display:block;position:relative;width:100%;height:100%;padding:12px 18px 22px}.pdf-review .ng2-pdf-viewer-container{overscroll-behavior:contain;scroll-behavior:smooth}.pdf-review .page{margin:0 auto 18px!important}.pdf-review canvas{max-width:100%;height:auto!important;margin-inline:auto;box-shadow:0 8px 28px #0008}.pdf-thumbnails{overflow-y:auto;overscroll-behavior:contain;padding:15px 12px;background:#202422;display:flex;flex-direction:column;gap:14px}.pdf-thumbnails button{padding:5px;border:2px solid transparent;border-radius:6px;background:transparent;color:#cbd3cf;display:grid;gap:5px;cursor:pointer}.pdf-thumbnails button:hover,.pdf-thumbnails button.active{border-color:#55c69b;background:#ffffff0d}.pdf-thumbnails img{display:block;width:100%;border-radius:2px;background:#fff}.pdf-thumbnails span{font-size:10px;text-align:center}.pdf-toolbar{position:relative;z-index:2;padding:10px 12px;background:#202422;color:#dbe4e0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.pdf-toolbar>div{display:flex;align-items:center;justify-content:center;gap:8px}.pdf-toolbar>div:last-child{justify-content:flex-end}.pdf-toolbar button{min-width:38px;min-height:38px;padding:7px 11px;border:1px solid #46504c;border-radius:7px;background:#303633;color:#f3f7f5;font-family:inherit;font-size:15px;font-weight:750;line-height:1}.pdf-toolbar button:hover:not(:disabled){border-color:#72867d;background:#3a423e}.pdf-toolbar button:disabled{opacity:.35}.pdf-toolbar>div span{min-width:78px;color:#d3ddd9;font-size:12px;font-weight:650;text-align:center}.pdf-toolbar .pdf-pages-toggle{min-width:104px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px}.pdf-toolbar .pdf-pages-toggle.active{border-color:#5c806f;background:#344a40;color:#fff}.pdf-pages-icon{min-width:0!important;width:15px;display:grid;gap:2px}.pdf-pages-icon i{display:block;width:15px;height:2px;border-radius:2px;background:currentColor}.plan-empty{max-width:none;margin:18px 0 0}@media(max-width:960px){.patient-page-header{padding:26px 28px}.pdf-workspace{height:clamp(460px,70dvh,720px);min-height:0;grid-template-columns:120px minmax(0,1fr)}.pdf-review pdf-viewer{padding:10px 12px 18px}}@media(max-width:600px){.patient-page-header{align-items:stretch;flex-direction:column;gap:18px;padding:22px 18px}.patient-page-header h1{font-size:24px}.patient-page-header__actions{align-items:stretch;flex-direction:column}.patient-page-header button{width:100%}.patient-page-header :where(h1,p,small){overflow-wrap:anywhere}.pdf-shell{border-radius:9px}.pdf-toolbar{grid-template-columns:1fr auto;padding:10px;gap:9px}.pdf-toolbar>.pdf-pages-toggle{grid-column:1}.pdf-toolbar>div:first-of-type{grid-column:2}.pdf-toolbar>div:last-child{grid-column:1/-1;justify-content:space-between;padding-top:9px;border-top:1px solid #39413d}.pdf-toolbar button{min-height:44px}.pdf-toolbar>div span{font-size:12px}.pdf-workspace{height:62dvh;min-height:420px;grid-template-columns:88px minmax(0,1fr)}.pdf-thumbnails{padding:10px 7px;gap:9px}.pdf-review pdf-viewer{padding:7px 8px 14px}.substitution{margin-left:0}}.pro-shell{--pro-control-h: 40px;--pro-radius: 12px;--pro-border: #d4e5dc;--pro-border-hover: #8dbda8;--pro-focus: #167a58;--pro-primary: #197653;--pro-primary-hover: #125f42;--pro-danger: #a9342d;--pro-danger-bg: #fff0ee;--pro-muted-bg: #eff9f3;--workspace-text: #213d32;--workspace-muted: #5c7167;--workspace-line: #deebe3;--workspace-canvas: #faf9f5;--workspace-mint: #edf9f1;--workspace-shadow: 0 6px 24px #214b3610;--workspace-ease-out: cubic-bezier(.23, 1, .32, 1);color:var(--workspace-text);line-height:1.5;accent-color:var(--pro-primary);background:var(--workspace-canvas);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}.pro-shell .pro-stage{background:var(--workspace-canvas)}.pro-shell .pro-page{max-width:1600px;margin-inline:auto}.pro-shell .pro-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--workspace-line)}.pro-shell :is(.pro-page-head,.builder-head,.workflow-head) h1{margin:0;font-size:clamp(24px,2.1vw,30px);font-weight:650}.pro-shell .pro-page-head p{margin:7px 0 0;color:var(--workspace-muted);font-size:13px}.pro-shell>aside{background:#102c23;border-right:1px solid #234137}.pro-shell>aside nav{gap:5px}.pro-shell>aside nav a{min-height:44px;border:1px solid transparent;border-radius:6px;color:#baccc1;font-size:13px}.pro-shell>aside nav a:hover{background:#1b3c2f;color:#fff}.pro-shell>aside nav a.active{background:#294c3b;border-color:#41634c;color:#fff}.pro-shell>aside .pro-brand{padding-bottom:24px}.pro-shell>aside .pro-brand>b{background:#c3d7a8;color:#17382a;border-radius:8px}.pro-shell>aside .pro-brand small{color:#b3c5b8;letter-spacing:.1em}.pro-shell>aside .pro-user{border-top-color:#345044}.pro-shell .pro-mobile-head{background:#102c23}.pro-shell .pro-form label,.pro-shell .form-grid>label{color:#405e50;font-size:12px;font-weight:600}.pro-shell :is(.record-tabs,.workflow-steps){border-bottom-color:var(--workspace-line)}.pro-shell :is(.record-tabs,.workflow-steps) button{font-size:13px}.pro-shell .pro-toolbar{padding:0;border:0;background:transparent}.pro-shell .pro-page :is(form.pro-form,.food-form,.recipe-form,.agenda-form,.measurement-form,.document-upload--metadata,.preparation-form,.availability-form,.category-manager,.external-catalog,.reference-form){background:#fff;border-color:var(--workspace-line);border-radius:20px;box-shadow:var(--workspace-shadow)}.pro-shell :is(.clinical-progress,.source-guidance,.meal-editor,.builder-meta,.builder-footer,.food-grid article,.recipe-grid article){background:#fff;border-color:var(--workspace-line);border-radius:18px;box-shadow:none}.pro-shell .pro-page :is(.sectioned-form,.agenda-form,.food-form,.recipe-form,.reference-form) label{font-size:12px}.pro-shell :is(.record-grid,.workflow-grid,.admin-operations,.food-grid,.recipe-grid){gap:24px}.pro-shell .pro-page :is(.sectioned-form,.food-form,.recipe-form,.reference-form) .form-grid{gap:20px}.pro-shell .sectioned-form fieldset{padding-block:28px;border-top-color:var(--workspace-line)}.pro-shell :is(.clinical-progress,.source-guidance){padding:22px;margin-bottom:28px}.pro-shell .clinical-progress__stages{gap:10px}.pro-shell .clinical-progress__stages li,.pro-shell .clinical-progress__stages a:hover{border-radius:var(--pro-radius);background:var(--workspace-mint)}.pro-shell .clinical-progress__stages li.complete{background:#ddf3e6}.pro-shell .clinical-progress progress{accent-color:var(--pro-primary)}.pro-shell :is(.builder-meta,.builder-footer,.meal-editor){padding:clamp(18px,2vw,26px)}.pro-shell .meal-stack{gap:24px}.pro-shell .meal-details{gap:22px;margin-top:22px;padding-top:22px;border-top-color:var(--workspace-line)}.pro-shell :is(.builder-meta,.builder-footer){box-shadow:var(--workspace-shadow)}.pro-shell :is(.food-grid article,.recipe-grid article){padding:22px}.pro-shell :is(.food-tags,.day-nutrients){border-color:var(--workspace-line);border-radius:18px;background:var(--workspace-mint)}.pro-shell .day-nutrients{margin-block:18px 24px;padding:16px 18px}.pro-shell :is(.external-results article,.category-list>div:not(.pro-empty)){border-color:var(--workspace-line);border-radius:18px;background:#fff}.pro-shell :where(*,*:before,*:after){box-sizing:border-box}.pro-shell ::selection{background:#ccebdc;color:#10241f}.pro-shell :is(.pro-stage,.pro-page,.pro-panel,.reference-content){min-width:0}.pro-shell :is(.record-grid,.workflow-grid,.agenda-layout,.admin-operations,.reference-layout,.form-grid)>*{min-width:0}.pro-shell :is(.pro-page-head,.builder-head,.workflow-head,.pro-panel-head)>*{min-width:0}.pro-shell :is(h1,h2,h3,p,dd,.admin-professional-row strong,.admin-assignments span){overflow-wrap:anywhere}.pro-shell :is(.pro-primary,.pro-secondary,.text-danger,.add-meal){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--pro-control-h);max-width:100%;padding:9px 14px;border:1px solid transparent;border-radius:var(--pro-radius);font:inherit;font-size:13px;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;white-space:normal;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.pro-shell .pro-primary{background:var(--pro-primary);color:#fff}.pro-shell .pro-primary:hover{background:var(--pro-primary-hover)}.pro-shell :is(.pro-secondary,.add-meal){background:#fff;border-color:var(--pro-border);color:#274a3e}.pro-shell :is(.pro-secondary,.add-meal):hover{background:var(--pro-muted-bg);border-color:var(--pro-border-hover)}.pro-shell .text-danger{background:transparent;color:var(--pro-danger)}.pro-shell .text-danger:hover{background:var(--pro-danger-bg)}.pro-shell .pro-page :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea){min-width:0;max-width:100%;border:1px solid var(--pro-border);border-radius:var(--pro-radius);background:#fff;color:var(--workspace-text);font-family:inherit;font-size:13px;line-height:1.5;caret-color:var(--pro-primary)}.pro-shell .pro-page :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select:not([multiple])){height:var(--pro-control-h);min-height:var(--pro-control-h);padding:8px 12px}.pro-shell .pro-page textarea{min-height:96px;padding:10px 12px;resize:vertical}.pro-shell .pro-page :is(input,textarea)::placeholder{color:#667b71;opacity:1}.pro-shell .pro-page :is(input,select,textarea):hover:not(:disabled){border-color:var(--pro-border-hover)}.pro-shell .pro-page :is(input,select,textarea):focus{border-color:var(--pro-focus);box-shadow:none}.pro-shell :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--pro-focus);outline-offset:3px}.pro-shell>aside :is(a,button):focus-visible,.pro-shell .pro-mobile-head button:focus-visible{outline-color:#80d5b5}.pro-shell :is(button,input,select,textarea):disabled,.pro-shell [aria-disabled=true]{cursor:not-allowed;transform:none}.pro-shell :is(.pro-primary,.pro-secondary,.text-danger,.add-meal):is(:disabled,[aria-disabled=true]){border-color:#c8d4cf;background:#e8eeeb;color:#52655c;box-shadow:none;transform:none}.pro-shell .pro-page :is(input,select,textarea):disabled{background:#eef3f1;color:#52655c}.pro-shell .pro-page :is(input,select,textarea):is([aria-invalid=true],.ng-invalid.ng-touched){border-color:var(--pro-danger)}.pro-shell .pro-page :is(input,select,textarea)[aria-invalid=true]:focus-visible{outline-color:var(--pro-danger)}.pro-shell :is(.form-error,.field-error,.availability-error){color:var(--pro-danger);font-size:12px;line-height:1.5}.pro-shell .pro-empty{color:var(--workspace-muted);line-height:1.6}.pro-shell .pro-panel{border:1px solid var(--workspace-line);border-radius:22px;background:#fff;box-shadow:var(--workspace-shadow)}.pro-shell .pro-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.pro-shell .pro-panel-head h2{margin:0;font-size:16px;line-height:1.4;color:var(--workspace-text)}.pro-shell .pro-panel-head p{margin:5px 0 0;font-size:12px;color:var(--workspace-muted)}.pro-shell .pro-toolbar{display:flex;flex-wrap:wrap;gap:12px;max-width:100%}.pro-shell .pro-toolbar>*{min-width:0}.pro-shell :is(.record-tabs,.day-tabs,.workflow-steps,.food-source-mode){max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:6px}.pro-shell :is(.record-tabs,.day-tabs,.workflow-steps,.food-source-mode) button{min-height:44px;flex-shrink:0;font-family:inherit;cursor:pointer;border-radius:var(--pro-radius)}.pro-shell :is(.record-tabs,.day-tabs,.workflow-steps,.food-source-mode) button:focus-visible{outline-offset:-3px}.pro-shell :is(.record-tabs,.workflow-steps){gap:8px;padding-bottom:10px}.pro-shell :is(.record-tabs,.workflow-steps) button.active{background:var(--workspace-mint);color:var(--pro-primary-hover);border-bottom-color:var(--pro-primary)}.pro-shell :is(.day-tabs,.food-source-mode){gap:8px;padding:6px;border-radius:18px;background:var(--workspace-mint);border-color:var(--workspace-line)}.pro-shell :is(.day-tabs,.food-source-mode) button{color:#405e50;background:transparent}.pro-shell :is(.day-tabs,.food-source-mode) button.active{background:var(--pro-primary);color:#fff}.pro-shell :is(.record-tabs,.day-tabs,.workflow-steps,.food-source-mode) button:disabled{cursor:not-allowed;opacity:.6}.pro-shell .pro-table-wrap{width:100%;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#8da99d #f3f7f5}.pro-shell .pro-table{display:table;width:100%;border-collapse:collapse;font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums}.pro-shell .pro-table :is(th,td){padding:14px 12px;border-bottom:1px solid var(--workspace-line);text-align:left;vertical-align:middle;overflow-wrap:anywhere}.pro-shell .pro-table tr>:is(th,td):first-child{display:table-cell}.pro-shell .pro-table th{background:var(--workspace-mint);color:#405e50;font-size:11px;font-weight:700;letter-spacing:.025em}.pro-shell .pro-table td{color:var(--workspace-text)}.pro-shell .pro-table td>:is(strong,small){display:block}.pro-shell .pro-table td>small{margin-top:4px;color:var(--workspace-muted);font-size:11px}.pro-shell .pro-table tbody tr:last-child td{border-bottom:0}.pro-shell .pro-table tbody tr:hover{background:#f7faf8}.pro-shell .pro-table tbody tr:focus-within{background:#eef6f2}.pro-shell :is(.reference-actions,.patient-actions,.builder-actions,.food-head-actions){flex-wrap:wrap;gap:8px}.pro-shell .reference-table :is(th,td):last-child{text-align:right}.pro-shell :is(.meal-editor,.meal-editor>header,.meal-editor>header>div,.meal-item-row,.agenda-entry,.agenda-filters,.admin-professional-row){min-width:0}.pro-shell :is(.meal-item-row,.agenda-entry,.admin-professional-row)>*{min-width:0}.pro-shell .pro-page-head{flex-wrap:wrap}.pro-shell :is(.pro-page-head,.builder-head,.workflow-head) h1{line-height:1.15;letter-spacing:-.035em}.pro-shell .pro-toolbar label{flex:1 1 260px}.pro-shell .pro-table{min-width:560px}.pro-shell .admin-appointment-list .pro-table{min-width:760px}.pro-shell .pro-table th{white-space:nowrap}.pro-shell .pro-table td{max-width:36ch}.pro-shell .pro-table-wrap{scroll-padding-inline:12px}.pro-shell .reference-table code{overflow-wrap:anywhere;white-space:normal}.pro-shell .admin-professional-row{grid-template-columns:42px minmax(0,1fr) minmax(150px,.65fr) auto}.pro-shell .admin-professional-row>div>span{overflow-wrap:anywhere}.pro-shell>aside{overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#557d6f #10241f}.pro-shell>aside>:is(.pro-brand,nav,.sidebar-toggle,.pro-user){flex-shrink:0}.pro-shell .pro-brand>b{flex-shrink:0}.pro-shell .pro-user strong{overflow-wrap:anywhere}.pro-shell .meal-editor>header{flex-wrap:wrap;gap:12px}.pro-shell .builder-page .meal-editor>header>div:first-child{flex:1 1 480px;display:grid;grid-template-columns:minmax(120px,.8fr) 140px minmax(160px,1.2fr);gap:10px}.pro-shell .builder-page .meal-editor>header input[type=time]{min-width:0;width:100%}.pro-shell .order-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pro-shell .order-actions button:not(.text-danger){min-height:36px;padding:6px 10px;border:1px solid var(--pro-border);border-radius:var(--pro-radius);background:#fff;color:#274a3e;font:inherit;font-size:12px}.pro-shell .order-actions button:disabled{background:#eef3f1;color:#52655c;opacity:.65}.pro-shell .meal-item-row>.order-actions{grid-column:1 / -1;justify-content:flex-end}.pro-shell .copy-day{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-block:18px}.pro-shell .copy-day label{display:grid;gap:7px;min-width:0;flex:1 1 240px}.pro-shell .food-results button{gap:12px}.pro-shell .food-results button>span{min-width:0;overflow-wrap:anywhere}.pro-shell .food-results button>b{flex-shrink:0}.pro-shell .agenda-layout{grid-template-columns:minmax(0,1fr)}.pro-shell .availability-panel{position:static}.pro-shell .agenda-days--week{display:grid;grid-template-columns:repeat(7,minmax(190px,1fr));max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;gap:12px;scrollbar-color:#8da99d #f3f7f5}.pro-shell .agenda-days--week .agenda-entry{padding-inline:8px;font-size:13px}.pro-shell .agenda-days--week .appointment-actions{flex-direction:column}.pro-shell .agenda-days--week .agenda-entry :is(button,.meeting-link){width:100%;white-space:normal}.pro-shell .agenda-entry .meeting-link{max-width:100%}.pro-shell .agenda-controls nav{gap:8px}.pro-shell .agenda-filters{gap:12px}.pro-shell .reschedule-request input{width:100%}.pro-shell .builder-readonly-fields:disabled :is(input,select,textarea){color:#344b43;background:#f3f6f5;cursor:default}.pro-shell .pro-page :is(input,textarea)[readonly]{background:#f3f6f5}@media screen and (min-width:981px){.pro-shell .pro-page{padding:28px clamp(24px,3vw,42px) 56px}.pro-shell .pro-panel{padding:24px}}@media screen and (min-width:981px)and (max-width:1180px){.pro-shell .reference-layout{grid-template-columns:minmax(200px,.65fr) minmax(0,1fr)}.pro-shell .admin-professional-row{grid-template-columns:42px minmax(0,1fr) auto}.pro-shell .admin-professional-row dl{grid-column:2 / -1}.pro-shell .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-shell .workflow-grid{grid-template-columns:minmax(0,1fr)}.pro-shell .workflow-guide{position:static}}@media screen and (max-width:980px){.pro-shell>aside,.pro-shell.sidebar-collapsed>aside{width:min(286px,calc(100vw - 48px))}.pro-shell>aside:not(.open){visibility:hidden}.pro-shell>aside.open{visibility:visible}.pro-shell .pro-mobile-head button{min-height:44px}.pro-shell .pro-user{margin-top:auto}}@media screen and (max-width:680px){.pro-shell{--pro-control-h: 44px}.pro-shell .pro-page{padding:20px 16px 36px}.pro-shell .pro-page-head{align-items:stretch;margin-bottom:20px;padding-bottom:18px;gap:14px}.pro-shell .pro-panel{padding:18px}.pro-shell .pro-panel-head{flex-wrap:wrap}.pro-shell .pro-page :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}.pro-shell :is(.pro-page-head,.builder-head,.workflow-head){flex-wrap:wrap}.pro-shell .pro-toolbar{align-items:stretch}.pro-shell .pro-toolbar label{flex-basis:100%}.pro-shell .pro-table{min-width:600px}.pro-shell .admin-appointment-list .pro-table{min-width:760px}.pro-shell .admin-professional-row{grid-template-columns:42px minmax(0,1fr)}.pro-shell .admin-professional-row>button{grid-column:1 / -1}.pro-shell .admin-professional-row dl{grid-column:1 / -1}.pro-shell .builder-page .meal-editor>header>div:first-child{flex-basis:100%;grid-template-columns:minmax(0,1fr) 130px}.pro-shell .builder-page .meal-name{grid-column:1 / -1}.pro-shell .meal-editor>header>.order-actions{width:100%}.pro-shell .order-actions button{flex:1 1 auto;min-height:44px}.pro-shell .agenda-days--week{grid-template-columns:minmax(0,1fr);overflow:visible}.pro-shell .agenda-days--week .appointment-actions{flex-direction:row}.pro-shell .agenda-days--week .agenda-entry button{width:auto;flex:1 1 140px}.pro-shell .reschedule-request button{max-width:100%;min-height:44px;white-space:normal}.pro-shell .reference-actions button{min-height:44px}.pro-shell .pro-toolbar input[type=search]{min-height:44px!important;font-size:16px!important}}@media screen and (max-width:480px){.pro-shell .builder-page .meal-editor>header>div:first-child{grid-template-columns:minmax(0,1fr)}.pro-shell .builder-page .meal-name{grid-column:1}.pro-shell .copy-day>button{width:100%}.pro-shell .reschedule-request button{width:100%;margin-inline:0}}@media screen and (max-width:600px){.pro-shell .patient-table{display:none}}@media(pointer:coarse){.pro-shell{--pro-control-h: 44px}.pro-shell :is(.order-actions button,.reference-nav nav button,.patient-actions a,.patient-actions button){min-height:44px}}@media screen and (prefers-reduced-motion:no-preference){.pro-shell :is(.agenda-form,.measurement-form,.admin-create-form,.reference-form){transition:opacity .18s var(--workspace-ease-out),transform .18s var(--workspace-ease-out)}@starting-style{.pro-shell :is(.agenda-form,.measurement-form,.admin-create-form,.reference-form){opacity:0;transform:translateY(4px)}}.pro-shell>aside{transition:transform .2s var(--workspace-ease-out)}.pro-shell :is(.pro-primary,.pro-secondary,.text-danger){transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .1s var(--workspace-ease-out)}.pro-shell :is(.pro-primary,.pro-secondary,.text-danger):active:not(:disabled){transform:translateY(1px)}}@media(prefers-reduced-motion:reduce){.pro-shell :is(.pro-primary,.pro-secondary,.text-danger,.add-meal,.logout-button,.sidebar-toggle svg,.measurement-history,input,select,textarea),.pro-shell>aside{transition:none}.pro-shell :is(.pro-primary,.pro-secondary,.text-danger):active{transform:none}}@media print{.pro-shell .pro-table-wrap{overflow:visible}.pro-shell .pro-table{min-width:0}.pro-shell .pro-table tr{break-inside:avoid}.pro-shell .agenda-days--week{grid-template-columns:minmax(0,1fr);overflow:visible}}.patient-app{--patient-canvas: #f3fbf8;--patient-surface: #ffffff;--patient-soft: #e5f8ef;--patient-border: #d5eae2;--patient-ink: #153d35;--patient-muted: #526d66;--patient-accent: #087f63;--patient-accent-hover: #06644f;--patient-danger: #a33329;--patient-radius: 22px;--patient-control-radius: 12px;--patient-shadow: 0 6px 24px #164e3c08;--brand-50: #effcf6;--brand-100: #d8f7e9;--brand-200: #a6e9cf;--brand-600: #087f63;--brand-700: #06644f;font-family:Inter,Segoe UI,sans-serif;color:var(--patient-ink);background:var(--patient-canvas);min-height:100dvh;line-height:1.5;accent-color:var(--patient-accent);color-scheme:light}.patient-app ::selection{background:#d8e9cc;color:#253c30}.patient-app :where(button,input,select,textarea){font:inherit}.patient-app :where(input,textarea){caret-color:var(--patient-accent)}.patient-app :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--patient-accent);outline-offset:3px}.patient-app :where(h1,h2,h3){color:var(--patient-ink);line-height:1.25}.patient-app :where(h1){font-size:clamp(1.5rem,3vw,1.875rem);letter-spacing:-.03em}.patient-app :where(h2){font-size:1.125rem;letter-spacing:-.015em}.patient-app :where(h3){font-size:1rem}.patient-app :where(.patient-main,.dashboard-columns>*,.profile-grid>*,.meal-copy,.appointment-info){min-width:0}.patient-app :where(.patient-page-header,.profile-page,.appointment-list,.plan-items,.meal-copy,.nutritionist-chip) :where(h1,h2,h3,p,strong,dd){overflow-wrap:anywhere}.patient-app .patient-main{padding-top:28px}.patient-app .patient-header{height:78px;background:var(--patient-surface);border-bottom:1px solid var(--patient-border)}.patient-app .patient-header-inner{min-height:0;column-gap:20px}.patient-app .patient-brand{color:var(--patient-accent)}.patient-app :is(.patient-primary,.patient-secondary,.confirm-booking,.quick-book,.patient-page-header button,.appointments-heading button,.patient-documents article>button,.appointment-list article>a,.appointment-list .reschedule,.patient-empty-state button,.state-card button,.patient-error button,.profile-details>button,app-patient-documents form>button,.appointment-info>button,.appointment-info>a){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 18px;border:1px solid transparent;border-radius:var(--patient-control-radius);background:var(--patient-accent);color:#fff;font-size:.875rem;font-weight:700;line-height:1.4;text-align:center;white-space:normal;text-decoration:none;cursor:pointer}.patient-app :is(.patient-secondary,.appointment-list .reschedule,.patient-empty-state button){border-color:var(--patient-border);background:var(--patient-soft);color:var(--patient-accent)}.patient-app :where(button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled=true]){cursor:not-allowed;opacity:.6;box-shadow:none}.patient-app [aria-busy=true]{cursor:progress}.patient-app :where(.section-title a,.profile-popover a){color:var(--patient-accent);text-underline-offset:.2em}.patient-app .section-title a{text-decoration:underline}.patient-app :is(.question-list,.booking-sheet,.profile-details,app-patient-documents form) label{color:var(--patient-ink);font-size:.875rem;line-height:1.5}.patient-app :is(.question-list,.booking-sheet,.profile-details,app-patient-documents form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid #82947c;border-radius:var(--patient-control-radius);background:var(--patient-surface);color:var(--patient-ink);font-size:1rem;line-height:1.5}.patient-app :is(.question-list,.booking-sheet) textarea{min-height:120px;resize:vertical}.patient-app :where(input,textarea)::placeholder{color:var(--patient-muted);opacity:1}.patient-app :where(input,select,textarea):focus-visible{border-color:var(--patient-accent)}.patient-app :where(input,select,textarea)[readonly]{background:var(--patient-soft)}.patient-app :where(input,select,textarea):is([aria-invalid=true],.ng-invalid.ng-touched){border-color:var(--patient-danger);border-style:dashed}.patient-app :where(input[type=checkbox],input[type=radio]){width:20px;height:20px;flex-shrink:0}.patient-app .multi-options label{min-height:44px;align-items:center;gap:10px}.patient-app :where(.question-list small,.patient-page-header p,.patient-page-header__actions small,.plan-notes,.profile-page>header p,.profile-details dt,.privacy-note,.metric-card p,.patient-empty-state p,.appointment-info p){color:var(--patient-muted)}.patient-app :where(.form-error,.patient-error,.state-card.error){border:1px solid #d6aaa0;border-radius:var(--patient-control-radius);background:#fff3ee;color:var(--patient-danger);padding:16px;overflow-wrap:anywhere}.patient-app :is(.patient-page-header,.appointments-heading,.metric-card,.meal-card,.macro-card,.plan-meals article,.appointment-list article,.profile-identity,.profile-details,.question-panel,.submitted-state,.booking-sheet){border:1px solid var(--patient-border);border-radius:var(--patient-radius);background:var(--patient-surface);box-shadow:var(--patient-shadow)}.patient-app :is(.patient-page-header,.appointments-heading){padding:28px;gap:20px}.patient-app :is(.patient-page-header,.appointments-heading) h1{margin:0}.patient-app :is(.patient-page-header,.appointments-heading) p{margin-top:8px;line-height:1.6}.patient-app .welcome-card{background:#edf3e7;border:1px solid var(--patient-border);border-radius:var(--patient-radius);color:var(--patient-ink)}.patient-app .welcome-card p{color:var(--patient-muted)}.patient-app .welcome-card:after{content:none}.patient-app .welcome-card{gap:24px;min-height:200px}.patient-app .welcome-card>div{min-width:0}.patient-app .welcome-card h1{font-size:clamp(1.5rem,3vw,1.875rem);overflow-wrap:anywhere;margin-top:0}.patient-app .welcome-card p{max-width:60ch;line-height:1.65}.patient-app .next-action{border-color:var(--patient-border);background:#fffdf8}.patient-app .next-action>a:not(.patient-primary){color:var(--patient-accent);text-decoration:underline;text-underline-offset:.2em}.patient-app :is(.next-action,.history-section,.plan-notes){overflow-wrap:anywhere}.patient-app .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.patient-app .metric-card{min-width:0}.patient-app .metric-label{flex-wrap:wrap;line-height:1.5}.patient-app .appointment-metric>strong{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.35;overflow-wrap:anywhere}.patient-app .section-title{flex-wrap:wrap;gap:8px 16px}.patient-app :is(.macro-grid>div,.plan-meal-label>div,.plan-items,.patient-page-header>div){min-width:0}.patient-app .macro-grid p{flex-wrap:wrap;gap:8px}.patient-app .meter{overflow:hidden}.patient-app .plan-meals article{grid-template-columns:minmax(150px,1fr) minmax(0,3fr)}.patient-app .plan-meal-label{gap:12px;padding-right:16px;border-color:var(--patient-border)}.patient-app .plan-meal-label>span{flex-shrink:0;background:var(--patient-soft)}.patient-app .plan-meals :is(h3,p,small){overflow-wrap:anywhere}.patient-app .plan-items p{line-height:1.7}.patient-app .plan-notes{margin-block:20px;max-width:72ch;line-height:1.7}.patient-app .appointment-list article{min-width:0}.patient-app .appointment-info{width:100%}.patient-app .appointment-info>a{margin-block:8px}.patient-app .patient-documents article{display:grid;grid-template-columns:minmax(0,1fr) auto}.patient-app app-patient-documents{display:block;min-width:0}.patient-app app-patient-documents form{max-width:42rem;margin-block:24px 32px;padding:clamp(18px,3vw,28px);border:1px solid var(--patient-border);border-radius:var(--patient-radius);background:var(--patient-surface)}.patient-app app-patient-documents form :is(h2,p){margin:0}.patient-app app-patient-documents form p{color:var(--patient-muted);line-height:1.65}.patient-app input[type=file]{max-width:100%;overflow:hidden}.patient-app input::file-selector-button{max-width:100%;margin-right:10px;padding:8px 10px;border:1px solid var(--patient-border);border-radius:6px;background:var(--patient-soft);color:var(--patient-accent);font:inherit;white-space:normal;cursor:pointer}.patient-app :is(.profile-details,app-patient-documents form) [role=alert]{color:var(--patient-danger)}.patient-app :is(.profile-details,app-patient-documents form) [role=status]{color:var(--patient-accent)}.patient-app .history-section{padding-block:8px}.patient-app .history-section dt{color:var(--patient-muted);font-size:.875rem}.patient-app .history-section dd{line-height:1.7}.patient-app .medical-card{background:#fff5e5;border:1px solid #e5d6b8;color:#604c29}.patient-app .medical-card strong{color:#604c29}.patient-app .patient-empty-state{background:#fbfcf8;border-color:#9aac92}.patient-app :where(.phase-pill,.verified-pill,.date-tile,.patient-empty-state__mark){background:var(--patient-soft);color:var(--patient-accent)}.patient-app :where(.metric-card>strong,.date-tile,.macro-grid b,td){font-variant-numeric:tabular-nums}.patient-app :is(.day-tabs,.question-sections){gap:8px}.patient-app .day-tabs{display:flex;overflow-x:auto;padding:6px;scroll-padding-inline:6px}.patient-app :is(.day-tabs,.question-sections) button{min-height:44px;padding:10px 16px;border:1px solid var(--patient-border);border-radius:var(--patient-control-radius);background:var(--patient-surface);color:var(--patient-muted);font-weight:650}.patient-app .day-tabs button{flex:0 0 auto}.patient-app :is(.day-tabs,.question-sections) button.active{border-color:var(--patient-accent);background:var(--patient-accent);color:#fff;box-shadow:inset 0 -3px #b9d4a9}.patient-app :is(.desktop-tabs,.mobile-tabs) a{min-height:44px}.patient-app :is(.desktop-tabs,.mobile-tabs) a.active{color:var(--patient-accent);font-weight:750}.patient-app .mobile-tabs{background:var(--patient-surface);border-top:1px solid var(--patient-border)}.patient-app :is(.notification-trigger,.profile-avatar,.modal-close){min-width:44px;min-height:44px}.patient-app .booking-overlay{overflow-y:auto;overscroll-behavior:contain;background:#253c3073}.patient-app .booking-sheet{min-width:0;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;box-shadow:0 20px 60px #253c3026}.patient-app .booking-sheet>p{margin:0;color:var(--patient-muted);font-size:.875rem;line-height:1.6}.patient-app .booking-sheet h2{padding-right:60px}.patient-app .modal-close{color:var(--patient-accent);background:var(--patient-soft);border:1px solid var(--patient-border);border-radius:8px}.patient-app :is(.profile-popover,.notification-popover){max-width:calc(100vw - 32px);max-height:calc(100dvh - 160px);overflow-y:auto;overflow-wrap:anywhere;border-color:var(--patient-border)}.patient-app :is(button,a,summary){-webkit-tap-highlight-color:#28644320}.patient-app :is(button,.patient-primary,.patient-secondary,.desktop-tabs a,.mobile-tabs a){transition:background-color .14s ease-out,border-color .14s ease-out,color .14s ease-out}.patient-app .patient-main{animation:patient-page-enter .22s cubic-bezier(.16,1,.3,1)}@keyframes patient-page-enter{0%{opacity:.85;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.patient-app :is(.table-wrap,.table-scroll,.table-responsive,.pro-table-wrap){max-width:100%;overflow-x:auto}.patient-app table{width:100%;border-collapse:collapse;font-size:.875rem}.patient-app :is(th,td){padding:12px 16px;border-bottom:1px solid var(--patient-border);text-align:start}.patient-app th{background:var(--patient-soft);color:var(--patient-ink);font-weight:700}.patient-app td{color:var(--patient-ink);vertical-align:top;overflow-wrap:anywhere}.patient-app tbody tr:focus-within{background:var(--patient-soft)}@media(hover:hover){.patient-app :is(.patient-primary,.confirm-booking,.quick-book,.patient-page-header button,.appointments-heading button,.patient-documents article>button,.appointment-list article>a,.state-card button,.patient-error button,.profile-details>button,app-patient-documents form>button,.appointment-info>button,.appointment-info>a):not(:disabled):not([aria-disabled=true]):hover{background:var(--patient-accent-hover)}.patient-app :is(.patient-secondary,.appointment-list .reschedule,.patient-empty-state button,.day-tabs button:not(.active),.question-sections button:not(.active)):not(:disabled):hover{background:#e1eddc;border-color:var(--patient-accent);color:var(--patient-accent-hover)}.patient-app tbody tr:hover{background:#f7faf4}}@media(max-width:1180px){.patient-app .desktop-tabs{display:none}.patient-app .patient-header{height:64px}.patient-app .patient-header-inner{grid-template-columns:minmax(0,1fr) auto}.patient-app .patient-header .profile-actions{display:flex;padding-left:0;border-left:0;gap:8px}.patient-app .profile-actions :is(.quick-book,.notification-menu){display:none}.patient-app .profile-popover{position:fixed;top:72px;right:16px}.patient-app .patient-main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.patient-app .mobile-tabs{display:flex;position:fixed;inset:auto 0 0;z-index:30;height:calc(68px + env(safe-area-inset-bottom,0px));padding:0 max(8px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(8px,env(safe-area-inset-left,0px))}.patient-app .mobile-tabs a{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--patient-muted);font-size:.75rem;border-top:2px solid transparent}.patient-app .mobile-tabs a span{font-size:21px;line-height:1.2}.patient-app .mobile-tabs a.active{border-top-color:var(--patient-accent);background:var(--patient-soft)}}@media(max-width:800px){.patient-app .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-app .dashboard-columns{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.patient-app :is(.patient-page-header,.appointments-heading){flex-direction:column;align-items:stretch;padding:22px 18px}.patient-app :is(.patient-page-header__actions,.question-panel footer){flex-wrap:wrap;gap:12px}.patient-app :is(.patient-page-header,.appointments-heading) button{width:100%}.patient-app :is(.dashboard-columns,.profile-grid,.macro-grid,.booking-fields){grid-template-columns:minmax(0,1fr)}.patient-app .questionnaire{grid-template-columns:minmax(0,1fr)}.patient-app .question-sections{display:flex;flex-wrap:wrap}.patient-app .question-sections button{flex:1 1 140px}.patient-app .profile-details dd{overflow-wrap:anywhere}.patient-app .patient-documents article{grid-template-columns:minmax(0,1fr);gap:16px}.patient-app .patient-documents article>button{width:100%;grid-column:1 / -1}.patient-app .booking-sheet{padding:24px 18px}.patient-app .patient-main{padding-inline:16px;padding-top:20px}.patient-app .welcome-card{display:grid;padding:24px 20px;gap:20px}.patient-app :is(.profile-details,.macro-card,.next-action){padding:20px 18px}.patient-app .profile-details .fields{grid-template-columns:minmax(0,1fr)}.patient-app .plan-meals article{grid-template-columns:minmax(0,1fr);padding:20px 18px;gap:16px}.patient-app .plan-meal-label{border-right:0;border-bottom:1px solid var(--patient-border);padding:0 0 14px}.patient-app .appointment-list:not(.patient-documents) article{display:block;padding:20px 18px}.patient-app .meal-list .meal-card{grid-template-columns:36px minmax(0,1fr);gap:12px}.patient-app .meal-card .kcal{grid-column:2;justify-self:start}.patient-app :is(.profile-details>button,app-patient-documents form>button,.appointment-info>button,.appointment-info>a){width:100%}.patient-app .booking-overlay{padding:8px;align-items:center}.patient-app .booking-sheet{border-radius:18px;max-height:calc(100dvh - 16px);padding-bottom:max(24px,env(safe-area-inset-bottom,0px))}.patient-app :is(th,td){padding:10px}}@media(max-width:400px){.patient-app .metric-grid{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.patient-app *,.patient-app *:before,.patient-app *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(forced-colors:active){.patient-app :is(.day-tabs,.question-sections) button.active{border:2px solid Highlight}.patient-app :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:Highlight}}.patient-app .patient-main .next-action{background:#234c3b;border:0;border-radius:6px}.patient-app .patient-main .next-action.plan-pending{background:transparent;border:0;border-block:1px solid var(--patient-border);border-radius:0}.patient-app .patient-main .metric-card{background:transparent;border:0;border-right:1px solid var(--patient-border);border-radius:0;box-shadow:none}.patient-app .patient-main .metric-card:last-child{border-right:0}.patient-app .patient-main .patient-page-header{background:transparent;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;box-shadow:none}.patient-app .patient-main .patient-page-header h1{color:var(--patient-ink)}.patient-app .patient-main .patient-page-header p{color:var(--patient-muted)}.patient-app{--slate-400: #647166;--slate-500: #59685e;--slate-800: #253c30}.patient-app .patient-main{max-width:1160px;margin-inline:auto;padding:48px 40px 72px}.patient-app .patient-header{background:#fffcf5;height:82px}.patient-app .patient-header-inner{max-width:1320px;padding-inline:32px}.patient-app .patient-brand{font-family:Georgia,Times New Roman,serif;font-size:25px;letter-spacing:-.04em}.patient-app .patient-brand>span{background:#234c3b;border-radius:50% 50% 50% 8px;box-shadow:none}.patient-app .profile-avatar{background:#234c3b;box-shadow:none;border:2px solid #fffcf5}.patient-app .desktop-tabs{gap:22px}.patient-app .desktop-tabs a{font-size:13px;color:#59685e}.patient-app :is(.welcome-card h1,.patient-page-header h1,.appointments-heading h1,.profile-page>header h1){font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:clamp(32px,3.6vw,46px);letter-spacing:-.035em;line-height:1.15}.patient-app .welcome-card{min-height:0;padding:0 0 32px;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;background:transparent;box-shadow:none;align-items:end}.patient-app .welcome-card h1{max-width:720px}.patient-app .welcome-card p{margin-bottom:0;max-width:62ch;font-size:15px}.patient-app .nutritionist-chip{background:transparent;border-left:1px solid var(--patient-border);border-radius:0;padding:4px 0 4px 24px;flex-shrink:0}.patient-app .nutritionist-chip small{color:#59685e;font-size:12px;text-transform:none;letter-spacing:0}.patient-app .next-action{margin-block:28px;padding:30px 34px;background:#234c3b;color:#fffaf0;border:0;border-radius:6px}.patient-app .next-action h2{margin:0 0 12px;color:#fffaf0;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:400}.patient-app .next-action p{color:#e0e9dd;margin:10px 0;font-size:15px}.patient-app .next-action .patient-primary{background:#f5e8c8;color:#234c3b;margin-block:12px}.patient-app .next-action .patient-primary:hover{background:#fff7e6}.patient-app .next-action>a:not(.patient-primary){color:#f5e8c8;font-size:13px}.patient-app .next-action .clinical-context{margin-top:18px;padding-top:16px;border-top:1px solid #ffffff30;font-size:13px;max-width:80ch}.patient-app .next-action.plan-pending{background:transparent;color:var(--patient-ink);border-block:1px solid var(--patient-border);border-radius:0;padding:28px 0}.patient-app .plan-pending h2{color:var(--patient-ink)}.patient-app .plan-pending p{color:var(--patient-muted)}.patient-app .metric-grid{display:flex;flex-wrap:wrap;gap:0;margin:30px 0 42px;border-block:1px solid var(--patient-border)}.patient-app .metric-card{flex:1 1 190px;min-height:0;padding:22px 24px;border:0;border-right:1px solid var(--patient-border);border-radius:0;background:transparent;box-shadow:none}.patient-app .metric-card:first-child{padding-left:0}.patient-app .metric-card:last-child{border-right:0}.patient-app .metric-label{font-size:12px;color:var(--patient-muted)}.patient-app .metric-label .icon{display:none}.patient-app .metric-card>strong{display:block;margin-top:10px;color:var(--patient-ink);font-size:25px;font-weight:500}.patient-app .metric-card p{margin:7px 0;font-size:12px}.patient-app .metric-card a{color:var(--patient-accent);font-size:13px;text-decoration:underline;text-underline-offset:3px}.patient-app .section-title h2,.patient-app .dashboard-columns aside>h2{font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:400}.patient-app .dashboard-columns{grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:40px}.patient-app .meal-list{gap:0}.patient-app .meal-list .meal-card{grid-template-columns:minmax(0,1fr) auto;padding:22px 0;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;background:transparent;box-shadow:none}.patient-app .meal-emoji{display:none}.patient-app .meal-copy small{color:var(--patient-muted);font-size:12px}.patient-app .meal-copy strong{margin-top:6px;color:var(--patient-ink);font-size:17px;font-weight:600}.patient-app .meal-card .kcal{background:transparent;color:var(--patient-muted);font-size:12px}.patient-app .medical-card{background:#ecebdc;border:0;border-radius:4px;color:var(--patient-ink);padding:24px}.patient-app .medical-card strong{color:var(--patient-ink)}.patient-app .medical-card div>span{display:none}.patient-app .support-card{background:transparent;color:var(--patient-accent);padding-inline:0;border-bottom:1px solid var(--patient-border);border-radius:0}.patient-app :is(.patient-page-header,.appointments-heading){padding:0 0 30px;margin-bottom:30px;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;background:transparent;box-shadow:none}.patient-app .patient-page-header>div>span{display:none}.patient-app :is(.patient-page-header,.appointments-heading) p{max-width:66ch;font-size:15px}.patient-app .macro-card{background:#eeeddf;border:0;padding:24px 28px;margin-block:28px}.patient-app .macro-card h2{font-size:16px;margin-top:0;margin-bottom:24px;font-weight:600}.patient-app .macro-grid{gap:32px}.patient-app .macro-grid b{color:var(--patient-ink);font-size:20px;font-weight:500}.patient-app .meter{height:4px;background:#d9dbcc}.patient-app .green-fill{background:#37624a}.patient-app .amber-fill{background:#997840}.patient-app .blue-fill{background:#738477}.patient-app .day-tabs{border-bottom:1px solid var(--patient-border);border-radius:0;background:transparent;padding:0 0 12px;margin-block:30px 0}.patient-app .day-tabs button{background:transparent;border-color:transparent;border-radius:4px}.patient-app .day-tabs button.active{box-shadow:none}.patient-app .plan-meals{gap:0}.patient-app .plan-meals article{background:transparent;padding:30px 0;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;gap:28px;box-shadow:none}.patient-app .plan-meal-label>span{display:none}.patient-app .plan-meal-label h3{font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:400}.patient-app .plan-items p{margin-top:0;font-size:15px}.patient-app .appointment-list{gap:16px}.patient-app .appointment-list article{padding:28px 30px;background:#fffcf5;border-radius:4px;box-shadow:none}.patient-app .appointment-info h3{font-family:inherit;font-size:20px;font-weight:750;margin:0 0 12px}.patient-app .appointment-info p{font-size:14px;line-height:1.7}.patient-app .appointment-info>button{background:transparent;border-color:var(--patient-border);color:var(--patient-accent)}.patient-app .appointment-info>button:hover{background:var(--patient-soft)}.patient-app app-patient-documents form{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;padding:30px;background:#eeeddf;border:0}.patient-app app-patient-documents form>:is(h2,p){grid-column:1 / -1}.patient-app app-patient-documents form label{display:grid;gap:8px}.patient-app app-patient-documents form label:has(input[type=file]){grid-column:1 / -1}.patient-app app-patient-documents form>button{justify-self:start;align-self:end}.patient-app .patient-documents article{background:transparent;border:0;border-bottom:1px solid var(--patient-border);border-radius:0;padding:24px 0;gap:20px;align-items:center}.patient-app .patient-documents h2{font-size:19px;margin:8px 0}.patient-app .patient-documents p{color:var(--patient-muted);font-size:13px;line-height:1.6}.patient-app .document-kind{font-size:12px;color:var(--patient-accent);background:#e6eadc;padding:4px 8px;border-radius:3px}.patient-app .profile-page>header{padding-bottom:28px;margin-bottom:30px;border-bottom:1px solid var(--patient-border)}.patient-app .profile-page>header h1{margin:0 0 14px}.patient-app .profile-page>header p{font-size:15px;max-width:65ch;line-height:1.7}.patient-app .profile-details{padding:32px;background:#fffcf5;border:0;max-width:900px}.patient-app .profile-details h2{font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:400;margin-bottom:28px}.patient-app .profile-details .fields{gap:24px}.patient-app .profile-details label{display:grid;gap:8px}.patient-app .privacy-note{background:#eeeddf;margin-block:24px;padding:18px;font-size:13px;line-height:1.7;border-radius:3px}.patient-app .patient-empty-state{background:transparent;border:1px dashed #a5af9b;border-radius:4px;box-shadow:none}.patient-app .mobile-tabs svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@media(max-width:1180px){.patient-app .patient-header{height:68px}.patient-app .patient-main{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}.patient-app .mobile-tabs{background:#fffcf5;height:calc(62px + env(safe-area-inset-bottom,0px))}.patient-app .mobile-tabs a{font-size:11px;gap:4px}.patient-app .mobile-tabs a.active{background:#eeeddf}}@media(max-width:800px){.patient-app .dashboard-columns{grid-template-columns:minmax(0,1fr);gap:28px}.patient-app .welcome-card{align-items:start}.patient-app .nutritionist-chip{flex-shrink:1}}@media(max-width:600px){.patient-app .patient-main{padding:30px 20px calc(92px + env(safe-area-inset-bottom,0px))}.patient-app .patient-header-inner{padding-inline:20px}.patient-app .welcome-card{padding:0 0 24px;gap:20px}.patient-app .welcome-card h1{font-size:34px}.patient-app .nutritionist-chip{border-left:0;padding:0}.patient-app .nutritionist-chip>div{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}.patient-app .nutritionist-chip strong{font-size:13px}.patient-app .next-action{padding:24px;margin-block:24px}.patient-app .next-action h2{font-size:26px}.patient-app .next-action p{font-size:14px}.patient-app .next-action .patient-primary{width:100%}.patient-app .metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-block:24px 32px}.patient-app .metric-card,.patient-app .metric-card:first-child{padding:18px 12px}.patient-app .metric-card:nth-child(odd){padding-left:0}.patient-app .metric-card:nth-child(2n){border-right:0}.patient-app .metric-card:nth-child(n+3){border-top:1px solid var(--patient-border)}.patient-app .metric-card>strong{font-size:23px}.patient-app :is(.patient-page-header,.appointments-heading){padding:0 0 24px;gap:20px}.patient-app :is(.patient-page-header h1,.appointments-heading h1,.profile-page>header h1){font-size:36px}.patient-app .macro-card{padding:22px}.patient-app .macro-grid{gap:22px}.patient-app .macro-grid p{margin-top:0}.patient-app .plan-meals article{padding:24px 0;gap:16px}.patient-app .plan-meal-label{padding-bottom:12px}.patient-app .meal-list .meal-card{grid-template-columns:minmax(0,1fr) auto;gap:12px}.patient-app .meal-card .kcal{grid-column:auto;align-self:center}.patient-app .appointment-list:not(.patient-documents) article{padding:24px}.patient-app app-patient-documents form{grid-template-columns:minmax(0,1fr);padding:24px 20px}.patient-app app-patient-documents form>button{width:100%}.patient-app .patient-documents article{padding:24px 0}.patient-app .profile-details{padding:24px 20px}.patient-app .profile-details .fields{grid-template-columns:minmax(0,1fr);gap:20px}}@media screen and (prefers-reduced-motion:no-preference){.patient-app :is(.next-action-overview,.history-section,.plan-meals,.appointment-list,.booking-modal){transition:opacity .2s cubic-bezier(.23,1,.32,1),transform .2s cubic-bezier(.23,1,.32,1)}@starting-style{.patient-app :is(.next-action-overview,.history-section,.plan-meals,.appointment-list,.booking-modal){opacity:0;transform:translateY(6px)}}.patient-app :is(.patient-primary,.patient-secondary,.patient-page-header button,.confirm-booking){transition:background-color .14s ease,color .14s ease,transform .12s cubic-bezier(.23,1,.32,1)}.patient-app :is(.patient-primary,.patient-secondary,.patient-page-header button,.confirm-booking):active:not(:disabled){transform:scale(.985)}}.patient-app{--slate-400: #647d75;--slate-500: #526d66;--slate-800: #153d35}.patient-app ::selection{background:#b8efd9;color:#153d35}.patient-app .patient-header{background:#fff}.patient-app .patient-brand{font-family:inherit;font-size:24px;font-weight:800;letter-spacing:-.04em}.patient-app .patient-brand>span{background:#087f63;border-radius:14px}.patient-app .profile-avatar{background:#087f63;border-color:#d8f7e9}.patient-app .desktop-tabs{gap:6px;padding:0;background:transparent;border-radius:0;align-items:center}.patient-app .desktop-tabs a{display:flex;align-items:center;height:44px;padding:10px 14px;border:0;border-radius:10px;color:#526d66}.patient-app .desktop-tabs a.active{background:#e4f6ee;color:#087f63;box-shadow:none;font-weight:750}.patient-app .desktop-tabs a:not(.active):hover{background:#f1f8f5;color:#06644f}.patient-app .patient-main{width:100%;max-width:1480px;padding-top:32px}.patient-app :is(.welcome-card h1,.patient-page-header h1,.appointments-heading h1,.profile-page>header h1){font-family:inherit;font-weight:750;font-size:clamp(28px,2.7vw,36px);letter-spacing:-.035em;line-height:1.18}.patient-app .welcome-card{position:relative;isolation:isolate;overflow:hidden;padding:36px;min-height:210px;border:1px solid #c4ebdc;border-radius:24px;background:#dff8ec;align-items:center;box-shadow:var(--patient-shadow)}.patient-app .welcome-card>div{position:relative;z-index:1}.patient-app .welcome-card>div:first-child{flex:1}.patient-app .welcome-card h1{max-width:650px;margin-bottom:14px}.patient-app .welcome-card p{max-width:55ch;color:#3d6557;font-size:15px}.patient-app .welcome-card:after{content:"";position:absolute;width:210px;height:300px;right:-80px;bottom:-150px;border:28px solid #b0e9d0;border-radius:70% 0;transform:rotate(-30deg);z-index:0;pointer-events:none}.patient-app .nutritionist-chip{max-width:230px;padding:18px 20px;border:1px solid #c1e6d7;border-radius:18px;background:#ffffffd9;flex-shrink:1}.patient-app .nutritionist-chip small{color:#526d66}.patient-app .nutritionist-chip strong{display:block;margin-top:4px;color:#153d35}.patient-app .patient-main .next-action{padding:28px 30px;background:#fff;border:1px solid var(--patient-border);border-radius:22px;box-shadow:var(--patient-shadow);color:var(--patient-ink)}.patient-app .next-action h2{color:var(--patient-ink);font-family:inherit;font-size:23px;font-weight:750}.patient-app .next-action p{color:var(--patient-muted)}.patient-app .next-action .patient-primary{background:var(--patient-accent);color:#fff;border-radius:12px}.patient-app .next-action .patient-primary:hover{background:var(--patient-accent-hover)}.patient-app .next-action>a:not(.patient-primary){color:var(--patient-accent)}.patient-app .next-action .clinical-context{border-color:var(--patient-border);color:var(--patient-muted)}.patient-app .patient-main .next-action.plan-pending{background:#e5f8ef}.patient-app .metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border:0;margin:24px 0 36px}.patient-app .patient-main .metric-card{padding:22px;min-width:0;border:1px solid var(--patient-border);border-radius:20px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .metric-label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:650}.patient-app .metric-label .icon{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:10px;background:#d8f7e9;color:#06644f;font-weight:800}.patient-app .metric-label .amber{background:#fff0cc;color:#805514}.patient-app .metric-label .purple{background:#def3fa;color:#236580}.patient-app .metric-card>strong{font-size:30px;font-weight:750;margin-top:18px}.patient-app .metric-card>strong small{font-size:15px;font-weight:500;color:var(--patient-muted)}.patient-app .appointment-metric>strong{font-size:23px}.patient-app .metric-card p{font-size:13px}.patient-app .section-title h2,.patient-app .dashboard-columns aside>h2{font-family:inherit;font-size:22px;font-weight:750}.patient-app .dashboard-columns{gap:28px}.patient-app .meal-list{display:grid;gap:12px}.patient-app .meal-list .meal-card{grid-template-columns:44px minmax(0,1fr) auto;gap:16px;padding:20px;border:1px solid var(--patient-border);border-radius:18px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .meal-emoji{display:grid;place-items:center;width:44px;height:44px;background:#effaf4;border-radius:14px;font-size:24px}.patient-app .meal-card .kcal{padding:6px 10px;border-radius:999px;background:#e5f8ef;color:#06644f}.patient-app .medical-card{padding:24px;background:#e0f5f2;border:1px solid #c5e7df;border-radius:20px;color:var(--patient-ink)}.patient-app .medical-card strong{display:block;margin-bottom:10px}.patient-app .support-card{margin-top:14px;padding:18px;border:1px solid var(--patient-border);border-radius:18px;background:#fff}.patient-app .patient-main .patient-page-header,.patient-app .profile-page>header{padding:28px 30px;margin-bottom:24px;border:1px solid #c4ebdc;border-radius:24px;background:#dff8ec;box-shadow:var(--patient-shadow)}.patient-app .macro-card{padding:28px;border:1px solid var(--patient-border);background:#fff;border-radius:22px}.patient-app .macro-card h2{font-size:20px;font-weight:750}.patient-app .macro-grid b{color:#087f63;font-size:26px;font-weight:750}.patient-app .meter{height:8px;border-radius:999px;background:#edf4f0}.patient-app .green-fill{background:#0a9b72}.patient-app .amber-fill{background:#e8ad3c}.patient-app .blue-fill{background:#269cac}.patient-app .day-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;gap:8px;padding:8px;margin-block:24px 18px;border:1px solid var(--patient-border);border-radius:22px;background:#e9f6ef}.patient-app .day-tabs button{width:100%;min-width:0;min-height:46px;padding:10px 8px;border-radius:16px;font-size:14px}.patient-app .plan-meals{display:grid;gap:16px}.patient-app .plan-meals article{padding:26px;gap:24px;border:1px solid var(--patient-border);border-radius:20px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .plan-meal-label>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px}.patient-app .plan-meal-label h3{font-family:inherit;font-size:19px;font-weight:750}.patient-app app-patient-documents form{padding:28px;border:1px solid var(--patient-border);border-radius:22px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .patient-documents article{padding:24px;border:1px solid var(--patient-border);border-radius:20px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .document-kind{display:inline-flex;padding:5px 11px;border-radius:999px;background:#dff8ec;color:#06644f;font-weight:700}.patient-app .profile-details{max-width:none;padding:30px;border:1px solid var(--patient-border);border-radius:22px;background:#fff;box-shadow:var(--patient-shadow)}.patient-app .profile-details h2{font-family:inherit;font-size:22px;font-weight:750}.patient-app .privacy-note{background:#effaf4;border-radius:14px;color:var(--patient-muted)}.patient-app :is(.profile-details,app-patient-documents form) :is(input,select){border-color:#abcfc0;border-radius:12px}.patient-app :is(app-patient-dashboard,app-nutrition-plan,app-patient-documents,app-profile) .patient-empty-state{border-color:#abcfc0;border-radius:20px;background:#fff}@media(max-width:1180px){.patient-app .mobile-tabs{background:#fff;padding-top:6px;height:calc(72px + env(safe-area-inset-bottom,0px));gap:4px}.patient-app .mobile-tabs a{border:0;border-radius:16px;margin-bottom:6px}.patient-app .mobile-tabs a.active{background:#d8f7e9;color:#06644f}}@media(max-width:800px){.patient-app .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-app .welcome-card{flex-direction:column;align-items:stretch;gap:22px}.patient-app .nutritionist-chip{max-width:none;align-self:start}}@media(max-width:600px){.patient-app .patient-main{padding:22px 16px calc(100px + env(safe-area-inset-bottom,0px))}.patient-app .welcome-card{padding:26px 22px}.patient-app .nutritionist-chip{padding:14px 16px}.patient-app .metric-grid{gap:12px}.patient-app .patient-main .metric-card{padding:18px 16px}.patient-app .metric-card>strong{font-size:26px}.patient-app .appointment-metric>strong{font-size:21px}.patient-app .patient-main .next-action,.patient-app .patient-main .patient-page-header,.patient-app .profile-page>header{padding:24px 20px}.patient-app .meal-list .meal-card{grid-template-columns:40px minmax(0,1fr);padding:18px;gap:12px}.patient-app .meal-card .kcal{grid-column:2;justify-self:start}.patient-app .plan-meals article,.patient-app .patient-documents article{padding:22px 18px}.patient-app .profile-details{padding:24px 20px}.patient-app .day-tabs{grid-template-columns:repeat(7,minmax(78px,1fr));overflow-x:auto;border-radius:18px}}@media(max-width:360px){.patient-app .metric-grid{grid-template-columns:minmax(0,1fr)}}@media print{.patient-app :is(.patient-header,.mobile-tabs,.booking-overlay){display:none}.patient-app .patient-main{padding:0;animation:none}.patient-app :is(.plan-meals article,.macro-card){box-shadow:none;break-inside:avoid}}
