:root{--ink:#17263c;--muted:#75839a;--line:#e2e9f1;--surface:#fff;--canvas:#f5f8fc;--blue:#376af5;--blue-dark:#2754d4;--teal:#16a88a;--teal-pale:#e7f8f3;--purple:#7867dc;--purple-pale:#f0edff;--amber:#dd9a35;--amber-pale:#fff5e4;--red:#d95d68;--red-pale:#fff0f1;--shadow:0 12px 32px rgba(31,55,85,.07);--radius:16px}
*{box-sizing:border-box}html{min-height:100%;background:var(--canvas)}body{margin:0;color:var(--ink);font:14px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--canvas);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(55,106,245,.25);outline-offset:2px}.hidden{display:none!important}.brand-lockup{display:flex;align-items:center;gap:10px;font-size:22px;letter-spacing:-.8px;font-weight:780;color:#fff}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;background:linear-gradient(145deg,#76ddc1,#36a9a4);color:#173c50;font-size:27px;line-height:1;transform:rotate(-8deg)}.brand-light{color:#70dbc5}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#7791b0}.btn{border:1px solid transparent;border-radius:10px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;white-space:nowrap;transition:background .15s,transform .15s,border-color .15s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--blue);color:white;box-shadow:0 5px 13px rgba(55,106,245,.18)}.btn-primary:hover{background:var(--blue-dark)}.btn-light{background:#fff;color:var(--ink);border-color:var(--line)}.btn-light:hover{background:#f7f9fc}.btn-soft{background:#eaf0ff;color:var(--blue)}.btn-danger{background:var(--red-pale);color:var(--red);border-color:#ffe0e3}.btn-small{padding:7px 10px;font-size:12px;border-radius:8px}.btn-wide{width:100%;min-height:47px}.icon-button{border:0;background:transparent;color:var(--muted);width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-size:18px}.icon-button:hover{background:#f0f4fa;color:var(--ink)}.text-button{background:none;border:0;color:var(--blue);font-weight:750;padding:0}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}label{display:flex;flex-direction:column;gap:6px;font-weight:650;color:#42536b;font-size:12px}input,select,textarea{width:100%;background:#fff;color:var(--ink);border:1px solid #dce4ee;border-radius:9px;padding:10px 11px;min-height:40px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#8ca9ff;box-shadow:0 0 0 3px rgba(55,106,245,.08)}input::placeholder,textarea::placeholder{color:#a3afbf;font-weight:450}textarea{resize:vertical;min-height:86px}small{font-size:11px;line-height:1.4;color:var(--muted);font-weight:450}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,.92fr) minmax(480px,1.08fr);background:#fff}.auth-brand-panel{background:radial-gradient(ellipse at 7% 14%,rgba(48,160,174,.22),transparent 36%),linear-gradient(150deg,#142d4a,#1c3c5c 70%,#234764);padding:42px clamp(28px,5vw,78px);display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;position:relative;overflow:hidden}.auth-brand-panel:after{content:"";position:absolute;right:-210px;bottom:-245px;width:510px;height:510px;border:1px solid rgba(175,224,236,.15);border-radius:50%;box-shadow:0 0 0 60px rgba(175,224,236,.035),0 0 0 120px rgba(175,224,236,.025)}.auth-message{position:relative;z-index:1;max-width:460px;margin:auto 0;padding:74px 0}.auth-message .eyebrow{color:#71d8c4}.auth-message h1{font-size:clamp(40px,4.3vw,60px);line-height:1.08;letter-spacing:-2.6px;color:white;margin:21px 0 20px;font-weight:760}.auth-message p{color:#b9cbde;font-size:16px;line-height:1.75;max-width:420px}.auth-feature-list{display:grid;gap:18px;margin-top:38px;color:#e2edf8;font-weight:600}.auth-feature-list>div{display:flex;align-items:center;gap:13px}.feature-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(109,217,195,.13);color:#7fe1ce;font-size:20px}.auth-footnote{position:relative;z-index:1;color:#91a9c2;font-size:11px}.auth-form-panel{padding:46px clamp(26px,6vw,100px);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.auth-card{width:100%;max-width:400px}.auth-card-heading h2{font-size:28px;letter-spacing:-.8px;margin:8px 0;color:#192c44}.auth-card-heading p{margin:0 0 27px;color:var(--muted)}#auth-form{display:grid;gap:15px}#auth-form label{font-size:12px}#auth-form input{min-height:45px}.auth-divider{display:flex;align-items:center;gap:14px;color:#a1adbd;font-size:11px;margin:21px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.auth-switch{text-align:center;font-size:12px;color:var(--muted)}.auth-privacy{text-align:center;color:#9aa7b8;font-size:10px;line-height:1.7;margin-top:28px}.auth-bottom-note{margin-top:42px;color:#a4b0c0;font-size:10px}.mobile-brand{display:none}
.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;width:252px;background:#fff;border-right:1px solid var(--line);padding:23px 15px 14px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:21px;letter-spacing:-.7px;padding:0 9px 30px}.sidebar-brand .brand-mark{width:31px;height:31px;font-size:23px}.sidebar-brand .brand-light{color:#20a78d}.sidebar-label{font-size:9px;letter-spacing:1.3px;font-weight:800;color:#98a5b7;padding:0 11px;margin-bottom:10px}.diary-select-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:11px;padding:7px 8px;margin:0 3px;position:relative}.diary-avatar{width:30px;height:30px;flex-shrink:0;border-radius:9px;background:#e6f6f3;color:#14987f;display:grid;place-items:center;font-weight:800}.diary-select-wrap select{border:none;padding:2px 15px 2px 0;min-width:0;min-height:32px;font-size:12px;font-weight:750;box-shadow:none!important;appearance:none;background:transparent}.select-chevron{position:absolute;right:8px;pointer-events:none;color:#8292a6}.role-line{color:#93a0b1;font-size:10px;margin:7px 0 22px 49px}.main-nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;border:0;background:transparent;text-align:left;width:100%;border-radius:10px;padding:11px 12px;color:#6e7f95;font-size:12px;font-weight:650;transition:background .15s,color .15s}.nav-item:hover{background:#f4f7fb;color:#283c56}.nav-item.active{background:#edf2ff;color:var(--blue);font-weight:750}.nav-icon{font-size:19px;width:20px;text-align:center;line-height:1;color:currentColor}.sidebar-bottom{margin-top:auto}.sidebar-bottom .sidebar-label{margin-top:21px}.sidebar-profile{display:flex;align-items:center;gap:9px;margin-top:15px;border-top:1px solid var(--line);padding:17px 3px 3px}.user-avatar{height:34px;width:34px;background:#e4ecfb;border-radius:50%;display:grid;place-items:center;color:#3e62ae;font-weight:800;flex-shrink:0}.profile-text{min-width:0;display:flex;flex-direction:column;gap:1px;flex:1}.profile-text strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-text span{color:#93a0b1;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button{font-size:19px}.sidebar-close{display:none;margin-left:auto}.workspace{margin-left:252px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:68px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.84);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;padding:0 29px;position:sticky;top:0;z-index:15}.breadcrumb{display:flex;align-items:center;gap:10px;color:#8a98aa;font-size:12px}.breadcrumb strong{color:#263951;font-size:13px}.breadcrumb-sep{color:#c1cbd7}.topbar-right{display:flex;align-items:center;gap:16px}.today-pill{border:1px solid var(--line);border-radius:99px;padding:7px 11px;display:flex;align-items:center;gap:7px;color:#7a899c;font-size:11px;background:#fff}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--teal)}.top-add{font-size:12px;padding:9px 13px}.mobile-menu{display:none}.page-content{padding:27px 30px 35px;max-width:1450px;width:100%;margin:0 auto;flex:1}.app-footer{display:flex;justify-content:space-between;gap:15px;padding:14px 30px 19px;color:#a0adbd;font-size:10px;border-top:1px solid #e8eef5}.footer-dot{padding:0 4px;color:#c4cfda}.sidebar-backdrop{display:none}
.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:25px}.page-intro h1{font-size:26px;line-height:1.2;letter-spacing:-.9px;margin:5px 0 7px;font-weight:780;color:#1c3049}.page-intro p{margin:0;color:var(--muted);font-size:12px}.section-eyebrow{color:#8998ad;font-weight:800;font-size:9px;letter-spacing:1.4px}.intro-actions{display:flex;gap:8px;align-items:center}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 17px 15px;min-width:0}.metric-top{display:flex;align-items:center;justify-content:space-between;color:#7f8ca0;font-weight:650;font-size:11px;gap:8px}.metric-symbol{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;font-size:17px}.sym-blue{color:var(--blue);background:#edf1ff}.sym-green{color:#169f87;background:#e5f8f3}.sym-amber{color:#d38c20;background:#fff3de}.sym-purple{color:#7867dc;background:#f0edff}.metric-number{font-size:28px;font-weight:790;letter-spacing:-1.2px;margin:13px 0 5px;line-height:1.08;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-unit{font-size:12px;font-weight:650;color:#77869b;letter-spacing:0}.metric-foot{font-size:10px;color:#9ca9b8}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);gap:17px;margin-bottom:20px}.panel{border:1px solid var(--line);border-radius:15px;background:#fff;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 19px 12px}.panel-title{font-size:13px;font-weight:780;color:#243951}.panel-subtitle{font-size:10px;color:#98a5b5;margin-top:3px}.panel-body{padding:0 19px 18px}.panel-link{border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:750}.mini-chart{height:170px;width:100%;display:block;overflow:visible}.chart-grid-line{stroke:#eef2f7;stroke-width:1}.chart-label{fill:#9ba8b7;font-size:10px}.chart-empty{height:150px;display:grid;place-items:center;color:#9aa7b8;font-size:12px;text-align:center}.week-summary{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:4px}.day-column{text-align:center;display:grid;gap:7px}.day-name{font-size:9px;color:#9aa6b5}.day-bar-slot{height:72px;background:#f4f7fb;border-radius:7px;display:flex;align-items:flex-end;overflow:hidden}.day-bar{width:100%;border-radius:6px 6px 0 0;background:linear-gradient(180deg,#76dec3,#39b69d);min-height:3px}.day-num{font-size:10px;color:#73839a}.activity-list{display:grid;gap:0}.activity-item{display:flex;align-items:flex-start;gap:11px;padding:12px 0;border-bottom:1px solid #eff3f7}.activity-item:last-child{border:0}.activity-marker{height:34px;width:34px;display:grid;place-items:center;border-radius:10px;background:#f2f5fb;flex-shrink:0;font-size:16px}.activity-detail{min-width:0;flex:1}.activity-line{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.activity-name{font-weight:750;font-size:11px;color:#354961}.activity-time{font-size:10px;color:#97a5b7;white-space:nowrap}.activity-desc{font-size:10px;color:#8795a7;margin-top:3px;overflow-wrap:anywhere}.tag{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:6px;background:#f1f5fa;color:#63748b;font-size:10px;white-space:nowrap}.tag-blue{background:#edf2ff;color:#4e6eda}.tag-green{background:#e7f8f3;color:#148e78}.tag-amber{background:#fff4e1;color:#ad741c}.tag-red{background:#fff0f1;color:#c74f59}.tag-purple{background:#f0edff;color:#7562ce}.record-groups{display:grid;gap:20px}.record-day-heading{display:flex;align-items:center;gap:12px;font-size:12px;color:#50627a;font-weight:780}.record-day-heading:after{content:"";height:1px;background:#e2e9f1;flex:1}.record-card{margin-top:9px;display:grid;grid-template-columns:71px minmax(0,1fr) auto;gap:16px;padding:17px 18px;background:#fff;border:1px solid var(--line);border-radius:13px;align-items:start}.record-time{text-align:center;border-right:1px solid #edf1f6;padding:1px 13px 1px 0}.record-time strong{display:block;font-size:15px;letter-spacing:-.4px}.record-time span{font-size:9px;color:#8e9bae}.record-main{min-width:0}.record-title{font-size:12px;font-weight:780;color:#273c55;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.record-foods{font-size:11px;color:#73849a;margin-top:7px;line-height:1.65;overflow-wrap:anywhere}.record-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.record-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:7px;min-width:76px}.record-metrics strong{font-size:13px}.record-actions{display:flex;gap:2px;margin-top:2px}.record-actions .icon-button{width:27px;height:27px;font-size:14px}.empty-state{border:1px dashed #d7e1ec;border-radius:15px;padding:40px 20px;text-align:center;color:#8c9aae;background:rgba(255,255,255,.55)}.empty-art{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#eaf7f4;color:#31aa94;font-size:27px;margin:0 auto 12px}.empty-state h3{color:#354960;margin:0 0 5px;font-size:14px}.empty-state p{max-width:360px;margin:0 auto 16px;font-size:11px;line-height:1.6}.filter-bar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;background:#fff;padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:17px}.filter-bar label{flex-direction:row;align-items:center;gap:7px;color:#8796aa;font-size:10px}.filter-bar input,.filter-bar select{width:auto;min-width:135px;min-height:34px;padding:6px 9px;font-size:11px}.filter-spacer{flex:1}.list-count{font-size:11px;color:#8b99ab}.calculator-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:17px;align-items:start}.calculator-table{width:100%;border-collapse:collapse;table-layout:fixed}.calculator-table th{text-align:left;font-size:9px;color:#91a0b2;font-weight:800;padding:9px 8px;border-bottom:1px solid var(--line)}.calculator-table td{padding:8px;border-bottom:1px solid #f0f3f7;vertical-align:middle}.calculator-table td input{padding:8px;min-height:35px;font-size:11px}.calculator-table td .readonly-cell{font-size:11px;font-weight:750}.calculator-table th:first-child,.calculator-table td:first-child{padding-left:0}.calculator-table th:last-child,.calculator-table td:last-child{padding-right:0}.calculator-total-row{display:flex;justify-content:space-between;gap:12px;padding:15px 0 3px;border-top:1px solid var(--line);margin-top:8px}.total-big{font-size:24px;font-weight:800;letter-spacing:-.8px}.total-big small{font-size:11px}.helper-note{font-size:10px;color:#96a3b2;line-height:1.65}.result-hero{border-radius:14px;background:linear-gradient(145deg,#1a3d5a,#24617b);padding:22px;color:#fff;position:relative;overflow:hidden}.result-hero:after{content:"";position:absolute;width:200px;height:200px;right:-110px;top:-110px;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 30px rgba(255,255,255,.035),0 0 0 60px rgba(255,255,255,.025)}.result-hero .eyebrow{color:#85d9cf}.result-hero h3{margin:12px 0 5px;font-size:34px;letter-spacing:-1.2px}.result-hero p{margin:0;color:#c0d6e4;font-size:11px}.result-hero .hero-divider{height:1px;background:rgba(255,255,255,.15);margin:19px 0}.result-stat-row{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin:10px 0;color:#c4d7e4}.result-stat-row strong{color:#fff;font-size:12px}.tip-card{border:1px solid #dfeeea;background:#f0faf7;border-radius:12px;padding:14px;margin-top:13px;font-size:10px;color:#5a7e76;line-height:1.65}.tip-card strong{color:#197d6d;display:block;font-size:11px;margin-bottom:4px}.table-wrap{overflow:auto}.food-list{display:grid;gap:8px}.food-row{display:flex;align-items:center;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.food-symbol{width:37px;height:37px;background:#f1f7f5;color:#279d87;border-radius:10px;display:grid;place-items:center;font-size:19px;flex-shrink:0}.food-info{min-width:0;flex:1}.food-info strong{font-size:12px;display:block;color:#344961;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.food-info span{font-size:10px;color:#93a0b1}.food-carb{text-align:right;min-width:80px}.food-carb strong{display:block;font-size:12px}.food-carb span{color:#93a0b1;font-size:9px}.stats-control{display:flex;gap:5px;padding:4px;background:#eef2f8;border-radius:10px}.stats-control button{border:0;background:transparent;border-radius:7px;padding:7px 10px;color:#8291a4;font-size:10px;font-weight:750}.stats-control button.active{background:#fff;box-shadow:0 1px 4px #dfe6f0;color:#325fdc}.stat-two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:17px}.chart-wrap{padding:5px 15px 16px}.big-chart{width:100%;height:280px;display:block;overflow:visible}.stat-list{display:grid;gap:0}.stat-row{display:flex;justify-content:space-between;gap:13px;padding:13px 0;border-bottom:1px solid #eef2f6;font-size:11px;color:#78889d}.stat-row:last-child{border:0}.stat-row strong{color:#2f445e;font-size:12px}.access-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(270px,.9fr);gap:17px;align-items:start}.member-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid #eff3f7}.member-row:last-child{border:0}.member-avatar{width:35px;height:35px;background:#edf2fc;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#5372b6;flex-shrink:0}.member-info{flex:1;min-width:0}.member-info strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-info span{display:block;color:#94a1b2;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-actions{display:flex;align-items:center;gap:7px}.member-actions select{width:auto;padding:5px 7px;min-height:30px;font-size:10px}.audit-list{display:grid}.audit-row{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid #eff3f7}.audit-bullet{width:28px;height:28px;border-radius:8px;background:#eff4fb;color:#607cbb;display:grid;place-items:center;flex-shrink:0}.audit-row strong{font-size:11px}.audit-row p{margin:2px 0;color:#8493a7;font-size:10px}.audit-row time{color:#a2aebc;font-size:9px}.settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);gap:17px;align-items:start}.settings-form{display:grid;gap:16px}.settings-form .field-row{align-items:start}.setting-block{padding:0 0 18px;border-bottom:1px solid #eef2f6}.setting-block:last-child{border:0;padding-bottom:0}.setting-block h3{font-size:12px;margin:0 0 5px}.setting-block p{font-size:10px;color:#8594a8;margin:0 0 13px;line-height:1.6}.export-action{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #eef2f6}.export-action:last-child{border:0}.export-icon{height:35px;width:35px;display:grid;place-items:center;border-radius:10px;background:#edf2ff;color:var(--blue);font-size:17px}.export-desc{flex:1;min-width:0}.export-desc strong{font-size:11px;display:block}.export-desc span{color:#93a0b1;font-size:10px;display:block}
.modal-overlay{position:fixed;inset:0;background:rgba(16,31,50,.53);z-index:60;display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(4px)}.modal{width:min(800px,100%);max-height:min(92vh,930px);display:flex;flex-direction:column;border-radius:17px;background:#fff;box-shadow:0 20px 80px rgba(9,22,39,.25);overflow:hidden}.modal.modal-narrow{width:min(500px,100%)}.modal-head{padding:20px 23px 15px;border-bottom:1px solid #edf1f6;display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.modal-head h2{font-size:19px;letter-spacing:-.5px;margin:4px 0}.modal-head p{font-size:11px;color:#8998aa;margin:0}.modal-content{padding:18px 23px;overflow:auto;min-height:0;flex:1}.modal>form{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}.modal-foot{padding:14px 23px;border-top:1px solid #edf1f6;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fbfcfe}.modal-foot .left-hint{font-size:10px;color:#8b9aab}.form-section-title{font-size:11px;font-weight:800;letter-spacing:.2px;color:#344963;margin:18px 0 11px;display:flex;justify-content:space-between;align-items:center}.form-section-title:first-child{margin-top:0}.entry-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.food-edit-row{display:grid;grid-template-columns:minmax(140px,1.5fr) .7fr .75fr .65fr 30px;gap:7px;align-items:center;margin-bottom:7px}.food-edit-row input{min-width:0;padding:8px 9px;min-height:36px;font-size:11px}.food-edit-row .food-row-xe{font-size:10px;color:#71829a;text-align:right;white-space:nowrap}.food-edit-head{display:grid;grid-template-columns:minmax(140px,1.5fr) .7fr .75fr .65fr 30px;gap:7px;margin-bottom:6px;color:#98a4b3;font-size:9px}.food-edit-head span:nth-child(2),.food-edit-head span:nth-child(3),.food-edit-head span:nth-child(4){text-align:center}.mini-remove{width:28px;height:28px;border:0;border-radius:7px;background:#fff0f1;color:#c65a63}.inline-calc{display:flex;justify-content:flex-end;gap:18px;padding:10px 1px;color:#7a8ba0;font-size:10px}.inline-calc strong{font-size:12px;color:#1d7e70}.modal-notice{font-size:10px;line-height:1.6;color:#8d9aab;background:#f7f9fc;border-radius:9px;padding:10px 12px;margin-top:12px}.toast-region{position:fixed;right:18px;top:18px;z-index:100;display:grid;gap:8px;width:min(350px,calc(100vw - 36px));pointer-events:none}.toast{background:#203850;color:#fff;padding:12px 14px;border-radius:10px;box-shadow:0 7px 25px rgba(22,40,60,.22);font-size:12px;animation:toastIn .2s ease}.toast.error{background:#9d3948}.toast.success{background:#176d5e}@keyframes toastIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1180px){.sidebar{width:225px}.workspace{margin-left:225px}.page-content{padding:23px 20px 29px}.topbar{padding:0 20px}.metrics-grid{gap:10px}.metric-card{padding:14px}.metric-number{font-size:25px}.dashboard-grid,.calculator-grid,.stat-two-col,.access-layout,.settings-grid{grid-template-columns:minmax(0,1fr)}.result-hero{max-width:none}.auth-shell{grid-template-columns:minmax(300px,.8fr) minmax(430px,1.2fr)}.auth-form-panel{padding:35px}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:transform .22s;box-shadow:none;width:270px}.sidebar.open{transform:translateX(0);box-shadow:20px 0 60px rgba(25,45,69,.14)}.sidebar-close{display:grid}.sidebar-backdrop.open{display:block;position:fixed;inset:0;background:rgba(18,33,52,.38);z-index:25}.workspace{margin-left:0}.mobile-menu{display:grid}.topbar{height:60px;padding:0 15px;gap:10px}.top-add{padding:8px 10px}.top-add span{font-size:17px}.today-pill{display:none}.page-content{padding:21px 16px 26px}.app-footer{padding:13px 16px;flex-wrap:wrap}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-number{font-size:27px}.record-card{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:14px}.record-time{padding-right:10px}.record-metrics{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;min-width:0;margin-top:-3px}.record-actions{margin-left:auto}.page-intro h1{font-size:23px}.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-form-panel{min-height:100vh;padding:25px 22px}.mobile-brand{display:flex;color:var(--ink);align-self:flex-start;margin-bottom:40px}.mobile-brand .brand-light{color:#19a58b}.auth-card{max-width:430px}.auth-bottom-note{margin-top:32px}.auth-privacy{margin-top:21px}}
@media(max-width:520px){.topbar{padding:0 11px}.breadcrumb{gap:6px;font-size:10px;min-width:0}.breadcrumb strong{font-size:11px}.top-add{font-size:0;padding:7px 9px;gap:3px;min-width:35px}.top-add span{font-size:19px}.page-content{padding:18px 11px 22px}.page-intro{align-items:flex-start;flex-direction:column;margin-bottom:17px}.page-intro h1{font-size:22px}.intro-actions{width:100%;justify-content:flex-start}.metrics-grid{gap:8px}.metric-card{padding:12px}.metric-top{font-size:10px}.metric-symbol{width:25px;height:25px;font-size:15px}.metric-number{font-size:24px;margin:11px 0 4px}.metric-foot{font-size:9px}.panel-head{padding:15px 13px 11px}.panel-body{padding:0 13px 14px}.dashboard-grid{gap:12px}.record-card{padding:12px 10px;gap:9px;grid-template-columns:44px minmax(0,1fr)}.record-time strong{font-size:13px}.record-time{padding-right:7px}.record-title{font-size:11px}.record-foods{font-size:10px}.record-meta{gap:4px}.record-metrics{gap:5px}.tag{font-size:9px;padding:4px 6px}.filter-bar{gap:7px;padding:9px}.filter-bar label{width:calc(50% - 4px);display:grid;gap:3px}.filter-bar input,.filter-bar select{width:100%;min-width:0}.filter-spacer{display:none}.filter-bar .btn{flex:1}.food-row{padding:10px;gap:8px}.food-symbol{width:32px;height:32px}.food-carb{min-width:61px}.access-layout,.settings-grid{gap:12px}.member-actions{flex-direction:column;align-items:flex-end}.member-actions select{max-width:95px}.app-footer{font-size:9px}.app-footer span:last-child{line-height:1.4}.modal-overlay{padding:0;align-items:flex-end}.modal,.modal.modal-narrow{width:100%;max-height:95dvh;border-radius:17px 17px 0 0}.modal-head{padding:17px 16px 12px}.modal-content{padding:16px}.modal-foot{padding:12px 16px}.entry-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.food-edit-head{display:none}.food-edit-row{grid-template-columns:minmax(0,1fr) .8fr .8fr 28px;gap:5px}.food-edit-row .food-row-xe{grid-column:1 / -2;text-align:left;padding-left:2px}.food-edit-row input{padding:7px;min-height:34px;font-size:10px}.food-edit-row button{grid-column:4;grid-row:1}.field-row{grid-template-columns:1fr}.modal-notice{font-size:9px}.calculator-table th,.calculator-table td{padding:7px 5px}.calculator-table td input{padding:7px 5px;font-size:10px}}

/* Collaboration, notification center and support console */
.registration-mode-wrap{display:grid;gap:8px;margin:3px 0 14px}.registration-mode-title{font-size:11px;font-weight:800;color:#344963;margin-bottom:1px}.registration-mode-option{display:flex!important;align-items:flex-start;gap:10px;padding:12px;border:1px solid #e1e8f1;border-radius:11px;background:#fff;cursor:pointer}.registration-mode-option:has(input:checked){border-color:#6583dc;background:#f5f7ff;box-shadow:0 0 0 2px rgba(75,104,210,.07)}.registration-mode-option input{width:auto;min-height:auto;margin:2px 0 0;accent-color:#3c62d9;flex-shrink:0}.registration-mode-option span{display:grid;gap:3px}.registration-mode-option strong{font-size:12px;color:#344961}.registration-mode-option small{font-size:10px;line-height:1.45;color:#8795a8}.invite-preview{border:1px solid #dce8e4;background:#f4fbf8;border-radius:10px;padding:11px 12px;margin-top:8px;font-size:11px;line-height:1.55;color:#4e6d66}.invite-preview strong{display:block;color:#236e5c;margin-bottom:2px}.notification-button{position:relative;flex-shrink:0}.notification-button>span{font-size:19px;line-height:1}.notification-count{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;border-radius:20px;background:#d44b5a;color:#fff;font-size:9px;line-height:17px;text-align:center;padding:0 4px;border:2px solid #fff}.notification-panel{position:fixed;top:68px;right:20px;width:min(390px,calc(100vw - 24px));max-height:min(70vh,540px);overflow:auto;background:#fff;border:1px solid #e5eaf1;border-radius:15px;box-shadow:0 18px 55px rgba(24,42,65,.2);z-index:90;padding:14px}.notification-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:1px 1px 10px;border-bottom:1px solid #edf1f6}.notification-panel-head strong{font-size:13px}.notification-panel-head button{border:0;background:transparent;color:#4465c7;font-size:10px;font-weight:750;cursor:pointer}.notification-item{display:flex;gap:10px;padding:12px 3px;border-bottom:1px solid #f0f3f7}.notification-item:last-child{border-bottom:0}.notification-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#4770dc;margin-top:5px}.notification-item.read .notification-dot{background:#dce2eb}.notification-item strong{display:block;font-size:11px;color:#2f445e;line-height:1.5}.notification-item p{margin:3px 0 0;color:#8492a6;font-size:10px;line-height:1.45}.notification-item time{display:block;margin-top:4px;color:#a1adbb;font-size:9px}.notification-empty{padding:24px 10px;text-align:center;font-size:11px;line-height:1.6;color:#8a99ad}.notification-actions{display:flex;justify-content:flex-end;padding-top:9px}.notification-actions button{border:1px solid #e3e8ef;border-radius:8px;background:#fff;padding:7px 9px;color:#61738b;font-size:10px;cursor:pointer}
.support-page{display:grid;gap:16px}.support-page .page-intro{margin-bottom:0}.support-subtitle{margin:5px 0 0;color:#8795a8;font-size:11px;line-height:1.5}.support-tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid #e6ebf2;padding-bottom:9px}.support-tab{border:1px solid transparent;background:transparent;color:#76869b;padding:8px 12px;border-radius:9px;font-size:11px;font-weight:750;cursor:pointer}.support-tab.active{background:#eef2ff;border-color:#dce4ff;color:#355ac6}.support-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px}.support-stat{padding:16px;background:#fff;border:1px solid #e8edf3;border-radius:13px;min-width:0}.support-stat span{display:block;color:#8795a8;font-size:10px}.support-stat strong{display:block;font-size:26px;letter-spacing:-.7px;color:#2e435c;margin:8px 0 3px}.support-stat small{font-size:9px;color:#97a4b3}.support-toolbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid #edf1f6}.support-toolbar input,.support-toolbar select{min-width:130px;max-width:330px}.support-toolbar input{flex:1}.support-toolbar .helper-note{margin:0}.support-table-wrap{overflow:auto;width:100%}.support-table{border-collapse:collapse;width:100%;min-width:730px;font-size:11px}.support-table th{text-align:left;background:#fafbfd;color:#8392a6;font-size:9px;text-transform:uppercase;letter-spacing:.04em;padding:11px 13px;border-bottom:1px solid #edf1f6;white-space:nowrap}.support-table td{padding:12px 13px;border-bottom:1px solid #f0f3f7;vertical-align:middle;color:#5b6d83}.support-table tr:last-child td{border-bottom:0}.support-table td strong{display:block;color:#314760;font-size:11px}.support-table td small{display:block;color:#97a3b2;font-size:9px;margin-top:3px;line-height:1.5}.support-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.support-actions .btn{white-space:nowrap}.support-status{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:800;white-space:nowrap}.support-status.active{background:#e9f8f1;color:#278665}.support-status.blocked,.support-status.suspended{background:#fff0f0;color:#bd4e59}.support-status.archived,.support-status.deleted{background:#eff2f6;color:#758396}.support-status.support{background:#edf2ff;color:#4767cd}.support-inline-control{display:flex;gap:5px;align-items:center}.support-inline-control select{min-width:112px;width:auto;padding:6px 7px;min-height:31px;font-size:10px}.support-detail{display:grid;gap:14px}.support-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.support-detail-item{background:#f7f9fc;border-radius:10px;padding:11px;min-width:0}.support-detail-item span{display:block;color:#8b98aa;font-size:9px;margin-bottom:5px}.support-detail-item strong{display:block;font-size:12px;color:#30465f;overflow-wrap:anywhere}.support-section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px 9px;font-size:12px;font-weight:800;color:#344961}.support-db-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.support-db-actions{display:flex;gap:8px;flex-wrap:wrap}.support-note{font-size:10px;line-height:1.65;color:#8795a8}.support-empty{padding:24px;text-align:center;color:#8b98aa;font-size:11px}.support-log-row{padding:11px 0;border-bottom:1px solid #eef2f6;display:flex;gap:10px}.support-log-row:last-child{border-bottom:0}.support-log-row strong{display:block;font-size:11px;color:#3c5068}.support-log-row small{display:block;margin-top:3px;color:#92a0b1;font-size:9px;line-height:1.5}.support-danger{color:#bd4e59!important}.status-banner{margin:0 0 14px;padding:10px 12px;border-radius:9px;background:#fff4e5;color:#9c6427;font-size:10px;line-height:1.55}.diary-suspended-banner{padding:10px 13px;margin-bottom:13px;border-radius:9px;background:#fff5e7;color:#9d692d;font-size:11px;line-height:1.5}
@media(max-width:850px){.support-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.support-db-grid{grid-template-columns:1fr}.support-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-panel{top:61px;right:8px}}
@media(max-width:520px){.registration-mode-option{padding:10px}.support-stats{gap:8px}.support-stat{padding:12px}.support-stat strong{font-size:22px}.support-toolbar{padding:10px}.support-toolbar input,.support-toolbar select{max-width:none;width:100%}.support-detail-grid{grid-template-columns:1fr 1fr}.support-tab{padding:7px 9px;font-size:10px}.notification-panel{max-height:75dvh}.support-section-title{padding:12px 13px 8px}}

/* v1.2: recipe final-weight input, collaboration settings, and basal insulin entries */
.reminder-toggle{display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #e5eaf2;border-radius:10px;background:#fbfcfe;margin:9px 0 4px;cursor:pointer}
.reminder-toggle input[type="checkbox"]{width:17px;min-height:17px;height:17px;margin:2px 0 0;flex:0 0 17px;accent-color:#376af5}
.reminder-toggle span{display:flex;flex-direction:column;gap:4px}
.reminder-toggle strong{font-size:12px;color:#344961}
.reminder-toggle small{font-size:10px;line-height:1.45;color:#8795a8;font-weight:450}
.recipe-final-weight-block{border:1px solid #dce6f2;background:#f9fbff;border-radius:12px;padding:14px;margin-top:15px}
.recipe-final-weight-block h3{margin:0 0 7px;font-size:13px;color:#324860}
.recipe-final-weight-block p{margin:0 0 12px;font-size:11px;line-height:1.6;color:#7d8ba0}
.invite-list{display:grid;gap:9px}
.invite-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f6}
.invite-row:last-child{border-bottom:0}
.invite-row>div{min-width:0;display:grid;gap:4px}
.invite-row strong{font-size:11px;color:#334a64}
.invite-row span{font-size:9px;line-height:1.5;color:#8c9aab;overflow-wrap:anywhere}
.invite-row small{font-size:9px;font-weight:750}
.invite-status.active{color:#208567}.invite-status.expired,.invite-status.used{color:#b97836}
.member-actions select{max-width:120px;min-width:95px;padding:7px 8px;font-size:10px;min-height:32px}
.basal-record{border-color:#e6e3f4;background:linear-gradient(100deg,#fff 0%,#fdfcff 100%)}
@media(max-width:520px){.invite-row{align-items:flex-start}.invite-row .btn{flex-shrink:0}.recipe-final-weight-block{padding:12px}.member-actions select{max-width:110px}}


/* v1.3: brand system, drafts, PWA notification controls, and mobile ergonomics */
.brand-mark.brand-icon{display:block;object-fit:cover;transform:none;background:none;padding:0;border-radius:11px;flex:0 0 auto}
.auth-brand-panel .brand-mark.brand-icon{width:38px;height:38px}
.sidebar-brand .brand-mark.brand-icon{width:33px;height:33px}
.draft-nav-count{margin-left:auto;min-width:21px;height:21px;line-height:21px;text-align:center;padding:0 6px;border-radius:20px;background:#eaf0ff;color:#3c63d9;font-size:10px;font-weight:800}
.access-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)}
.invite-code-card{display:grid;gap:10px;margin-top:14px;padding:16px;border:1px solid #cdebe2;background:linear-gradient(145deg,#f1fcf8,#f6f8ff);border-radius:13px}
.invite-code-card strong{font-size:12px;color:#26755e}
.invite-code-display{font-size:clamp(22px,4vw,30px);font-weight:850;letter-spacing:2px;color:#1d3453;text-align:center;background:#fff;border:1px dashed #a8cbd0;border-radius:10px;padding:14px 8px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.invite-code-label{font-size:10px;color:#6d829b;text-transform:uppercase;letter-spacing:1px;font-weight:800}
.draft-list{display:grid;gap:10px}
.draft-card{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;min-width:0}
.draft-mark{width:42px;height:42px;border-radius:12px;background:#eef4ff;display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.draft-copy{display:grid;gap:3px;min-width:0;flex:1}
.draft-copy strong{font-size:13px;color:#263d56;overflow-wrap:anywhere}
.draft-copy span,.draft-copy small{font-size:10px;line-height:1.45;color:#8494a9;overflow-wrap:anywhere}
.draft-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.draft-modal-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.push-card{display:flex;align-items:flex-start;gap:11px;padding:13px;margin:12px 0;border:1px solid #dfe8f5;border-radius:13px;background:#f7faff}
.push-card.push-enabled{background:#f1fbf6;border-color:#cfece0}
.push-card-mark{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#e9f0ff;color:#3565df;font-size:18px;font-weight:800}
.push-enabled .push-card-mark{background:#dcf6e9;color:#21845f}
.push-card-copy{flex:1;min-width:0}
.push-card-copy strong{display:block;font-size:11px;color:#31465f;line-height:1.5}
.push-card-copy p{font-size:10px;line-height:1.55;color:#75879d;margin:5px 0 0}
.push-card .btn{flex-shrink:0;align-self:center}
.push-footnote{font-size:10px!important;line-height:1.5!important;color:#956a2e!important;background:#fff7e8;border-radius:8px;padding:8px 9px;margin-top:8px!important}
.install-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid #deebf1;background:#f4fbfd;border-radius:12px;margin:10px 0}
.install-card strong{font-size:11px;color:#31465f}
.install-card p{font-size:10px;margin:3px 0 0;color:#7d8ea2}

@media(max-width:850px){
  .access-layout{grid-template-columns:1fr}
  .workspace{margin-left:0}
  .sidebar{transform:translateX(-105%);transition:transform .22s ease;width:min(86vw,320px);box-shadow:none}
  .sidebar.open{transform:translateX(0);box-shadow:18px 0 50px rgba(21,42,70,.14)}
  .sidebar-backdrop.open{display:block;position:fixed;inset:0;background:rgba(14,28,48,.32);z-index:25}
  .mobile-menu{display:grid}
  .auth-shell{grid-template-columns:1fr}
  .auth-brand-panel{display:none}
  .auth-form-panel{min-height:100svh;min-height:100dvh;padding:24px clamp(18px,5vw,36px)}
  .mobile-brand{display:flex;color:#1d3451;margin:0 auto 24px}
  .mobile-brand .brand-light{color:#1fa88f}
  .auth-card{max-width:460px}
}
@media(max-width:600px){
  html,body{min-width:320px}
  body{font-size:14px;-webkit-text-size-adjust:100%}
  input,select,textarea{font-size:16px;min-height:44px}
  button,.btn{touch-action:manipulation}
  .topbar{height:58px;padding:0 10px;gap:6px}
  .breadcrumb span:first-child,.breadcrumb .breadcrumb-sep,.today-pill{display:none}
  .breadcrumb strong{font-size:12px}
  .topbar-right{gap:5px;margin-left:auto}
  .notification-button{width:32px;height:36px}
  .top-add{font-size:0;min-width:38px;width:38px;min-height:38px;padding:5px;gap:0}
  .top-add span{font-size:22px;line-height:1}
  .page-content{padding:16px 10px calc(86px + env(safe-area-inset-bottom))}
  .page-intro{gap:12px;margin-bottom:14px}
  .page-intro h1{font-size:22px;letter-spacing:-.6px}
  .page-intro p{font-size:12px;line-height:1.5}
  .intro-actions{display:grid;grid-template-columns:1fr;gap:7px;width:100%}
  .intro-actions .btn{width:100%}
  .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .metric-card{padding:11px 10px;border-radius:12px}
  .metric-number{font-size:23px;letter-spacing:-.7px}
  .dashboard-grid,.stat-two-col,.settings-grid,.calculator-grid{grid-template-columns:minmax(0,1fr)!important;gap:10px}
  .panel{border-radius:12px}
  .panel-head{padding:13px 12px 9px;gap:8px}
  .panel-body{padding:0 12px 13px}
  .filter-bar{gap:7px;padding:8px;flex-wrap:wrap}
  .filter-bar label{width:100%;min-width:0!important}
  .filter-bar .list-count{margin-right:auto}
  .record-card{grid-template-columns:43px minmax(0,1fr);gap:8px;padding:11px 9px}
  .record-metrics{grid-column:2;display:flex;justify-content:space-between;align-items:center}
  .record-actions{display:flex;gap:4px}
  .food-row{display:grid;grid-template-columns:35px minmax(0,1fr);gap:8px;padding:10px}
  .food-carb{grid-column:2;text-align:left;min-width:0}
  .food-row>div:last-child{grid-column:2;flex-wrap:wrap}
  .access-layout,.settings-grid{gap:10px}
  .member-row{align-items:flex-start;gap:8px}
  .member-info{min-width:0;overflow-wrap:anywhere}
  .member-actions{max-width:130px;flex-wrap:wrap;flex-direction:row;align-items:center}
  .member-actions select{min-width:95px;max-width:110px}
  .invite-code-display{font-size:22px;letter-spacing:1.5px}
  .notification-panel{top:58px;right:6px;width:calc(100vw - 12px);max-height:calc(100dvh - 72px);border-radius:13px;padding:11px}
  .push-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px}
  .push-card .btn{grid-column:1 / -1;width:100%}
  .draft-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px}
  .draft-mark{width:38px;height:38px}
  .draft-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .draft-actions .btn{width:100%}
  .draft-modal-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .draft-modal-actions .btn:last-child{grid-column:1 / -1}
  .modal-overlay{padding:0;align-items:flex-end;overscroll-behavior:contain}
  .modal,.modal.modal-narrow{width:100%;max-width:none;max-height:96dvh;border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom)}
  .modal-head{padding:14px 14px 10px}
  .modal-content{padding:13px;overflow:auto}
  .modal-foot{padding:10px 13px;display:grid;gap:8px}
  .modal-foot .left-hint{font-size:10px}
  .entry-form-grid{grid-template-columns:minmax(0,1fr)!important;gap:9px}
  .food-edit-row{grid-template-columns:minmax(0,1fr) minmax(64px,.45fr);gap:5px;padding:7px 0}
  .food-edit-row input[data-entry-food-field="name"]{grid-column:1 / -1}
  .food-edit-row input[data-entry-food-field="grams"]{grid-column:1}
  .food-edit-row input[data-entry-food-field="carbs_per_100"]{grid-column:2}
  .food-edit-row .food-row-xe{grid-column:1;text-align:left}
  .food-edit-row button{grid-column:2;grid-row:3;justify-self:end}
  .table-wrap{overflow-x:auto;max-width:100%}
  .calculator-table{min-width:470px}
  .calculator-table th,.calculator-table td{padding:6px 5px;font-size:10px}
  .support-toolbar{display:grid;grid-template-columns:1fr}
  .support-toolbar input,.support-toolbar select{width:100%;max-width:none}
  .support-table-wrap{max-width:calc(100vw - 22px)}
  .support-table{min-width:700px}
  .support-detail-grid{grid-template-columns:1fr 1fr}
  .app-footer{padding:12px 11px calc(16px + env(safe-area-inset-bottom));display:grid;gap:5px}
}
@media(max-width:360px){
  .topbar{padding:0 7px}.topbar-right{gap:3px}.top-add{width:35px;min-width:35px}
  .page-content{padding-left:7px;padding-right:7px}
  .metrics-grid{gap:6px}.metric-card{padding:9px}.metric-number{font-size:21px}
  .field-row{grid-template-columns:minmax(0,1fr)}
  .support-detail-grid{grid-template-columns:1fr}
  .invite-code-display{font-size:18px;letter-spacing:1px}
}


/* Unified entry type selector */
.entry-kind-control { display: grid; gap: 7px; margin: 0 0 14px; font-weight: 650; }
.entry-kind-control select { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--border, #dce4f0); border-radius: 12px; background: #fff; color: var(--text, #17243b); font: inherit; }
@media (max-width: 560px) { .entry-kind-control select { min-height: 48px; font-size: 16px; } }
