:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#16262a;--ink-soft:#33474a;--muted:#4f615f;--muted-quiet:#7e8a86;--gold:#cdb77a;--muted-faint:#96a19d;--green:#0a5561;--green-strong:#063f48;--green-bright:#16808f;--mint:#81d6c2;--sidebar:#0a3f49;--paper:#fdfaf7;--backdrop:#efeae1;--surface:#fff;--surface-warm:#fbf7f0;--surface-sunken:#efe9de;--soft:#edf6f0;--line:#ddd6c8;--line-quiet:#e7e1d5;--line-faint:#f1ede4;--ok-fg:#135545;--ok-bg:#def0e5;--ok-line:#c7ded3;--warn-fg:#5c4e2e;--warn-bg:#f4efe3;--warn-line:#e8dcc0;--danger-fg:#8a382f;--danger-bg:#fbede9;--danger-line:#efd8cf;--radius:12px;--radius-card:18px;--shadow-card:0 1px 2px #16262a0a;--shadow-float:0 24px 60px #16262a29;font-family:var(--font-manrope), Manrope, ui-sans-serif, system-ui, -apple-system, sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0}button,input,select,textarea{font:inherit}.center,.auth-page{background:var(--backdrop);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card,.status-card{border:1px solid var(--line-quiet);background:var(--surface);width:min(100%,440px);box-shadow:var(--shadow-float);border-radius:20px;padding:32px}.brand{color:var(--ink);letter-spacing:-.2px;align-items:center;gap:10px;font-size:18px;font-weight:800;display:inline-flex}.auth-card .brand:before,.status-card .brand:before{content:"d";background:linear-gradient(135deg, var(--green-bright), var(--mint));color:#04333b;border-radius:11px;place-items:center;width:34px;height:34px;font-size:16px;font-weight:800;display:grid}h1,h2,p{margin-top:0}.auth-card h1{letter-spacing:-.4px;margin:22px 0 6px;font-size:26px;font-weight:800}.auth-card>p,.status-card>p{color:var(--muted);line-height:1.6}form{gap:14px;margin-top:18px;display:grid}form>button,form>.actions{justify-self:start}form>label{max-width:560px}label{color:var(--ink);gap:6px;font-size:12.5px;font-weight:700;display:grid}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:40px;color:var(--ink);background:var(--surface);padding:10px 12px;font-size:13.5px}input:focus,select:focus,textarea:focus{border-color:var(--green);outline:3px solid #0a556129}.invalid-field,.invalid-field:focus{border-color:#b42318;outline-color:#b4231833}.field-error{color:#b42318;font-size:14px;font-weight:700}.required-note{color:var(--muted);font-size:14px}.success-message{font-weight:800;color:var(--green)!important}select:focus,textarea:focus{border-color:var(--green);outline:3px solid #23835622}textarea{resize:vertical;min-height:110px}button:disabled,input:disabled{cursor:not-allowed;opacity:.55}button{border-radius:var(--radius);color:#fff;background:linear-gradient(135deg, var(--green), var(--green-bright));cursor:pointer;border:0;min-height:40px;padding:0 15px;font-size:13.5px;font-weight:700}button.secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}button.secondary:hover{background:var(--surface-warm)}button.danger{border:1px solid var(--danger-line);background:var(--danger-bg);color:var(--danger-fg)}button:focus-visible{outline-offset:2px;outline:3px solid #0a556157}.totp-qr{border:10px solid #fff;border-radius:16px;width:min(240px,100%);height:auto;margin:24px auto;display:block}[role=alert]{color:#a03232;font-size:14px}.actions{flex-wrap:wrap;gap:10px;display:flex}.profile-image-field{gap:12px;display:grid}.field-label{font-weight:700}.label-title{white-space:nowrap;align-items:baseline;gap:4px;width:max-content;max-width:100%;display:inline-flex}.required-marker{color:#b42318}.profile-image-preview{border:1px solid var(--line);object-fit:cover;border-radius:50%;width:112px;height:112px}.upload-button{color:#fff;background:var(--green);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;width:max-content;min-height:44px;padding:12px 16px;display:inline-flex}.upload-button input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.social-media-fields{border-top:1px solid var(--line);gap:12px;margin-top:24px;padding-top:24px;display:grid}.social-media-fields h3,.social-media-fields p{margin:0}.selection-field{border:1px solid var(--line);border-radius:12px;margin:0;padding:16px}.selection-field legend{padding:0 6px;font-weight:700}.selection-options,.selection-chips{flex-wrap:wrap;gap:10px;display:flex}.selection-option{border:1px solid var(--line);cursor:pointer;border-radius:999px;grid-template-columns:none;align-items:center;min-height:44px;padding:8px 12px;display:inline-flex}.selection-option input{width:auto}.selection-chips{margin-top:12px}.selection-chip{color:var(--green);background:var(--soft);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-weight:800;display:inline-flex}.selection-chip button{min-width:28px;min-height:28px;color:var(--green);background:0 0;padding:0}.secondary{color:var(--green);background:var(--soft)}.shell{background:var(--paper);grid-template-columns:236px 1fr;height:100vh;display:grid;overflow:hidden}.shell>aside{background:var(--sidebar);color:#fff;border-right:0;flex-direction:column;height:100vh;padding:0;display:flex;overflow:hidden}.shell>aside .brand{color:#fff;letter-spacing:0;border-bottom:1px solid #ffffff1a;flex:none;align-items:center;gap:11px;height:68px;padding:0 16px;font-size:16px;font-weight:800;display:flex}.shell>aside .brand:before{content:"d";background:linear-gradient(135deg, var(--green-bright), var(--mint));color:#04333b;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;font-size:17px;font-weight:800;display:grid}.shell>aside nav{flex:1;align-content:start;gap:3px;margin-top:0;padding:12px 10px;display:grid;overflow-y:auto}nav button[data-nav]:before{content:"";width:19px;height:19px;-webkit-mask:var(--nav-icon) center / contain no-repeat;-webkit-mask:var(--nav-icon) center / contain no-repeat;mask:var(--nav-icon) center / contain no-repeat;background:currentColor;flex:none}nav button[data-nav=overview]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1.5'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1.5'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1.5'/%3E%3C/svg%3E")}nav button[data-nav=patients]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E")}nav button[data-nav=plans]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='M9 13h6'/%3E%3Cpath d='M9 17h4'/%3E%3C/svg%3E")}nav button[data-nav=foods]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 2v20'/%3E%3Cpath d='M7 2v7a4 4 0 0 0 4 4'/%3E%3Cpath d='M4 2v7'/%3E%3Cpath d='M18 2c-1.7 1.6-2 4-2 6v4h4V8c0-2-.3-4.4-2-6z'/%3E%3Cpath d='M18 12v10'/%3E%3C/svg%3E")}nav button[data-nav=forms]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4'/%3E%3Cpath d='M12 16h4'/%3E%3Cpath d='M8 11h.01'/%3E%3Cpath d='M8 16h.01'/%3E%3C/svg%3E")}nav button[data-nav=recipes]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 3h13a3 3 0 0 1 3 3v15H7a3 3 0 0 1-3-3z'/%3E%3Cpath d='M8 7h8'/%3E%3Cpath d='M8 11h8'/%3E%3C/svg%3E")}nav button[data-nav=messages]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}nav button[data-nav=posts]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Cpath d='M7 8h10'/%3E%3Cpath d='M7 12h10'/%3E%3Cpath d='M7 16h6'/%3E%3C/svg%3E")}nav button[data-nav=packages]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m21 8-9-5-9 5v8l9 5 9-5z'/%3E%3Cpath d='m3 8 9 5 9-5'/%3E%3Cpath d='M12 13v8'/%3E%3C/svg%3E")}nav button[data-nav=profile]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}nav button[data-nav=privacy]{--nav-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E")}.shell>aside nav button,.logout{border-radius:var(--radius);text-align:left;color:#c9e8dc;background:0 0;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:13.5px;font-weight:600;transition:background .18s;display:flex}.shell>aside nav button:hover,.logout:hover{background:#ffffff14}.shell>aside nav button.active{color:#fff;background:#ffffff24}.logout{border-radius:var(--radius);color:#9fc4bd;border-top:0;flex:none;min-height:44px;margin:10px;padding:0 12px}.logout:before{content:"";width:19px;height:19px;-webkit-mask:var(--logout-icon) center / contain no-repeat;-webkit-mask:var(--logout-icon) center / contain no-repeat;mask:var(--logout-icon) center / contain no-repeat;--logout-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='m16 17 5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E");background:currentColor;flex:none}.panel{flex-direction:column;min-width:0;height:100vh;padding:0;display:flex;overflow-y:auto}.panel header{z-index:5;background:var(--sidebar);color:#fff;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:20px;min-height:68px;margin-bottom:0;padding:0 22px;display:flex;position:sticky;top:0}.panel header h1{color:#fff}.panel>:not(header){padding-inline:26px}.panel>:nth-child(2){padding-top:24px;padding-bottom:32px}small{color:var(--muted-quiet);letter-spacing:.06em;font-size:10.5px;font-weight:700}.panel header h1{letter-spacing:-.3px;margin:2px 0 0;font-size:20px;font-weight:800}.panel header .crumbs{letter-spacing:.08em;color:#ffffff8c;text-transform:uppercase;align-items:center;gap:7px;font-size:10.5px;font-weight:700;display:flex}.panel header .crumbs button{min-height:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0}.panel header .crumbs button:hover{color:var(--mint)}.panel header .crumbs .crumb-sep{color:#ffffff59;font-weight:600}.panel header .crumbs .crumb-current{color:#ffffffd9}.header-search{color:#fff9;background:#ffffff14;border:1px solid #ffffff29;border-radius:11px;align-items:center;gap:8px;width:240px;height:38px;padding:0 12px;display:flex}.header-search:focus-within{border-color:var(--mint)}.header-search svg{flex:none}.header-search input{color:#fff;background:0 0;border:0;flex:1;min-width:0;min-height:0;padding:0;font-size:12.5px;font-weight:500}.header-search input::placeholder{color:#ffffff73}.header-search input:focus{outline:none}.header-icon-button{color:#ffffffd9;background:#ffffff14;border:1px solid #ffffff29;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;min-height:38px;padding:0;display:grid;position:relative}.header-icon-button:hover{background:#ffffff24}.header-badge{background:var(--gold);color:#12242b;border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:800;display:grid;position:absolute;top:-5px;right:-5px}.header-bell-wrap{display:inline-flex;position:relative}.header-pop-scrim{z-index:45;position:fixed;inset:0}.header-pop{z-index:50;border:1px solid var(--line-quiet);background:var(--surface);width:220px;color:var(--muted);border-radius:13px;flex-direction:column;gap:3px;padding:12px 14px;font-size:12px;font-weight:500;display:flex;position:absolute;top:46px;right:0;box-shadow:0 20px 46px #16262a2e}.header-pop strong{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.header-avatar{width:38px;height:38px;min-height:38px;color:var(--gold);letter-spacing:.02em;background:#ffffff1f;border:1px solid #ffffff38;border-radius:12px;flex:none;place-items:center;padding:0;font-size:12px;font-weight:800;display:grid}.header-avatar:hover{background:#ffffff2e}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.hero{border-radius:var(--radius-card);color:#fff;background:linear-gradient(140deg, var(--sidebar), var(--green) 60%, var(--green-bright));grid-column:1/-1;padding:24px 26px}.hero h2{letter-spacing:-.3px;margin:4px 0 8px;font-size:24px;font-weight:800}.hero p{color:#c9e8dc;letter-spacing:.04em;margin:0;font-size:12px;font-weight:600}.hero span{color:#ffffffdb;max-width:62ch;font-size:13.5px;font-weight:500;line-height:1.6;display:block}.content-card{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);padding:18px}.content-card h2,.content-card h3{letter-spacing:-.1px;font-size:16px;font-weight:800}.meal-diary,.meal-diary-day,.meal-diary-meal,.meal-diary-entry,.meal-diary-feedback-form{gap:.75rem;display:grid}.meal-diary-day{border-top:1px solid var(--line);padding-top:1rem}.meal-diary-meal,.meal-diary-entry{border:1px solid var(--line);border-radius:.85rem;padding:1rem}.meal-diary-entry header{justify-content:space-between;gap:1rem;display:flex}.meal-diary-feedback-form textarea{resize:vertical;min-height:6rem}.meal-diary-photo img{object-fit:contain;border-radius:.75rem;max-width:min(100%,32rem);max-height:24rem;display:block}.content-card p{color:var(--muted)}.profile{max-width:720px}.profile dl{grid-template-columns:150px 1fr;gap:16px;display:grid}.profile dt{color:var(--muted)}.profile dd{margin:0;font-weight:700}.onboarding-page{min-height:100vh;padding:32px clamp(18px,5vw,72px) 64px}.onboarding-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.onboarding-header h1{margin:8px 0 0}.steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:32px 0;padding:0;list-style:none;display:grid}.steps li{color:var(--green);background:var(--soft);text-align:center;border-radius:12px;padding:12px;font-size:13px;font-weight:800}.notice,.form-message{background:#fff9e9;border:1px solid #e9c679;border-radius:14px;max-width:980px;margin:0 auto 20px;padding:18px 20px}.notice p{margin:6px 0 0}.onboarding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1100px;margin:0 auto;display:grid}.documents{gap:10px;padding:0;list-style:none;display:grid}.documents li{background:var(--soft);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.review-card{align-self:start}.link-button{color:var(--green);background:0 0;margin-top:14px}.patient-management{gap:16px;max-width:1100px;display:grid}.patient-list{border-top:1px solid var(--line-faint);margin:14px -18px -18px}.patient-list .patient-row{border-bottom:1px solid var(--line-faint);align-items:center;gap:12px;padding:12px 18px;display:flex}.patient-row:last-child{border-bottom:0}.patient-row:hover{background:var(--surface-warm)}.patient-avatar{background:var(--ok-bg);width:36px;height:36px;color:var(--ok-fg);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.patient-row>div:not(.actions){flex:1;min-width:0}.patient-row strong{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;display:block;overflow:hidden}.patient-row p{color:var(--muted);margin:3px 0 0;font-size:12px}.patient-row .actions{flex:none}.patient-row .actions button{min-height:34px;padding:0 12px;font-size:12px}.status-badge{background:var(--surface-sunken);color:var(--muted);border-radius:8px;flex:none;padding:5px 9px;font-size:11px;font-weight:700}.status-badge.active{background:var(--ok-bg);color:var(--ok-fg)}.status-badge.pending{background:var(--warn-bg);color:var(--warn-fg)}.status-badge.ended{background:var(--surface-sunken);color:var(--muted)}.program-management{align-items:start;gap:18px;display:grid}.program-patient-browser,.program-workspace,.program-patient-group{gap:14px;display:grid}.program-search{max-width:360px}.program-patient-group{gap:8px}.program-section-heading,.program-selected-patient{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.program-section-heading p,.program-selected-patient p{margin:4px 0 0}.program-patient-group h3{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:4px 0 0;font-size:13px;font-weight:700}.program-patient-group>div{flex-wrap:wrap;gap:8px;display:flex}.program-patient-option{border:1px solid var(--line);min-height:52px;color:var(--ink);text-align:left;background:#fff;border-radius:12px;gap:2px;padding:9px 14px;display:grid}.program-patient-option span{color:var(--muted);font-size:12px;font-weight:500}.program-patient-option.selected{border-color:var(--green);background:var(--soft);box-shadow:0 0 0 2px color-mix(in srgb, var(--green) 16%, transparent)}.program-selection-empty{min-height:220px}.program-consent-summary{justify-items:end;gap:10px;display:grid}.program-consent{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.program-consent.active{color:var(--green);background:var(--soft)}.program-consent.pending{color:#76540b;background:#fff4d4}.program-consent.missing{color:#87362f;background:#fff0ed}.inline-error{background:#fff5f3;border:1px solid #e4aaa4;border-radius:12px;padding:14px}.inline-error p{margin-top:0}dialog{border:1px solid var(--line);width:min(92vw,440px);color:var(--ink);background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 70px #183d2940}dialog::backdrop{background:#10281d66}.consent-form{gap:12px;margin-top:0;display:grid}.consent-scope-fieldset{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.consent-scope-fieldset legend{margin-bottom:10px;font-weight:800}.consent-scope-row{border:1px solid var(--line);border-radius:12px;gap:10px;padding:12px;display:grid}.consent-scope-checkbox{align-items:center;gap:10px;display:flex}.consent-scope-checkbox input[type=checkbox]{width:18px;height:18px}.consent-access-level{margin-left:28px}.field-error{margin:0}.confirmation-backdrop{z-index:20;background:#10281d66;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.confirmation-dialog{border:1px solid var(--line);width:min(92vw,440px);max-height:calc(100vh - 48px);color:var(--ink);background:#fff;border-radius:18px;padding:24px;overflow-y:auto;box-shadow:0 24px 70px #183d2940}.food-library{gap:18px;max-width:1100px;display:grid}.food-library-toolbar{grid-template-columns:1fr auto;align-items:start;gap:18px;display:grid}.food-library-toolbar label{grid-column:1/-1}.food-card-list{gap:16px;display:grid}.food-card-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.food-card-heading h3{margin:0 0 6px}.food-badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.food-badges span{color:var(--green);background:var(--soft);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.food-form{margin-top:0}.food-nutrient-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.food-revisions{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.food-revisions ol{gap:8px;margin-bottom:0;display:grid}.food-picker{gap:16px;width:min(560px,100vw - 40px);max-height:calc(100vh - 48px);display:grid;overflow-y:auto}.confirmation-backdrop>.food-picker{margin-top:0}.food-picker-results{gap:8px;display:grid}.food-picker-results>button{text-align:left;justify-content:space-between;align-items:center;gap:12px;display:flex}.food-picker-results span{color:var(--muted);font-size:13px}.nutrition-plan-amount{grid-template-columns:minmax(90px,150px) auto;align-items:center;gap:8px;display:grid}.nutrition-plan-amount>span{min-width:24px;color:var(--muted);font-weight:800}.validation-summary{background:#fff9e9;border:1px solid #e9c679;border-radius:14px;margin:18px 0;padding:16px 18px}.validation-summary ul{margin-bottom:0}.messaging-layout{grid-template-columns:minmax(280px,.85fr) minmax(380px,1.6fr);gap:20px;min-height:660px;display:grid}.conversation-list,.message-pane{min-width:0}.messaging-heading,.conversation-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.messaging-heading p{margin-bottom:0}.conversation-items{gap:8px;margin:18px 0;display:grid}.conversation-items>button{text-align:left;width:100%;min-height:96px;color:var(--ink);background:var(--paper);border:1px solid var(--line);gap:6px;display:grid}.conversation-items>button.selected{border-color:var(--green);background:var(--soft)}.conversation-items small,.conversation-items time,.message-history time{color:var(--muted);font-size:12px}.conversation-title b{text-align:center;color:#fff;background:var(--green);border-radius:999px;min-width:26px;padding:4px 8px}.message-pane{flex-direction:column;display:flex}.message-placeholder{text-align:center;margin:auto}.message-history{flex-direction:column;flex:1;gap:10px;min-height:380px;max-height:58vh;padding:20px 0;display:flex;overflow-y:auto}.message-history article{border-radius:16px;max-width:min(78%,620px);padding:12px 14px}.message-history article p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:6px}.own-message{background:#dff2e7;align-self:flex-end}.patient-message{border:1px solid var(--line);background:#fff;align-self:flex-start}.message-composer{border-top:1px solid var(--line);gap:10px;padding-top:16px;display:grid}.message-composer textarea{min-height:88px}.message-composer button{min-height:44px}.message-read-only{color:var(--muted);background:var(--soft);border-radius:12px;padding:16px}.profile-management,.package-management{gap:18px;max-width:1100px;display:grid}.management-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.management-heading h2,.management-heading h3{margin-bottom:6px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.wide-field{grid-column:1/-1}.checkbox-field{grid-template-columns:auto 1fr;align-items:center;display:flex}.checkbox-field input{width:18px;height:18px}.status-badge{color:#76540b;background:#fff4d4;border-radius:999px;flex:none;padding:7px 11px;font-size:12px;font-weight:900}.status-badge.published{color:var(--green);background:var(--soft)}.status-badge.hidden,.status-badge.archived{color:#87362f;background:#fff0ed}.package-card-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.package-admin-card ul{padding-left:20px}.inline-confirmation{background:#fff9e9;border:1px solid #e9c679;border-radius:12px;margin-top:16px;padding:16px}.package-editor{max-width:900px}.clinical-record-list{gap:12px;margin:16px 0;padding:0;list-style:none;display:grid}.clinical-record-list li,.clinical-record-form,.confirmation-panel{background:#f5f8f5;border:1px solid #dce5de;border-radius:12px;gap:10px;padding:14px;display:grid}.clinical-record-form label{gap:6px;display:grid}.clinical-record-form textarea{resize:vertical;min-height:96px}.inline-actions{align-items:center;gap:10px;display:flex}.muted{color:#607067}.appointment-panel,.appointment-form,.appointment-list,.appointment-item{gap:.75rem;display:grid}.appointment-item{border-top:1px solid var(--line);padding-top:1rem}.appointment-form{background:var(--soft);border-radius:.75rem;padding:1rem}.entitlement-summary,.entitlement-item{gap:.5rem;display:grid}.entitlement-summary{border:1px solid var(--line);border-radius:.75rem;padding:1rem}.entitlement-item+.entitlement-item{border-top:1px solid var(--line);padding-top:.75rem}@media (max-width:760px){.steps,.onboarding-grid{grid-template-columns:1fr}.shell{padding-bottom:76px;display:block}aside{z-index:2;border:1px solid var(--line);width:100%;height:auto;padding:8px;position:fixed;inset:auto 0 0}aside>.brand,.logout{display:none}nav{margin:0;display:flex;overflow-x:auto}nav button{flex:none;padding:11px 13px}.panel{padding:24px 18px}.panel header{align-items:flex-start}.panel header strong{font-size:13px}.content-grid,.program-management{grid-template-columns:1fr}.program-patient-browser{position:static}.program-section-heading,.program-selected-patient{flex-direction:column;align-items:stretch}.program-consent-summary{justify-items:start}.hero{padding:26px}.hero h2{font-size:30px}.profile dl{grid-template-columns:1fr;gap:6px}.profile dd{margin-bottom:14px}.food-library-toolbar{grid-template-columns:1fr}.food-library-toolbar label{grid-column:auto}.food-card-heading,.food-picker-results>button{flex-direction:column;align-items:stretch}.food-badges{justify-content:flex-start}.food-nutrients,.food-nutrient-grid,.messaging-layout{grid-template-columns:1fr}.message-history{max-height:none}.management-heading{flex-direction:column;align-items:stretch}.form-grid,.package-card-list{grid-template-columns:1fr}.wide-field{grid-column:auto}}.center,.auth-page{position:relative}.shell-corner{position:absolute;top:18px;right:18px}.header-actions{align-items:center;gap:14px;display:flex}.language-switch{background:var(--soft);border-radius:12px;gap:4px;padding:3px;display:inline-flex}.language-switch button{border-radius:9px;padding:7px 12px;font-size:13px;font-weight:800}.language-active{color:#fff;background:var(--green)}.legal-gate{text-align:left;width:min(100%,720px)}.legal-gate article{margin:18px 0}.legal-body{background:var(--soft);white-space:pre-wrap;border-radius:12px;max-height:260px;padding:12px;overflow-y:auto}.manual-secret{margin-bottom:16px;font-size:14px}.manual-secret code{overflow-wrap:anywhere;background:#f2f6f3;border-radius:8px;margin-top:8px;padding:8px;display:block}.recovery-codes{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:8px;margin:16px 0;padding:0;list-style:none;display:grid}.recovery-codes code{text-align:center;letter-spacing:.05em;background:#f2f6f3;border-radius:8px;padding:8px;display:block}.field-hint{color:var(--muted);margin:-6px 0 0;font-size:12px}.consent-levels{gap:8px;margin-top:10px;display:grid}.consent-level-row{border:1px solid var(--line-quiet);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.consent-level-name{font-size:13px;font-weight:700}.segmented{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;padding:3px;display:inline-flex}.segmented button{min-height:30px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 11px;font-size:12px;font-weight:600}.segmented button[aria-pressed=true]{background:var(--green);color:#fff}.summary-list{gap:8px;margin:14px 0 16px;padding:0;list-style:none;display:grid}.summary-list li{border:1px solid var(--line-quiet);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:13px;display:flex}.summary-list strong{color:var(--green);font-size:12.5px}.confirmation-dialog .field-error{border:1px solid var(--danger-line);background:var(--danger-bg);color:var(--danger-fg);border-radius:12px;margin:0 0 14px;padding:10px 12px;font-size:13px;font-weight:600}.plan-builder{border:1px solid var(--line-quiet);background:var(--surface);border-radius:20px;grid-template-columns:250px minmax(0,1fr) 308px;align-items:stretch;min-height:620px;display:grid;overflow:hidden}.plan-builder.read-only{grid-template-columns:250px minmax(0,1fr)}.builder-rail,.builder-side{background:var(--paper);flex-direction:column;gap:18px;padding:18px 16px;display:flex;overflow-y:auto}.builder-rail{border-right:1px solid var(--line-quiet)}.builder-side{border-left:1px solid var(--line-quiet)}.builder-rail-block{gap:10px;display:grid}.builder-rail h2,.builder-side h3{margin:0;font-size:14px;font-weight:800}.builder-rail h3{margin:0;font-size:15px;font-weight:800}.builder-rail p,.builder-empty{color:var(--muted);margin:0;font-size:12.5px}.builder-plan-list,.builder-day-list{gap:6px;display:grid}.builder-plan,.builder-day{min-height:44px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;gap:3px;padding:9px 11px;display:grid}.builder-plan:hover,.builder-day:hover{background:var(--surface)}.builder-plan[aria-pressed=true],.builder-day[aria-pressed=true]{border-color:var(--ok-line);background:var(--soft)}.builder-plan-title,.builder-day-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12.5px;font-weight:700;overflow:hidden}.builder-plan-meta,.builder-day-count{color:var(--muted);font-size:11.5px;font-weight:600}.builder-day{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.builder-new,.builder-rail-actions button{width:100%;min-height:38px;font-size:12.5px}.builder-rail-actions{gap:6px;display:grid}.builder-main{min-width:0;padding:22px 24px;overflow-y:auto;container-type:inline-size}.builder-day-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.builder-day-heading h3{margin:0;font-size:19px}.builder-day-heading p{color:var(--muted);margin:4px 0 0;font-size:12.5px}.builder-meal-adders{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.builder-meal-adders button{min-height:36px;padding:0 12px;font-size:12.5px}.builder-day-label{max-width:360px;margin-top:16px}.builder-readonly-note{color:var(--muted);margin:0 0 16px;font-size:13px}.builder-meal{border:1px solid var(--line-quiet);background:var(--surface);border-radius:16px;margin-top:12px;padding:16px}.builder-meal-head{align-items:center;gap:12px;display:flex}.builder-meal-badge{background:var(--soft);width:36px;height:36px;color:var(--green);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.builder-meal-name{flex:1;gap:3px;min-width:0;display:grid}.builder-meal-name strong{font-size:14px}.builder-meal-name span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.builder-meal-head button{flex:none;min-height:34px;padding:0 12px;font-size:12px}.builder-meal-body{border-top:1px solid var(--line-quiet);grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px;padding-top:14px;display:grid}.builder-meal-fields-row{align-items:flex-end;gap:10px;display:flex}.builder-meal-fields-row>label:first-child{flex:1}.builder-meal-foods h4{color:var(--ink);margin:0 0 9px;font-size:12.5px;font-weight:700}.builder-meal-foods{align-content:start;gap:10px;display:grid}.builder-food{border:1px solid var(--line-quiet);background:var(--paper);border-radius:12px;gap:8px;padding:10px 11px;display:grid}.builder-food-row{align-items:stretch;gap:14px;display:flex}.builder-food-main{flex-direction:column;flex:1;justify-content:space-between;gap:8px;min-width:0;font-size:12.5px;font-weight:600;display:flex}.builder-food-side{flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:flex-end;gap:8px;display:flex}.builder-food-side-actions{gap:10px;display:flex}.builder-day-label-row{align-items:flex-end;gap:10px;display:flex}.builder-day-label-row .builder-day-label{flex:1}.builder-day-kcal{border:1px solid var(--line-quiet);border-radius:var(--radius);background:var(--surface-warm);min-height:40px;color:var(--ink);white-space:nowrap;align-items:center;padding:0 14px;font-size:12.5px;font-weight:700;display:inline-flex}.builder-kcal{color:var(--muted);font-family:var(--font-mono,monospace);margin-left:8px;font-size:11.5px;font-weight:600}.builder-meal-clock-inline{color:var(--muted);white-space:nowrap;margin-left:8px;font-size:12px;font-weight:600;display:inline}.builder-meal-clock-inline svg{vertical-align:-2px;margin-right:4px}.builder-meal-time-field input{max-width:140px}.builder-food-title{gap:2px;min-width:0;display:grid}.builder-food-title>span:first-child{align-items:center;gap:8px;display:flex}.builder-food-note{color:var(--muted);font-size:11.5px;font-weight:500;line-height:1.4}.builder-meal-notes textarea{max-width:560px}.builder-item-note{border-left:3px solid var(--soft);background:var(--surface-warm);color:var(--muted);border-radius:0 8px 8px 0;padding:6px 9px;font-size:11.5px;font-weight:500;line-height:1.4}.builder-item-note-button{white-space:nowrap}.builder-measure{align-items:flex-end;gap:10px;display:flex}.builder-measure select{min-width:150px}.builder-measure .builder-portion-input{max-width:72px}.builder-measure-grams{color:var(--muted);white-space:nowrap;padding-bottom:10px;font-size:12px;font-weight:600}.builder-recipe-edit-link{min-height:0;color:var(--green);background:0 0;border:0;border-radius:0;padding:0;font-size:12.5px;font-weight:700}.builder-recipe-edit-link:hover{color:var(--green-bright);text-decoration:underline}.program-recipe-editor{width:min(980px,100vw - 40px);max-height:calc(100vh - 48px);overflow-y:auto}.builder-item-remove{justify-content:center;align-items:center;width:40px;padding:0;display:inline-flex}.builder-meal-foods .actions button{align-items:center;gap:7px;display:inline-flex}.builder-meal-foods .actions button svg,.builder-item-remove svg{flex-shrink:0}.builder-food label{gap:4px;font-size:11.5px}.builder-food input{min-height:36px;padding:0 10px;font-size:12.5px}.builder-food button{min-height:36px;padding:0 11px;font-size:12px}.builder-food .field-error{grid-column:1/-1}.builder-food-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.builder-food-list li{background:var(--paper);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 11px;font-size:12.5px;display:flex}.builder-food-amount{color:var(--muted);font-weight:700}.builder-side label{gap:5px;font-size:12px}.builder-side input,.builder-side textarea{min-height:40px;font-size:12.5px}.builder-badge{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn-fg);border-radius:14px;gap:5px;padding:13px 14px;display:grid}.builder-badge strong{font-size:12.5px}.builder-badge span{font-size:11.5px;line-height:1.5}.builder-badge.live{border-color:var(--ok-line);background:var(--soft);color:var(--green)}.builder-badge.archived{border-color:var(--line);background:var(--surface-warm);color:var(--muted)}.builder-side-note,.builder-side-message{color:var(--muted);margin:0;font-size:12px}.builder-side-message{border:1px solid var(--ok-line);background:var(--soft);color:var(--green);border-radius:12px;padding:10px 12px;font-weight:600}.builder-side-actions{gap:8px;margin-top:auto;padding-top:8px;display:grid}.builder-side-actions button{width:100%;min-height:44px}.builder-side .validation-summary{margin:0;padding:12px 14px;font-size:12px}.builder-side .validation-summary ul{margin:8px 0 0;padding-left:18px}@container (max-width:540px){.builder-meal-body{grid-template-columns:1fr}}@media (max-width:1180px){.plan-builder{grid-template-columns:1fr}.builder-rail,.builder-side{border:0;border-bottom:1px solid var(--line-quiet)}.builder-meal-body{grid-template-columns:1fr}}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.section-heading h2{margin:0;font-size:21px}.section-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.patient-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.patient-search{gap:0;min-width:240px;margin:0;font-size:0}.patient-search input{min-height:40px;font-size:13px}.patient-table{border-top:1px solid var(--line-faint);margin:16px -18px -18px}.patient-table-head,.patient-table .patient-row{border-bottom:1px solid var(--line-faint);grid-template-columns:minmax(0,1.6fr) 130px minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 18px;display:grid}.patient-table-head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-warm);font-size:11px;font-weight:700}.patient-table .patient-row:last-child{border-bottom:0}.patient-table .patient-row:hover{background:var(--surface-warm)}.patient-cell-name{align-items:center;gap:11px;min-width:0;display:flex}.patient-cell-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.patient-cell-date{color:var(--muted);font-size:12.5px}.patient-cell-actions{justify-content:flex-end;gap:7px;display:flex}.patient-cell-actions button{min-height:34px;padding:0 12px;font-size:12px}.patient-pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:14px;margin-top:18px;font-size:12.5px;display:flex}.patient-pagination .actions{margin:0}.patient-detail{gap:16px;max-width:1180px;display:grid}.link-back{justify-self:start;min-height:36px;padding:0 12px;font-size:12.5px}.patient-detail-head{align-items:center;gap:16px;display:flex}.patient-detail-head>div{flex:1;min-width:0}.patient-detail-head h2{margin:0}.patient-detail-head p{color:var(--muted);margin:4px 0 0;font-size:13px}.patient-avatar.large{border-radius:16px;width:52px;height:52px;font-size:16px}.tab-bar{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-wrap:wrap;gap:4px;padding:4px;display:flex}.tab-bar button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;padding:0 14px;font-size:13px;font-weight:600}.tab-bar button:hover{background:var(--surface-warm)}.tab-bar button[aria-selected=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px #16262a1f}.patient-summary{gap:16px;max-width:620px;display:grid}.patient-consents{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.consent-block{flex-direction:column;gap:8px;margin-top:14px;display:flex}.consent-block>button{justify-self:start;width:fit-content}.consent-block-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.consent-block-head strong{font-size:13px;font-weight:800}.consent-block-head>span{color:var(--muted-quiet);font-size:12px;font-weight:600}.consent-scope-list,.consent-history{gap:6px;margin:0;padding:0;list-style:none;display:grid}.consent-history li{color:var(--muted);align-items:center;gap:9px;font-size:12.5px;display:flex}.consent-form-blocked p{color:var(--muted)}.checkbox-row{align-items:center;gap:8px;font-size:12.5px;font-weight:700;display:flex}.checkbox-row input{width:16px;height:16px;min-height:0;accent-color:var(--green);padding:0}@media (max-width:1100px){.patient-consents{grid-template-columns:1fr}}.access-panel .section-heading{align-items:center}.access-panel .section-heading h2{font-size:17px}.access-panel .section-heading button{min-height:36px;padding:0 13px;font-size:12.5px}.access-panel ul{gap:7px;margin:14px 0 0;padding:0;list-style:none;display:grid}.access-row{border:1px solid var(--line-quiet);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;font-size:12.5px;display:flex}.access-row strong{color:var(--muted);font-size:11.5px}.access-row.read,.access-row.write{border-color:var(--ok-line);background:var(--soft)}.access-row.read strong,.access-row.write strong{color:var(--green)}.access-panel .field-hint{border:1px solid var(--line-quiet);background:var(--surface-warm);border-radius:12px;margin-top:14px;padding:11px 12px;line-height:1.5}@media (max-width:1080px){.patient-summary{grid-template-columns:1fr}.patient-table-head{display:none}.patient-table .patient-row{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}.patient-cell-name{grid-column:1/-1}}.program-modes{justify-self:start}.program-modes button{min-height:36px;padding:0 14px;font-size:13px}.builder-side select{min-height:40px;font-size:12.5px}.recipe-library{gap:18px;max-width:1180px;display:grid}.recipe-toolbar{grid-template-columns:1fr auto auto;align-items:start;gap:18px;display:grid}.recipe-toolbar h2{margin:0 0 6px}.recipe-toolbar p{color:var(--muted);margin:0;font-size:13px}.recipe-chips{flex-wrap:wrap;gap:8px;display:flex}.recipe-chips button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--muted);border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:12.5px;font-weight:600;display:inline-flex}.recipe-chips button[aria-pressed=true]{border-color:var(--green);background:var(--soft);color:var(--green)}.recipe-chip-count{color:var(--muted-quiet);font-size:11.5px;font-weight:700}.recipe-split{grid-template-columns:minmax(0,4fr) minmax(0,6fr);align-items:start;gap:18px;display:grid}.recipe-list{gap:6px;display:grid}.recipe-row{width:100%;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 13px;display:grid}.recipe-row.selected{border-color:var(--ok-line);background:var(--soft)}.recipe-row-name{gap:2px;min-width:0;display:grid}.recipe-row-name strong{font-size:13.5px}.recipe-row-name small,.recipe-row-energy small{color:var(--muted);font-size:11.5px;display:block}.recipe-row-energy{color:var(--ink);text-align:right;font-size:12.5px}.recipe-row-scope{background:var(--surface-sunken);color:var(--muted);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.recipe-side{gap:18px;display:grid}.recipe-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.recipe-values dt{color:var(--muted);font-size:11.5px}.recipe-values dd{color:var(--ink);margin:2px 0 0;font-size:14px;font-weight:700}.recipe-form{gap:12px;display:grid}.recipe-steps{gap:8px;display:grid}.recipe-step{border:1px solid var(--line-quiet);background:var(--paper);cursor:grab;border-radius:12px;grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;display:grid}.recipe-step.dragging{opacity:.6;border-style:dashed}.recipe-step-handle{background:var(--soft);width:30px;height:30px;color:var(--green);border-radius:10px;place-items:center;font-size:12.5px;font-weight:800;display:grid}.recipe-ingredient-list,.recipe-step-list{gap:6px;margin:0 0 12px;padding:0;list-style:none;display:grid}.recipe-step-list{counter-reset:recipe-step;padding-left:20px;font-size:13px;line-height:1.55;list-style:none}.recipe-step-list>li:not(.recipe-step-figure){counter-increment:recipe-step}.recipe-step-list>li:not(.recipe-step-figure):before{content:counter(recipe-step) ". ";color:var(--muted);font-weight:700}.recipe-ingredient-list li{background:var(--surface-warm);text-align:left;border-radius:10px;grid-template-columns:minmax(0,3fr) minmax(0,2fr) auto;align-items:center;gap:10px;padding:8px 11px;font-size:12.5px;display:grid}.recipe-ingredient-list strong{color:var(--muted);text-align:left;font-size:12px;font-weight:600}.recipe-ingredient-picker{border:1px dashed var(--line);background:var(--surface-warm);border-radius:14px;gap:10px;padding:12px;display:grid}.recipe-food-matches{gap:4px;margin:0;padding:0;list-style:none;display:grid}.recipe-food-matches button{border:1px solid var(--line-quiet);background:var(--surface);width:100%;min-height:38px;color:var(--ink);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;display:flex}.recipe-preview{border:1px solid var(--ok-line);background:var(--soft);color:var(--green);border-radius:12px;margin:0;padding:10px 12px;font-size:12.5px;font-weight:600}.recipe-cover-field{gap:5px;display:grid}.recipe-cover-field .field-label{color:var(--muted);font-size:11.5px;font-weight:600}.recipe-image{justify-items:start;gap:6px;display:grid}.recipe-image-drop{border:1px dashed var(--line);background:var(--surface-warm);color:var(--muted);text-align:center;cursor:pointer;border-radius:12px;place-items:center;font-size:11.5px;display:grid;position:relative;overflow:hidden}.recipe-image.cover .recipe-image-drop{aspect-ratio:1;width:148px}.recipe-image.step .recipe-image-drop{aspect-ratio:16/9;width:100%}.recipe-image-drop img{object-fit:cover;width:100%;height:100%}.recipe-image-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.recipe-step-photo{gap:6px;display:grid}.recipe-step-figure{list-style:none}.recipe-step-figure img{aspect-ratio:16/9;object-fit:cover;border-radius:12px;width:100%}.recipe-step-figure figcaption{color:var(--muted);margin-top:4px;font-size:11.5px}.admin-food-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-food-values div{background:var(--surface-warm);border-radius:12px;padding:11px 13px}.admin-food-values dt{color:var(--muted);font-size:11.5px;font-weight:600}.admin-food-values dd{margin:4px 0 0;font-size:14px;font-weight:800}.form-footer{border-top:1px solid var(--line-faint);flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;padding-top:14px;display:flex}.form-footer p{margin:0}.recipe-cover{aspect-ratio:1;object-fit:cover;border-radius:14px;width:100%;max-width:220px;margin-bottom:12px}@media (max-width:900px){.recipe-split,.recipe-toolbar{grid-template-columns:1fr}}.recipe-image-size{color:var(--muted-quiet);font-size:11px}.builder-food-kind{background:var(--soft);color:var(--green);letter-spacing:.06em;border-radius:999px;margin-right:7px;padding:2px 7px;font-size:10px;font-weight:800;display:inline-block}.recipe-step-actions{justify-items:stretch;gap:6px;display:grid}.recipe-step-move{cursor:grab;font-size:14px}.recipe-step-move[aria-pressed=true]{border-color:var(--green);background:var(--soft);color:var(--green)}.builder-meal-actions{justify-items:stretch;gap:6px;display:grid}.builder-meal-actions-row{gap:6px;display:flex}.builder-meal-toggle{flex:1;min-width:106px}.builder-meal-move{cursor:grab;font-size:14px}.builder-meal-move[aria-pressed=true]{border-color:var(--green);background:var(--soft);color:var(--green)}.builder-meal.dragging{opacity:.45;outline:1px dashed var(--green)}.builder-meal{transition:margin .14s;position:relative}.builder-meal.drop-gap{margin-top:64px}.builder-meal.drop-gap:before,.builder-meal.drop-gap-end:after{content:"";background:var(--green);border-radius:2px;height:3px;position:absolute;left:0;right:0}.builder-meal.drop-gap:before{top:-34px}.builder-meal.drop-gap-end{margin-bottom:64px}.builder-meal.drop-gap-end:after{bottom:-34px}.program-preview{grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:calc(100vw - 40px);max-width:100%;height:calc(100vh - 40px);max-height:100%;display:grid}.program-preview-grid,.program-preview-list{align-content:start;overflow:auto}.program-preview-head{align-items:center;gap:10px;display:flex}.program-preview-head>div:first-child{flex:1}.program-preview-head h3{margin:0}.program-preview-head p{color:var(--muted);margin:3px 0 0;font-size:12px}.program-preview-view-toggle{border:1px solid var(--line-quiet);background:var(--surface-warm);border-radius:11px;padding:3px;display:flex}.program-preview-view-toggle button{min-height:32px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 13px;font-size:12px;font-weight:700}.program-preview-view-toggle button[aria-pressed=true]{background:var(--surface);color:var(--green)}.program-preview-grid{gap:7px;padding-bottom:4px;display:grid;overflow-x:auto}.program-preview-row{grid-template-columns:148px repeat(auto-fit,minmax(0,1fr));align-items:stretch;gap:7px;min-width:720px;display:grid}.program-preview-rowhead{align-items:center;gap:9px;padding:0 4px;font-size:12.5px;font-weight:700;display:flex}.program-preview-rowlabel{display:block}.program-preview-rowtime{color:var(--muted);font-family:var(--font-mono,monospace);margin-top:1px;font-size:11px;font-weight:500;display:block}.program-preview-colhead{border:1px solid var(--line-quiet);background:var(--surface);border-radius:12px;min-width:0;padding:9px 11px}.program-preview-colname{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;display:block;overflow:hidden}.program-preview-colkcal{color:var(--muted);font-family:var(--font-mono,monospace);margin-top:3px;font-size:11px;display:block}.program-preview-cell{border:1px solid var(--line-quiet);background:var(--surface);border-radius:12px;flex-direction:column;gap:4px;min-width:0;padding:10px 11px;display:flex}.program-preview-cell.empty{background:0 0;border-style:dashed}.program-preview-cell-dish{font-size:12.5px;font-weight:600;line-height:1.35}.program-preview-cell-portion,.program-preview-cell-empty{color:var(--muted);font-size:11px}.program-preview-cell-meta{align-items:center;gap:6px;margin-top:2px;display:flex}.program-preview-tag{background:var(--soft);color:var(--green);letter-spacing:.5px;border-radius:5px;padding:1px 5px;font-size:9px;font-weight:800}.program-preview-cell-kcal{color:var(--muted);font-family:var(--font-mono,monospace);font-size:10.5px}.program-preview-totalhead{color:var(--muted);font-size:11.5px}.program-preview-total{border:1px solid var(--line-quiet);background:var(--surface-warm);border-radius:12px;min-width:0;padding:9px 11px}.program-preview-total-kcal{font-family:var(--font-mono,monospace);font-size:12px;font-weight:700;display:block}.program-preview-macro-bar{border-radius:3px;gap:2px;height:5px;margin-top:7px;display:flex;overflow:hidden}.macro-protein{background:var(--green)}.macro-carb{background:#7fb8a4}.macro-fat{background:#cdb77a}.program-preview-list{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;display:grid}.program-preview-list-day{border:1px solid var(--line-quiet);background:var(--surface);border-radius:16px;padding:14px 15px}.program-preview-list-day>header{background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:8px;height:auto;min-height:0;margin:0 0 8px;padding:0;display:flex}.program-preview-list-day>header span{color:var(--muted);font-family:var(--font-mono,monospace);font-size:11.5px}.program-preview-list-meal{border-bottom:1px solid var(--line-faint);align-items:baseline;gap:10px;padding:7px 0;font-size:12.5px;display:flex}.program-preview-list-meal:last-child{border-bottom:0}.program-preview-list-label{width:108px;color:var(--muted);flex:none;font-size:11.5px;font-weight:700}.program-preview-list-label .program-preview-rowtime{margin-top:0}.program-preview-list-dish{flex:1;min-width:0;font-weight:600}.program-preview-list-portion{color:var(--muted);font-size:11px}.program-preview-foot{border-top:1px solid var(--line-quiet);align-items:center;gap:14px;padding-top:10px;display:flex}.program-preview-legend{color:var(--muted);align-items:center;gap:14px;font-size:11.5px;display:flex}.program-preview-legend>span{align-items:center;gap:6px;display:flex}.legend-dot{border-radius:3px;width:9px;height:9px}.program-preview-hint{color:var(--muted);text-align:right;flex:1;font-size:11.5px}.muted-line{color:var(--muted);margin:0;font-size:12px}.recipe-picker{grid-template-rows:auto auto minmax(0,1fr);gap:12px;width:min(1060px,100vw - 40px);height:min(720px,100vh - 48px);display:grid;overflow:hidden}.confirmation-backdrop>.recipe-picker{margin-top:0}.recipe-picker-head{align-items:end;gap:14px;display:flex}.recipe-picker-head h3{margin:0 0 8px}.recipe-picker-search{flex:1;max-width:360px;margin-left:auto}.recipe-picker-mine[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.recipe-picker-split{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:14px;min-height:0;display:grid}.recipe-picker-list{align-content:start;gap:6px;padding-right:4px;display:grid;overflow-y:auto}.recipe-picker-detail{border:1px solid var(--line-quiet);background:var(--surface-warm);border-radius:14px;padding:12px;overflow-y:auto}.recipe-picker-detail h4{margin:0 0 4px}.recipe-picker-detail h5{margin:12px 0 6px}.recipe-picker-detail-head{justify-content:space-between;align-items:start;gap:12px;margin-bottom:10px;display:flex}.recipe-picker-detail-head button{white-space:nowrap}@media (max-width:900px){.recipe-picker-split{grid-template-columns:1fr}}.plan-builder.library-layout{grid-template-columns:280px 240px minmax(0,1fr)}.builder-programs{border-right:1px solid var(--line-quiet);background:var(--paper);flex-direction:column;gap:12px;padding:18px 16px;display:flex;overflow-y:auto}.builder-programs h2{margin:4px 0 0;font-size:15px;font-weight:800}.builder-new-primary{justify-content:center;align-items:center;gap:9px;min-height:44px;font-size:13.5px;font-weight:700;display:inline-flex}.library-layout .builder-plan{border:1px solid var(--line-quiet);background:var(--surface);border-radius:12px;padding:12px 13px}.library-layout .builder-plan[aria-pressed=true]{border-color:var(--green);background:var(--soft)}.library-layout .builder-plan-title{font-size:14.5px;font-weight:800}.library-layout .builder-plan-meta{font-size:12px}.builder-footer{border:1px solid var(--line-quiet);background:var(--paper);border-radius:14px;gap:10px;margin-top:18px;padding:14px;display:grid}.builder-footer-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.builder-footer-heading h3{margin:0}.builder-footer h3{margin:0;font-size:13px;font-weight:800}.builder-footer-columns{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:12px 20px;display:grid}.builder-footer-fields{gap:10px;display:grid}.builder-footer-buttons{gap:8px;display:grid}.builder-footer-buttons>button{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.builder-footer-actions{flex-wrap:wrap;gap:8px;display:flex}.builder-footer-actions button{white-space:nowrap}.builder-food-cover{object-fit:cover;border-radius:14px;flex-shrink:0;align-self:center;width:96px;height:96px}@media (max-width:1100px){.plan-builder.library-layout{grid-template-columns:240px minmax(0,1fr)}.builder-programs{grid-column:1}}.panel-card{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);padding:18px}.admin-food-catalog{gap:18px;display:grid}.admin-food-catalog .section-heading{display:block}.admin-food-catalog .section-heading p{margin:0}.admin-food-catalog .heading-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.admin-food-split{gap:18px;display:grid}.admin-food-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-food-heading p{margin-top:0}.admin-food-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-food-badges span{color:var(--ok-fg);background:var(--ok-bg);border-radius:8px;padding:5px 9px;font-size:11px;font-weight:700}.filter-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-chips>button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--muted);border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.filter-chips>button:hover{background:var(--surface-warm)}.filter-chips>button[aria-pressed=true]{border-color:var(--ok-line);background:var(--soft);color:var(--green)}.category-count{background:var(--surface-sunken);color:var(--muted);border-radius:7px;padding:2px 7px;font-size:11px;font-weight:700}.filter-chips>button[aria-pressed=true] .category-count{background:var(--ok-bg);color:var(--ok-fg)}.filter-chip-editable{border:1px solid var(--ok-line);background:var(--soft);border-radius:10px;align-items:stretch;min-height:36px;display:inline-flex}.filter-chip-editable>button{color:var(--green);background:0 0;border:0;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.filter-chip-editable>button .category-count{background:var(--ok-bg);color:var(--ok-fg)}.filter-chip-editable>.chip-edit{padding:0 11px 0 1px}.filter-chip-editable>.chip-edit svg{display:block}.filter-chip-editable>.chip-edit:hover{color:var(--ok-fg)}.filter-chips>.category-add{color:var(--green);border-style:dashed;justify-content:center;min-width:36px;font-size:17px}.filter-chips>.category-add:hover{background:var(--soft)}.data-table{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface);display:grid;overflow:hidden}.data-table-head,.data-table-row{text-align:left;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr) 110px;align-items:center;gap:12px;padding:12px 16px;display:grid}.data-table-head{border-bottom:1px solid var(--line-quiet);background:var(--surface-warm);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11.5px;font-weight:700}.data-table-row{border:0;border-bottom:1px solid var(--line-faint);background:var(--surface);color:var(--ink);border-radius:0;font-size:13px;font-weight:500}.data-table-row:hover{background:var(--surface-warm)}.data-table-row.selected{background:var(--soft)}.data-table-row:last-of-type{border-bottom:0}.data-table-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;display:block;overflow:hidden}.data-table-row small{color:var(--muted);margin-top:2px;font-size:11.5px;font-weight:500;display:block}.data-table-name{min-width:0}.data-table-footer{border-top:1px solid var(--line-quiet);background:var(--surface-warm);padding:12px 16px}.search-field{flex:280px;align-items:center;gap:8px;max-width:640px;margin:0;display:flex}.search-field span{color:var(--muted);font-size:12px;font-weight:600}.search-field input{flex:1;width:auto;min-width:180px;min-height:40px}.admin-food-split{grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);align-items:start;gap:18px;display:grid}.admin-food-side{gap:18px;display:grid;position:sticky;top:88px}.data-table-row{grid-template-columns:minmax(0,1.7fr) minmax(0,.9fr) 92px}.data-table-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:12.5px;display:flex}.data-table-footer button{min-height:34px;padding:0 12px;font-size:12px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-food-history{border-top:1px solid var(--line-faint);margin-top:18px;padding-top:16px}.admin-food-history ol{gap:8px;padding-left:18px;display:grid}.admin-food-history li{gap:2px;display:grid}.admin-food-history summary{cursor:pointer;justify-content:space-between;gap:12px;font-weight:700;display:flex}.admin-food-history details[open] summary{margin-bottom:10px}.admin-food-history span{color:var(--muted);font-size:12px}.tree-toolbar{border-bottom:1px solid var(--surface-sunken);background:var(--paper);flex:none;align-items:center;gap:10px;padding:14px 22px 12px;display:flex}.tree-search{border:1px solid var(--line);background:var(--surface);border-radius:11px;flex:1;align-items:center;gap:8px;min-width:0;min-height:38px;padding:0 12px;display:flex}.tree-search input{background:0 0;border:0;min-height:34px;padding:0;font-size:13px;font-weight:500}.tree-search input:focus{outline:0}.tree-search:focus-within{border-color:var(--green);outline:3px solid #0a556129}.tree-clear{background:var(--warn-bg);min-height:24px;color:var(--muted);border-radius:7px;flex:none;padding:0 8px;font-size:11px}.tree-clear:hover{background:var(--surface-sunken)}.tree-toolbar>button.secondary{min-height:38px;color:var(--green);border-radius:11px;flex:none;font-size:12px}.tree-count{border-bottom:1px solid var(--surface-sunken);background:var(--paper);flex:none;align-items:center;gap:10px;padding:11px 22px;display:flex}.tree-count .muted{flex:1;font-size:11.5px}.tree-count button{border-radius:11px;min-height:38px;font-size:12.5px}.tree-blank{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface);text-align:center;justify-items:center;gap:6px;margin-top:40px;padding:40px;display:grid}.tree-blank strong{font-size:16px;font-weight:800}.tree-form-tag{align-items:center;gap:10px;min-width:0;display:flex}.tree-form-tag .muted{white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.tree-mode{background:var(--soft);color:var(--ok-fg);letter-spacing:.5px;border-radius:7px;flex:none;padding:3px 8px;font-size:10px;font-weight:800}.tree-mode.new{background:var(--warn-bg);color:var(--warn-fg)}.tree-message{border:1px solid var(--ok-line);background:var(--ok-bg);color:var(--ok-fg);border-radius:12px;margin:0;padding:11px 13px;font-size:12.5px;font-weight:600}.catalog-page{grid-template-columns:minmax(0,1fr) 468px;height:calc(100vh - 68px);margin:-18px -26px -32px;display:grid;overflow:hidden}.catalog-column{border-right:1px solid var(--line-quiet);flex-direction:column;min-width:0;min-height:0;display:flex}.catalog-cats{border-bottom:1px solid var(--surface-sunken);background:var(--surface);flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:11px 22px;display:flex}.catalog-cat-wrap{align-items:center;gap:2px;display:inline-flex}.catalog-cat{border:1px solid var(--line-quiet);background:var(--surface);min-height:32px;color:var(--ink);border-radius:10px;align-items:center;gap:7px;padding:0 11px;font-size:12px;display:inline-flex}.catalog-cat:hover{background:var(--surface-warm)}.catalog-cat.on,.catalog-cat.on:hover{border-color:var(--sidebar);background:var(--sidebar);color:#fff}.catalog-cat-count{background:var(--warn-bg);color:var(--muted-quiet);border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:700}.catalog-cat.on .catalog-cat-count{color:var(--gold);background:#ffffff29}.catalog-cat-wrap>.chip-edit{border:1px solid var(--line-quiet);background:var(--surface);min-height:32px;color:var(--green);border-radius:10px;padding:0 10px;font-size:12px}.catalog-cat-wrap>.chip-edit:hover{background:var(--surface-warm)}.catalog-cat-add{border:1px dashed var(--ok-line);background:var(--surface);width:32px;height:32px;min-height:0;color:var(--green);border-radius:10px;padding:0;font-size:15px}.catalog-cat-add:hover{background:var(--soft)}.catalog-rows{flex-direction:column;flex:1;gap:6px;min-height:0;padding:10px 22px 26px;display:flex;overflow-y:auto}.catalog-rows>*,.tree-rows>*{flex:none}.catalog-row{border:1px solid var(--line-faint);background:var(--surface);color:var(--ink);text-align:left;border-radius:14px;grid-template-columns:52px minmax(0,1fr) 104px 82px auto;align-items:center;gap:13px;padding:10px 12px;transition:border-color .14s;display:grid}.catalog-row:hover{border-color:var(--green-bright);background:var(--surface)}.catalog-row.selected,.catalog-row.selected:hover{background:var(--soft);border-color:#7fb8a4}.catalog-row-thumb{object-fit:cover;border:1px solid #e2dacb;border-radius:12px;flex:none;width:52px;height:52px}.catalog-row-thumb.empty,.catalog-hero-thumb.empty{background:repeating-linear-gradient(135deg,#ede6d8,#ede6d8 5px,#f6f1e7 5px 10px)}.catalog-row-main{gap:3px;min-width:0;display:grid}.catalog-row-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.catalog-row-main small{color:var(--muted-quiet);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:500;overflow:hidden}.catalog-row-energy{text-align:right;gap:2px;display:grid}.catalog-row-energy strong{font-size:13px;font-weight:700}.catalog-row-energy small{color:var(--muted-quiet);font-size:10.5px;font-weight:500}.catalog-row-servings{text-align:right;color:var(--muted);font-size:12px;font-weight:600}.catalog-row-cat{background:var(--warn-bg);max-width:120px;color:var(--warn-fg);white-space:nowrap;text-overflow:ellipsis;border-radius:8px;justify-self:end;padding:4px 9px;font-size:11px;font-weight:700;overflow:hidden}.catalog-row.selected .catalog-row-cat{background:var(--ok-bg);color:var(--ok-fg)}.catalog-panel{background:var(--surface);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.catalog-panel-head{border-bottom:1px solid var(--surface-sunken);align-items:center;gap:10px;min-width:0;padding:15px 22px 13px;display:flex}.catalog-panel-title{flex:1;min-width:0}.catalog-panel-title h3{letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;margin:7px 0 0;font-size:18px;font-weight:800;overflow:hidden}.catalog-panel-body{min-width:0;min-height:0;padding:16px 22px 20px;overflow-y:auto}.catalog-panel-body>form{margin-top:0}.catalog-panel-foot{border-top:1px solid var(--surface-sunken);background:var(--paper);align-items:center;gap:10px;min-width:0;padding:13px 22px;display:flex}.catalog-panel-foot button{border-radius:12px;flex:none;min-height:42px;font-size:12.5px}.catalog-strip{border:1px solid var(--ok-line);background:var(--soft);min-width:0;color:var(--ok-fg);white-space:nowrap;text-overflow:ellipsis;border-radius:10px;flex:1;padding:8px 11px;font-size:11.5px;font-weight:700;overflow:hidden}.recipe-detail{gap:16px;display:grid}.recipe-detail h4{margin:0;font-size:14.5px;font-weight:800}.catalog-hero{gap:13px;display:flex}.catalog-hero>div{align-content:start;gap:8px;min-width:0;display:grid}.catalog-hero p{text-wrap:pretty;margin:0;font-size:12.5px;line-height:1.6}.catalog-hero-thumb{object-fit:cover;border:1px solid #e2dacb;border-radius:16px;flex:none;width:132px;height:132px}.catalog-tags{flex-wrap:wrap;gap:6px;display:flex}.catalog-tags span{border:1px solid var(--ok-line);background:var(--soft);color:var(--ok-fg);border-radius:8px;padding:4px 9px;font-size:11px;font-weight:700}.catalog-macros{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin:0;display:grid}.catalog-macros>div{border:1px solid var(--line-quiet);background:var(--surface-warm);border-radius:13px;padding:11px 13px}.catalog-macros dt{color:var(--muted-quiet);letter-spacing:.3px;text-transform:uppercase;font-size:10.5px;font-weight:600}.catalog-macros dd{margin:4px 0 0;font-size:17px;font-weight:800}.recipe-ing-list{margin:0;padding:0;list-style:none;display:grid}.recipe-ing-list li{border-bottom:1px solid var(--warn-bg);justify-content:space-between;align-items:baseline;gap:10px;padding:9px 2px;font-size:12.5px;font-weight:600;display:flex}.recipe-ing-amount{color:var(--muted);flex:none;font-size:12px;font-weight:500}.recipe-step-flow{gap:7px;margin:0;padding:0;list-style:none;display:grid}.recipe-step-flow>li{text-wrap:pretty;align-items:flex-start;gap:10px;font-size:12.5px;line-height:1.6;display:flex}.recipe-step-no{border:1px solid var(--ok-line);background:var(--soft);width:24px;height:24px;color:var(--ok-fg);border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}@media (max-width:1240px){.catalog-row{grid-template-columns:52px minmax(0,1fr) 92px auto}.catalog-row-servings{display:none}}@media (max-width:1100px){.catalog-page{grid-template-columns:minmax(0,1fr);height:auto;margin:0;overflow:visible}.catalog-column{border-right:0}.catalog-rows{overflow:visible}.catalog-panel{border-top:1px solid var(--line-quiet)}}.catalog-panel-body .recipe-form{background:0 0;border:0;gap:15px;margin:0;padding:0}.recipe-cover-row{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;display:grid}.recipe-youtube-field{gap:7px;min-width:0;display:grid}.recipe-youtube-field .field-hint{margin:0}.catalog-pager{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.catalog-detail{gap:16px;display:grid}.catalog-detail h4{margin:0;font-size:14.5px;font-weight:800}.catalog-detail .admin-food-history{margin-top:0}.catalog-row-servings .status-badge{float:right}.catalog-form{background:0 0;border:0;gap:14px;margin:0;padding:0}.catalog-page .muted{font-size:13px}.catalog-page .segmented{border-color:var(--line-quiet);background:var(--warn-bg);border-radius:11px}.catalog-page .form-grid{gap:12px}.panel>.catalog-page{height:calc(100vh - 68px);margin:0;padding:0}@media (max-width:1100px){.panel>.catalog-page{height:auto;padding:24px 26px 32px}}@media (max-width:760px){.panel>.catalog-page{padding:24px 18px}}.catalog-form label{max-width:none;color:var(--muted);gap:5px;font-size:11.5px;font-weight:600}.catalog-form h4{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:6px 0 0;font-size:12px;font-weight:700}.catalog-form textarea{min-height:84px;color:var(--ink);border-radius:11px;font-size:13px;font-weight:500}.measure-conditions{flex-wrap:wrap;align-items:center;gap:5px;margin-left:8px;display:inline-flex}.measure-conditions-count{color:var(--muted);font-size:11px;font-weight:700}.measure-condition{border:1px solid var(--line-quiet);color:var(--muted-quiet);border-radius:7px;padding:2px 7px;font-size:10.5px;font-weight:600}.measure-condition.on{border-color:var(--ok-line);background:var(--ok-bg);color:var(--ok-fg)}.measure-condition.note{border-color:var(--warn-line);background:var(--warn-bg);color:var(--warn-fg)}.measure-condition-picker{gap:6px;display:grid}.measure-condition-picker>div{flex-wrap:wrap;gap:6px;display:flex}.measure-condition-picker .chip{border:1px solid var(--line-quiet);background:var(--surface);min-height:32px;color:var(--muted);border-radius:9px;padding:0 11px;font-size:12px;font-weight:600}.measure-condition-picker .chip:hover{background:var(--surface-warm)}.measure-condition-picker .chip.on{border-color:var(--ok-line);background:var(--ok-bg);color:var(--ok-fg)}.measure-condition-picker .chip.on:hover{background:var(--ok-bg)}.waist-assessment{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface-warm);gap:12px;margin:14px 0;padding:16px;display:grid}.waist-assessment-head{gap:2px;display:grid}.waist-assessment-head strong{font-size:15px;font-weight:800}.waist-assessment-head .muted{font-size:12px}.waist-assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.waist-assessment-grid>div{background:var(--surface);border-radius:12px;gap:4px;padding:12px 13px;display:grid}.waist-assessment-grid dt{color:var(--muted);font-size:11.5px;font-weight:600}.waist-assessment-grid dd{margin:0;font-size:15px;font-weight:800}.waist-assessment-grid small{color:var(--muted-quiet);font-size:11.5px}.waist-assessment .field-hint{margin:0}.waist-band.below,.waist-band.unknown{color:var(--muted);font-size:13px;font-weight:700}.waist-band.healthy,.waist-band.low{color:var(--ok-fg)}.waist-band.increased{color:var(--warn-fg)}.waist-band.high{color:var(--danger-fg)}@media (max-width:760px){.waist-assessment-grid{grid-template-columns:1fr}}.measure-frequency{border:1px solid var(--line-quiet);border-radius:var(--radius-card);background:var(--surface);gap:10px;margin:14px 0;padding:16px;display:grid}.measure-frequency-head{gap:3px;display:grid}.measure-frequency-head strong{font-size:15px;font-weight:800}.measure-frequency-head .muted{font-size:12px;line-height:1.5}.measure-frequency-options{flex-wrap:wrap;gap:7px;display:flex}.measure-frequency .chip{border:1px solid var(--line-quiet);background:var(--surface);min-height:34px;color:var(--muted);border-radius:10px;padding:0 13px;font-size:12.5px;font-weight:600}.measure-frequency .chip:hover{background:var(--surface-warm)}.measure-frequency .chip.on,.measure-frequency .chip.on:hover{border-color:var(--green);background:var(--green);color:#fff}.measure-frequency .chip:disabled{cursor:default;opacity:.75}.measure-frequency .field-hint{margin:0}.panel>.pb-page{height:calc(100vh - 68px);margin:0;padding:0}.pb-page{background:var(--paper);flex-direction:column;min-height:0;display:flex;position:relative}.pb-ic{flex:none;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.pb-cover{border-radius:12px;flex:none;place-items:center;display:grid}.pb-topbar{border-bottom:1px solid var(--line-quiet);background:var(--surface);flex:none;align-items:center;gap:10px;padding:11px 22px;display:flex}.pb-cover-button{border:2px solid #0000;border-radius:15px;flex:none;place-items:center;width:52px;height:52px;min-height:52px;padding:0;display:grid}.pb-cover-icons{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.pb-cover-icons button{aspect-ratio:1;border:1px solid var(--line);background:var(--surface-warm);border-radius:14px;place-items:center;height:auto;min-height:0;padding:0;display:grid}.pb-cover-colors{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.pb-cover-colors button{aspect-ratio:1;border:2px solid #0000;border-radius:12px;height:auto;min-height:0;padding:0}.pb-cover-colors button.on{border-color:var(--ink)}.pb-title-block{flex:460px;min-width:260px}.pb-title-row,.pb-desc-row{align-items:center;gap:9px;display:flex}.pb-desc-row{margin-top:2px}.pb-title-text{letter-spacing:-.3px;min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;margin:0;font-size:19px;font-weight:800;line-height:1.15;overflow:hidden}.pb-desc-text{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:12px;font-weight:500;line-height:1.2;overflow:hidden}.pb-desc-text.empty{color:var(--muted-faint)}.pb-edit-badge{border:1px solid var(--line-quiet);background:var(--surface);min-height:24px;color:var(--green);letter-spacing:.04em;border-radius:8px;flex:none;align-items:center;gap:5px;padding:2px 9px;font-size:10.5px;font-weight:800;display:inline-flex}.pb-edit-badge:hover:not(:disabled){background:var(--surface-warm)}.pb-chip{letter-spacing:.5px;white-space:nowrap;border-radius:7px;flex:none;padding:3px 8px;font-size:10px;font-weight:800}.pb-chip.client{border:1px solid var(--ok-line);background:var(--soft);color:var(--green);letter-spacing:0;padding:3px 9px;font-size:11px;font-weight:700}.pb-chip.dirty{background:var(--warn-bg);color:#6e5a23}.pb-chip.clean,.pb-chip.status{background:var(--soft);color:var(--green)}.pb-chip.warn{background:var(--warn-bg);color:#6e5a23}.pb-prog-meta{color:#8a9491;white-space:nowrap;flex:none;font-size:11.5px;font-weight:500}.pb-starts-on{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:7px;font-size:11.5px;font-weight:700;display:flex}.pb-starts-on input{border:1px solid var(--line);background:var(--surface);height:28px;min-height:28px;color:var(--ink);border-radius:8px;padding:0 8px;font-size:12px;font-weight:600}.pb-action,.pb-primary{white-space:nowrap;border-radius:11px;flex:none;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:12.5px;font-weight:700;display:flex}.pb-action{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.pb-action:hover:not(:disabled){border-color:var(--green-bright)}.pb-action.danger{border-color:var(--danger-line);color:#9e4b36}.pb-action.assign{border-color:var(--green);color:var(--green);background:#f1f8f3}.pb-primary{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;border:0;padding:0 15px}.pb-primary.wide{border-radius:13px;justify-content:center;width:100%;min-height:44px;font-size:13.5px}.pb-columns{flex:1;grid-template-columns:262px 244px minmax(0,1fr);min-height:0;display:grid}.pb-col-list{border-right:1px solid var(--line-quiet);background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex}.pb-list-tools{border-bottom:1px solid #efe9de;flex-direction:column;flex:none;gap:10px;padding:14px 16px 12px;display:flex}.pb-scope{border:1px solid var(--line-quiet);background:#f4efe6;border-radius:11px;display:flex}.pb-scope button{min-height:32px;color:var(--muted);border-radius:8px;flex:1;font-size:11.5px;font-weight:700}.pb-scope button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #16262a1a}.pb-search{border:1px solid var(--line);background:var(--surface-warm);height:36px;min-height:36px;color:var(--ink);border-radius:11px;padding:0 11px;font-size:12.5px;font-weight:500}.pb-new{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;border:0;border-radius:12px;min-height:40px;font-size:13px;font-weight:700}.pb-list-scroll{flex-direction:column;flex:1;gap:7px;min-height:0;padding:11px 12px 20px;display:flex;overflow-y:auto}.pb-list-heading{letter-spacing:.08em;color:#8a9491;padding:0 4px;font-size:10px;font-weight:700}.pb-card{border:1px solid var(--line-quiet);background:var(--surface);min-height:0;color:var(--ink);text-align:left;border-radius:14px;flex:none;align-items:flex-start;gap:10px;padding:11px 12px;transition:border-color .14s;display:flex}.pb-card:hover{border-color:var(--green-bright)}.pb-card.on{border-color:var(--green);background:#f1f8f3}.pb-card-body{flex:1;min-width:0}.pb-card-title-row{align-items:flex-start;gap:8px;display:flex}.pb-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-size:13.5px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.pb-card-dot{background:var(--green-bright);border-radius:4px;flex:none;width:7px;height:7px;margin-top:5px}.pb-card-client{color:var(--green-bright);margin-top:3px;font-size:12.5px;font-weight:700;line-height:1.35;display:block}.pb-card-meta{color:#8a9491;margin-top:5px;font-size:11.5px;font-weight:500;display:block}.pb-empty{border:1px dashed var(--line);background:var(--surface-warm);text-align:center;border-radius:16px;margin-top:20px;padding:22px 16px}.pb-empty strong{font-size:13.5px;font-weight:800}.pb-empty p{color:var(--muted);margin:5px 0 0;font-size:12px;font-weight:500;line-height:1.6}.pb-empty button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink);border-radius:10px;margin-top:10px;font-size:12px}.pb-muted{color:#8a9491;margin:8px 4px;font-size:12.5px;font-weight:500}.pb-col-structure{border-right:1px solid var(--line-quiet);background:var(--paper);flex-direction:column;min-width:0;min-height:0;display:flex}.pb-structure-head{border-bottom:1px solid #efe9de;flex:none;padding:14px 15px 11px}.pb-structure-head strong{font-size:14px;font-weight:800;display:block}.pb-structure-head span{color:#8a9491;margin-top:3px;font-size:11.5px;font-weight:500;display:block}.pb-structure-scroll{flex-direction:column;flex:1;gap:5px;min-height:0;padding:10px 12px 14px;display:flex;overflow-y:auto}.pb-day{background:var(--surface);color:var(--ink);text-align:left;border:1px solid #efe9de;border-radius:13px;flex:none;align-items:center;gap:9px;padding:9px 10px;transition:border-color .14s;display:flex}.pb-day:hover{border-color:var(--green-bright)}.pb-day.on{border-color:var(--green);background:var(--soft)}.pb-day.on .pb-day-title{color:var(--green)}.pb-day-grip{color:#c2b9a6;letter-spacing:1px;flex:none;width:10px;font-size:11px;font-weight:700;line-height:1}.pb-day-body{flex:1;min-width:0}.pb-day-title-row{align-items:center;gap:6px;display:flex}.pb-day-title{font-size:13px;font-weight:700}.pb-day-label{background:var(--warn-bg);color:#6e5a23;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;max-width:82px;padding:2px 6px;font-size:9.5px;font-weight:700;overflow:hidden}.pb-day-meta{color:#8a9491;margin-top:4px;font-size:11px;font-weight:500;display:block}.pb-bar{background:#efe9de;border-radius:3px;height:4px;margin-top:6px;display:block;overflow:hidden}.pb-bar-fill{background:#cfd9d4;border-radius:3px;height:4px;display:block}.pb-bar-fill.on{background:linear-gradient(90deg, var(--green), var(--green-bright))}.pb-structure-actions{flex-direction:column;gap:5px;margin-top:6px;display:flex}.pb-add-day{border:1px solid var(--ok-line);min-height:38px;color:var(--green);background:#f1f8f3;border-radius:12px;font-size:12.5px;font-weight:700}.pb-structure-row{gap:5px;display:flex}.pb-structure-row button:first-child{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);border-radius:11px;flex:1;font-size:11.5px;font-weight:700}.pb-day-trash{border:1px solid var(--danger-line);background:var(--surface);border-radius:11px;flex:none;place-items:center;width:40px;min-height:36px;padding:0;display:grid}.pb-col-editor{background:var(--paper);flex-direction:column;min-width:0;min-height:0;display:flex}.pb-col-editor.readonly .pb-meals-scroll,.pb-col-editor.readonly .pb-editor-head{opacity:.92}.pb-editor-welcome{border:1px dashed var(--line);background:var(--surface);text-align:center;border-radius:18px;max-width:420px;margin:40px auto;padding:40px}.pb-editor-welcome strong{font-size:16px;font-weight:800}.pb-editor-welcome p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.6}.pb-editor-head{background:var(--surface);border-bottom:1px solid #efe9de;flex-direction:column;flex:none;gap:12px;padding:15px 22px 13px;display:flex}.pb-editor-head-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pb-editor-title{min-width:0}.pb-editor-title h3{letter-spacing:-.3px;margin:0;font-size:20px;font-weight:800}.pb-editor-title p{color:#8a9491;margin:3px 0 0;font-size:11.5px;font-weight:500}.pb-day-label-input{border:1px solid var(--line);background:var(--surface-warm);min-width:160px;max-width:300px;min-height:38px;color:var(--ink);border-radius:11px;flex:1;padding:0 11px;font-size:12.5px;font-weight:600}.pb-editor-spacer{flex:1}.pb-meal-adders{flex:none;gap:6px;display:flex}.pb-meal-adders button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);white-space:nowrap;border-radius:11px;padding:0 12px;font-size:12px;font-weight:700}.pb-meal-adders button:hover:not(:disabled){border-color:var(--green-bright);color:var(--green)}.pb-macros{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.pb-macro{background:var(--paper);border:1px solid #efe9de;border-radius:13px;padding:10px 12px}.pb-macro.accent{border-color:var(--ok-line);background:#f1f8f3}.pb-macro-row{align-items:baseline;gap:6px;display:flex}.pb-macro-row b{font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.pb-macro.accent .pb-macro-row b{color:var(--green)}.pb-macro-unit{color:#8a9491;font-size:10.5px;font-weight:600}.pb-macro-target{color:#8a9491;margin-left:auto;font-size:10.5px;font-weight:700}.pb-macro-label{letter-spacing:.06em;color:#8a9491;margin-top:4px;font-size:10px;font-weight:700}.pb-macro-bar{background:var(--surface);border:1px solid #efe9de;border-radius:3px;height:5px;margin-top:7px;overflow:hidden}.pb-macro-bar span{height:100%;display:block}.pb-macro-bar span.accent{background:linear-gradient(90deg, var(--green), var(--green-bright))}.pb-inline-error{margin:8px 22px 0}.pb-meals-scroll{flex-direction:column;flex:1;gap:9px;min-height:0;padding:14px 22px 30px;display:flex;overflow-y:auto}.pb-meal{background:var(--surface);border:1px solid #efe9de;border-radius:17px;flex:none;overflow:hidden}.pb-meal.open{border-color:var(--ok-line)}.pb-meal-head{align-items:center;gap:12px;padding:12px 14px;display:flex}.pb-meal-avatar{border:1px solid var(--line-quiet);border-radius:13px;flex:none;place-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:grid}.pb-meal-avatar.breakfast{background:var(--warn-bg);color:#6e5a23;border-color:#e7dcc2}.pb-meal-avatar.lunch{border-color:var(--ok-line);background:var(--soft);color:var(--green)}.pb-meal-avatar.dinner{color:#12545f;background:#e7f0f2;border-color:#c6dde1}.pb-meal-avatar.snack{color:var(--muted);background:#f1efe8;border-color:#e2dccd}.pb-meal-name{flex:1;min-width:0}.pb-meal-name-row{align-items:center;gap:9px;display:flex}.pb-meal-name-row strong{font-size:14.5px;font-weight:800}.pb-meal-kcal{color:var(--green);font-size:12px;font-weight:700}.pb-meal-time{color:var(--muted);background:#f4efe6;border-radius:7px;padding:2px 7px;font-size:11px;font-weight:700}.pb-meal-summary{color:#8a9491;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11.5px;font-weight:500;display:block;overflow:hidden}.pb-meal-actions{flex:none;align-items:center;gap:5px;display:flex}.pb-meal-buttons{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;display:flex;overflow:hidden}.pb-meal-buttons button{width:33px;height:34px;min-height:34px;color:var(--muted);background:0 0;border:0;border-right:1px solid #efe9de;border-radius:0;place-items:center;padding:0;font-size:12px;font-weight:700;display:grid}.pb-meal-buttons button:last-child{border-right:0}.pb-meal-toggle{border:1px solid var(--line);background:var(--surface);width:96px;height:34px;min-height:34px;color:var(--ink);text-align:center;border-radius:10px;flex:none;padding:0;font-size:12px;font-weight:700}.pb-meal.open .pb-meal-toggle{border-color:var(--ok-line);background:var(--soft);color:var(--green)}.pb-meal-body{padding:0 14px 14px}.pb-meal-body:before{content:"";background:#efe9de;height:1px;margin-bottom:13px;display:block}.pb-meal-fields{grid-template-columns:1fr 132px;gap:9px;display:grid}.pb-meal-fields label{flex-direction:column;gap:5px;display:flex}.pb-meal-fields label span{color:var(--muted);font-size:11.5px;font-weight:700}.pb-meal-fields input{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);border-radius:11px;padding:0 11px;font-size:12.5px;font-weight:600}.pb-items-heading{align-items:center;gap:9px;margin-top:14px;display:flex}.pb-items-heading strong{font-size:12.5px;font-weight:800}.pb-items-heading span{color:#8a9491;font-size:11.5px;font-weight:500}.pb-items{flex-direction:column;gap:7px;margin-top:9px;display:flex}.pb-item{background:var(--surface);border:1px solid #efe9de;border-radius:14px;flex:none;padding:11px}.pb-item-row{align-items:center;gap:11px;display:flex}.pb-item-thumb{object-fit:cover;background:linear-gradient(140deg,#f4efe3,#efe9de);border:1px solid #e2dacb;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;display:grid}.pb-item-thumb.recipe{background:linear-gradient(140deg,#def0e5,#f4efe3)}.pb-item-main{flex:1;min-width:0}.pb-item-name-row{align-items:center;gap:7px;display:flex}.pb-item-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.pb-item-tag{background:var(--warn-bg);color:#6e5a23;letter-spacing:.5px;border-radius:6px;flex:none;padding:2px 6px;font-size:9.5px;font-weight:800}.pb-item-tag.recipe{background:var(--soft);color:var(--green)}.pb-item-sub{color:#8a9491;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:500;display:block;overflow:hidden}.pb-item-kcal{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex:none;font-size:13px;font-weight:700}.pb-item-buttons{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;align-items:center;display:flex;overflow:hidden}.pb-item-buttons button{background:0 0;border:0;border-radius:0;place-items:center;width:34px;height:34px;min-height:34px;padding:0;display:grid}.pb-item-buttons .pb-item-edit{width:auto;color:var(--green);white-space:nowrap;border-right:1px solid #efe9de;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:700;display:flex}.pb-item-controls{align-items:center;gap:8px;margin-top:9px;display:flex}.pb-measure{border:1px solid var(--line);background:var(--surface-warm);border-radius:11px;flex:none;align-items:stretch;height:38px;display:flex;overflow:hidden}.pb-measure select{border:0;border-right:1px solid var(--line-quiet);width:118px;min-height:0;color:var(--ink);background:0 0;border-radius:0;padding:0 8px;font-size:12px;font-weight:600}.pb-measure input{border:0;border-right:1px solid var(--line-quiet);background:var(--surface);width:52px;min-height:0;color:var(--ink);text-align:center;border-radius:0;padding:0 6px;font-size:12.5px;font-weight:700}.pb-measure input[aria-invalid=true]{background:var(--danger-bg)}.pb-measure-grams{color:#8a9491;white-space:nowrap;justify-content:flex-end;align-items:center;min-width:62px;padding:0 9px;font-size:11.5px;font-weight:600;display:flex}.pb-stepper{border:1px solid var(--line);background:var(--surface-warm);border-radius:11px;flex:none;align-items:stretch;height:38px;display:flex;overflow:hidden}.pb-stepper button{width:36px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:0;padding:0;font-size:15px;font-weight:700}.pb-stepper button:first-child{border-right:1px solid var(--line-quiet)}.pb-stepper button:last-child{border-left:1px solid var(--line-quiet)}.pb-stepper>span{background:var(--surface);white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-width:96px;padding:0 12px;font-size:12.5px;font-weight:700;display:flex}.pb-stepper em{color:#8a9491;font-size:11.5px;font-style:normal;font-weight:600}.pb-item-note{border:1px dashed var(--line);background:var(--paper);min-width:0;height:38px;min-height:38px;color:var(--ink);border-radius:11px;flex:1;padding:0 11px;font-size:11.5px;font-weight:500}.pb-meal-empty{border:1px dashed var(--line);background:var(--surface);text-align:center;border-radius:14px;padding:18px}.pb-meal-empty strong{font-size:12.5px;font-weight:700}.pb-meal-empty p{color:#8a9491;margin:4px 0 0;font-size:11.5px;font-weight:500}.pb-item-adders{gap:7px;margin-top:10px;display:flex}.pb-item-adders button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);border-radius:12px;padding:0 15px;font-size:12.5px;font-weight:700}.pb-item-adders .pb-add-food,.pb-modal-foot .pb-add-food{border-color:var(--ok-line);color:var(--green);background:#f1f8f3}.pb-meal-note{flex-direction:column;gap:5px;margin-top:12px;display:flex}.pb-meal-note span{color:var(--muted);font-size:11.5px;font-weight:700}.pb-meal-note textarea{border:1px solid var(--line);background:var(--surface);min-height:62px;color:var(--ink);resize:none;border-radius:12px;padding:9px 11px;font-size:12px;font-weight:500;line-height:1.55}.pb-no-meals{border:1px dashed var(--line);background:var(--surface);text-align:center;border-radius:18px;margin-top:26px;padding:40px}.pb-no-meals strong{font-size:16px;font-weight:800}.pb-no-meals p{color:var(--muted);margin:6px 0 0;font-size:13px;font-weight:500;line-height:1.6}.pb-backdrop{z-index:60;background:#12242b6b;place-items:center;padding:34px;display:grid;position:fixed;inset:0}.pb-modal{border:1px solid var(--line-quiet);background:var(--surface);border-radius:20px;flex-direction:column;width:660px;max-width:100%;max-height:100%;display:flex;overflow:hidden;box-shadow:0 30px 70px #16262a47}.pb-modal.recipe{width:1040px;height:100%}.pb-modal.assign{width:560px}.pb-modal-head{border-bottom:1px solid #efe9de;flex:none;align-items:center;gap:12px;padding:16px 18px 13px;display:flex}.pb-modal-head>div:first-child{flex:none;min-width:0}.pb-modal.food .pb-modal-head>div:first-child,.pb-modal.assign .pb-modal-head>div:first-child{flex:1}.pb-modal-head strong{font-size:17px;font-weight:800;display:block}.pb-modal-head p{color:#8a9491;margin:3px 0 0;font-size:11.5px;font-weight:500}.pb-modal-tools{border-bottom:1px solid #efe9de;flex-direction:column;flex:none;gap:10px;padding:13px 18px;display:flex}.pb-modal-search{border:1px solid var(--line);background:var(--surface-warm);border-radius:12px;align-items:center;height:40px;padding:0 12px;display:flex}.pb-modal-search.grow{flex:1;min-width:0;max-width:420px;margin-left:auto}.pb-modal-search input{min-width:0;min-height:0;color:var(--ink);background:0 0;border:0;flex:1;padding:0;font-size:13px;font-weight:500}.pb-modal-search input:focus{outline:none}.pb-modal-search span{color:#8a9491;font-size:11px;font-weight:600}.pb-cat-chips{flex-wrap:wrap;gap:5px;display:flex}.pb-cat-chips.pad{border-bottom:1px solid #efe9de;flex:none;padding:11px 18px}.pb-cat-chips button{border:1px solid var(--line);background:var(--surface);min-height:30px;color:var(--muted);white-space:nowrap;border-radius:10px;padding:0 11px;font-size:11.5px;font-weight:700}.pb-cat-chips button.on{border-color:var(--ok-line);background:var(--soft);color:var(--green)}.pb-modal-scroll{flex-direction:column;flex:1;gap:5px;min-height:120px;padding:11px 18px;display:flex;overflow-y:auto}.pb-food-row,.pb-client-row{background:var(--paper);border:1px solid #efe9de;border-radius:13px;flex:none;align-items:center;gap:11px;padding:9px 11px;display:flex}.pb-client-row{border-radius:14px;padding:10px 11px}.pb-food-main,.pb-client-main{flex:1;min-width:0}.pb-food-name,.pb-client-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.pb-client-name{font-size:13.5px}.pb-food-meta,.pb-client-meta{color:#8a9491;margin-top:3px;font-size:11px;font-weight:500;display:block}.pb-client-meta{font-size:11.5px}.pb-food-cat{color:var(--muted);background:#f4efe6;border-radius:8px;flex:none;padding:3px 8px;font-size:11px;font-weight:700}.pb-add-button{background:var(--green);color:#fff;border:0;border-radius:10px;flex:none;min-height:34px;padding:0 13px;font-size:12px;font-weight:700}.pb-client-row .pb-add-button{border-radius:11px;min-height:36px;padding:0 14px}.pb-client-avatar{background:var(--soft);width:36px;height:36px;color:var(--green);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.pb-load-more{border:1px dashed var(--line);background:var(--surface);min-height:36px;color:var(--muted);border-radius:11px;font-size:12px;font-weight:700}.pb-modal-foot{background:var(--paper);border-top:1px solid #efe9de;flex:none;align-items:center;gap:10px;padding:12px 18px;display:flex}.pb-modal-foot span{color:#8a9491;flex:1;font-size:11.5px;font-weight:500}.pb-modal-foot button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);border-radius:11px;padding:0 15px;font-size:12.5px;font-weight:700}.pb-create-food{padding:16px 18px}.pb-modal.meta{width:480px}.pb-modal.meta .pb-modal-head>div:first-child{flex:1}.pb-meta-body{flex-direction:column;gap:14px;padding:14px 18px 18px;display:flex;overflow-y:auto}.pb-meta-field{flex-direction:column;gap:6px;display:flex}.pb-meta-field>span{color:var(--muted);font-size:11.5px;font-weight:700}.pb-meta-field input,.pb-meta-field textarea{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);border-radius:11px;padding:0 11px;font-size:12.5px;font-weight:600}.pb-meta-field textarea{resize:none;min-height:62px;padding:9px 11px;font-weight:500;line-height:1.55}.pb-recipe-grid{flex:1;grid-template-columns:352px minmax(0,1fr);min-height:0;display:grid}.pb-recipe-list{border-right:1px solid #efe9de;flex-direction:column;gap:5px;min-height:0;padding:11px 14px 20px;display:flex;overflow-y:auto}.pb-recipe-row{background:var(--surface);color:var(--ink);text-align:left;border:1px solid #efe9de;border-radius:13px;flex:none;align-items:center;gap:11px;padding:9px 11px;transition:border-color .14s;display:flex}.pb-recipe-row:hover{border-color:var(--green-bright)}.pb-recipe-row.on{border-color:var(--green);background:var(--soft)}.pb-recipe-thumb{object-fit:cover;background:linear-gradient(140deg,#def0e5,#f4efe3);border:1px solid #e2dacb;border-radius:12px;flex:none;place-items:center;width:52px;height:52px;display:grid}.pb-recipe-main{flex:1;min-width:0}.pb-recipe-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;display:block;overflow:hidden}.pb-recipe-cat{color:#8a9491;margin-top:3px;font-size:11px;font-weight:500;display:block}.pb-recipe-kcal{text-align:right;flex:none}.pb-recipe-kcal b{font-size:12.5px;font-weight:700;display:block}.pb-recipe-kcal span{color:#8a9491;margin-top:2px;font-size:10.5px;font-weight:500;display:block}.pb-recipe-detail{background:var(--paper);min-height:0;padding:16px 18px 24px;overflow-y:auto}.pb-recipe-detail-head{align-items:flex-start;gap:16px;display:flex}.pb-recipe-hero{object-fit:cover;background:linear-gradient(140deg,#def0e5,#f4efe3);border:1px solid #e2dacb;border-radius:16px;flex:none;place-items:center;width:180px;height:180px;display:grid}.pb-recipe-detail-title{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.pb-recipe-detail-row{align-items:flex-start;gap:12px;display:flex}.pb-recipe-detail-row>div{flex:1;min-width:0}.pb-recipe-detail-row strong{font-size:18px;font-weight:800}.pb-recipe-detail-row p{color:var(--muted);margin:4px 0 0;font-size:12.5px;font-weight:500;line-height:1.55}.pb-recipe-chips{flex-wrap:wrap;gap:6px;display:flex}.pb-recipe-chips span{color:var(--muted);background:#f4efe6;border-radius:9px;padding:4px 10px;font-size:11.5px;font-weight:700}.pb-recipe-chips span.accent{background:var(--soft);color:var(--green)}.pb-recipe-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px;display:grid}.pb-recipe-stats div{background:var(--surface);border:1px solid #efe9de;border-radius:12px;padding:10px 11px}.pb-recipe-stats span{letter-spacing:.06em;color:#8a9491;font-size:10px;font-weight:700;display:block}.pb-recipe-stats b{margin-top:3px;font-size:15px;font-weight:800;display:block}.pb-recipe-section{margin-top:16px;font-size:13px;font-weight:800;display:block}.pb-recipe-ings{background:var(--surface);border:1px solid #efe9de;border-radius:14px;margin-top:8px;overflow:hidden}.pb-recipe-ings>div{border-bottom:1px solid #f4efe6;align-items:center;gap:10px;padding:10px 13px;display:flex}.pb-recipe-ings>div:last-child{border-bottom:0}.pb-recipe-ings span:first-child{flex:1;min-width:0;font-size:12.5px;font-weight:600}.pb-ing-amount{color:var(--muted);flex:none;font-size:12px;font-weight:600}.pb-recipe-steps{flex-direction:column;gap:7px;margin-top:8px;display:flex}.pb-recipe-steps>div{background:var(--surface);border:1px solid #efe9de;border-radius:13px;gap:10px;padding:11px 13px;display:flex}.pb-step-no{background:var(--soft);width:20px;height:20px;color:var(--green);border-radius:7px;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.pb-recipe-steps>div>span:last-child{text-wrap:pretty;flex:1;font-size:12.5px;font-weight:500;line-height:1.6}.pb-done{border:1px solid var(--line-quiet);background:var(--surface);text-align:center;border-radius:20px;width:452px;max-width:100%;padding:26px;box-shadow:0 30px 70px #16262a47}.pb-done-badge{border:1px solid var(--ok-line);background:var(--soft);border-radius:18px;place-items:center;width:56px;height:56px;margin:0 auto;display:grid}.pb-done-title{color:var(--ink);text-wrap:pretty;margin:14px 0 0;font-size:17px;font-weight:800;line-height:1.45}.pb-done-title .accent{color:var(--green)}.pb-done-title .warm{color:#9e4b36}.pb-done-hint{color:var(--muted);text-wrap:pretty;margin:9px 0 0;font-size:13px;font-weight:500;line-height:1.65}.pb-done .pb-primary{margin-top:18px}.pb-toast{z-index:80;color:#fff;background:#12242b;border-radius:13px;padding:12px 18px;font-size:12.5px;font-weight:700;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 18px 40px #16262a4d}.pb-patient-plans-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.pb-patient-plans-head p{color:var(--muted);margin:4px 0 0}.pb-patient-plan{background:var(--paper);border:1px solid #efe9de;border-radius:13px;align-items:center;gap:11px;padding:10px 11px;display:flex}.pb-patient-plan+.pb-patient-plan{margin-top:7px}.pb-patient-plan-main{flex:1;min-width:0}.pb-patient-plan-title{font-size:13.5px;font-weight:700;display:block}.pb-patient-plan-meta{color:#8a9491;margin-top:3px;font-size:11.5px;font-weight:500;display:block}@media (max-width:1100px){.panel>.pb-page{height:auto}.pb-columns{grid-template-columns:1fr}.pb-col-list,.pb-col-structure{border-right:0;border-bottom:1px solid var(--line-quiet)}.pb-list-scroll,.pb-structure-scroll,.pb-meals-scroll{overflow:visible}.pb-topbar{flex-wrap:wrap}.pb-modal.recipe{height:auto}.pb-recipe-grid{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.program-preview,.program-preview *{visibility:visible}.program-preview{width:100%;max-height:none;box-shadow:none;border:0;position:absolute;inset:0 auto auto 0;overflow:visible}}.anam-summary{gap:16px;display:grid}.anam-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.anam-side{gap:16px;min-width:0;display:grid}.anam-main h3{margin:18px 0 0}.anam-list{gap:10px;margin-top:10px;display:grid}.anam-card{border:1px solid var(--line-quiet);background:var(--paper);border-radius:14px;padding:12px 14px}.anam-card.open{border-color:var(--ok-line);background:var(--surface)}.anam-card-head{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.anam-card-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.anam-card-main strong{font-size:13.5px;font-weight:700}.anam-card-meta{color:var(--muted-quiet);font-size:12px;font-weight:500}.anam-detail{border-top:1px solid var(--line-faint);gap:14px;margin-top:12px;padding-top:12px;display:grid}.anam-detail h4{margin:0 0 8px;font-size:12.5px;font-weight:800}.anam-detail dl{gap:6px;margin:0;display:grid}.anam-detail dl>div{border:1px solid var(--line-faint);background:var(--paper);border-radius:10px;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 10px;font-size:12.5px;display:flex}.anam-card.open .anam-detail dl>div{background:var(--surface-warm)}.anam-detail dt{color:var(--muted);font-weight:600}.anam-detail dd{text-align:right;margin:0;font-weight:600}.anam-revisions{color:var(--muted);gap:5px;margin:0;padding-left:18px;font-size:12.5px;display:grid}.anam-correct{gap:10px;display:grid}.anam-correct-open{justify-self:start}.anam-send{gap:10px;display:grid}.anam-preview{border:1px dashed var(--line);background:var(--paper);border-radius:12px;gap:10px;padding:12px;display:grid}.anam-preview h4{margin:0 0 5px;font-size:12px;font-weight:800}.anam-preview ul{color:var(--muted);margin:0;padding-left:18px;font-size:12px}.anam-assign{border:1px solid var(--line-quiet);background:var(--paper);border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px;font-size:12.5px;display:flex}.anam-assign-head{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.anam-assign-head strong{flex:1;min-width:0;font-size:13px;font-weight:700}.status-badge.overdue{border-color:var(--danger-line);background:var(--danger-bg);color:var(--danger-fg)}.anam-archive summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:700}.anam-archive details details{margin-top:10px}@media (max-width:1100px){.anam-layout{grid-template-columns:1fr}}.forms-owner{background:var(--surface-sunken);color:var(--muted);letter-spacing:.05em;border-radius:7px;flex:none;padding:2px 8px;font-size:10px;font-weight:800}.forms-owner.mine{background:var(--soft);color:var(--green)}.alert{color:var(--danger-fg);font-size:13px;font-weight:600}.designer-page{grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 68px);margin:-18px -26px -32px;display:grid;overflow:hidden}.designer-topbar{border-bottom:1px solid var(--line-quiet);background:var(--surface);flex:none;align-items:center;gap:13px;min-height:60px;padding:0 22px;display:flex}.designer-title{gap:3px;min-width:0;margin-right:auto;display:grid}.designer-title small{color:var(--muted-quiet);letter-spacing:.08em;font-size:10.5px;font-weight:600}.designer-state{background:var(--warn-bg);color:var(--warn-fg);border-radius:8px;justify-self:start;padding:3px 8px;font-size:10.5px;font-weight:700}.designer-state.on{background:var(--ok-bg);color:var(--ok-fg)}.designer-dirty{color:var(--muted-quiet);font-size:11.5px;font-weight:500}.designer-switch{background:var(--line);border-radius:11px;flex:none;width:36px;height:21px;transition:background .16s;position:relative}.designer-switch:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:left .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}[aria-pressed=true]>.designer-switch{background:var(--green-bright)}[aria-pressed=true]>.designer-switch:after{left:17px}.designer-publish,.designer-publish:hover{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);border-radius:12px;align-items:center;gap:9px;padding:0 12px;font-size:12px;font-weight:700;display:flex}.designer-publish.on,.designer-publish.on:hover{border-color:var(--ok-line);background:var(--ok-bg);color:var(--ok-fg)}.designer-body{grid-template-columns:298px minmax(0,1fr) 372px;min-height:0;display:grid}.designer-tree{border-right:1px solid var(--line-quiet);background:var(--surface-warm);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.designer-tree-head{border-bottom:1px solid var(--line-faint);align-items:center;gap:9px;padding:13px 14px 11px;display:flex}.designer-tree-head>span{gap:2px;min-width:0;margin-right:auto;display:grid}.designer-tree-head strong{font-size:13px;font-weight:800}.designer-tree-head small{color:var(--muted-quiet);font-size:10.5px;font-weight:500}.designer-tree-head button{border:1px solid var(--ok-line);border-radius:10px;flex:none;min-height:34px;padding:0 11px;font-size:11.5px}.designer-tree-body{flex-direction:column;gap:9px;min-height:0;padding:11px 12px 22px;display:flex;overflow-y:auto}.designer-tree-body>*{flex:none}.designer-section{border:1px solid var(--line-faint);background:var(--surface);border-radius:14px;overflow:hidden}.designer-section.selected{border-color:var(--ok-line);background:var(--soft)}.designer-section-head{align-items:center;gap:6px;padding:8px 9px;display:flex}.designer-section-name,.designer-section-name:hover{text-align:left;background:0 0;border:0;flex:1;gap:2px;min-width:0;min-height:34px;padding:0;display:grid}.designer-section-name strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:800;overflow:hidden}.designer-section-name small{color:var(--muted-quiet);font-size:10.5px;font-weight:500}.designer-move,.designer-move:hover{border:1px solid var(--line);background:var(--surface);width:26px;min-width:26px;min-height:26px;color:var(--ink);border-radius:7px;flex:none;place-items:center;padding:0;font-size:11px;font-weight:700;display:grid}.designer-move.remove,.designer-move.remove:hover{color:var(--danger-fg)}.designer-move:disabled{color:var(--muted-faint)}.designer-section-fields{flex-direction:column;gap:4px;padding:0 10px 10px;display:flex}.designer-field{border:1px solid var(--line-faint);background:var(--surface-warm);border-radius:10px;flex:none;align-items:center;gap:6px;padding:4px 5px;display:flex}.designer-field.selected{border-color:var(--green-bright);background:var(--surface)}.designer-field-name,.designer-field-name:hover{text-align:left;background:0 0;border:0;flex:1;gap:2px;min-width:0;min-height:32px;padding:0 4px;display:grid}.designer-field-label{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-size:11.5px;font-weight:600;display:flex;overflow:hidden}.designer-field-label em{color:var(--danger-fg);flex:none;font-style:normal;font-weight:800}.designer-field-meta{color:var(--muted-quiet);align-items:center;gap:5px;font-size:9.5px;font-weight:600;display:flex}.designer-cond{background:var(--warn-bg);color:var(--warn-fg);letter-spacing:.4px;border-radius:5px;padding:1px 5px;font-size:8.5px;font-weight:800}.designer-add-field,.designer-add-field:hover{border:1px dashed var(--ok-line);background:var(--surface);min-height:36px;color:var(--green);border-radius:10px;font-size:11.5px;font-weight:700}.designer-editor{background:var(--paper);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.designer-editor-head{border-bottom:1px solid var(--line-faint);background:var(--surface);align-items:flex-start;gap:12px;padding:15px 24px 13px;display:flex}.designer-editor-title{flex:1;min-width:0}.designer-editor-title h3{letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;margin:7px 0 0;font-size:18px;font-weight:800;overflow:hidden}.designer-editor-head>button{border-radius:11px;flex:none;min-height:38px;padding:0 12px;font-size:12px}.designer-editor-body{min-width:0;min-height:0;padding:18px 24px 26px;overflow-y:auto}.designer-form{gap:16px;min-width:0;max-width:620px;display:grid}.designer-form>label{gap:8px;min-width:0;font-size:12px;font-weight:700;display:grid}.designer-form .field-hint{margin:-10px 0 0}.designer-narrow{max-width:340px}.designer-kinds{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.designer-kind,.designer-kind:hover{border:1px solid var(--line);background:var(--surface);min-height:52px;color:var(--ink-soft);text-wrap:pretty;border-radius:11px;padding:6px 7px;font-size:11px;font-weight:700;line-height:1.3}.designer-kind.on,.designer-kind.on:hover{border-color:var(--green);background:var(--green);color:#fff}.designer-number{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.designer-number>label{gap:8px;width:120px;font-size:12px;font-weight:700;display:grid}.designer-number .field-hint{flex:1;min-width:150px;margin:0 0 12px}.designer-card{border:1px solid var(--line-faint);background:var(--surface);border-radius:15px;gap:9px;padding:14px;display:grid}.designer-card-head{align-items:center;gap:9px;display:flex}.designer-card-head strong{flex:1;font-size:12.5px;font-weight:800}.designer-card-head button{border-radius:9px;flex:none;min-height:32px;padding:0 11px;font-size:11.5px}.designer-card .field-hint{text-wrap:pretty;margin:0;line-height:1.55}.designer-option{align-items:center;gap:7px;display:flex}.designer-option input{background:var(--surface-warm);flex:1;min-width:0;min-height:40px;font-size:12.5px}.designer-option .designer-move{border-radius:10px;width:32px;min-width:32px;min-height:40px}.designer-card>.designer-add-field{background:var(--surface-warm);justify-self:start;min-height:40px;padding:0 14px}.designer-condition{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.designer-condition .muted{font-size:12px;font-weight:600}.designer-condition select{background:var(--surface-warm);flex:1;min-width:180px;min-height:42px;font-size:12.5px}.designer-condition-summary{border:1px solid var(--ok-line);background:var(--soft);color:var(--ok-fg);text-wrap:pretty;border-radius:11px;flex-basis:100%;margin:0;padding:10px 12px;font-size:11.5px;font-weight:600;line-height:1.5}.designer-flag,.designer-flag:hover{border:1px solid var(--line-faint);background:var(--surface);text-align:left;border-radius:14px;align-items:center;gap:11px;padding:12px 13px;display:flex}.designer-flag>span:last-child{gap:2px;min-width:0;display:grid}.designer-flag strong{color:var(--ink);font-size:12.5px;font-weight:700}.designer-flag small{color:var(--muted);text-wrap:pretty;font-size:11px;font-weight:500;line-height:1.45}.designer-key{border:1px solid var(--line-faint);background:var(--surface-warm);color:var(--muted-quiet);text-wrap:pretty;border-radius:14px;margin:0;padding:12px 13px;font-size:11.5px;line-height:1.55}.designer-key code{color:var(--green);font-family:inherit;font-weight:700}.designer-section-field,.designer-section-field:hover{border:1px solid var(--line-faint);background:var(--surface-warm);text-align:left;border-radius:11px;align-items:center;gap:9px;min-height:42px;padding:0 11px;display:flex}.designer-section-field>span:first-child{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12.5px;font-weight:600;overflow:hidden}.designer-kind-badge{background:var(--surface-sunken);color:var(--muted);border-radius:7px;flex:none;padding:3px 8px;font-size:10px;font-weight:700}.designer-message{border-top:1px solid var(--line-faint);background:var(--surface);margin:0;padding:11px 24px;font-size:12.5px;font-weight:600}.designer-side{border-left:1px solid var(--line-quiet);background:var(--surface);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.designer-side-head{border-bottom:1px solid var(--line-faint);justify-content:space-between;align-items:center;gap:10px;padding:13px 16px 12px;display:flex}.designer-side-body{grid-auto-rows:min-content;align-content:start;gap:12px;min-height:0;padding:14px 16px 22px;display:grid;overflow-y:auto}.designer-preview-note{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn-fg);text-wrap:pretty;border-radius:12px;margin:0;padding:10px 12px;font-size:11px;font-weight:600;line-height:1.5}.designer-preview-step{background:var(--sidebar);color:#fff;border-radius:15px;gap:4px;padding:13px;display:grid}.designer-preview-step small{color:var(--gold);letter-spacing:.08em;font-size:9.5px;font-weight:600}.designer-preview-step strong{font-size:15px;font-weight:800}.designer-preview-step p{color:#9bb0ae;text-wrap:pretty;margin:0;font-size:11px;font-weight:500;line-height:1.5}.designer-progress{background:#ffffff26;border-radius:3px;height:4px;margin-top:6px;display:block;overflow:hidden}.designer-progress>span{background:linear-gradient(90deg, var(--green-bright), var(--gold));height:4px;display:block}.designer-preview-field{border:1px solid var(--line-faint);background:var(--paper);border-radius:14px;gap:9px;padding:12px 13px;display:grid}.designer-preview-label{text-wrap:pretty;align-items:flex-start;gap:7px;font-size:12.5px;font-weight:700;line-height:1.45;display:flex}.designer-preview-label em{color:var(--danger-fg);flex:none;font-style:normal;font-weight:800}.designer-preview-field>small{color:var(--muted-quiet);text-wrap:pretty;margin-top:-6px;font-size:10.5px;line-height:1.5}.designer-preview-cond{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn-fg);text-wrap:pretty;border-radius:9px;padding:6px 9px;font-size:10px;font-weight:700;line-height:1.4}.designer-preview-box{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--muted-faint);border-radius:11px;align-items:center;padding:0 11px;font-size:12px;display:flex}.designer-preview-box.tall{align-items:flex-start;min-height:64px;padding:9px 11px}.designer-preview-box.short{justify-content:center;width:96px;font-size:13px;font-weight:700}.designer-preview-number{align-items:center;gap:8px;display:flex}.designer-preview-number small{color:var(--muted);font-size:11.5px;font-weight:600}.designer-preview-choices{flex-wrap:wrap;gap:5px;display:flex}.designer-preview-choices>span{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11.5px;font-weight:600;display:flex}.designer-preview-choices .dot{border:1.5px solid #c2b9a6;border-radius:4px;flex:none;width:13px;height:13px}.designer-preview-choices .dot.round{border-radius:50%}.designer-preview-scale{gap:3px;display:flex}.designer-preview-scale>span{border:1px solid var(--line);background:var(--surface);height:30px;color:var(--muted);border-radius:8px;flex:1;place-items:center;font-size:10.5px;font-weight:700;display:grid}.designer-stats{grid-template-columns:1fr 1fr;gap:7px;display:grid}.designer-stats>div{border:1px solid var(--line-faint);background:var(--surface-warm);border-radius:13px;gap:3px;padding:11px 12px;display:grid}.designer-stats small{color:var(--muted-quiet);letter-spacing:.06em;font-size:9.5px;font-weight:700}.designer-stats strong{font-size:15px;font-weight:800}.designer-next{background:var(--sidebar);color:#fff;border-radius:15px;gap:7px;padding:12px;display:grid}.designer-next strong{font-size:12.5px;font-weight:800}.designer-next p{color:#c9e8dc;text-wrap:pretty;margin:0;font-size:11px;font-weight:500;line-height:1.55}.forms-toolbar{flex-wrap:wrap}.forms-toolbar .segmented{margin-right:auto}.forms-notice{flex:none;margin:12px 22px 0}.forms-row{border:1px solid var(--line-faint);background:var(--surface);border-radius:14px;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.forms-row.selected{border-color:var(--green-bright);background:var(--surface-warm)}.forms-row-main,.forms-row-main:hover{text-align:left;background:0 0;border:0;gap:3px;min-width:0;padding:0;display:grid}.forms-row-title{align-items:center;gap:8px;min-width:0;display:flex}.forms-row-title strong{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.forms-row-meta{color:var(--muted-quiet);font-size:11.5px;font-weight:500}.forms-row-usage{color:var(--muted);margin-top:2px;font-size:11.5px;font-weight:600}.forms-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.forms-row-actions button{border-radius:9px;min-height:32px;padding:0 10px;font-size:11.5px}.designer-state.off{background:var(--surface-sunken);color:var(--muted)}.forms-age{grid-template-columns:1fr 1fr;gap:12px;display:grid}.forms-age label{gap:7px;min-width:0;display:grid}.forms-preview-section{border:1px solid var(--line-faint);background:var(--surface-warm);border-radius:13px;gap:6px;padding:12px 14px;display:grid}.forms-preview-section strong{font-size:13px;font-weight:800}.forms-preview-section p{margin:0;font-size:12px}.forms-preview-section ul{gap:4px;margin:0;padding-left:18px;font-size:12.5px;display:grid}.forms-preview-section li::marker{color:var(--muted-faint)}.forms-preview-section em{color:var(--danger-fg);font-style:normal;font-weight:800}.forms-preview-section .designer-cond{margin-left:6px}.designer-back,.designer-back:hover{border-radius:10px;flex:none;min-height:34px;padding:0 11px;font-size:12px}.designer-source{gap:0;min-width:0;display:grid}.designer-source select{background:var(--surface-warm);min-height:42px;font-size:12.5px}.designer-cond.bound{background:var(--soft);color:var(--ok-fg)}.forms-setting{border:1px solid var(--line-faint);background:var(--surface);border-radius:14px;gap:10px;padding:12px 14px;display:grid}.forms-setting.off{background:var(--surface-warm)}.forms-setting-head{align-items:center;gap:8px;display:flex}.forms-setting-head>.designer-flag{background:0 0;border:0;flex:1;min-width:0;padding:0}.forms-setting-head strong small{color:var(--muted-quiet);font-weight:600}.forms-setting-body{border-top:1px solid var(--line-faint);gap:10px;padding-top:10px;display:grid}.forms-setting-body label{gap:6px;min-width:0;font-size:12px;font-weight:700;display:grid}.forms-setting-body>.chip{justify-self:start}.designer-condition-values{flex-wrap:wrap;gap:5px;display:flex}.designer-section-name small .designer-cond{margin-left:6px}.tester-backdrop{z-index:30;background:#10281d80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.tester-shell{justify-items:center;gap:14px;min-height:0;display:grid}.tester-phone{background:var(--paper);width:min(94vw,392px);height:min(84vh,780px);box-shadow:var(--shadow-float);border:9px solid #14252b;border-radius:38px;flex-direction:column;display:flex;overflow:hidden}.tester-bar{border-bottom:1px solid var(--line-quiet);background:var(--surface);flex:none;gap:2px;padding:14px 18px 12px;display:grid}.tester-bar strong{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:800;overflow:hidden}.tester-bar-row{align-items:center;gap:10px;display:flex}.tester-bar-row strong{flex:1;min-width:0}.tester-bar-nav{flex:none;gap:6px;display:flex}.tester-bar-nav button{border:1px solid var(--line);background:var(--surface);width:30px;height:30px;min-height:30px;color:var(--ink);border-radius:9px;place-items:center;padding:0;font-size:16px;font-weight:700;line-height:1;display:grid}.tester-badge{color:var(--green-bright);letter-spacing:.09em;font-size:10px;font-weight:800}.tester-screen{flex:1;align-content:start;gap:10px;min-height:0;padding:16px 16px 28px;display:grid;overflow-y:auto}.tester-card{border:1px solid var(--line-faint);background:var(--surface);border-radius:16px;gap:12px;padding:16px;display:grid}.tester-card>strong{font-size:16px;font-weight:800}.tester-muted{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.tester-quiet{color:var(--muted-quiet);font-size:12px;line-height:1.5}.tester-progress{color:var(--green-bright);margin:0;font-size:13px;font-weight:800}.tester-track{background:var(--line-quiet);border-radius:999px;height:7px;display:block;overflow:hidden}.tester-track>span{background:var(--green-bright);border-radius:999px;height:7px;display:block}.tester-field{gap:6px;display:grid}.tester-label{color:var(--ink);font-size:13.5px;font-weight:700}.tester-label em{color:var(--danger-fg);font-style:normal}.tester-chips{flex-wrap:wrap;gap:7px;display:flex}.tester-chip{border:1px solid var(--ok-line);background:var(--soft);min-height:38px;color:var(--ok-fg);border-radius:10px;padding:0 13px;font-size:13px;font-weight:700}.tester-chip.on{border-color:var(--green);background:var(--green);color:#fff}.tester-field input,.tester-field textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:42px;color:var(--ink);font:inherit;border-radius:10px;padding:9px 11px;font-size:13.5px}.tester-field textarea{resize:vertical;min-height:92px}.tester-number{align-items:center;gap:9px;display:flex}.tester-warn{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn-fg);border-radius:12px;gap:3px;padding:11px 13px;font-size:12.5px;font-weight:600;display:grid}.tester-error{color:var(--danger-fg);font-size:12px;font-weight:700}.tester-consent{min-height:40px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:13px;font-weight:600;display:flex}.tester-consent>span{color:var(--green);flex:none;font-size:19px;line-height:1}.tester-primary{background:var(--green);color:#fff;border:0;border-radius:10px;min-height:44px;font-size:14px;font-weight:800}.tester-primary:disabled{background:var(--line);color:var(--muted)}.tester-secondary{border:1px solid var(--ok-line);background:var(--soft);min-height:40px;color:var(--ok-fg);border-radius:10px;padding:0 15px;font-size:13px;font-weight:700}.tester-secondary:disabled{border-color:var(--line-quiet);background:var(--surface-warm);color:var(--muted-quiet)}.tester-chip:hover{background:var(--ok-bg)}.tester-chip.on:hover{background:var(--green-strong)}.tester-secondary:hover{background:var(--ok-bg)}.tester-secondary:disabled:hover{background:var(--surface-warm)}.tester-primary:hover{background:var(--green-strong)}.tester-primary:disabled:hover{background:var(--line)}.tester-consent:hover{background:0 0}.tester-summary{gap:8px;margin:0;display:grid}.tester-summary>div{border-bottom:1px solid var(--line-faint);gap:2px;padding-bottom:8px;display:grid}.tester-summary dt{color:var(--muted);font-size:11.5px;font-weight:600}.tester-summary dd{margin:0;font-size:13px;font-weight:700}.tester-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.tester-note{color:#f0ece2;font-size:12.5px;font-weight:600}.tester-open{border:1px solid var(--green);background:var(--surface);min-height:34px;color:var(--green);border-radius:10px;justify-self:start;padding:0 13px;font-size:12.5px;font-weight:700}.tester-open:hover{background:var(--soft)}.prof-page{flex-direction:column;display:flex}.prof-kicker{letter-spacing:.09em;color:var(--muted-quiet);font-size:10px;font-weight:700;display:inline-block}.prof-strip{background:var(--surface);border-bottom:1px solid var(--line-quiet);margin-inline:-26px}.prof-strip.changes{background:#fdf4e3;border-bottom-color:#ebd6ac}.prof-strip.live{border-bottom-color:#c7ded3}.prof-strip-main{flex-wrap:wrap;align-items:center;gap:14px;padding:13px 26px;display:flex}.prof-strip-badge{background:var(--surface-sunken);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;flex:none;align-items:center;gap:8px;padding:6px 12px;font-size:12.5px;font-weight:800;display:inline-flex}.prof-strip.live .prof-strip-badge,.prof-strip.changes .prof-strip-badge{color:var(--green);background:#def0e5;border-color:#bfe0ce}.prof-strip-dot{background:var(--muted-faint);border-radius:50%;width:8px;height:8px}.prof-strip.live .prof-strip-dot,.prof-strip.changes .prof-strip-dot{background:#2e9e6b}.prof-strip-text{flex:1;min-width:240px;overflow:hidden}.prof-strip-text strong{font-size:14px;display:block}.prof-strip.changes .prof-strip-text strong{color:#7a5a11}.prof-strip-text>span{color:var(--muted);margin-top:3px;font-size:12.5px;display:block}.prof-strip-savegroup{border-right:1px solid var(--line-quiet);align-items:center;gap:8px;padding-right:14px;display:flex}.prof-ghost{background:var(--surface);min-height:42px;color:var(--muted);cursor:pointer;white-space:nowrap;border:1px solid #c9bfab;border-radius:12px;padding:0 14px;font-size:12.5px;font-weight:700}.prof-ghost.danger{color:#8e362e}.prof-ghost:disabled{opacity:.55;cursor:default}.prof-dark{background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:42px;padding:0 20px;font-size:13.5px;font-weight:800}.prof-cta{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;cursor:pointer;border:none;border-radius:12px;flex:none;min-height:42px;padding:0 18px;font-size:13.5px;font-weight:700;box-shadow:0 6px 14px #0a556133}.prof-strip.changes .prof-cta{background:linear-gradient(135deg,#b98411,#d6a02a);box-shadow:0 6px 14px #b9841133}.prof-strip-foot{border-top:1px solid var(--line-faint);flex-wrap:wrap;align-items:center;gap:12px;padding:9px 26px;display:flex}.prof-savechip{border-radius:9px;flex:none;padding:5px 10px;font-size:11.5px;font-weight:700}.prof-savechip.dirty{color:#7a5a11;background:#f4efe3}.prof-savechip.ok{color:var(--green);background:#def0e5}.prof-savechip.fail{color:#8e362e;background:#fbede9}.prof-savechip.clean{color:var(--muted-quiet);background:#f1ede4}.prof-savedesc{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11.5px;overflow:hidden}.prof-stripnote{color:#7a5a11;background:#fdf4e3;border:1px solid #ebd6ac;border-radius:10px;flex:none;align-items:center;gap:9px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.prof-stripnote>span{background:#b98411;border-radius:50%;width:7px;height:7px}.prof-conflict{background:#fbede9;border-top:1px solid #efd8cf;align-items:center;gap:12px;padding:11px 26px;display:flex}.prof-conflict>span{color:#b4483f;background:#f4d9d2;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid}.prof-conflict p{color:#8e362e;flex:1;margin:0;font-size:12.5px;font-weight:600}.prof-conflict button{background:var(--surface);color:#8e362e;cursor:pointer;border:1px solid #d9afa6;border-radius:10px;min-height:34px;padding:0 13px;font-size:12px;font-weight:700}.prof-loading{flex-direction:column;gap:14px;display:flex}.prof-loading p{color:var(--muted);margin:0;font-size:13.5px;font-weight:600}.prof-skel{background:linear-gradient(90deg,#e5dfd3 8%,#f6f2ea 24%,#e5dfd3 40%) 0 0/800px 100%;border-radius:18px;height:168px;animation:1.3s linear infinite prof-shim}.prof-skel-strip{border-radius:16px;height:86px}.prof-skel-grid{grid-template-columns:1fr 380px;gap:16px;display:grid}.prof-skel-grid>div:first-child{flex-direction:column;gap:14px;display:flex}.prof-skel-side{height:560px}@keyframes prof-shim{0%{background-position:-320px 0}to{background-position:520px 0}}@media (prefers-reduced-motion:reduce){.prof-skel{animation:none}}.prof-error-card{background:var(--surface);text-align:center;border:1px solid #efd8cf;border-radius:20px;flex-direction:column;align-items:center;gap:12px;padding:48px;display:flex}.prof-error-mark{color:#b4483f;background:#fbede9;border-radius:20px;place-items:center;width:64px;height:64px;font-size:26px;font-weight:800;display:grid}.prof-error-card strong{font-size:19px}.prof-error-card p{max-width:420px;color:var(--muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.6}.prof-error-card button{background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:44px;margin-top:6px;padding:0 20px;font-size:13.5px;font-weight:700}.prof-empty{background:var(--surface);border:1px solid var(--line-quiet);border-radius:20px;grid-template-columns:1fr 300px;align-items:center;gap:36px;padding:40px 44px;display:grid}.prof-empty .prof-kicker{color:var(--muted);letter-spacing:.07em;background:#f1ede4;border-radius:8px;padding:5px 10px;font-size:10.5px}.prof-empty h2{letter-spacing:-.3px;margin:12px 0 0;font-size:24px}.prof-empty>div>p{max-width:520px;color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.7}.prof-empty .prof-field{max-width:520px;margin-top:12px}.prof-empty-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.prof-empty-actions>span{color:var(--muted);font-size:12.5px}.prof-empty-side{background:var(--surface-warm);border:1px solid var(--line-quiet);text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:22px;display:flex}.prof-empty-side strong{font-size:13.5px}.prof-empty-side p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.prof-sluginput{border:1px solid var(--line);background:var(--paper);border-radius:11px;align-items:center;min-height:44px;margin-top:6px;padding:0 13px;display:flex}.prof-slugprefix{color:var(--muted-quiet);font:500 13.5px ui-monospace,Menlo,monospace}.prof-sluginput input{flex:1;min-width:0;background:0 0!important;border:none!important;min-height:40px!important;padding:0!important;font:600 13.5px ui-monospace,Menlo,monospace!important}.prof-grid{align-items:flex-start;gap:16px;display:flex}.prof-main{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.prof-card{background:var(--surface);border:1px solid var(--line-quiet);border-radius:16px;padding:18px}.prof-card.warm{background:var(--surface-warm);border-color:#e3dcce}.prof-card-invalid{border-color:#d9afa6}.prof-card h3{margin:0;font-size:16px;font-weight:800}.prof-card-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.prof-desc{color:var(--muted);margin:4px 0 0;font-size:12.5px}.prof-counts{flex:none;align-items:center;gap:8px;display:flex}.prof-countpill{color:var(--muted);background:#f1ede4;border-radius:8px;flex:none;padding:5px 10px;font-size:11px;font-weight:700}.prof-hint{color:var(--muted-quiet);font-size:11.5px;font-weight:500}.prof-hint.center{text-align:center}.prof-hint.right{text-align:right;flex:1}.prof-field{display:block}.prof-field.wide{grid-column:1/-1}.prof-field>span:first-child{color:var(--muted);font-size:12px;font-weight:600;display:block}.prof-field input,.prof-field textarea{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:11px;margin-top:6px;padding:0 13px;font-size:14px;font-weight:600}.prof-field textarea{resize:vertical;padding:11px 13px;font-weight:500;line-height:1.65}.prof-field .prof-hint,.prof-field .field-error{margin-top:5px;display:block}.prof-cc{text-transform:uppercase;font-family:ui-monospace,Menlo,monospace}.prof-identity{gap:20px;margin-top:16px;display:flex}.prof-photo{flex-direction:column;flex:none;align-items:center;gap:9px;width:132px;display:flex}.prof-avatar{object-fit:cover;width:96px;height:96px;color:var(--green);background:linear-gradient(140deg,#def0e5,#f4efe3);border:1px solid #cfe3d8;border-radius:50%;place-items:center;font-size:26px;font-weight:800;display:grid}.prof-avatar.small{flex:none;width:60px;height:60px;font-size:18px}.prof-avatar-empty{width:84px;height:84px;color:var(--muted-quiet);border-style:dashed;border-color:#c7ded3;font-size:11px;font-weight:700}.prof-photo-actions{gap:6px;display:flex}.prof-photo-actions .prof-ghost,.prof-upload{border-radius:10px;min-height:34px;padding:0 11px;font-size:12px}.prof-upload{background:var(--paper);border:1px solid var(--line);cursor:pointer;align-items:center;font-weight:700;display:inline-flex}.prof-upload input{display:none}.prof-photonote{box-sizing:border-box;width:100%;color:var(--green);text-align:center;background:#def0e5;border:1px solid #bfe0ce;border-radius:9px;padding:8px 9px;font-size:10.5px;font-weight:600;line-height:1.45}.prof-identity-fields{flex:1;grid-template-columns:1fr 1fr;gap:14px;min-width:0;display:grid}.prof-slugread{border:1px dashed var(--line);background:var(--surface-warm);border-radius:11px;align-items:center;gap:10px;min-height:44px;margin-top:6px;padding:0 13px;display:flex}.prof-slugread>span:first-child{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:1;font:600 13.5px ui-monospace,Menlo,monospace;overflow:hidden}.prof-locktag{color:var(--muted-quiet);background:#f1ede4;border-radius:8px;flex:none;align-items:center;gap:6px;padding:4px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.prof-about-grid{grid-template-columns:1.6fr .7fr 1fr .5fr;gap:12px;margin-top:14px;display:grid}.prof-chips{background:var(--surface-warm);border:1px solid var(--line-faint);border-radius:13px;flex-wrap:wrap;gap:8px;margin-top:14px;padding:12px;display:flex}.prof-chip{color:var(--green);background:#def0e5;border:1px solid #bfe0ce;border-radius:999px;align-items:center;gap:7px;padding:6px 8px 6px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.prof-chip.passive{background:var(--surface-sunken);border-color:var(--line);color:#6b7875}.prof-passivetag{background:var(--line-quiet);color:#6b7875;letter-spacing:.04em;border-radius:6px;padding:2px 6px;font-size:9.5px;font-weight:700}.prof-chip button{cursor:pointer;width:20px;height:20px;color:var(--ink-soft);background:#16262a14;border:none;border-radius:50%;place-items:center;padding:0;font-size:10px;display:grid}.prof-search{border:1px solid var(--line);background:var(--paper);border-radius:11px;align-items:center;gap:9px;min-height:42px;margin-top:12px;padding:0 12px;display:flex}.prof-card.warm .prof-search{background:var(--surface)}.prof-search input{background:0 0;border:none;flex:1;min-width:0;min-height:40px;padding:0;font-size:13.5px;font-weight:500}.prof-search .prof-ghost{border-radius:8px;min-height:28px;padding:0 9px;font-size:11px}.prof-results{border:1px solid var(--line-quiet);background:var(--paper);border-radius:13px;margin-top:12px;overflow:hidden}.prof-results>button{border:none;border-bottom:1px solid var(--line-faint);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:11px;width:100%;min-height:46px;padding:9px 13px;display:flex}.prof-results>button.checked{background:#f3faf6}.prof-results strong{font-size:13px;display:block}.prof-results .prof-hint{margin-top:2px;display:block}.prof-checkbox{background:var(--surface);border:1.5px solid #cfc8b8;border-radius:6px;flex:none;place-items:center;width:18px;height:18px;display:grid}.prof-results>button.checked .prof-checkbox{border-color:var(--green);background:var(--green)}.prof-noresult{color:var(--muted);text-align:center;margin:12px 0 0;padding:18px;font-size:13px}.prof-browser{margin-top:14px}.prof-roots{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;display:grid}.prof-roots>button{border:1px solid var(--line);background:var(--paper);cursor:pointer;text-align:left;min-height:44px;color:var(--ink-soft);border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;font-weight:600;line-height:1.25;display:flex}.prof-roots>button>span:first-child{flex:1}.prof-roots>button.active{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.prof-rootcount{color:var(--green);background:#def0e5;border-radius:6px;flex:none;padding:2px 6px;font-size:10px;font-weight:700}.prof-rootcount.on{color:var(--green);background:#def0e5}.prof-roots>button.active .prof-rootcount{color:#dff5ec;background:#ffffff2e}.prof-subtree{background:var(--surface-warm);border:1px solid var(--line-faint);border-radius:14px;margin-top:14px;padding:14px 16px}.prof-subtree-head{align-items:center;gap:9px;display:flex}.prof-subtree-head strong{color:var(--green);font-size:13.5px;font-weight:800}.prof-subtree-head>span[aria-hidden]{color:var(--muted-faint)}.prof-subsection{border-bottom:1px solid var(--line-faint);margin-top:12px;padding-bottom:12px}.prof-subsection:last-child{border-bottom:none;padding-bottom:0}.prof-sublabel{color:var(--muted);font-size:12px;font-weight:700;display:block}.prof-leaves{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.prof-leaves>button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink-soft);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.prof-leaves>button.checked{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.prof-leaves>button.checked.soft{color:var(--green);background:#def0e5;border-color:#9ccdb6}.prof-langs>button{border-radius:10px;min-height:38px;padding:0 14px}.prof-appr-groups{flex-direction:column;gap:12px;margin-top:12px;display:flex}.prof-appr-group{background:var(--surface);border:1px solid var(--line-faint);border-radius:13px;padding:12px 14px}.prof-appr-head{align-items:center;gap:9px;display:flex}.prof-appr-head strong{font-size:12.5px;font-weight:800}.prof-service{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.prof-segment{gap:8px;margin-top:12px;display:flex}.prof-segment>button{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink-soft);cursor:pointer;border-radius:11px;flex:1;font-size:13px;font-weight:600}.prof-segment>button.active{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:700}.prof-accepting{background:var(--surface-warm);border:1px solid var(--line-faint);border-radius:13px;align-items:center;gap:12px;padding:14px 15px;display:flex}.prof-accepting>span{flex:1}.prof-accepting strong{font-size:13.5px;display:block}.prof-accepting .prof-hint{margin-top:3px;display:block}.prof-switch{border:1px solid var(--line);cursor:pointer;background:#e3dcce;border-radius:999px;flex:none;width:52px;height:30px;padding:0;position:relative}.prof-switch.on{background:var(--green);border-color:var(--green)}.prof-switch>span{background:#fff;border-radius:50%;width:24px;height:24px;transition:left .16s;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #16262a40}.prof-switch.on>span{left:24px}.prof-socials{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.prof-social{border:1px solid var(--line);background:var(--paper);border-radius:11px;align-items:center;gap:9px;min-height:42px;padding:0 11px;display:flex}.prof-social.invalid{background:#fdf6f4;border-color:#d9afa6}.prof-socmark{border-radius:7px;flex:none;place-items:center;width:22px;height:22px;font-size:10px;font-weight:800;display:grid}.prof-socmark.ig{color:#b4457a;background:#fbe7ef}.prof-socmark.fb{color:#2c5aa8;background:#e4ecfb}.prof-socmark.tt{color:var(--ink);background:#edeae3}.prof-socmark.yt{color:#b4483f;background:#fbe7e4}.prof-socmark.li{color:#15607f;background:#e2eef5}.prof-socmark.x{color:var(--ink);background:#edeae3}.prof-socmark.web{color:var(--green);background:#def0e5}.prof-soclabel{width:74px;color:var(--muted);flex:none;font-size:11.5px;font-weight:600}.prof-social input{min-width:0;color:var(--ink);background:0 0;border:none;flex:1;min-height:40px;padding:0;font-size:12.5px;font-weight:500}.prof-side{flex:none;width:372px;position:sticky;top:84px}.prof-preview{background:var(--surface);border:1px solid var(--line-quiet);border-radius:18px;overflow:hidden}.prof-preview-head{border-bottom:1px solid var(--line-faint);align-items:center;gap:10px;padding:14px 16px;display:flex}.prof-preview-head strong{flex:1;font-size:14px;font-weight:800}.prof-preview-head .prof-ghost{background:var(--paper);border-radius:9px;min-height:32px;padding:0 11px;font-size:11.5px}.prof-draftnote{color:#7a5a11;background:#fdf4e3;border-bottom:1px solid #ebd6ac;padding:9px 16px;font-size:11.5px;font-weight:600}.prof-phone-wrap{background:var(--backdrop);justify-content:center;padding:18px 16px 22px;display:flex}.prof-phone{background:var(--paper);border:8px solid var(--ink);border-radius:26px;width:300px;overflow:hidden;box-shadow:0 12px 26px #16262a2e}.prof-phone-bar{background:var(--ink);justify-content:center;align-items:center;height:26px;display:flex}.prof-phone-bar>span{background:#3a4e51;border-radius:3px;width:70px;height:5px}.prof-phone-body{padding:16px 15px 20px}.prof-phone-id{align-items:center;gap:12px;display:flex}.prof-phone-id>span:last-child{flex:1;min-width:0}.prof-phone-id strong{letter-spacing:-.2px;font-size:16px;font-weight:800;display:block}.prof-phone-title{color:var(--muted);margin-top:2px;font-size:12px;font-weight:600;display:block}.prof-phone-id .prof-hint{margin-top:2px;display:block}.prof-phone-badges{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.prof-badge{color:var(--muted);background:#f1ede4;border:1px solid #e3dcce;border-radius:8px;padding:5px 9px;font-size:10.5px;font-weight:700}.prof-badge.mint{color:var(--green);background:#def0e5;border-color:#bfe0ce}.prof-badge.ok{color:#2e7d5b;background:#f1f8f3;border-color:#c7ded3}.prof-phone-body .prof-kicker{letter-spacing:.07em;margin-top:14px;display:block}.prof-phone-tags{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.prof-phone-tags>span{color:var(--muted);background:#f1ede4;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:600}.prof-phone-tags>span.mint{color:var(--green);background:#def0e5}.prof-phone-bio{color:var(--ink-soft);text-wrap:pretty;margin:14px 0 0;font-size:12px;font-weight:500;line-height:1.65}.prof-phone-links{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.prof-phone-links>span{width:32px;height:32px;color:var(--muted);background:#f1ede4;border:1px solid #e3dcce;border-radius:10px;place-items:center;font-size:10px;font-weight:800;display:grid}.prof-phone-cta{background:linear-gradient(135deg, var(--green), var(--green-bright));color:#fff;border-radius:12px;place-items:center;min-height:42px;margin-top:16px;font-size:13px;font-weight:800;display:grid}@media (max-width:1180px){.prof-grid{flex-direction:column}.prof-side{width:100%;position:static}.prof-roots{grid-template-columns:repeat(2,1fr)}.prof-about-grid,.prof-identity-fields,.prof-socials,.prof-service,.prof-empty,.prof-skel-grid{grid-template-columns:1fr}}.prof-secondary{background:var(--surface);min-height:42px;color:var(--ink);cursor:pointer;border:1px solid #c9bfab;border-radius:12px;flex:none;padding:0 16px;font-size:13px;font-weight:700}.prof-secondary:disabled{opacity:.55;cursor:default}.prof-field input.prof-name{font-size:14.5px;font-weight:700}.prof-photo .prof-hint{font-size:10.5px;line-height:1.5}.prof-appr-title{align-items:center;gap:9px;display:flex}.prof-iconbox{background:#def0e5;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;display:grid}.tester-bottom-nav{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.tester-bottom-nav button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink-soft);cursor:pointer;border-radius:10px;padding:0 16px;font-size:13px;font-weight:700}.tester-bottom-nav button:disabled{opacity:.45;cursor:default}.prof-page>.prof-strip:first-child{margin-top:-24px}.prof-grid,.prof-empty{margin-top:20px}.prof-photo{text-align:center}
