:root{color-scheme:light;font-family:var(--font-body);background:#f8f2ea;color:#46372e;--ink:#46372e;--muted:#8b776b;--orange:#df7f4d;--peach:#fff1e5;--green:#5d877e;--cream:#fffaf4;--line:#eaded1;--shadow:0 16px 42px rgba(101,67,40,.12)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{min-height:100dvh;background:radial-gradient(circle at 15% 0,#ffe3cb 0,transparent 35%),#f8f2ea}button,input,select{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{width:min(100%,430px);height:100dvh;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#fffaf5 0,#f9f3ed 100%);box-shadow:0 0 45px rgba(106,73,42,.12)}.app-header{height:62px;flex:0 0 62px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid rgba(234,222,209,.8);background:rgba(255,250,245,.88);backdrop-filter:blur(12px)}.brand-mark{font-weight:900;letter-spacing:.08em;color:#654a3a}.brand-mark span{color:var(--orange)}.header-status{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:700}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px #ffe6d5}.app-main{min-height:0;flex:1;display:flex;flex-direction:column}.screen-content{min-height:0;flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;padding:0 16px 18px}.screen-content::-webkit-scrollbar{display:none}.screen-anchor{min-height:100%;padding-top:18px}.global-nav{height:76px;flex:0 0 76px;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:9px 12px calc(9px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(255,250,245,.96);box-shadow:0 -8px 25px rgba(97,64,38,.08);z-index:5}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:16px;background:transparent;color:#a18c7f}.nav-item span{font-size:22px;line-height:1}.nav-item small{font-size:10px;font-weight:800}.nav-item.is-active{color:var(--orange);background:#fff0e5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{color:#c2724e;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero-row{display:flex;justify-content:space-between;align-items:center;margin:7px 0 18px}.hero-row h2,.subhead h2{margin:0;font-size:27px;line-height:1.12;letter-spacing:-.04em}.hero-row p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.5;max-width:260px}.hero-cat{font-size:47px;filter:drop-shadow(0 9px 7px rgba(178,103,65,.17))}.meal-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 10px;scrollbar-width:none}.meal-tabs::-webkit-scrollbar{display:none}.meal-tab{min-width:104px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 13px;border:1px solid var(--line);border-radius:15px;background:#fffaf5;color:var(--muted);text-align:left}.meal-tab span{font-size:13px;font-weight:900;color:var(--ink)}.meal-tab small{font-size:10px}.meal-tab.is-active{border-color:#edb08b;background:#fff0e4;box-shadow:inset 0 0 0 1px #edb08b}.mode-switch{display:grid;grid-template-columns:1fr 1fr;margin:8px 0 20px;padding:4px;border-radius:17px;background:#f0e7dd}.mode-button{padding:10px;border-radius:13px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.mode-button.is-active{background:#fffdf9;color:var(--orange);box-shadow:0 3px 10px rgba(112,72,42,.08)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0 11px}.section-heading h3{margin:4px 0 0;font-size:17px}.target-pill{padding:7px 9px;border-radius:999px;background:#eff5ef;color:var(--green);font-size:10px;font-weight:800}.recommend-list{display:grid;gap:8px}.recommend-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto 25px;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:17px;background:rgba(255,253,249,.9);text-align:left;color:var(--ink)}.recommend-row:active,.food-card:active{transform:scale(.98)}.food-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:#fff1e5}.food-avatar img{width:34px;height:34px}.food-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.food-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.food-copy small,.food-card small,.soft-empty,.empty-state small{color:var(--muted);font-size:10px}.food-macro{font-size:9px;color:var(--green);white-space:nowrap}.plus-button{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#fff0df;color:var(--orange);font-size:20px}.primary-button,.small-button,.plate-link{border-radius:13px;font-weight:900}.primary-button{padding:12px 16px;background:var(--orange);color:#fff;box-shadow:0 7px 15px rgba(213,111,67,.2);font-size:12px}.primary-button.wide{width:100%;margin-top:12px}.macro-card{display:flex;flex-direction:column;gap:5px;padding:13px 14px;margin-top:10px;border:1px solid var(--line);border-radius:17px;background:#fffdf9}.macro-card span{color:var(--muted);font-size:10px;font-weight:800}.macro-card strong{font-size:13px;color:var(--green);letter-spacing:.01em}.macro-card small{color:#ad9587;font-size:10px}.subhead{display:flex;align-items:center;gap:10px;margin-bottom:15px}.subhead>div{min-width:0;flex:1}.back-button{width:31px;height:31px;border-radius:11px;background:#fff0e5;color:var(--orange);font-size:25px;line-height:1}.plate-link{padding:8px 11px;background:#eef4ed;color:var(--green);font-size:10px}.category-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:12px}.category-tab{min-height:38px;padding:5px 2px;border-radius:12px;background:#f2eae1;color:var(--muted);font-size:10px;font-weight:900}.category-tab.is-active{background:#fff0e3;color:var(--orange);box-shadow:inset 0 0 0 1px #edb08b}.search-box{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:12px;border:1px solid var(--line);border-radius:14px;background:#fffdf9;color:#b39d90}.search-box input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.food-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-height:170px}.food-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:9px;border:1px solid var(--line);border-radius:17px;background:#fffdf9;text-align:left;color:var(--ink)}.food-card.is-selected{border-color:#e59a70;background:#fff1e6}.food-image{position:relative;display:block;width:100%;height:81px;border-radius:13px;background:#fff5ea}.food-image img{display:block;width:75px;height:75px;margin:auto}.food-plus{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--orange);box-shadow:0 3px 7px rgba(130,76,42,.14);font-size:17px;font-weight:900}.food-card strong{max-width:100%;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-entry{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;margin-bottom:11px;border-radius:15px;background:#eef4ed}.custom-entry div{display:flex;flex-direction:column;gap:4px}.custom-entry small{color:var(--muted);font-size:10px}.small-button{padding:8px 10px;background:#fff4e9;color:var(--orange);font-size:10px}.custom-form{display:grid;gap:8px;padding:12px;margin-bottom:12px;border:1px solid #ecc5a9;border-radius:17px;background:#fffaf4}.custom-form label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:800}.custom-form input,.custom-form select{width:100%;padding:9px;border:1px solid var(--line);border-radius:10px;outline:0;background:#fff;color:var(--ink);font-size:12px}.macro-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.form-error{min-height:15px;margin:0;color:#bd5e45;font-size:10px}.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:12px 0;color:var(--muted);font-size:10px}.selection-tray{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;position:sticky;bottom:0;padding:9px 0 2px;background:linear-gradient(180deg,rgba(249,243,237,0),#f9f3ed 25%);color:var(--muted);font-size:10px;font-weight:800}.mini-foods{display:flex;align-items:center;min-width:0}.mini-foods img{width:29px;height:29px;margin-left:-5px;border:2px solid #fff;border-radius:50%;background:#fff1e5}.mini-foods img:first-child{margin-left:0}.mini-foods small{font-size:9px}.inline-status,.inline-error,.save-error{padding:10px 12px;margin:8px 0;border-radius:12px;font-size:11px}.inline-status{background:#eef4ed;color:var(--green)}.inline-error,.save-error{background:#fff0eb;color:#b85b48}.inline-error button,.save-error button{margin-left:5px;color:var(--orange);font-weight:900;background:transparent;text-decoration:underline}.plate-stage,.board-stage,.pot-stage{position:relative;display:grid;place-items:center;margin:5px auto 10px;min-height:215px;overflow:hidden;border-radius:24px;background:#f5eadf}.scene-base{width:min(100%,320px);height:auto;display:block}.stage-hint{position:absolute;top:52%;color:var(--muted);font-size:11px}.plate-food{position:absolute;display:flex;flex-direction:column;align-items:center;gap:1px;padding:0;background:transparent;color:var(--ink);font-size:9px;font-weight:900}.plate-food img{width:48px;height:48px;filter:drop-shadow(0 4px 4px rgba(92,54,35,.16))}.plate-food-1{left:25%;top:35%}.plate-food-2{right:24%;top:31%}.plate-food-3{left:40%;bottom:19%}.plate-food-4{right:38%;bottom:16%}.scene-caption{display:flex;justify-content:center;gap:5px;color:var(--muted);font-size:10px}.scene-caption strong{color:var(--ink)}.settlement-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.settlement-strip button{display:flex;align-items:center;justify-content:center;gap:7px;padding:9px;border:1px solid var(--line);border-radius:14px;background:#fffdf9;color:var(--ink);font-size:11px;font-weight:900}.settlement-strip img{width:27px;height:27px}.icon-button{width:32px;height:32px;padding:5px;border-radius:11px;background:#ffede7}.icon-button img{width:100%;height:100%}.board-stage{min-height:205px;background:#ead7c1}.board-food{position:absolute;width:79px;height:79px;filter:drop-shadow(0 6px 3px rgba(73,37,22,.22))}.board-label{position:absolute;bottom:14px;padding:6px 9px;border-radius:999px;background:rgba(255,250,244,.84);color:#704a3a;font-size:10px;font-weight:800}.scale-card{display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:18px;background:#e8f0e9}.scale-card>img{width:106px;height:auto}.scale-reading{display:flex;flex-direction:column;gap:2px}.scale-reading span{color:var(--muted);font-size:10px}.scale-reading strong{color:#315c56;font-size:26px;line-height:1}.scale-reading strong small{font-size:11px}.scale-reading em{font-style:normal;color:var(--green);font-size:10px}.gram-control{display:grid;grid-template-columns:42px minmax(0,1fr) 25px 42px;align-items:center;gap:7px;margin:12px 0}.gram-control button{height:42px;border-radius:13px;background:#fff0e5;color:var(--orange);font-size:25px}.gram-control input{width:100%;height:42px;border:1px solid var(--line);border-radius:13px;text-align:center;background:#fffdf9;color:var(--ink);font-size:18px;font-weight:900;outline:0}.gram-control span{color:var(--muted);font-size:11px}.pot-stage{min-height:178px;background:#f2e5d9}.pot-stage .scene-base{width:min(100%,290px)}.pot-foods{position:absolute;inset:0;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:7px;padding:30px}.pot-foods span{display:flex;align-items:center;gap:4px;padding:5px 7px;border-radius:999px;background:rgba(255,250,242,.85);font-size:10px}.pot-foods img{width:28px;height:28px}.pot-foods em{color:var(--muted);font-size:11px}.summary-macros{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-macros .macro-card{margin-top:0}.summary-status{max-width:94px;color:var(--muted);font-size:9px;text-align:right}.summary-section{padding-top:3px}.section-icon{width:37px;height:37px}.cat-art{width:62px;height:55px}.supplement-group h4{margin:12px 0 5px;color:var(--muted);font-size:11px}.check-row{display:flex;align-items:center;gap:9px;padding:11px 8px;border-bottom:1px solid var(--line);cursor:pointer}.check-row input{accent-color:var(--orange)}.check-row span{display:flex;flex-direction:column;gap:3px;flex:1}.check-row strong{font-size:12px}.check-row small{color:var(--muted);font-size:10px}.check-row i{font-style:normal;color:var(--orange);font-weight:900}.photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.photo-action{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px;border-radius:14px;background:#fff1e5;color:var(--orange);font-size:11px;font-weight:900;cursor:pointer}.photo-action img{width:25px;height:25px}.photo-action input{display:none}.album-icon{font-size:24px}.photo-tray{display:flex;gap:7px;min-height:40px;margin-top:9px}.photo-tray>small{color:var(--muted);font-size:10px}.photo-thumb{position:relative;width:62px;height:62px;overflow:hidden;border-radius:12px;background:#eadfd4}.photo-thumb img{width:100%;height:100%;object-fit:cover}.photo-thumb span{position:absolute;right:3px;bottom:3px;padding:2px 4px;border-radius:5px;background:rgba(0,0,0,.5);color:#fff;font-size:8px}.record-list{display:grid;gap:5px;padding:0;margin:0;list-style:none}.record-list li{display:flex;justify-content:space-between;padding:10px;border-radius:12px;background:#fffdf9;color:var(--ink);font-size:10px}.record-list span{color:var(--muted)}.empty-line{color:var(--muted)!important}.checkin-button{margin-bottom:8px}.empty-state{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.empty-state img{width:76px;height:76px}.empty-state h2{margin:4px 0 0;font-size:22px}.empty-state p{max-width:280px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.empty-state small{max-width:250px;text-align:center;line-height:1.5}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #2e6f67;outline-offset:3px}@media(max-width:375px){.screen-content{padding-inline:12px}.app-header{padding-inline:14px}.hero-row h2,.subhead h2{font-size:24px}.category-tab{font-size:9px}.macro-card{padding:10px}.recommend-row{grid-template-columns:37px minmax(0,1fr) auto 23px;gap:7px}.food-avatar{width:37px;height:37px}}@media(min-width:431px){.app-shell{border-inline:1px solid #eee0d2}.screen-content{padding-inline:20px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.screen-content{overflow:hidden;padding-bottom:8px}.screen-anchor{padding-top:10px;overflow:hidden}.summary-compact{display:flex;flex-direction:column;gap:5px;height:100%}.summary-compact .subhead{margin-bottom:2px}.summary-compact .subhead h2{font-size:22px}.wood-table{height:150px;display:grid;place-items:center;overflow:hidden;border-radius:21px;background:repeating-linear-gradient(8deg,#c9986f 0 12px,#b7835d 12px 16px,#d2a078 16px 29px);box-shadow:inset 0 0 0 4px rgba(104,65,43,.18),0 9px 15px rgba(104,65,43,.13)}.summary-compact .pot-stage{width:100%;min-height:0;height:150px;margin:0;background:transparent}.summary-compact .pot-stage .scene-base{width:min(100%,315px)}.summary-compact .pot-foods{inset:26px 35px 13px;display:flex;align-content:center;gap:4px;padding:0}.summary-compact .pot-food-label{display:flex;align-items:center;gap:3px;padding:4px 6px;border-radius:8px;background:rgba(255,248,236,.92);color:#543c30;font-size:10px;white-space:nowrap}.summary-compact .pot-food-label img{width:22px;height:22px}.summary-compact .pot-food-label b{font-weight:900}.summary-compact .pot-foods em{color:#fff9ee;font-size:10px}.summary-compact .summary-macros{gap:5px}.summary-compact .macro-card{margin-top:0;padding:7px 9px;border-radius:12px;gap:3px}.summary-compact .macro-card strong{font-size:11px}.summary-compact .macro-card small{font-size:9px}.compact-section{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:43px;padding:5px 8px;border:1px solid var(--line);border-radius:12px;background:rgba(255,253,249,.78)}.compact-section>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:82px}.compact-section strong{font-size:11px}.veg-list{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.veg-chip{display:flex;align-items:center;gap:3px;padding:3px 5px;border-radius:8px;background:#eff5ef;color:#4d786e;font-size:9px;white-space:nowrap}.veg-chip img{width:19px;height:19px}.compact-empty{color:var(--muted);font-size:9px}.compact-section-title{display:flex!important;flex-direction:row!important;align-items:center;gap:5px!important;min-width:0!important;flex:1}.compact-section-title img{width:29px;height:29px;order:-1}.compact-section-title .eyebrow{display:none}.compact-supplements{display:flex;justify-content:flex-end;gap:4px;min-width:0}.compact-supplement-group{display:flex;align-items:center;gap:3px}.compact-supplement-group>span{display:none}.compact-check{display:grid;grid-template-columns:14px auto;column-gap:2px;align-items:center;padding:3px 4px;border-radius:8px;background:#fff3e6;font-size:9px}.compact-check input{grid-row:span 2;margin:0;accent-color:var(--orange)}.compact-check small{grid-column:2;color:var(--muted);font-size:8px}.photographer-section{min-height:57px;padding:3px 7px}.photographer-section .cat-art{width:62px;height:52px;flex:0 0 auto}.photo-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.photo-copy strong{font-size:11px}.photo-state{color:var(--muted);font-size:8px}.photo-state.error{color:#b85b48}.summary-compact .photo-actions{display:flex;gap:4px}.summary-compact .photo-action{min-width:47px;padding:5px 6px;gap:3px;border-radius:9px;font-size:9px}.summary-compact .photo-action img{width:20px;height:20px}.summary-compact .album-icon{font-size:18px}.compact-footer{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:42px}.record-inline{color:var(--muted);font-size:9px}.compact-footer .checkin-button{width:auto;margin:0;padding:10px 18px}.summary-compact .save-error{margin:0;padding:6px 8px;font-size:9px}.custom-list{display:grid;gap:6px;margin-bottom:8px}.custom-row{display:grid;grid-template-columns:31px minmax(0,1fr) auto auto;align-items:center;gap:5px;padding:6px 7px;border:1px solid var(--line);border-radius:11px;background:#fffdf9}.custom-row img{width:29px;height:29px}.custom-row span{display:flex;flex-direction:column;min-width:0}.custom-row strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-row small{color:var(--muted);font-size:8px}.danger-button{color:#b85b48;background:#fff0eb}
.deviation-prompt{position:absolute;left:12px;right:12px;bottom:86px;z-index:6;padding:13px;border:1px solid #e9b27f;border-radius:16px;background:#fffaf2;box-shadow:0 12px 30px rgba(91,55,32,.2)}.deviation-prompt strong{font-size:13px;color:#a75a3f}.deviation-prompt p{margin:6px 0 10px;color:var(--muted);font-size:10px;line-height:1.5}.deviation-prompt>div{display:flex;justify-content:flex-end;gap:6px}.deviation-prompt .primary-button{padding:8px 12px}
.screen-content{overflow-y:hidden}

/* R7 integration overrides: compact but reachable fixed viewport, never use scroll to hide a CTA. */
html,body{overflow:hidden;height:100%;min-height:100%;background:#f8f2ea}
.app-shell{height:100dvh;overflow:hidden}
.screen-content{overflow:hidden;padding-bottom:8px}
.screen-anchor{padding-top:10px;overflow:visible}
.nav-item img{width:25px;height:25px;display:block}
.hero-cat{width:72px;height:64px;object-fit:contain;filter:drop-shadow(0 9px 7px rgba(178,103,65,.17))}
.home-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 10px}
.shortcut-card{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 3px;border:1px solid var(--line);border-radius:13px;background:#fffdf9;color:var(--ink);text-align:center}
.shortcut-card img{width:28px;height:28px;object-fit:contain}
.shortcut-card span{display:flex;flex-direction:column;gap:2px;min-width:0}
.shortcut-card b{font-size:10px;white-space:nowrap}
.shortcut-card small{color:var(--muted);font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}
.home-view .mode-switch{margin:5px 0 10px}
.home-view .section-heading{margin:8px 0 7px}
.home-view .recommend-list{gap:5px}
.home-view .recommend-row{padding:6px 8px}
.home-view .recommend-row .food-avatar{width:34px;height:34px}
.home-view .recommend-row .food-avatar img{width:29px;height:29px}
.home-view .primary-button.wide{margin-top:7px;padding:10px 12px}
.home-view .macro-card{margin-top:7px;padding:8px 10px}
.home-view .hero-row{margin-bottom:9px}
.host-view{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0}
.host-view .subhead{margin-bottom:2px}
.host-view h2{font-size:24px}
.host-toolbar{display:flex;gap:5px;overflow:hidden;padding:2px 0}
.host-chip{padding:7px 10px;border-radius:999px;background:#f0e7dd;color:var(--muted);font-size:10px;font-weight:900;white-space:nowrap}
.host-chip.is-active{background:#fff0e5;color:var(--orange);box-shadow:inset 0 0 0 1px #edb08b}
.host-card{padding:10px 11px;border:1px solid var(--line);border-radius:15px;background:#fffdf9}
.host-card h3{margin:0 0 6px;font-size:13px}
.host-card p{margin:3px 0;color:var(--muted);font-size:10px;line-height:1.4}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.metric{padding:8px;border-radius:12px;background:#eef4ed;color:var(--green)}
.metric span{display:block;color:var(--muted);font-size:9px}
.metric strong{display:block;margin-top:3px;font-size:17px}
.record-actions{display:flex;gap:6px;flex-wrap:wrap}
.record-actions button{padding:8px 10px;border-radius:10px;background:#fff0e5;color:var(--orange);font-size:10px;font-weight:900}
.detail-list{display:grid;gap:5px;margin:0;padding:0;list-style:none}
.detail-row{display:flex;justify-content:space-between;gap:8px;padding:7px 8px;border-radius:10px;background:#faf2e9;font-size:10px}
.detail-row span:last-child{color:var(--muted);text-align:right}
.chart{display:block;width:100%;height:130px;border-radius:14px;background:#fbf5ee}
.chart polyline{fill:none;stroke:#d97848;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.chart circle{fill:#fff;stroke:#d97848;stroke-width:2}
.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.calendar-cell{min-height:34px;padding:4px 2px;border-radius:8px;background:#fffdf9;color:var(--ink);font-size:9px;text-align:center}
.calendar-cell.is-muted{opacity:.35}
.calendar-cell.has-record{background:#fff0e5;box-shadow:inset 0 0 0 1px #edb08b}
.calendar-cell.is-selected{background:#d97848;color:#fff}
.calendar-cell button{display:block;width:100%;background:transparent;color:inherit;font-size:10px;font-weight:900}
.status-box{padding:13px;border-radius:14px;background:#fff0eb;color:#b85b48;font-size:11px}
.status-box strong{display:block;font-size:13px}
.status-box p{margin:5px 0;color:inherit}
.status-box button{padding:7px 10px;border-radius:9px;background:#fff;color:#b85b48;font-size:10px;font-weight:900}
@media(max-width:375px){.screen-content{padding-inline:12px}.home-shortcuts{gap:4px}.shortcut-card{padding-inline:1px}.shortcut-card b{font-size:9px}.shortcut-card small{font-size:7px}.hero-cat{width:62px}.home-view .recommend-row{grid-template-columns:34px minmax(0,1fr) auto 21px;gap:5px}.host-card{padding:8px}.metric strong{font-size:15px}}
@media(max-width:375px){.food-panel>.primary-button.wide{height:24px;line-height:1;padding:4px 10px;margin-top:0}}
.header-status{min-width:0;max-width:190px;justify-content:flex-end}.header-status [data-role="status-text"]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.flow-cat{width:46px;height:42px;object-fit:contain;flex:0 0 auto}.picker-cat{margin-left:auto}.plate-cat,.board-cat{width:42px;height:38px;margin-left:auto}.scene-cat{position:absolute;z-index:1;width:55px;height:48px;object-fit:contain}.plate-stage-cat{right:10px;top:8px}.board-stage-cat{right:10px;top:8px;width:58px;height:50px}.board-stage .board-food{z-index:2}
.home-primary-panel,.food-panel{padding:12px;border:1px solid var(--line);border-radius:22px;background:rgba(255,253,249,.9);box-shadow:0 8px 20px rgba(101,67,40,.06)}.home-primary-panel{background:linear-gradient(145deg,#fff7ee,#fffdf9)}.food-panel{margin-top:8px}.home-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:5px 0 9px}.home-panel-head h2{margin:0;font-size:25px;line-height:1.08;letter-spacing:-.04em}.home-panel-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.macro-pill-row{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.macro-pill{padding:7px 6px;border-radius:12px;background:#f0f5ef;color:var(--green)}.macro-pill span,.macro-pill small{display:block;color:var(--muted);font-size:8px}.macro-pill strong{display:inline-block;margin:2px 1px 0 0;font-size:17px}.home-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.home-panel-actions button{display:flex;align-items:center;justify-content:center;gap:5px;padding:7px;border-radius:11px;background:#fff0e5;color:var(--orange);font-size:10px;font-weight:900}.home-panel-actions img{width:25px;height:25px}.food-panel .section-heading{margin:1px 0 6px}.home-library-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 8px;margin:6px 0;border-radius:12px;background:#eef4ed}.home-library-head div{display:flex;flex-direction:column;gap:2px}.home-library-head strong{font-size:11px}.home-shortcuts{margin:6px 0}.compact-heading{margin:7px 0 5px!important}.food-panel .recommend-list{gap:5px}.food-panel .recommend-row{padding:6px 8px}.food-panel .primary-button.wide{margin-top:7px;padding:10px}.home-view .target-pill{font-size:8px}
.home-primary-panel{padding:10px}.home-panel-head{margin:3px 0 6px}.macro-pill{padding:5px 6px}.home-panel-actions{margin-top:5px}.food-panel{padding:9px;margin-top:6px}.home-library-head{padding:5px 8px;margin:4px 0}.home-shortcuts{margin:4px 0}.food-panel .recommend-row{padding:4px 8px}.food-panel .primary-button.wide{margin-top:4px;padding:7px 10px;font-size:10px}
/* R9 visual refinements from ui-exec2 */
.board-macro-panel{padding:9px 11px;border:2px solid #523a32;border-radius:16px;background:#fffaf1}.board-macro-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px;color:#523a32}.board-macro-title strong{font-size:12px}.board-macro-title span{color:var(--muted);font-size:9px}.board-macro-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:5px 0;border-top:1px solid #ead6c2}.board-macro-row span{color:var(--muted);font-size:10px}.board-macro-row strong{color:var(--green);font-size:12px}.board-macro-row small{color:#9e8777;font-size:10px}
.summary-pot-heading{display:flex;align-items:baseline;justify-content:space-between;padding:0 3px;color:#523a32}.summary-pot-heading span{font-size:12px;font-weight:900}.summary-pot-heading small{color:var(--muted);font-size:9px}.summary-compact .wood-table{height:230px;border-radius:24px}.summary-compact .pot-stage{height:230px}.summary-compact .pot-stage .scene-base{width:min(100%,365px);height:230px}.summary-compact .pot-foods{inset:34px 28px 20px;gap:6px}.summary-compact .pot-food-label{padding:5px 7px;border-radius:10px;font-size:10px}.summary-compact .pot-food-label img{width:28px;height:28px}.summary-compact .compact-section{min-height:55px}.summary-compact .vegetables-section{min-height:63px}.summary-compact .vegetables-section .compact-section-title{min-width:128px}.veg-bowl{width:49px;height:38px;object-fit:contain}.summary-compact .compact-section-title>span{display:flex;flex-direction:column;gap:2px;min-width:0}.summary-compact .compact-section-title>span small{color:var(--muted);font-size:9px}.summary-compact .veg-list{max-width:55%;flex-wrap:wrap}.summary-compact .veg-chip{font-size:9px}
.summary-compact .supplement-section{display:block;padding:6px 8px;min-height:89px}.summary-compact .supplement-section .compact-section-title{min-height:29px;margin-bottom:4px}.supplement-table{display:grid;gap:3px}.supplement-table-row{display:grid;grid-template-columns:15px 30px minmax(0,1fr) auto;align-items:center;gap:4px;padding:3px 4px;border-radius:8px;background:#fff1df}.supplement-table-row input{margin:0;accent-color:var(--orange)}.supplement-timing{color:#9d725e;font-size:8px}.supplement-copy{display:flex;align-items:center;gap:5px;min-width:0}.supplement-copy b{font-size:9px;white-space:nowrap}.supplement-copy small{color:var(--muted);font-size:8px;white-space:nowrap}.supplement-table-row i{font-style:normal;color:var(--orange);font-size:8px}.summary-compact .photographer-section{min-height:82px;padding:5px 8px}.summary-compact .photographer-section .cat-art{width:82px;height:70px}.summary-compact .photo-copy strong{font-size:12px}.summary-compact .photo-actions{gap:5px}.summary-compact .photo-action{min-width:54px;padding:7px 6px;font-size:9px}.compact-footer{min-height:50px}.lock-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.lock-copy strong{color:#a45b40;font-size:10px}.lock-copy small{color:var(--muted);font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact .compact-footer .checkin-button{padding:11px 17px}
.home-v3 .home-entry{min-height:116px}.home-v3 .home-library-v3{min-height:145px}.home-v3 .library-examples img{width:34px;height:34px}
.plate-v2 .plate-food-1{left:22%;top:29%}.plate-v2 .plate-food-2{right:20%;top:28%}.plate-v2 .plate-food-3{left:22%;bottom:19%}.plate-v2 .plate-food-4{right:18%;bottom:19%}
.summary-compact .wood-table{height:220px}.summary-compact .pot-stage{height:220px}.summary-compact .pot-stage .scene-base{height:220px}.summary-compact .photographer-section{min-height:76px}.summary-compact .photographer-section .cat-art{height:65px}.compact-footer{min-height:46px}

/* R11 Image2 visual pass: authoritative hierarchy, fixed viewport, no hidden CTA. */
.screen-content{overflow:hidden!important;padding:0 14px 6px!important}
.screen-anchor{height:100%;min-height:0;padding-top:9px;overflow:hidden!important}
.home-v3{height:100%;display:flex;flex-direction:column;gap:7px}
.home-v3 .eyebrow{font-size:9px}
.home-v3 .hero-row{flex:0 0 58px;margin:0;align-items:center}
.home-v3 .hero-row h2{font-size:28px}
.home-v3 .hero-row p{margin-top:4px;font-size:11px}
.home-v3 .hero-cat{width:78px;height:70px;object-fit:contain}
.today-strip{display:flex;align-items:center;justify-content:space-between;min-height:43px;padding:7px 10px;border:1px solid #e4cdbc;border-radius:15px;background:#fff5e9}
.today-strip>strong{color:#b96a49;font-size:10px}
.training-check{display:flex;align-items:center;gap:8px;color:var(--ink)}
.training-check input{width:18px;height:18px;accent-color:var(--orange)}
.training-check span{display:flex;flex-direction:column;gap:2px}
.training-check b{font-size:12px}.training-check small{color:var(--muted);font-size:9px}
.home-v3 .home-meal-tabs{flex:0 0 58px;gap:6px;padding:0;overflow:hidden}
.home-v3 .home-meal-tabs .meal-tab{min-width:0;flex:1;padding:8px 9px;border-radius:13px}
.home-v3 .home-meal-tabs .meal-tab span{font-size:12px}.home-v3 .home-meal-tabs .meal-tab small{font-size:8px}
.home-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:0 0 108px}
.home-entry{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:9px;border:1.5px solid #e0c5b2;border-radius:19px;background:#fffaf4;color:var(--ink);text-align:left;box-shadow:0 7px 15px rgba(110,69,39,.07)}
.home-entry.coach-entry{background:linear-gradient(145deg,#fff0df,#fffaf4)}.home-entry.custom-entry-card{background:linear-gradient(145deg,#f1f7ef,#fffaf4)}
.home-entry .entry-art{display:grid;place-items:center;width:55px;height:72px;border-radius:15px;background:rgba(255,255,255,.55);overflow:hidden}
.home-entry .entry-art img{width:58px;height:66px;object-fit:contain}.home-entry.custom-entry-card .entry-art img{width:52px;height:52px}
.home-entry span:not(.entry-art){display:flex;flex-direction:column;gap:4px;min-width:0}.home-entry b{font-size:13px}.home-entry small{color:var(--muted);font-size:9px;line-height:1.3}.home-entry i{font-style:normal;color:var(--orange);font-size:9px;font-weight:900;writing-mode:vertical-rl}
.home-library-v3{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;flex:1;min-height:0!important;padding:9px 10px;border:1px solid #d9e5d9;border-radius:17px;background:#f3f7f0}
.home-library-v3 .library-heading{display:flex;flex-direction:column;gap:2px;min-width:0}.home-library-v3 .library-heading strong{font-size:12px}.home-library-v3>.small-button{align-self:start;padding:6px 9px}
.home-search{grid-column:1 / -1;display:flex;align-items:center;gap:6px;height:30px;padding:5px 9px;border:1px solid #d7e1d8;border-radius:10px;background:#fffdf9;color:#a28e81}.home-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:10px}
.library-examples{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;min-height:0}.library-examples button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border-radius:11px;background:#fffdf9;color:var(--ink);font-size:8px;font-weight:900}.library-examples img{width:32px!important;height:32px!important;object-fit:contain}.library-examples span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.picker-view,.plate-v2,.board-view,.summary-compact{height:100%;min-height:0;overflow:hidden}
.picker-view{display:flex;flex-direction:column;gap:6px}.picker-view .subhead{flex:0 0 34px;margin:0}.picker-view .category-tabs{flex:0 0 35px;margin:0}.picker-view .category-tab{min-height:35px;padding:4px 1px;font-size:9px}.picker-view .search-box{flex:0 0 34px;margin:0;padding:7px 9px}.picker-view .food-grid{flex:0 0 238px;grid-template-rows:repeat(2,1fr);gap:7px;min-height:0}.picker-view .food-card{min-height:0;padding:7px;border-radius:14px;gap:2px}.picker-view .food-image{height:82px}.picker-view .food-image img{width:78px;height:78px}.picker-view .food-card strong{font-size:11px}.picker-view .food-card small{font-size:8px}.picker-view .pager{flex:0 0 25px;margin:0}.picker-view .selection-tray{flex:0 0 44px;position:static;padding:3px 0 0;gap:6px}.picker-view .selection-tray .primary-button{padding:8px 10px;font-size:10px;white-space:nowrap}
.plate-v2{display:flex;flex-direction:column;gap:6px}.plate-v2 .subhead{flex:0 0 34px;margin:0}.plate-v2 .plate-stage{flex:0 0 292px;min-height:0;margin:0;border-radius:25px;background:#f2e5d7}.plate-v2 .plate-stage .scene-base{width:100%;height:100%;object-fit:contain}.plate-v2 .plate-food img{width:70px;height:70px}.plate-v2 .plate-food span{font-size:9px;padding:3px 5px;border-radius:7px;background:rgba(255,250,244,.88);white-space:nowrap}.plate-v2 .plate-food-1{left:20%;top:26%}.plate-v2 .plate-food-2{right:18%;top:24%}.plate-v2 .plate-food-3{left:22%;bottom:16%}.plate-v2 .plate-food-4{right:18%;bottom:15%}.plate-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:0 0 42px}.plate-actions button{display:flex;align-items:center;justify-content:center;gap:6px;border:1.5px solid #e3c6b1;border-radius:13px;background:#fffaf4;color:var(--ink);font-size:11px;font-weight:900}.plate-actions button:first-child{background:#fff0df;color:var(--orange)}.plate-actions img{width:24px;height:24px;object-fit:contain}.plate-v2>.macro-card{flex:0 0 47px;margin:0;padding:7px 10px;gap:2px}.plate-v2>.macro-card strong{font-size:11px}.plate-v2>.macro-card small{font-size:8px}.plate-v2 .settlement-strip{flex:0 0 45px;margin:0;gap:8px}.plate-v2 .settlement-strip button{padding:6px;font-size:10px}.plate-v2 .settlement-strip img{width:29px;height:29px}
.board-view{display:flex;flex-direction:column;gap:5px}.board-view .subhead{flex:0 0 34px;margin:0}.board-view .board-stage{flex:0 0 240px;min-height:0;margin:0;border-radius:22px;background:#e7d1b9}.board-view .board-stage .scene-base{width:100%;height:100%;object-fit:contain}.board-view .board-food{width:142px;height:142px;z-index:2}.board-view .board-label{bottom:11px;font-size:10px}.board-view .scale-card{flex:0 0 88px;padding:8px 10px;border:1.5px solid #c5d5ca;border-radius:17px}.board-view .scale-card>img{width:135px;height:75px;object-fit:contain}.board-view .scale-reading strong{font-size:24px}.board-view .scale-reading em{font-size:9px}.board-view .gram-control{flex:0 0 42px;margin:0}.board-view .gram-control button{height:42px}.board-view .board-macro-panel{flex:0 0 99px;padding:7px 10px}.board-view .board-macro-row{padding:4px 0}.board-view>.primary-button{flex:0 0 38px;margin:0;padding:8px;font-size:10px}
.summary-compact{gap:5px}.summary-compact .subhead{flex:0 0 32px}.summary-compact .summary-pot-heading{flex:0 0 18px}.summary-compact .wood-table{flex:0 0 218px;height:218px;border-radius:24px}.summary-compact .pot-stage{height:218px}.summary-compact .pot-stage .scene-base{width:100%;height:218px;object-fit:contain}.summary-compact .pot-foods{inset:36px 20px 18px;gap:5px;padding:0}.summary-compact .pot-food-label{padding:5px 6px;background:rgba(255,248,236,.94);font-size:9px}.summary-compact .pot-food-label img{width:34px;height:34px}.summary-compact .summary-macros{flex:0 0 45px}.summary-compact .summary-macros .macro-card{padding:6px 8px}.summary-compact .compact-section{padding:4px 7px}.summary-compact .vegetables-section{flex:0 0 56px;min-height:56px}.summary-compact .vegetables-section .compact-section-title{min-width:120px}.summary-compact .veg-bowl{width:53px;height:43px}.summary-compact .veg-list{max-width:58%}.summary-compact .supplement-section{flex:0 0 83px;min-height:83px;padding:5px 7px}.summary-compact .supplement-section .compact-section-title{min-height:26px;margin-bottom:3px}.summary-compact .supplement-table-row{padding:2px 3px}.summary-compact .photographer-section{flex:0 0 69px;min-height:69px;padding:3px 7px}.summary-compact .photographer-section .cat-art{width:76px;height:63px}.summary-compact .photo-actions{gap:4px}.summary-compact .photo-action{min-width:50px;padding:5px 5px}.summary-compact .photo-action img{width:22px;height:22px}.summary-compact .compact-footer{flex:0 0 40px;min-height:40px}.summary-compact .compact-footer .checkin-button{padding:9px 14px;font-size:10px}
.app-shell img{object-position:center}
@media(max-width:375px){.screen-content{padding-inline:10px!important}.home-v3 .hero-row h2{font-size:25px}.home-v3 .hero-cat{width:68px;height:62px}.home-entry-grid{gap:6px}.home-entry{grid-template-columns:48px minmax(0,1fr) auto;padding:7px}.home-entry .entry-art{width:48px;height:68px}.home-entry .entry-art img{width:50px;height:60px}.home-entry b{font-size:11px}.home-entry small{font-size:8px}.home-entry i{font-size:8px}.picker-view .food-grid{flex-basis:230px}.picker-view .food-image{height:77px}.picker-view .food-image img{width:72px;height:72px}.plate-v2 .plate-stage{flex-basis:270px}.plate-v2 .plate-food img{width:62px;height:62px}.board-view .board-stage{flex-basis:222px}.board-view .board-food{width:126px;height:126px}.board-view .scale-card>img{width:118px}.summary-compact .wood-table{flex-basis:205px;height:205px}.summary-compact .pot-stage,.summary-compact .pot-stage .scene-base{height:205px}.summary-compact .photographer-section{flex-basis:65px;min-height:65px}.summary-compact .photographer-section .cat-art{width:69px;height:58px}}
.picker-view .food-card strong,
.picker-view .food-card small{display:block;flex:0 0 auto;min-height:0;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}
.picker-view .food-card strong{min-height:13px}
.picker-view .food-card small{min-height:10px}

/* R14 visual skin: warm illustrated meal stages, transparent food overlays, touch-first labels. */
.home-v3 .home-entry-grid{gap:9px}
.home-v3 .home-entry{position:relative;overflow:hidden;border:2px solid #e2c3aa;border-radius:22px;box-shadow:0 9px 0 rgba(112,74,47,.06),0 13px 22px rgba(112,74,47,.08)}
.home-v3 .home-entry::after{content:"";position:absolute;right:-20px;bottom:-34px;width:86px;height:86px;border:1px solid rgba(217,120,72,.18);border-radius:50%;pointer-events:none}
.home-v3 .home-entry .entry-art{width:62px;height:78px;border-radius:20px;background:rgba(255,255,255,.7);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}

/* C10 asset skin tokens: defaults preserve the frozen B geometry. */
html,body,button,input,select{font-family:var(--font-body)}
h1,h2,h3,.brand-mark,.nav-item small{font-family:var(--font-display)}
.home-v3 .home-entry .entry-art img{width:65px;height:72px;filter:drop-shadow(0 6px 4px rgba(82,58,44,.16))}
.home-v3 .home-entry.custom-entry-card .entry-art img{width:62px;height:62px}
.home-v3 .home-entry b{letter-spacing:.02em}.home-v3 .home-entry i{writing-mode:horizontal-tb;padding:5px 6px;border-radius:8px;background:#fff0e2}
.home-v3 .hero-cat{filter:drop-shadow(0 8px 4px rgba(82,58,44,.16))}
.picker-view .food-card{border-width:1.5px;box-shadow:0 4px 0 rgba(112,74,47,.04),0 8px 14px rgba(112,74,47,.06)}
.picker-view .food-image{background:linear-gradient(145deg,#fff9f0,#ffeddc);box-shadow:inset 0 0 0 1px rgba(221,157,115,.14)}
.picker-view .food-image img{object-fit:contain;filter:drop-shadow(0 5px 4px rgba(82,58,44,.14))}
.picker-view .food-plus{width:28px;height:28px;border:2px solid #fff5e9;font-size:18px;box-shadow:0 4px 8px rgba(112,74,47,.16)}
.picker-view .food-card strong{color:#3f3028;font-weight:950}.picker-view .food-card small{color:#705d50;font-weight:700}
.plate-v2 .plate-stage{border:1.5px solid #e0c3a8;box-shadow:inset 0 0 0 7px rgba(255,250,242,.55),0 10px 20px rgba(112,74,47,.08)}
.plate-v2 .plate-food img{filter:drop-shadow(0 8px 5px rgba(82,58,44,.2))}
.plate-v2 .plate-food span{background:transparent;color:#3f3028;text-shadow:0 1px 0 #fffaf2;font-weight:950}
.plate-actions button{min-height:44px;box-shadow:0 4px 0 rgba(112,74,47,.05)}
.board-view .board-stage{border:2px solid #9f6b45;box-shadow:inset 0 0 0 5px rgba(255,239,216,.22),0 10px 18px rgba(83,50,29,.15)}
.board-view .board-food{filter:drop-shadow(0 9px 5px rgba(55,31,20,.27))}
.board-view .board-label{background:transparent;color:#fffaf2;text-shadow:0 2px 3px #4b2d20;font-size:11px}
.board-view .scale-card{box-shadow:0 7px 0 rgba(77,107,94,.08),0 10px 18px rgba(71,91,77,.08)}
.board-view .scale-reading strong{font-size:27px;letter-spacing:.02em}.board-view .board-macro-row strong{font-size:14px}.board-view .board-macro-row small{font-size:11px}
.summary-compact .wood-table{box-shadow:inset 0 0 0 5px rgba(105,63,38,.17),0 12px 22px rgba(104,65,43,.16)}
.summary-compact .pot-stage .scene-base{filter:drop-shadow(0 10px 7px rgba(74,42,25,.18))}
.summary-compact .pot-stage .scene-base{transform:scale(1.16)}
.summary-compact .pot-food-label{background:rgba(255,248,236,.92);box-shadow:0 3px 7px rgba(82,58,44,.13)}
.summary-compact .pot-food-label img,.summary-compact .veg-chip img{filter:drop-shadow(0 3px 2px rgba(82,58,44,.14))}
.summary-compact .photographer-section .cat-art{filter:drop-shadow(0 7px 4px rgba(82,58,44,.16))}
.summary-compact .photo-action img{filter:drop-shadow(0 3px 2px rgba(82,58,44,.12))}
.global-nav .nav-item{min-height:44px;border:1px solid transparent}.global-nav .nav-item img{width:27px;height:27px;object-fit:contain;filter:drop-shadow(0 2px 1px rgba(82,58,44,.1))}.global-nav .nav-item.is-active{border-color:#efc09b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}
@media(max-width:375px){.home-v3 .home-entry .entry-art{width:54px;height:70px}.home-v3 .home-entry .entry-art img{width:57px;height:66px}.home-v3 .home-entry.custom-entry-card .entry-art img{width:54px;height:54px}.picker-view .food-card small{font-size:9px}.picker-view .food-card strong{font-size:12px}.plate-v2 .plate-food span,.board-view .board-label{font-size:10px}.global-nav .nav-item small{font-size:10px}}

/* R14 visual-only material rules: the state chain remains the source of truth. */
:root{--r14-ink:#332820;--r14-muted:#6d5a4d;--r14-outline:#d2a47d;--r14-shadow:rgba(74,42,25,.2);--r14-surface:#fff8ef}
.app-shell img{background:transparent!important}
.plate-stage,.board-stage,.pot-stage{isolation:isolate}
.plate-stage .scene-base,.board-stage .scene-base,.pot-stage .scene-base{background:transparent!important;mix-blend-mode:normal}
.plate-food img,.board-food,.pot-food-label img,.veg-chip img{background:transparent!important;object-fit:contain;filter:drop-shadow(0 6px 4px var(--r14-shadow))}
.plate-food span,.board-label{color:var(--r14-ink);font-weight:900;text-shadow:0 1px 0 #fffaf2}
.plate-v2 .plate-stage{background:var(--r14-surface);border-color:var(--r14-outline);box-shadow:inset 0 0 0 6px rgba(255,255,255,.52),0 10px 20px rgba(93,55,31,.1)}
.board-view .board-stage{background:#e6caa9;border-color:#97613f;box-shadow:inset 0 0 0 5px rgba(255,239,216,.32),0 10px 18px rgba(83,50,29,.16)}
.board-view .board-food{filter:drop-shadow(0 8px 5px rgba(55,31,20,.28))}
.summary-compact .pot-stage{background:var(--r14-surface);box-shadow:inset 0 0 0 5px rgba(255,255,255,.42),0 10px 18px rgba(74,42,25,.15)}
.summary-compact .pot-foods{inset:34px 28px 18px;padding:0 10px;align-items:center;justify-content:center}
.summary-compact .pot-food-label{background:rgba(255,248,236,.96);border:1px solid rgba(210,164,125,.55);box-shadow:0 4px 8px rgba(82,58,44,.14);color:var(--r14-ink)}
.macro-card small,.food-copy small,.food-card small,.summary-compact small,.board-macro-row small{font-size:11px;line-height:1.25;color:var(--r14-muted);font-weight:700}
.global-nav .nav-item{min-width:58px;min-height:52px;color:var(--r14-muted);font-weight:800}
.global-nav .nav-item img{width:29px;height:29px;opacity:.8;filter:drop-shadow(0 2px 1px rgba(82,58,44,.12))}
.global-nav .nav-item.is-active{color:var(--r14-ink);border-color:#e5af83;box-shadow:inset 0 0 0 1px rgba(255,255,255,.82),0 3px 7px rgba(93,55,31,.08)}
.global-nav .nav-item.is-active img{opacity:1;filter:drop-shadow(0 3px 2px rgba(82,58,44,.2))}
.summary-compact .photo-action img{background:transparent!important;object-fit:contain}
.training-check[role="switch"]{cursor:default}.training-readonly{opacity:.78}.training-check input:focus-visible,.photo-action:focus-within{outline:3px solid #ffd86e;outline-offset:2px}

/* R16 authoritative reference convergence. Visual geometry only: state, route and API remain untouched. */
.app-header{height:0!important;flex-basis:0!important;min-height:0!important;padding:0!important;border:0!important;overflow:hidden!important;opacity:0!important}
.app-header>*{display:none!important}
.screen-anchor{padding-top:10px!important}
.screen-anchor:has(.home-v3){padding-top:42px!important}
.screen-anchor:has(.picker-view){padding-top:60px!important}
.screen-anchor:has(.plate-v2){padding-top:50px!important}
.screen-anchor:has(.board-view){padding-top:18px!important}
.screen-anchor:has(.summary-compact){padding-top:75px!important}

.home-v3{margin-inline:10px;gap:7px;height:100%;font-family:var(--font-body)}
.home-v3 .hero-row{flex:0 0 70px;margin:0;align-items:center}
.home-v3 .hero-row h2{font-size:32px;line-height:1.05;font-weight:950;letter-spacing:.02em;color:#1f1c18}
.home-v3 .hero-row p{font-size:11px;color:#6d5a4d}
.home-v3 .hero-cat{width:76px;height:70px;object-fit:contain}
.home-v3 .home-meal-tabs{flex:0 0 45px;gap:0;padding:0;overflow:hidden}
.home-v3 .home-meal-tabs .meal-tab{min-width:0;flex:1;height:45px;padding:7px 9px;border:2px solid #26221d;border-radius:0;background:#fffaf4;align-items:center;justify-content:center;text-align:center}
.home-v3 .home-meal-tabs .meal-tab:first-child{border-radius:21px 0 0 21px}
.home-v3 .home-meal-tabs .meal-tab:last-child{border-radius:0 21px 21px 0}
.home-v3 .home-meal-tabs .meal-tab span{font-size:16px;font-weight:950;line-height:1.1}
.home-v3 .home-meal-tabs .meal-tab small{display:none}
.home-v3 .home-meal-tabs .meal-tab.is-active{background:#ffd86e;border-color:#26221d;box-shadow:none}
.home-v3 .today-strip{flex:0 0 34px;min-height:34px;height:34px;align-self:center;padding:4px 14px;border:2px solid #26221d;border-radius:22px;background:#fffaf4}
.home-v3 .today-strip>strong{display:none}
.home-v3 .training-check{gap:9px}
.home-v3 .training-check input{width:24px;height:24px}
.home-v3 .training-check b{font-size:15px;color:#26221d}
.home-v3 .training-check small{display:none}
.home-v3 .home-entry-grid{flex:0 0 345px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.home-v3 .home-entry-grid{margin-top:9px}
.home-v3 .home-entry{display:block;min-height:345px;padding:0;border:2px solid #26221d;border-radius:22px;box-shadow:none;background:#fffaf4}
.home-v3 .home-entry.coach-entry{background:#fffaf4}
.home-v3 .home-entry.custom-entry-card{background:#fffaf4}
.home-v3 .home-entry>.entry-art{position:absolute;left:50%;top:62px;transform:translateX(-50%);width:128px;height:154px;background:transparent;box-shadow:none;overflow:visible}
.home-v3 .home-entry>.entry-art img{width:126px;height:150px;filter:drop-shadow(0 6px 3px rgba(82,58,44,.18))}
.home-v3 .home-entry.custom-entry-card>.entry-art{top:182px;width:130px;height:140px}
.home-v3 .home-entry.custom-entry-card>.entry-art img{width:130px;height:130px}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){position:absolute;left:16px;top:16px;display:flex;flex-direction:column;gap:4px;z-index:2}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:18px;font-weight:950;color:#24201b}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:10px;color:#6d5a4d}
.home-v3 .home-entry>i{position:absolute;right:15px;top:17px;writing-mode:horizontal-tb;padding:5px 8px;border-radius:10px;background:#ffd86e;color:#26221d;font-size:10px;font-style:normal;font-weight:950;z-index:2}
.home-v3 .entry-foods{position:absolute;left:12px;right:12px;bottom:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;z-index:2}
.home-v3 .entry-foods>span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;border:1px solid #eadfc8;border-radius:12px;background:#fffdf8}
.home-v3 .entry-foods img{width:42px;height:42px;object-fit:contain}
.home-v3 .entry-foods b{font-size:9px;color:#302820;white-space:nowrap}
.home-v3 .entry-add-mark{position:absolute;left:50%;top:91px;transform:translateX(-50%);display:grid!important;place-items:center;width:58px;height:58px;border:3px dashed #79b2d0;border-radius:50%;color:#201d19;font-size:50px;line-height:1;font-weight:400;z-index:2}
.home-v3 .home-library-v3{flex:0 0 145px;min-height:145px!important;padding:10px;border:2px solid #26221d;border-radius:22px;background:#fffaf4}
.home-v3 .home-library-v3 .library-heading strong{font-size:16px;color:#26221d}
.home-v3 .home-library-v3 .eyebrow{font-size:11px;color:#26221d}
.home-v3 .home-search{height:34px;border:2px solid #26221d;border-radius:17px;background:#fffdf8}
.home-v3 .home-search input{font-size:12px}
.home-v3 .library-examples{gap:7px}
.home-v3 .library-examples button{border:1px solid #eadfc8;border-radius:14px;font-size:10px}
.home-v3 .library-examples img{width:46px!important;height:46px!important}

.picker-view{display:grid!important;grid-template-columns:88px minmax(0,1fr);grid-template-rows:34px 34px minmax(0,1fr) 25px 76px;column-gap:10px;row-gap:8px;margin-inline:2px;height:100%!important;overflow:hidden!important}
.picker-view>.subhead{grid-column:1/-1;grid-row:1;flex:none!important;margin:0!important}
.picker-view>.category-tabs{grid-column:1;grid-row:2/span 3;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0!important;padding:4px 0;border:2px solid #26221d;border-radius:24px;background:#fffaf4;overflow:hidden;min-height:0!important}
.picker-view .category-tab{flex:1;min-height:44px!important;padding:6px 3px;border-radius:0;background:transparent;color:#26221d;font-size:12px;font-weight:950}
.picker-view .category-tab.is-active{background:#b8d795;color:#26221d;box-shadow:none}
.picker-view>.search-box{grid-column:2;grid-row:2;margin:0!important;height:34px;padding:5px 10px;border:2px solid #26221d;border-radius:17px}
.picker-view>.food-grid{grid-column:2;grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,150px);align-content:start;gap:10px;margin:0;min-height:0!important;flex:none!important}
.picker-view .food-card{height:150px;min-height:150px;padding:7px;border:1.5px solid #26221d;border-radius:16px;background:#fffaf4;box-shadow:none;gap:3px}
.picker-view .food-image{height:78px;border-radius:12px;background:#fffaf4}
.picker-view .food-image img{width:78px;height:78px}
.picker-view .food-card strong{font-size:13px;color:#26221d}
.picker-view .food-card small{font-size:10px;color:#6d5a4d}
.picker-view .food-plus{right:5px;bottom:5px;width:44px;height:44px;border:2px solid #26221d;background:#ffd86e;color:#26221d;font-size:25px;box-shadow:none}
.picker-view>.pager{grid-column:2;grid-row:4;margin:0!important;align-self:center}
.picker-view>.selection-tray{grid-column:1/-1;grid-row:5;display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-self:stretch;position:static!important;height:76px;padding:8px 10px!important;border:2px solid #26221d;border-radius:22px;background:#fffaf4;gap:8px;color:#26221d;font-size:12px}
.picker-view>.selection-tray .mini-foods img{width:42px;height:42px;border:1px solid #eadfc8;background:#fffdf8}
.picker-view>.selection-tray .primary-button{min-height:44px;padding:9px 13px;border:2px solid #26221d;border-radius:15px;background:#ffad43;color:#26221d;font-size:12px;box-shadow:none}

.plate-v2{display:grid!important;grid-template-columns:minmax(0,1fr) 112px;grid-template-rows:34px 190px 47px 47px 45px;column-gap:10px;row-gap:7px;height:100%!important;overflow:hidden!important}
.plate-v2>.subhead{grid-column:1/-1;grid-row:1;flex:none!important;margin:0!important}
.plate-v2>.plate-stage{grid-column:1;grid-row:2;width:100%;height:190px;min-height:190px!important;margin:0;border:2px solid #26221d;border-radius:24px;background:#fffaf4;box-shadow:none}
.plate-v2>.plate-stage .scene-base{width:100%;height:100%;object-fit:contain}
.plate-v2 .plate-food img{width:58px;height:58px}
.plate-v2 .plate-food span{font-size:9px;color:#26221d;text-shadow:0 1px 0 #fffaf4}
.plate-v2 .plate-actions{grid-column:2;grid-row:2;display:flex;flex-direction:column;gap:8px;height:190px;flex:none}
.plate-v2 .plate-actions button{min-height:44px;border:2px solid #26221d;border-radius:16px;background:#fffaf4;color:#26221d;font-size:11px;box-shadow:none}
.plate-v2 .plate-actions button:first-child{background:#fff0c5}
.plate-v2 .plate-actions img{width:26px;height:26px}
.plate-v2>.macro-card{grid-column:1/-1;min-height:0;margin:0;padding:7px 10px;border:1.5px solid #26221d;border-radius:16px;background:#fffaf4;gap:2px}
.plate-v2>.settlement-strip{grid-column:1/-1;min-height:45px;margin:0;gap:8px}
.plate-v2>.settlement-strip button{min-height:44px;border:2px solid #26221d;border-radius:16px;background:#fffaf4;color:#26221d}

.board-view{display:flex!important;flex-direction:column;gap:7px;height:100%!important;overflow:hidden!important}
.board-view>.subhead{flex:0 0 34px;margin:0!important}
.board-view>.board-stage{width:96%;flex:0 0 250px;min-height:250px;margin:0 auto;border:2px solid #26221d;border-radius:25px;background:#e5bc82;box-shadow:none}
.board-view .board-food{width:142px;height:142px}
.board-view>.scale-card{width:74%;flex:0 0 96px;margin:0 auto;padding:8px 10px;border:2px solid #26221d;border-radius:18px;background:#f6f4e9;box-shadow:none}
.board-view .scale-card>img{width:112px;height:74px}
.board-view .scale-reading span{font-size:10px;color:#26221d}
.board-view .scale-reading strong{font-size:25px;color:#315c56}
.board-view>.gram-control{width:86%;flex:0 0 44px;margin:0 auto}
.board-view>.gram-control button{min-width:44px;height:44px;border:2px solid #26221d;background:#fff0c5;color:#26221d}
.board-view>.gram-control input{height:44px;border:2px solid #26221d;background:#fffaf4}
.board-view>.board-macro-panel{width:74%;flex:0 0 100px;margin:0 auto;padding:6px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;display:grid;grid-template-columns:repeat(3,1fr);column-gap:4px}
.board-view .board-macro-title{grid-column:1/-1}
.board-view .board-macro-row{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3px;border:0;border-left:1px solid #ead6c2}
.board-view .board-macro-row:first-of-type{border-left:0}
.board-view .board-macro-row span{font-size:10px;color:#26221d}
.board-view .board-macro-row strong{font-size:14px;color:#315c56}
.board-view .board-macro-row small{font-size:10px}
.board-view>.primary-button{flex:0 0 42px;width:86%;margin:0 auto;padding:8px;border:2px solid #26221d;background:#ffad43;color:#26221d;box-shadow:none}

.summary-compact{display:grid!important;grid-template-rows:32px 18px 300px 45px 70px 100px 92px 50px;gap:5px;align-content:start;height:100%!important;overflow:hidden!important;margin-inline:-4px}
.summary-compact>.subhead{grid-row:1;flex:none!important;margin:0!important}
.summary-compact>.summary-pot-heading{grid-row:2;flex:none!important}
.summary-compact>.wood-table{grid-row:3;width:100%;height:300px;flex:none;border:2px solid #26221d;border-radius:24px;background:repeating-linear-gradient(8deg,#c9986f 0 12px,#b7835d 12px 16px,#d2a078 16px 29px);box-shadow:none}
.summary-compact .pot-stage{height:300px;width:100%;background:transparent;box-shadow:none}
.summary-compact .pot-stage .scene-base{width:100%;height:300px;object-fit:contain;transform:scale(1.04);filter:none}
.summary-compact .pot-foods{inset:45px 20px 20px;display:flex;align-content:center;justify-content:center;gap:7px;padding:0;flex-wrap:wrap}
.summary-compact .pot-food-label{padding:0 3px;background:transparent;border:0;box-shadow:none;color:#26221d;font-size:11px;text-shadow:0 1px 0 #fff8ef}
.summary-compact .pot-food-label img{width:40px;height:40px}
.summary-compact>.summary-macros{grid-row:4;height:45px;min-height:45px;gap:6px}
.summary-compact>.summary-macros .macro-card{padding:6px 8px;border:1.5px solid #26221d;border-radius:14px;background:#fffaf4}
.summary-compact>.vegetables-section{grid-row:5;height:70px;min-height:70px;padding:5px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.summary-compact>.vegetables-section .compact-section-title{min-width:140px}
.summary-compact>.vegetables-section .veg-bowl{width:62px;height:52px}
.summary-compact>.vegetables-section .veg-chip{padding:4px 6px;font-size:11px}
.summary-compact>.vegetables-section .veg-chip img{width:26px;height:26px}
.summary-compact>.supplement-section{grid-row:6;height:100px;min-height:100px;padding:6px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.summary-compact>.supplement-section .compact-section-title{min-height:28px;margin-bottom:4px}
.summary-compact .supplement-table-row{min-height:25px;padding:3px 4px;border-radius:7px;background:#fff0d4}
.summary-compact .supplement-copy b{font-size:10px;color:#26221d}
.summary-compact .supplement-copy small,.summary-compact .supplement-timing,.summary-compact .supplement-table-row i{font-size:9px}
.summary-compact>.photographer-section{grid-row:7;height:92px;min-height:92px;padding:5px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.summary-compact>.photographer-section .cat-art{width:92px;height:80px}
.summary-compact>.photographer-section .photo-copy strong{font-size:13px;color:#26221d}
.summary-compact>.photographer-section .photo-action{min-width:52px;min-height:44px;padding:5px;border:1.5px solid #26221d;border-radius:12px;background:#fff0d4;color:#26221d}
.summary-compact>.compact-footer{grid-row:8;height:50px;min-height:50px}
.summary-compact>.compact-footer .checkin-button{min-width:145px;min-height:44px;padding:9px 16px;border:2px solid #26221d;background:#ffad43;color:#26221d;box-shadow:none}

.global-nav{height:76px;flex-basis:76px;grid-template-columns:repeat(4,1fr);gap:2px;padding:4px 10px 7px;background:#fffaf4;border-top:2px solid #26221d;box-shadow:none}
.global-nav .nav-item{min-width:44px;min-height:64px;border:2px solid transparent;border-radius:20px;color:#26221d;gap:3px;background:transparent}
.global-nav .nav-item img{width:30px;height:30px;opacity:1;filter:none}
.global-nav .nav-item small{font-family:var(--font-display);font-size:12px;color:#26221d}
.global-nav .nav-item.is-active{background:#ffd86e;border-color:#26221d;box-shadow:none;color:#26221d}

@media(max-width:375px){
  .home-v3 .home-entry-grid{flex-basis:318px}
  .home-v3 .home-entry{min-height:318px}
  .home-v3 .home-library-v3{flex-basis:136px;min-height:136px}
  .home-v3 .home-entry>.entry-art{top:53px;width:112px;height:130px}
  .home-v3 .home-entry>.entry-art img{width:110px;height:128px}
  .home-v3 .home-entry.custom-entry-card>.entry-art{top:165px}
  .home-v3 .entry-foods{bottom:10px;left:8px;right:8px}
  .home-v3 .entry-foods img{width:34px;height:34px}
  .home-v3 .entry-foods b{font-size:8px}
  .picker-view{grid-template-columns:82px minmax(0,1fr);column-gap:8px}
  .picker-view .food-card{height:142px;min-height:142px}
  .picker-view>.food-grid{grid-template-rows:repeat(2,142px)}
  .plate-v2{grid-template-columns:minmax(0,1fr) 104px}
  .plate-v2>.plate-stage,.plate-v2 .plate-actions{height:180px;min-height:180px}
  .board-view>.board-stage{flex-basis:222px;min-height:222px}
  .summary-compact{grid-template-rows:30px 18px 270px 45px 64px 92px 84px 48px}
  .summary-compact>.wood-table,.summary-compact .pot-stage,.summary-compact .pot-stage .scene-base{height:270px}
  .summary-compact>.vegetables-section{height:64px;min-height:64px}
  .summary-compact>.supplement-section{height:92px;min-height:92px}
  .summary-compact>.photographer-section{height:84px;min-height:84px}
  .summary-compact>.compact-footer{height:48px;min-height:48px}
}

/* R16-C05 final usability pass: keep the reference two-column lower block readable. */
.summary-compact>.summary-macros{display:none!important}
.summary-compact>.vegetables-section{display:grid!important;grid-template-columns:54px minmax(0,1fr);grid-template-rows:48px minmax(0,1fr);align-items:center;column-gap:5px;overflow:hidden}
.summary-compact>.vegetables-section .compact-section-title{grid-column:1/-1;display:flex;align-items:center;gap:5px;min-width:0!important;width:auto!important;height:48px}
.summary-compact>.vegetables-section .compact-section-title>span{min-width:0!important;gap:1px}
.summary-compact>.vegetables-section .compact-section-title .eyebrow{font-size:8px;white-space:nowrap}
.summary-compact>.vegetables-section .compact-section-title strong{font-size:10px;white-space:nowrap}
.summary-compact>.vegetables-section .veg-bowl{width:50px;height:42px;flex:0 0 50px}
.summary-compact>.vegetables-section .veg-list{grid-column:1/-1;max-width:none!important;width:100%;min-width:0;justify-content:flex-start;overflow:hidden}
.summary-compact>.vegetables-section .veg-chip{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.supplement-section{overflow:hidden}
.summary-compact>.supplement-section .compact-section-title{display:flex;align-items:center;gap:5px;min-width:0!important;width:auto!important;overflow:hidden}
.summary-compact>.supplement-section .compact-section-title>span{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .compact-section-title strong,.summary-compact>.supplement-section .compact-section-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.supplement-section .supplement-table{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .supplement-table-row{min-width:0;grid-template-columns:15px 28px minmax(0,1fr) auto}
.summary-compact>.supplement-section .supplement-copy{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .supplement-copy b,.summary-compact>.supplement-section .supplement-copy small{overflow:hidden;text-overflow:ellipsis}
.summary-compact>.compact-footer{left:50%!important;right:10px!important;top:550px!important;width:auto!important;height:96px!important;min-height:96px!important;display:flex!important;flex-direction:column;align-items:stretch;justify-content:center;gap:4px;padding:5px 6px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.summary-compact>.compact-footer .lock-copy{width:100%!important;min-width:0!important;height:auto!important;display:block!important;overflow:hidden}
.summary-compact>.compact-footer .lock-copy strong,.summary-compact>.compact-footer .lock-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.compact-footer .checkin-button{align-self:center;min-width:145px!important;width:145px!important;min-height:44px!important}
@media(max-width:375px){.summary-compact>.compact-footer{top:505px!important;height:88px!important;min-height:88px!important}.summary-compact>.compact-footer .checkin-button{min-width:132px!important;width:132px!important}.summary-compact>.vegetables-section .compact-section-title strong{font-size:9px}.summary-compact>.supplement-section .supplement-table-row{grid-template-columns:14px 24px minmax(0,1fr) auto}}
.app-shell{position:relative}
html,body{overscroll-behavior:none;-webkit-text-size-adjust:100%}button,a,label{-webkit-tap-highlight-color:transparent}button,[role="button"]{touch-action:manipulation}@media(max-width:767px){input,select,textarea{font-size:16px!important}}
.ui-build-label{opacity:.7;font-size:9px!important}
.member-key-form,.member-password-form{width:min(100%,280px);display:grid;gap:8px;margin:2px auto 0;text-align:left}.member-key-form label,.member-password-form label{display:grid;gap:4px;color:var(--muted);font-size:11px;font-weight:800}.member-key-form input,.member-password-form input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:#fffdf9;color:var(--ink);outline:0;font-size:13px}.member-key-form .primary-button,.member-password-form .small-button{width:100%;min-height:44px}

/* Final V1 cascade: appended after historical review layers. */
html,body,button,input,select,textarea{font-family:var(--font-body)}h1,h2,h3,h4,.brand-mark,.nav-item small,.meal-tab span,.home-entry b,.library-heading strong{font-family:var(--font-display);font-weight:500}
.screen-content{overflow:hidden!important;padding:0 14px!important}.screen-anchor,.screen-anchor:has(.home-v3),.screen-anchor:has(.picker-view),.screen-anchor:has(.plate-v1),.screen-anchor:has(.summary-compact){height:calc(100% - 10px)!important;min-height:0;padding:10px 0 0!important;overflow:hidden!important}[data-role=screen]{height:100%;min-height:0;overflow:hidden}
.global-nav{height:76px;flex:0 0 76px;padding:4px 10px 7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border-top:2px solid #26221d;background:#fffaf4}.global-nav .nav-item{min-width:44px;min-height:64px;border:2px solid transparent;border-radius:20px;color:#332820}.global-nav .nav-item img{width:30px;height:30px;object-fit:contain}.global-nav .nav-item small{font-size:12px;color:#332820;line-height:1}.global-nav .nav-item.is-active{background:#ffd86e;border-color:#26221d;box-shadow:none}
.home-v3{height:100%!important;min-height:0!important;margin:0!important;display:grid!important;grid-template-rows:70px 45px 34px minmax(0,1fr) 145px;gap:7px;overflow:hidden!important}.home-v3 .hero-row{height:70px;min-height:70px;margin:0;justify-content:center;position:relative}.home-v3 .hero-row>div{text-align:center}.home-v3 .hero-row h2{margin:0;font-size:40px;line-height:1.05;color:#26221d}.home-v3 .hero-row p{margin:4px 0 0;font-size:11px;color:#6d5a4d}.home-v3 .hero-row .hero-cat{position:absolute;right:2px;top:0;width:76px;height:70px;object-fit:contain}.home-v3 .home-meal-tabs{height:45px;min-height:45px;display:flex;gap:0;padding:0;overflow:hidden}.home-v3 .home-meal-tabs .meal-tab{height:45px;min-width:0;flex:1;align-items:center;justify-content:center;padding:6px 4px;border:2px solid #26221d;border-radius:0;background:#fffaf4;text-align:center}.home-v3 .home-meal-tabs .meal-tab:first-child{border-radius:22px 0 0 22px}.home-v3 .home-meal-tabs .meal-tab:last-child{border-radius:0 22px 22px 0}.home-v3 .home-meal-tabs .meal-tab span{font-size:16px;line-height:1.1;color:#26221d}.home-v3 .home-meal-tabs .meal-tab small{display:none}.home-v3 .home-meal-tabs .meal-tab.is-active{background:#ffd86e;box-shadow:none}.home-v3 .today-strip{height:34px;min-height:34px;align-self:center;margin:0!important;padding:3px 13px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}.home-v3 .training-check{height:44px;min-height:44px;gap:8px;align-items:center}.home-v3 .training-check input{width:22px;height:22px;margin:0}.home-v3 .training-check b{font-size:14px;color:#26221d}.home-v3 .training-check small,.home-v3 .today-strip>strong{display:none}
.home-v3 .home-entry-grid{height:auto;min-height:0;margin:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:none!important}.home-v3 .home-entry{height:100%;min-height:0!important;display:block;position:relative;overflow:hidden;padding:0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;box-shadow:none;color:#26221d}.home-v3 .home-entry>.entry-art{position:absolute;left:50%;top:53px;transform:translateX(-50%);width:130px;height:160px;background:transparent;box-shadow:none;overflow:visible}.home-v3 .home-entry>.entry-art img{width:126px;height:154px;object-fit:contain}.home-v3 .home-entry.custom-entry-card>.entry-art{top:110px;width:136px;height:145px}.home-v3 .home-entry.custom-entry-card>.entry-art img{width:136px;height:136px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){position:absolute;left:15px;top:14px;display:flex;flex-direction:column;gap:3px;z-index:2}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:18px;color:#26221d}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:10px;color:#6d5a4d}.home-v3 .home-entry>i{position:absolute;right:13px;top:13px;padding:6px 8px;border-radius:10px;background:#ffd86e;color:#26221d;font-size:10px;font-style:normal;font-weight:900;z-index:2}.home-v3 .entry-foods{position:absolute;left:10px;right:10px;bottom:11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;z-index:2}.home-v3 .entry-foods>span{display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 1px;border:1px solid #eadfc8;border-radius:11px;background:#fffdf8}.home-v3 .entry-foods img{width:40px;height:40px;object-fit:contain}.home-v3 .entry-foods b{font-size:9px;white-space:nowrap;color:#302820}.home-v3 .entry-add-mark{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);display:grid!important;place-items:center;width:58px;height:58px;border:3px dashed #79b2d0;border-radius:50%;color:#26221d;font-size:45px;line-height:1;z-index:2}
.home-v3 .home-library-v3{height:145px;min-height:145px!important;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:25px 34px minmax(0,1fr);gap:5px 8px;position:relative;overflow:visible;margin:0!important;padding:9px 10px;border:2px solid #26221d;border-radius:22px;background:#fffaf4}.home-v3 .home-library-v3 .library-heading{display:flex;flex-direction:column;gap:1px;min-width:0}.home-v3 .home-library-v3 .library-heading .eyebrow{font-size:10px;color:#26221d}.home-v3 .home-library-v3 .library-heading strong{font-size:15px;color:#26221d;line-height:1.1}.home-v3 .home-library-v3 .library-open-label{align-self:start;padding:5px 8px;font-size:10px;border:1.5px solid #26221d;background:#ffd86e;color:#26221d}.home-v3 .home-library-v3 .home-search{grid-column:1/-1;height:34px;min-height:34px;display:flex;align-items:center;padding:4px 9px;border:2px solid #26221d;border-radius:17px;background:#fffdf8;color:#6d5a4d}.home-v3 .home-library-v3 .library-examples{grid-column:1/-1;height:50px;min-height:50px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;overflow:visible}.home-v3 .home-library-v3 .library-examples>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;height:50px;overflow:hidden;border:1px solid #eadfc8;border-radius:12px;background:#fffdf8;color:#26221d;font-size:9px;font-weight:900}.home-v3 .home-library-v3 .library-examples>span>img{width:34px!important;height:34px!important;object-fit:contain}.home-v3 .home-library-v3 .library-examples>span>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-v3 .home-library-v3 .library-cat{position:absolute;right:4px;top:-30px;width:58px;height:66px;object-fit:contain;z-index:3;pointer-events:none}
.picker-view{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:72px minmax(0,1fr);grid-template-rows:40px 40px minmax(0,1fr) 26px 70px;column-gap:10px;row-gap:7px;margin:0!important;overflow:hidden!important}.picker-view>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}.picker-view>.subhead h2{font-size:27px;color:#26221d}.picker-view>.category-tabs{grid-column:1;grid-row:2/span 3;display:flex;flex-direction:column;gap:0;margin:0!important;padding:3px 0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;overflow:hidden}.picker-view .category-tab{flex:1;min-height:44px;padding:4px 2px;border-radius:0;background:transparent;color:#26221d;font-size:11px}.picker-view .category-tab.is-active{background:#b8d795;box-shadow:none;color:#26221d}.picker-view>.search-box{grid-column:2;grid-row:2;height:40px;margin:0!important;padding:6px 9px;border:2px solid #26221d;border-radius:19px;background:#fffdf8}.picker-view>.food-grid{grid-column:2;grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px;margin:0;min-height:0!important}.picker-view .food-card{height:auto!important;min-height:0!important;display:block;padding:0;border:1.5px solid #26221d;border-radius:16px;background:#fffaf4;overflow:hidden}.picker-view .food-card-main{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px;border:0;border-radius:14px;background:transparent;color:#26221d;text-align:left}.picker-view .food-image{flex:0 0 112px;width:100%;height:112px;display:grid;place-items:center;border-radius:12px;background:#fffaf4}.picker-view .food-image img{width:104px;height:104px;object-fit:contain}.picker-view .food-card strong{font-size:15px;line-height:1.2;color:#26221d;white-space:nowrap;overflow:visible}.picker-view .food-card small{font-size:11px;line-height:1.3;color:#6d5a4d;white-space:nowrap;overflow:visible}.picker-view .food-plus{right:7px;bottom:7px;width:44px;height:44px;border:2px solid #26221d;border-radius:50%;background:#ffd86e;color:#26221d;font-size:25px;z-index:2}.picker-view>.pager{grid-column:2;grid-row:4;height:26px;margin:0!important;align-self:center}.picker-view>.selection-tray{grid-column:1/-1;grid-row:5;height:70px;min-height:70px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:8px;position:static!important;padding:8px 10px!important;border:2px solid #26221d;border-radius:21px;background:#fffaf4;color:#26221d;font-size:11px}.picker-view>.selection-tray .mini-foods img{width:42px;height:42px;border:1px solid #eadfc8;background:#fffdf8}.picker-view>.selection-tray .primary-button{min-width:100px;min-height:44px;padding:9px 12px;border:2px solid #26221d;border-radius:14px;background:#ffad43;color:#26221d;font-size:11px;box-shadow:none;white-space:nowrap}
.plate-v1{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 112px;grid-template-rows:40px 190px 234px 132px 24px 54px;column-gap:9px;row-gap:6px;overflow:hidden!important}.plate-v1>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}.plate-v1>.subhead h2{font-size:27px;color:#26221d}.plate-v1>.plate-board-row{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:9px;min-width:0;height:190px}.plate-v1 .plate-stage{width:100%;height:190px;min-height:190px;margin:0;border:2px solid #26221d;border-radius:24px;background:#fffaf4;overflow:hidden}.plate-v1 .plate-stage .scene-base{width:100%;height:100%;object-fit:contain}.plate-v1 .plate-food{z-index:2;gap:1px;padding:0;background:transparent;color:#26221d;font-size:10px;font-weight:900}.plate-v1 .plate-food img{width:82px;height:82px;object-fit:contain}.plate-v1 .plate-food span{padding:0;background:transparent;color:#26221d;font-size:10px;line-height:1.1;white-space:nowrap}.plate-v1 .plate-food-1{left:17%;top:20%}.plate-v1 .plate-food-2{right:15%;top:19%}.plate-v1 .plate-food-3{left:20%;bottom:13%}.plate-v1 .plate-food-4{right:15%;bottom:12%}.plate-v1>.plate-board-row>.plate-actions{height:190px;display:flex;flex-direction:column;gap:8px}.plate-v1 .plate-actions button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 4px;border:2px solid #26221d;border-radius:15px;background:#fffaf4;color:#26221d;font-size:11px;font-weight:900;box-shadow:none}.plate-v1 .plate-actions button:first-child{background:#fff0c5}.plate-v1 .plate-actions img{width:29px;height:29px;object-fit:contain}.plate-v1>.board-panel{grid-column:1/-1;grid-row:3;display:grid;grid-template-rows:184px 44px;gap:6px;min-height:0}.plate-v1 .board-stage{width:88%;height:184px;min-height:184px;margin:0 auto;border:2px solid #26221d;border-radius:24px;background:#e5bc82;overflow:hidden}.plate-v1 .board-stage .scene-base{width:100%;height:100%;object-fit:contain}.plate-v1 .board-stage .board-food{width:126px;height:126px;object-fit:contain;z-index:2}.plate-v1 .board-stage .board-label{display:none}.plate-v1 .board-food-copy{position:absolute;left:50%;bottom:11px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:1px;color:#26221d;white-space:nowrap}.plate-v1 .board-food-copy strong{font-size:14px}.plate-v1 .board-food-copy small{font-size:10px}.plate-v1>.board-panel .gram-control{width:70%;height:44px;min-height:44px;margin:0 auto;display:grid;grid-template-columns:44px minmax(0,1fr) 26px 44px;gap:7px;align-items:center}.plate-v1 .gram-control button{width:44px;height:44px;min-width:44px;border:2px solid #26221d;border-radius:13px;background:#fff0c5;color:#26221d;font-size:24px}.plate-v1 .gram-control input{height:44px;border:2px solid #26221d;border-radius:13px;background:#fffaf4;color:#26221d;font-size:18px;text-align:center}.plate-v1 .gram-control span{font-size:11px;color:#523a32}
.plate-v1>.scale-card{grid-column:1/-1;grid-row:4;width:76%;height:132px;min-height:132px;display:grid;grid-template-columns:94px minmax(0,1fr);grid-template-rows:34px minmax(0,1fr);gap:3px 7px;margin:0 auto;padding:8px 10px;border:2px solid #26221d;border-radius:20px;background:#edf3e9;overflow:hidden}.plate-v1>.scale-card>img{grid-column:1;grid-row:1/3;width:88px;height:108px;object-fit:contain}.plate-v1 .scale-reading{grid-column:2;grid-row:1;display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}.plate-v1 .scale-reading span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#26221d}.plate-v1 .scale-reading strong{font-size:22px;line-height:1;color:#315c56;white-space:nowrap}.plate-v1 .scale-reading strong small{font-size:10px}.plate-v1 .board-macro-panel{grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;min-width:0;min-height:0;padding:0;border:0;background:transparent;overflow:hidden}.plate-v1 .board-macro-title{grid-column:1/-1;display:flex;justify-content:space-between;line-height:1}.plate-v1 .board-macro-title strong{font-size:10px;color:#26221d}.plate-v1 .board-macro-title span{font-size:9px;color:#6d5a4d}.plate-v1 .board-macro-row{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:2px;border-left:1px solid #c5d5ca}.plate-v1 .board-macro-row:first-of-type{border-left:0}.plate-v1 .board-macro-row span{font-size:10px;color:#26221d;white-space:nowrap}.plate-v1 .board-macro-row strong{font-size:17px;line-height:1.05;white-space:nowrap}.plate-v1 .board-macro-row small{font-size:10px;white-space:nowrap}.plate-v1>.day-macro-inline{grid-column:1/-1;grid-row:5;height:24px;display:flex;align-items:center;justify-content:center;color:#315c56;font-size:11px;white-space:nowrap}.plate-v1>.settlement-strip{grid-column:1/-1;grid-row:6;height:54px;min-height:54px;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:3px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}.plate-v1>.settlement-strip button{min-height:44px;border:0;border-radius:13px;background:transparent;color:#26221d;font-size:11px;font-weight:900}.plate-v1>.settlement-strip button+button{border-left:1px solid #eadfc8}.plate-v1>.settlement-strip img{width:31px;height:31px;vertical-align:middle;margin-right:4px}
.summary-compact{position:static!important;left:auto!important;right:auto!important;top:auto!important;height:calc(100% - 10px)!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:36px 18px minmax(0,1fr) 92px 88px 66px;column-gap:6px;row-gap:6px;margin:0!important;padding:0!important;overflow:hidden!important}.summary-compact>.subhead{position:static!important;grid-column:1/-1;grid-row:1;height:36px;margin:0!important}.summary-compact>.subhead h2{font-size:25px;color:#26221d}.summary-compact>.summary-pot-heading{grid-column:1/-1;grid-row:2;height:18px;margin:0;padding:0 3px}.summary-compact>.wood-table{grid-column:1/-1;grid-row:3;width:100%;height:100%;min-height:0;margin:0;border:2px solid #26221d;border-radius:24px;background:repeating-linear-gradient(8deg,#c9986f 0 12px,#b7835d 12px 16px,#d2a078 16px 29px);overflow:hidden}.summary-compact .pot-stage{width:100%;height:100%;min-height:0;margin:0;background:transparent;overflow:hidden}.summary-compact .pot-stage .scene-base{width:100%;height:100%;object-fit:contain;transform:none;filter:none}.summary-compact .pot-foods{position:absolute;inset:12% 10%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:2px 7px;padding:0;overflow:hidden}.summary-compact .pot-food-label{width:100%;min-height:0;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#26221d;overflow:visible}.summary-compact .pot-food-label img{width:clamp(70px,20vw,96px)!important;height:clamp(70px,20vw,96px)!important;object-fit:contain}.summary-compact .pot-food-label b{font-size:12px;line-height:1.15;white-space:nowrap;color:#26221d}.summary-compact>.vegetables-section{grid-column:1;grid-row:4;width:100%;height:92px;min-height:92px;display:block!important;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.vegetables-section .vegetable-open{display:flex;align-items:center;gap:5px;width:100%;height:44px;min-height:44px;padding:0;border:0;background:transparent;text-align:left;color:#26221d}.summary-compact>.vegetables-section .compact-section-title{display:flex!important;align-items:center;gap:5px;min-width:0;height:42px}.summary-compact>.vegetables-section .compact-section-title .eyebrow{display:block!important;font-size:9px;white-space:nowrap}.summary-compact>.vegetables-section .compact-section-title strong{font-size:12px;white-space:nowrap}.summary-compact>.vegetables-section .veg-bowl{width:47px;height:38px;flex:0 0 47px}.summary-compact>.vegetables-section .veg-list{min-width:0;display:flex;justify-content:flex-start;overflow:hidden}.summary-compact>.vegetables-section .veg-chip{max-width:100%;padding:3px 5px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.vegetables-section .veg-chip img{width:28px;height:28px}.summary-compact>.supplement-section{grid-column:2;grid-row:4;width:100%;height:92px;min-height:92px;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.supplement-section .compact-section-title{height:27px;min-height:27px;display:flex;align-items:center;gap:5px;margin:0 0 3px;overflow:hidden}.summary-compact>.supplement-section .compact-section-title>img{width:28px;height:28px;flex:0 0 28px}.summary-compact>.supplement-section .compact-section-title strong{font-size:12px;white-space:nowrap}.summary-compact>.supplement-section .compact-section-title small{display:block;font-size:9px;white-space:nowrap}.summary-compact .supplement-table{display:grid;gap:2px;min-width:0}.summary-compact .supplement-table-head{display:grid;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px;gap:2px;margin:0;color:#6d5a4d;font-size:8px;line-height:1;white-space:nowrap}.summary-compact .supplement-table-row{position:static!important;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px!important;height:44px;min-height:44px;padding:2px 3px;background:#fff0d4}.summary-compact .supplement-table-row input{width:15px;height:15px;margin:0}.summary-compact .supplement-copy,.summary-compact .supplement-copy b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1}.summary-compact>.photographer-section{grid-column:1/-1;grid-row:5;width:100%;height:88px;min-height:88px;display:flex;align-items:center;gap:7px;position:static!important;padding:5px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:visible}.summary-compact>.photographer-section .cat-art{width:82px;height:78px;flex:0 0 82px;object-fit:contain}.summary-compact>.photographer-section .photo-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:2px}.summary-compact>.photographer-section .photo-actions{position:static;display:flex;gap:5px}.summary-compact>.photographer-section .photo-action{width:92px;min-width:92px;height:52px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px;border:2px solid #26221d;border-radius:12px;background:#fff0d4;color:#26221d;font-size:10px}.summary-compact>.photographer-section .photo-action img{width:27px;height:27px}.summary-compact>.compact-footer{position:static!important;left:auto!important;right:auto!important;top:auto!important;grid-column:1/-1;grid-row:6;width:100%!important;height:66px!important;min-height:66px!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:0!important;padding:4px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.compact-footer .lock-copy{min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.summary-compact>.compact-footer .lock-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .lock-copy small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .checkin-button{width:190px!important;min-width:190px!important;height:58px!important;min-height:58px!important;margin:0;padding:10px 12px;border:2px solid #26221d;border-radius:15px;background:#ffad43;color:#26221d;font-size:13px;box-shadow:none}
@media(max-width:375px){.screen-content{padding-inline:10px!important}.home-v3{grid-template-rows:62px 42px 34px minmax(0,1fr) 126px;gap:5px}.home-v3 .hero-row,.home-v3 .hero-row h2{height:62px;min-height:62px}.home-v3 .hero-row h2{font-size:34px}.home-v3 .hero-row .hero-cat{width:64px;height:60px}.home-v3 .home-meal-tabs,.home-v3 .home-meal-tabs .meal-tab{height:42px;min-height:42px}.home-v3 .home-meal-tabs .meal-tab span{font-size:14px}.home-v3 .home-entry-grid{gap:6px}.home-v3 .home-entry>.entry-art{top:42px;width:105px;height:130px}.home-v3 .home-entry>.entry-art img{width:104px;height:128px}.home-v3 .home-entry.custom-entry-card>.entry-art{top:91px;width:112px;height:120px}.home-v3 .home-entry.custom-entry-card>.entry-art img{width:112px;height:112px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){left:10px;top:10px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:15px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:9px}.home-v3 .entry-foods{left:6px;right:6px;bottom:7px}.home-v3 .entry-foods img{width:31px;height:31px}.home-v3 .entry-foods b{font-size:8px}.home-v3 .home-library-v3{height:126px;min-height:126px;padding:7px 8px;grid-template-rows:22px 30px minmax(0,1fr);gap:4px 6px}.home-v3 .home-library-v3 .library-heading strong{font-size:13px}.home-v3 .home-library-v3 .home-search{height:30px;min-height:30px}.home-v3 .home-library-v3 .library-examples,.home-v3 .home-library-v3 .library-examples>span{height:43px;min-height:43px}.home-v3 .home-library-v3 .library-examples>span>img{width:28px!important;height:28px!important}.home-v3 .home-library-v3 .library-cat{width:50px;height:56px;top:-25px}.picker-view{grid-template-columns:68px minmax(0,1fr);column-gap:7px;grid-template-rows:38px 38px minmax(0,1fr) 24px 64px;row-gap:5px}.picker-view>.subhead{height:38px}.picker-view>.subhead h2{font-size:23px}.picker-view .food-image{flex-basis:88px;height:88px}.picker-view .food-image img{width:82px;height:82px}.picker-view .food-card strong{font-size:13px}.picker-view .food-card small{font-size:10px}.picker-view .food-plus{width:44px;height:44px}.picker-view>.selection-tray{height:64px;min-height:64px;padding:6px 7px!important;grid-template-columns:62px minmax(0,1fr) auto}.picker-view>.selection-tray .primary-button{min-width:88px;padding-inline:7px;font-size:10px}.plate-v1{grid-template-rows:36px 170px 210px 118px 22px 52px;row-gap:4px}.plate-v1>.subhead{height:36px}.plate-v1>.subhead h2{font-size:23px}.plate-v1>.plate-board-row{height:170px;grid-template-columns:minmax(0,1fr) 96px;gap:6px}.plate-v1 .plate-stage{height:170px;min-height:170px}.plate-v1>.plate-board-row>.plate-actions{height:170px}.plate-v1 .plate-food img{width:66px;height:66px}.plate-v1 .board-stage{width:88%;height:160px;min-height:160px}.plate-v1>.board-panel{grid-template-rows:160px 44px;height:210px}.plate-v1 .board-stage .board-food{width:112px;height:112px}.plate-v1>.scale-card{width:82%;height:118px;min-height:118px;grid-template-columns:78px minmax(0,1fr);padding:6px 7px}.plate-v1>.scale-card>img{width:73px;height:98px}.plate-v1 .board-macro-row strong{font-size:15px}.plate-v1>.day-macro-inline{font-size:10px}.plate-v1>.settlement-strip{height:52px;min-height:52px}.summary-compact{height:calc(100% - 10px)!important;grid-template-rows:32px 17px minmax(0,1fr) 84px 78px 62px;row-gap:4px}.summary-compact>.subhead{height:32px}.summary-compact>.subhead h2{font-size:22px}.summary-compact>.summary-pot-heading{height:17px}.summary-compact .pot-food-label img{width:clamp(64px,18vw,82px)!important;height:clamp(64px,18vw,82px)!important}.summary-compact .pot-food-label b{font-size:10px}.summary-compact>.vegetables-section,.summary-compact>.supplement-section{height:84px;min-height:84px}.summary-compact>.supplement-section{padding:4px 5px}.summary-compact>.supplement-section .compact-section-title strong{font-size:10px}.summary-compact>.supplement-section .compact-section-title small{font-size:8px}.summary-compact .supplement-table-head{grid-template-columns:15px minmax(0,1fr) 28px 23px 32px;font-size:7px}.summary-compact .supplement-table-row{grid-template-columns:15px minmax(0,1fr) 28px 23px 32px}.summary-compact .supplement-table-row b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{font-size:8px}.summary-compact>.photographer-section{height:78px;min-height:78px;padding:4px 5px;gap:4px}.summary-compact>.photographer-section .cat-art{width:68px;height:68px;flex-basis:68px}.summary-compact>.photographer-section .photo-actions{gap:3px}.summary-compact>.photographer-section .photo-action{width:78px;min-width:78px;height:48px;min-height:48px;font-size:9px}.summary-compact>.photographer-section .photo-action img{width:23px;height:23px}.summary-compact>.compact-footer{height:62px!important;min-height:62px!important;padding-inline:5px}.summary-compact>.compact-footer .checkin-button{width:166px!important;min-width:166px!important;height:54px!important;min-height:54px!important;font-size:11px}.summary-compact>.compact-footer .lock-copy strong{font-size:9px}.summary-compact>.compact-footer .lock-copy small{font-size:8px}}
@media(min-width:431px){.screen-content{padding-inline:20px!important}}

/* V1 execution2 final cascade. This is the last rule set so legacy R14-R18 rules cannot move the CTA. */
html,body,button,input,select,textarea{font-family:var(--font-body)}
h1,h2,h3,h4,.brand-mark,.nav-item small,.meal-tab span,.home-entry b,.library-heading strong{font-family:var(--font-display);font-weight:500}
html,body{width:100%;height:100%;overflow:hidden}
.app-shell{width:min(100%,430px);height:100dvh;overflow:hidden}
.app-main{min-height:0;flex:1;overflow:hidden}
.screen-content{min-height:0;overflow:hidden!important;padding:0 14px!important}
.screen-anchor,.screen-anchor:has(.home-v3),.screen-anchor:has(.picker-view),.screen-anchor:has(.plate-v1),.screen-anchor:has(.summary-compact){height:calc(100% - 10px)!important;min-height:0;padding:10px 0 0!important;overflow:hidden!important}
[data-role="screen"]{height:100%;min-height:0;overflow:hidden}
.global-nav{height:76px;flex:0 0 76px;padding:4px 10px 7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border-top:2px solid #26221d;background:#fffaf4}
.global-nav .nav-item{min-width:44px;min-height:64px;border:2px solid transparent;border-radius:20px;color:#332820}
.global-nav .nav-item img{width:30px;height:30px;object-fit:contain}.global-nav .nav-item small{font-size:12px;color:#332820;line-height:1}.global-nav .nav-item.is-active{background:#ffd86e;border-color:#26221d;box-shadow:none}

.home-v3{height:100%!important;min-height:0!important;margin:0!important;display:grid!important;grid-template-rows:70px 45px 34px minmax(0,1fr) 145px;gap:7px;overflow:hidden!important}
.home-v3 .hero-row{height:70px;min-height:70px;margin:0;justify-content:center;position:relative}.home-v3 .hero-row>div{text-align:center}
.home-v3 .hero-row h2{margin:0;font-size:40px;line-height:1.05;letter-spacing:.01em;color:#26221d}.home-v3 .hero-row p{margin:4px 0 0;font-size:11px;color:#6d5a4d}.home-v3 .hero-row .hero-cat{position:absolute;right:2px;top:0;width:76px;height:70px;object-fit:contain}
.home-v3 .home-meal-tabs{height:45px;min-height:45px;display:flex;gap:0;padding:0;overflow:hidden}.home-v3 .home-meal-tabs .meal-tab{height:45px;min-width:0;flex:1;align-items:center;justify-content:center;padding:6px 4px;border:2px solid #26221d;border-radius:0;background:#fffaf4;text-align:center}.home-v3 .home-meal-tabs .meal-tab:first-child{border-radius:22px 0 0 22px}.home-v3 .home-meal-tabs .meal-tab:last-child{border-radius:0 22px 22px 0}.home-v3 .home-meal-tabs .meal-tab span{font-size:16px;line-height:1.1;color:#26221d}.home-v3 .home-meal-tabs .meal-tab small{display:none}.home-v3 .home-meal-tabs .meal-tab.is-active{background:#ffd86e;box-shadow:none}
.home-v3 .today-strip{height:34px;min-height:34px;align-self:center;margin:0!important;padding:3px 13px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}.home-v3 .training-check{height:44px;min-height:44px;gap:8px;align-items:center}.home-v3 .training-check input{width:22px;height:22px;margin:0;accent-color:#f2a53f}.home-v3 .training-check b{font-size:14px;color:#26221d}.home-v3 .training-check small,.home-v3 .today-strip>strong{display:none}
.home-v3 .home-entry-grid{height:auto;min-height:0;margin:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:none!important}.home-v3 .home-entry{height:100%;min-height:0!important;display:block;position:relative;overflow:hidden;padding:0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;box-shadow:none;color:#26221d}.home-v3 .home-entry.coach-entry,.home-v3 .home-entry.custom-entry-card{background:#fffaf4}
.home-v3 .home-entry>.entry-art{position:absolute;left:50%;top:53px;transform:translateX(-50%);width:130px;height:160px;background:transparent;box-shadow:none;overflow:visible}.home-v3 .home-entry>.entry-art img{width:126px;height:154px;object-fit:contain;filter:drop-shadow(0 6px 3px rgba(82,58,44,.18))}.home-v3 .home-entry.custom-entry-card>.entry-art{top:110px;width:136px;height:145px}.home-v3 .home-entry.custom-entry-card>.entry-art img{width:136px;height:136px}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){position:absolute;left:15px;top:14px;display:flex;flex-direction:column;gap:3px;z-index:2}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:18px;color:#26221d}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:10px;color:#6d5a4d}.home-v3 .home-entry>i{position:absolute;right:13px;top:13px;padding:6px 8px;border-radius:10px;background:#ffd86e;color:#26221d;font-size:10px;font-style:normal;font-weight:900;z-index:2}
.home-v3 .entry-foods{position:absolute;left:10px;right:10px;bottom:11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;z-index:2}.home-v3 .entry-foods>span{display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 1px;border:1px solid #eadfc8;border-radius:11px;background:#fffdf8}.home-v3 .entry-foods img{width:40px;height:40px;object-fit:contain}.home-v3 .entry-foods b{font-size:9px;white-space:nowrap;color:#302820}.home-v3 .entry-add-mark{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);display:grid!important;place-items:center;width:58px;height:58px;border:3px dashed #79b2d0;border-radius:50%;color:#26221d;font-size:45px;line-height:1;z-index:2}
.home-v3 .home-library-v3{height:145px;min-height:145px!important;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:25px 34px minmax(0,1fr);gap:5px 8px;position:relative;overflow:visible;margin:0!important;padding:9px 10px;border:2px solid #26221d;border-radius:22px;background:#fffaf4}.home-v3 .home-library-v3 .library-heading{display:flex;flex-direction:column;gap:1px;min-width:0}.home-v3 .home-library-v3 .library-heading .eyebrow{font-size:10px;color:#26221d}.home-v3 .home-library-v3 .library-heading strong{font-size:15px;color:#26221d;line-height:1.1}.home-v3 .home-library-v3 .library-open-label{align-self:start;padding:5px 8px;font-size:10px;border:1.5px solid #26221d;background:#ffd86e;color:#26221d}.home-v3 .home-library-v3 .home-search{grid-column:1/-1;height:34px;min-height:34px;display:flex;align-items:center;padding:4px 9px;border:2px solid #26221d;border-radius:17px;background:#fffdf8;color:#6d5a4d}.home-v3 .home-library-v3 .library-examples{grid-column:1/-1;height:50px;min-height:50px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;overflow:visible}.home-v3 .home-library-v3 .library-examples>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;height:50px;overflow:hidden;border:1px solid #eadfc8;border-radius:12px;background:#fffdf8;color:#26221d;font-size:9px;font-weight:900}.home-v3 .home-library-v3 .library-examples>span>img{width:34px!important;height:34px!important;object-fit:contain}.home-v3 .home-library-v3 .library-examples>span>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-v3 .home-library-v3 .library-cat{position:absolute;right:4px;top:-30px;width:58px;height:66px;object-fit:contain;z-index:3;pointer-events:none}

.picker-view{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:72px minmax(0,1fr);grid-template-rows:40px 40px minmax(0,1fr) 26px 70px;column-gap:10px;row-gap:7px;margin:0!important;overflow:hidden!important}.picker-view>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}.picker-view>.subhead h2{font-size:27px;color:#26221d}.picker-view>.category-tabs{grid-column:1;grid-row:2/span 3;display:flex;flex-direction:column;gap:0;margin:0!important;padding:3px 0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;overflow:hidden}.picker-view .category-tab{flex:1;min-height:44px;padding:4px 2px;border-radius:0;background:transparent;color:#26221d;font-size:11px;font-weight:900}.picker-view .category-tab.is-active{background:#b8d795;box-shadow:none;color:#26221d}.picker-view>.search-box{grid-column:2;grid-row:2;height:40px;margin:0!important;padding:6px 9px;border:2px solid #26221d;border-radius:19px;background:#fffdf8}.picker-view>.food-grid{grid-column:2;grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px;margin:0;min-height:0!important}.picker-view .food-card{height:auto!important;min-height:0!important;display:block;padding:0;border:1.5px solid #26221d;border-radius:16px;background:#fffaf4;overflow:hidden}.picker-view .food-card-main{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px;border:0;border-radius:14px;background:transparent;color:#26221d;text-align:left}.picker-view .food-image{flex:0 0 112px;width:100%;height:112px;display:grid;place-items:center;border-radius:12px;background:#fffaf4}.picker-view .food-image img{width:104px;height:104px;object-fit:contain}.picker-view .food-card strong{font-size:15px;line-height:1.2;color:#26221d;white-space:nowrap;overflow:visible}.picker-view .food-card small{font-size:11px;line-height:1.3;color:#6d5a4d;white-space:nowrap;overflow:visible}.picker-view .food-plus{right:7px;bottom:7px;width:44px;height:44px;border:2px solid #26221d;border-radius:50%;background:#ffd86e;color:#26221d;font-size:25px;z-index:2}.picker-view>.pager{grid-column:2;grid-row:4;height:26px;margin:0!important;align-self:center}.picker-view>.selection-tray{grid-column:1/-1;grid-row:5;height:70px;min-height:70px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:8px;position:static!important;padding:8px 10px!important;border:2px solid #26221d;border-radius:21px;background:#fffaf4;color:#26221d;font-size:11px}.picker-view>.selection-tray .mini-foods img{width:42px;height:42px;border:1px solid #eadfc8;background:#fffdf8}.picker-view>.selection-tray .primary-button{min-width:100px;min-height:44px;padding:9px 12px;border:2px solid #26221d;border-radius:14px;background:#ffad43;color:#26221d;font-size:11px;box-shadow:none;white-space:nowrap}

.plate-v1{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 112px;grid-template-rows:40px 190px 234px 132px 24px 54px;column-gap:9px;row-gap:6px;overflow:hidden!important}.plate-v1>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}.plate-v1>.subhead h2{font-size:27px;color:#26221d}.plate-v1>.plate-board-row{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:9px;min-width:0;height:190px}.plate-v1 .plate-stage{width:100%;height:190px;min-height:190px;margin:0;border:2px solid #26221d;border-radius:24px;background:#fffaf4;overflow:hidden}.plate-v1 .plate-stage .scene-base{width:100%;height:100%;object-fit:contain}.plate-v1 .plate-food{z-index:2;gap:1px;padding:0;background:transparent;color:#26221d;font-size:10px;font-weight:900}.plate-v1 .plate-food img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 6px 4px rgba(82,58,44,.2))}.plate-v1 .plate-food span{padding:0;background:transparent;color:#26221d;font-size:10px;line-height:1.1;white-space:nowrap;text-shadow:0 1px 0 #fffaf4}.plate-v1 .plate-food-1{left:17%;top:20%}.plate-v1 .plate-food-2{right:15%;top:19%}.plate-v1 .plate-food-3{left:20%;bottom:13%}.plate-v1 .plate-food-4{right:15%;bottom:12%}.plate-v1>.plate-board-row>.plate-actions{height:190px;display:flex;flex-direction:column;gap:8px}.plate-v1 .plate-actions button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 4px;border:2px solid #26221d;border-radius:15px;background:#fffaf4;color:#26221d;font-size:11px;font-weight:900;box-shadow:none}.plate-v1 .plate-actions button:first-child{background:#fff0c5}.plate-v1 .plate-actions img{width:29px;height:29px;object-fit:contain}.plate-v1>.board-panel{grid-column:1/-1;grid-row:3;display:grid;grid-template-rows:184px 44px;gap:6px;min-height:0}.plate-v1 .board-stage{width:88%;height:184px;min-height:184px;margin:0 auto;border:2px solid #26221d;border-radius:24px;background:#e5bc82;overflow:hidden}.plate-v1 .board-stage .scene-base{width:100%;height:100%;object-fit:contain}.plate-v1 .board-stage .board-food{width:126px;height:126px;object-fit:contain;z-index:2;filter:drop-shadow(0 8px 5px rgba(55,31,20,.28))}.plate-v1 .board-stage .board-label{display:none}.plate-v1 .board-food-copy{position:absolute;left:50%;bottom:11px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:1px;color:#26221d;text-shadow:0 1px 0 #fff1dc;white-space:nowrap}.plate-v1 .board-food-copy strong{font-size:14px}.plate-v1 .board-food-copy small{font-size:10px;color:#523a32}.plate-v1>.board-panel .gram-control{width:70%;height:44px;min-height:44px;margin:0 auto;display:grid;grid-template-columns:44px minmax(0,1fr) 26px 44px;gap:7px;align-items:center}.plate-v1 .gram-control button{width:44px;height:44px;min-width:44px;border:2px solid #26221d;border-radius:13px;background:#fff0c5;color:#26221d;font-size:24px}.plate-v1 .gram-control input{height:44px;border:2px solid #26221d;border-radius:13px;background:#fffaf4;color:#26221d;font-size:18px;text-align:center}.plate-v1 .gram-control span{font-size:11px;color:#523a32}
.plate-v1>.scale-card{grid-column:1/-1;grid-row:4;width:76%;height:132px;min-height:132px;display:grid;grid-template-columns:94px minmax(0,1fr);grid-template-rows:34px minmax(0,1fr);gap:3px 7px;margin:0 auto;padding:8px 10px;border:2px solid #26221d;border-radius:20px;background:#edf3e9;overflow:hidden}.plate-v1>.scale-card>img{grid-column:1;grid-row:1/3;width:88px;height:108px;object-fit:contain}.plate-v1 .scale-reading{grid-column:2;grid-row:1;display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}.plate-v1 .scale-reading span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#26221d}.plate-v1 .scale-reading strong{font-size:22px;line-height:1;color:#315c56;white-space:nowrap}.plate-v1 .scale-reading strong small{font-size:10px}.plate-v1 .board-macro-panel{grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;min-width:0;min-height:0;padding:0;border:0;background:transparent;overflow:hidden}.plate-v1 .board-macro-title{grid-column:1/-1;display:flex;justify-content:space-between;line-height:1}.plate-v1 .board-macro-title strong{font-size:10px;color:#26221d}.plate-v1 .board-macro-title span{font-size:9px;color:#6d5a4d}.plate-v1 .board-macro-row{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:2px;border-left:1px solid #c5d5ca}.plate-v1 .board-macro-row:first-of-type{border-left:0}.plate-v1 .board-macro-row span{font-size:10px;color:#26221d;white-space:nowrap}.plate-v1 .board-macro-row strong{font-size:17px;line-height:1.05;white-space:nowrap}.plate-v1 .board-macro-row small{font-size:10px;white-space:nowrap}.plate-v1 .board-macro-row:nth-of-type(2) strong{color:#c48636}.plate-v1 .board-macro-row:nth-of-type(3) strong{color:#4d8664}.plate-v1 .board-macro-row:nth-of-type(4) strong{color:#4c78aa}.plate-v1>.day-macro-inline{grid-column:1/-1;grid-row:5;height:24px;display:flex;align-items:center;justify-content:center;color:#315c56;font-size:11px;white-space:nowrap}.plate-v1>.settlement-strip{grid-column:1/-1;grid-row:6;height:54px;min-height:54px;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:3px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}.plate-v1>.settlement-strip button{min-height:44px;border:0;border-radius:13px;background:transparent;color:#26221d;font-size:11px;font-weight:900}.plate-v1>.settlement-strip button+button{border-left:1px solid #eadfc8}.plate-v1>.settlement-strip img{width:31px;height:31px;vertical-align:middle;margin-right:4px}

.summary-compact{position:static!important;left:auto!important;right:auto!important;top:auto!important;height:calc(100% - 10px)!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:36px 18px minmax(0,1fr) 92px 88px 66px;column-gap:6px;row-gap:6px;margin:0!important;padding:0!important;overflow:hidden!important}.summary-compact>.subhead{position:static!important;grid-column:1/-1;grid-row:1;height:36px;margin:0!important}.summary-compact>.subhead h2{font-size:25px;color:#26221d}.summary-compact>.summary-pot-heading{grid-column:1/-1;grid-row:2;height:18px;margin:0;padding:0 3px}.summary-compact>.wood-table{grid-column:1/-1;grid-row:3;width:100%;height:100%;min-height:0;margin:0;border:2px solid #26221d;border-radius:24px;background:repeating-linear-gradient(8deg,#c9986f 0 12px,#b7835d 12px 16px,#d2a078 16px 29px);overflow:hidden}.summary-compact .pot-stage{width:100%;height:100%;min-height:0;margin:0;background:transparent;overflow:hidden}.summary-compact .pot-stage .scene-base{width:100%;height:100%;object-fit:contain;transform:none;filter:none}.summary-compact .pot-foods{position:absolute;inset:12% 10%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:2px 7px;padding:0;overflow:hidden}.summary-compact .pot-food-label{width:100%;min-height:0;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#26221d;overflow:visible}.summary-compact .pot-food-label img{width:clamp(70px,20vw,96px)!important;height:clamp(70px,20vw,96px)!important;object-fit:contain}.summary-compact .pot-food-label b{font-size:12px;line-height:1.15;white-space:nowrap;color:#26221d}
.summary-compact>.vegetables-section{grid-column:1;grid-row:4;width:100%;height:92px;min-height:92px;display:block!important;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.vegetables-section .vegetable-open{display:flex;align-items:center;gap:5px;width:100%;height:44px;min-height:44px;padding:0;border:0;background:transparent;text-align:left;color:#26221d}.summary-compact>.vegetables-section .compact-section-title{display:flex!important;align-items:center;gap:5px;min-width:0;height:42px}.summary-compact>.vegetables-section .compact-section-title .eyebrow{display:block!important;font-size:9px;white-space:nowrap}.summary-compact>.vegetables-section .compact-section-title strong{font-size:12px;white-space:nowrap}.summary-compact>.vegetables-section .veg-bowl{width:47px;height:38px;flex:0 0 47px}.summary-compact>.vegetables-section .veg-list{min-width:0;display:flex;justify-content:flex-start;overflow:hidden}.summary-compact>.vegetables-section .veg-chip{max-width:100%;padding:3px 5px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.vegetables-section .veg-chip img{width:28px;height:28px}.summary-compact>.supplement-section{grid-column:2;grid-row:4;width:100%;height:92px;min-height:92px;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.supplement-section .compact-section-title{height:27px;min-height:27px;display:flex;align-items:center;gap:5px;margin:0 0 3px;overflow:hidden}.summary-compact>.supplement-section .compact-section-title>img{width:28px;height:28px;flex:0 0 28px}.summary-compact>.supplement-section .compact-section-title strong{font-size:12px;white-space:nowrap}.summary-compact>.supplement-section .compact-section-title small{display:block;font-size:9px;white-space:nowrap}.summary-compact .supplement-table{display:grid;gap:2px;min-width:0}.summary-compact .supplement-table-head{display:grid;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px;gap:2px;margin:0;color:#6d5a4d;font-size:8px;line-height:1;white-space:nowrap}.summary-compact .supplement-table-row{position:static!important;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px!important;height:44px;min-height:44px;padding:2px 3px;background:#fff0d4}.summary-compact .supplement-table-row input{width:15px;height:15px;margin:0}.summary-compact .supplement-copy,.summary-compact .supplement-copy b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1}.summary-compact>.photographer-section{grid-column:1/-1;grid-row:5;width:100%;height:88px;min-height:88px;display:flex;align-items:center;gap:7px;position:static!important;padding:5px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:visible}.summary-compact>.photographer-section .cat-art{width:82px;height:78px;flex:0 0 82px;object-fit:contain}.summary-compact>.photographer-section .photo-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:2px}.summary-compact>.photographer-section .photo-actions{position:static;display:flex;gap:5px}.summary-compact>.photographer-section .photo-action{width:92px;min-width:92px;height:52px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px;border:2px solid #26221d;border-radius:12px;background:#fff0d4;color:#26221d;font-size:10px}.summary-compact>.photographer-section .photo-action img{width:27px;height:27px}.summary-compact>.compact-footer{position:static!important;left:auto!important;right:auto!important;top:auto!important;grid-column:1/-1;grid-row:6;width:100%!important;height:66px!important;min-height:66px!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:0!important;padding:4px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.compact-footer .lock-copy{min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.summary-compact>.compact-footer .lock-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .lock-copy small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .checkin-button{width:190px!important;min-width:190px!important;height:58px!important;min-height:58px!important;margin:0;padding:10px 12px;border:2px solid #26221d;border-radius:15px;background:#ffad43;color:#26221d;font-size:13px;box-shadow:none}

@media(max-width:375px){.screen-content{padding-inline:10px!important}.home-v3{grid-template-rows:62px 42px 34px minmax(0,1fr) 126px;gap:5px}.home-v3 .hero-row,.home-v3 .hero-row h2{height:62px;min-height:62px}.home-v3 .hero-row h2{font-size:34px}.home-v3 .hero-row .hero-cat{width:64px;height:60px}.home-v3 .home-meal-tabs,.home-v3 .home-meal-tabs .meal-tab{height:42px;min-height:42px}.home-v3 .home-meal-tabs .meal-tab span{font-size:14px}.home-v3 .home-entry-grid{gap:6px}.home-v3 .home-entry>.entry-art{top:42px;width:105px;height:130px}.home-v3 .home-entry>.entry-art img{width:104px;height:128px}.home-v3 .home-entry.custom-entry-card>.entry-art{top:91px;width:112px;height:120px}.home-v3 .home-entry.custom-entry-card>.entry-art img{width:112px;height:112px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){left:10px;top:10px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:15px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:9px}.home-v3 .entry-foods{left:6px;right:6px;bottom:7px}.home-v3 .entry-foods img{width:31px;height:31px}.home-v3 .entry-foods b{font-size:8px}.home-v3 .home-library-v3{height:126px;min-height:126px;padding:7px 8px;grid-template-rows:22px 30px minmax(0,1fr);gap:4px 6px}.home-v3 .home-library-v3 .library-heading strong{font-size:13px}.home-v3 .home-library-v3 .home-search{height:30px;min-height:30px}.home-v3 .home-library-v3 .library-examples,.home-v3 .home-library-v3 .library-examples>span{height:43px;min-height:43px}.home-v3 .home-library-v3 .library-examples>span>img{width:28px!important;height:28px!important}.home-v3 .home-library-v3 .library-cat{width:50px;height:56px;top:-25px}.picker-view{grid-template-columns:68px minmax(0,1fr);column-gap:7px;grid-template-rows:38px 38px minmax(0,1fr) 24px 64px;row-gap:5px}.picker-view>.subhead{height:38px}.picker-view>.subhead h2{font-size:23px}.picker-view .food-image{flex-basis:88px;height:88px}.picker-view .food-image img{width:82px;height:82px}.picker-view .food-card strong{font-size:13px}.picker-view .food-card small{font-size:10px}.picker-view .food-plus{width:44px;height:44px}.picker-view>.selection-tray{height:64px;min-height:64px;padding:6px 7px!important;grid-template-columns:62px minmax(0,1fr) auto}.picker-view>.selection-tray .primary-button{min-width:88px;padding-inline:7px;font-size:10px}.plate-v1{grid-template-rows:36px 170px 210px 118px 22px 52px;row-gap:4px}.plate-v1>.subhead{height:36px}.plate-v1>.subhead h2{font-size:23px}.plate-v1>.plate-board-row{height:170px;grid-template-columns:minmax(0,1fr) 96px;gap:6px}.plate-v1 .plate-stage{height:170px;min-height:170px}.plate-v1>.plate-board-row>.plate-actions{height:170px}.plate-v1 .plate-food img{width:66px;height:66px}.plate-v1 .board-stage{width:88%;height:160px;min-height:160px}.plate-v1>.board-panel{grid-template-rows:160px 44px;height:210px}.plate-v1 .board-stage .board-food{width:112px;height:112px}.plate-v1>.scale-card{width:82%;height:118px;min-height:118px;grid-template-columns:78px minmax(0,1fr);padding:6px 7px}.plate-v1>.scale-card>img{width:73px;height:98px}.plate-v1 .board-macro-row strong{font-size:15px}.plate-v1>.day-macro-inline{font-size:10px}.plate-v1>.settlement-strip{height:52px;min-height:52px}.summary-compact{height:calc(100% - 10px)!important;grid-template-rows:32px 17px minmax(0,1fr) 84px 78px 62px;row-gap:4px}.summary-compact>.subhead{height:32px}.summary-compact>.subhead h2{font-size:22px}.summary-compact>.summary-pot-heading{height:17px}.summary-compact .pot-food-label img{width:clamp(64px,18vw,82px)!important;height:clamp(64px,18vw,82px)!important}.summary-compact .pot-food-label b{font-size:10px}.summary-compact>.vegetables-section,.summary-compact>.supplement-section{height:84px;min-height:84px}.summary-compact>.supplement-section{padding:4px 5px}.summary-compact>.supplement-section .compact-section-title strong{font-size:10px}.summary-compact>.supplement-section .compact-section-title small{font-size:8px}.summary-compact>.photographer-section{height:78px;min-height:78px;padding:4px 5px;gap:4px}.summary-compact>.photographer-section .cat-art{width:68px;height:68px;flex-basis:68px}.summary-compact>.photographer-section .photo-actions{gap:3px}.summary-compact>.photographer-section .photo-action{width:78px;min-width:78px;height:48px;min-height:48px;font-size:9px}.summary-compact>.photographer-section .photo-action img{width:23px;height:23px}.summary-compact>.compact-footer{height:62px!important;min-height:62px!important;padding-inline:5px}.summary-compact>.compact-footer .checkin-button{width:166px!important;min-width:166px!important;height:54px!important;min-height:54px!important;font-size:11px}.summary-compact>.compact-footer .lock-copy strong{font-size:9px}.summary-compact>.compact-footer .lock-copy small{font-size:8px}}
@media(min-width:431px){.screen-content{padding-inline:20px!important}}

/* Keep the summary footer inside the screen-content box on all three reference heights. */
.summary-compact{height:calc(100% - 10px)!important}

/* V1 execution2 final layer: local fonts, one-screen composition, state-driven artwork. */
html,body,button,input,select,textarea{font-family:var(--font-body)}
h1,h2,h3,h4,.brand-mark,.nav-item small,.meal-tab span,.home-entry b,.library-heading strong{font-family:var(--font-display);font-weight:500}
html,body{width:100%;height:100%;overflow:hidden}
.app-shell{width:min(100%,430px);height:100dvh;overflow:hidden}
.app-main{min-height:0;flex:1;overflow:hidden}
.screen-content{min-height:0;overflow:hidden!important;padding:0 14px!important}
.screen-anchor{height:100%;min-height:0;padding:10px 0 0!important;overflow:hidden!important}
[data-role="screen"]{height:100%;min-height:0;overflow:hidden}
.global-nav{height:76px;flex:0 0 76px;padding:4px 10px 7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border-top:2px solid #26221d;background:#fffaf4}
.global-nav .nav-item{min-width:44px;min-height:64px;border:2px solid transparent;border-radius:20px;color:#332820}
.global-nav .nav-item img{width:30px;height:30px;object-fit:contain}
.global-nav .nav-item small{font-size:12px;color:#332820;line-height:1}
.global-nav .nav-item.is-active{background:#ffd86e;border-color:#26221d;box-shadow:none}

/* Home: three meals, training, two primary routes, decorative library. */
.home-v3{height:100%!important;min-height:0!important;margin:0!important;display:grid!important;grid-template-rows:70px 45px 34px minmax(0,1fr) 145px;gap:7px;overflow:hidden!important}
.home-v3 .hero-row{height:70px;min-height:70px;margin:0;justify-content:center;position:relative}
.home-v3 .hero-row>div{text-align:center}
.home-v3 .hero-row h2{margin:0;font-size:40px;line-height:1.05;letter-spacing:.01em;color:#26221d}
.home-v3 .hero-row p{margin:4px 0 0;font-size:11px;color:#6d5a4d}
.home-v3 .hero-row .hero-cat{position:absolute;right:2px;top:0;width:76px;height:70px;object-fit:contain}
.home-v3 .home-meal-tabs{height:45px;min-height:45px;display:flex;gap:0;padding:0;overflow:hidden}
.home-v3 .home-meal-tabs .meal-tab{height:45px;min-width:0;flex:1;align-items:center;justify-content:center;padding:6px 4px;border:2px solid #26221d;border-radius:0;background:#fffaf4;text-align:center}
.home-v3 .home-meal-tabs .meal-tab:first-child{border-radius:22px 0 0 22px}
.home-v3 .home-meal-tabs .meal-tab:last-child{border-radius:0 22px 22px 0}
.home-v3 .home-meal-tabs .meal-tab span{font-size:16px;line-height:1.1;color:#26221d}
.home-v3 .home-meal-tabs .meal-tab small{display:none}
.home-v3 .home-meal-tabs .meal-tab.is-active{background:#ffd86e;box-shadow:none}
.home-v3 .today-strip{height:34px;min-height:34px;align-self:center;margin:0!important;padding:3px 13px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.home-v3 .training-check{height:44px;min-height:44px;gap:8px;align-items:center}
.home-v3 .training-check input{width:22px;height:22px;margin:0;accent-color:#f2a53f}
.home-v3 .training-check b{font-size:14px;color:#26221d}
.home-v3 .training-check small{display:none}
.home-v3 .today-strip>strong{display:none}
.home-v3 .home-entry-grid{height:auto;min-height:0;margin:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-v3 .home-entry{height:100%;min-height:0!important;display:block;position:relative;overflow:hidden;padding:0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;box-shadow:none;color:#26221d}
.home-v3 .home-entry.coach-entry{background:#fffaf4}
.home-v3 .home-entry.custom-entry-card{background:#fffaf4}
.home-v3 .home-entry>.entry-art{position:absolute;left:50%;top:53px;transform:translateX(-50%);width:130px;height:160px;background:transparent;box-shadow:none;overflow:visible}
.home-v3 .home-entry>.entry-art img{width:126px;height:154px;object-fit:contain;filter:drop-shadow(0 6px 3px rgba(82,58,44,.18))}
.home-v3 .home-entry.custom-entry-card>.entry-art{top:110px;width:136px;height:145px}
.home-v3 .home-entry.custom-entry-card>.entry-art img{width:136px;height:136px}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){position:absolute;left:15px;top:14px;display:flex;flex-direction:column;gap:3px;z-index:2}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:18px;color:#26221d}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:10px;color:#6d5a4d}
.home-v3 .home-entry>i{position:absolute;right:13px;top:13px;padding:6px 8px;border-radius:10px;background:#ffd86e;color:#26221d;font-size:10px;font-style:normal;font-weight:900;z-index:2}
.home-v3 .entry-foods{position:absolute;left:10px;right:10px;bottom:11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;z-index:2}
.home-v3 .entry-foods>span{display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 1px;border:1px solid #eadfc8;border-radius:11px;background:#fffdf8}
.home-v3 .entry-foods img{width:40px;height:40px;object-fit:contain}
.home-v3 .entry-foods b{font-size:9px;white-space:nowrap;color:#302820}
.home-v3 .entry-add-mark{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);display:grid!important;place-items:center;width:58px;height:58px;border:3px dashed #79b2d0;border-radius:50%;color:#26221d;font-size:45px;line-height:1;z-index:2}
.home-v3 .home-library-v3{height:145px;min-height:145px!important;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:25px 34px minmax(0,1fr);gap:5px 8px;position:relative;overflow:visible;margin:0!important;padding:9px 10px;border:2px solid #26221d;border-radius:22px;background:#fffaf4}
.home-v3 .home-library-v3 .library-heading{display:flex;flex-direction:column;gap:1px;min-width:0}
.home-v3 .home-library-v3 .library-heading .eyebrow{font-size:10px;color:#26221d}
.home-v3 .home-library-v3 .library-heading strong{font-size:15px;color:#26221d;line-height:1.1}
.home-v3 .home-library-v3 .library-open-label{align-self:start;padding:5px 8px;font-size:10px;border:1.5px solid #26221d;background:#ffd86e;color:#26221d}
.home-v3 .home-library-v3 .home-search{grid-column:1/-1;height:34px;min-height:34px;display:flex;align-items:center;padding:4px 9px;border:2px solid #26221d;border-radius:17px;background:#fffdf8;color:#6d5a4d}
.home-v3 .home-library-v3 .library-examples{grid-column:1/-1;height:50px;min-height:50px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;overflow:visible}
.home-v3 .home-library-v3 .library-examples>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;height:50px;overflow:hidden;border:1px solid #eadfc8;border-radius:12px;background:#fffdf8;color:#26221d;font-size:9px;font-weight:900}
.home-v3 .home-library-v3 .library-examples>span>img{width:34px!important;height:34px!important;object-fit:contain}
.home-v3 .home-library-v3 .library-examples>span>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-v3 .home-library-v3 .library-cat{position:absolute;right:4px;top:-30px;width:58px;height:66px;object-fit:contain;z-index:3;pointer-events:none}

/* Picker: fixed five categories, two columns, dynamic selection tray. */
.picker-view{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:72px minmax(0,1fr);grid-template-rows:40px 40px minmax(0,1fr) 26px 70px;column-gap:10px;row-gap:7px;margin:0!important;overflow:hidden!important}
.picker-view>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}
.picker-view>.subhead h2{font-size:27px;color:#26221d}
.picker-view>.category-tabs{grid-column:1;grid-row:2/span 3;display:flex;flex-direction:column;gap:0;margin:0!important;padding:3px 0;border:2px solid #26221d;border-radius:22px;background:#fffaf4;overflow:hidden}
.picker-view .category-tab{flex:1;min-height:44px;padding:4px 2px;border-radius:0;background:transparent;color:#26221d;font-size:11px;font-weight:900}
.picker-view .category-tab.is-active{background:#b8d795;box-shadow:none;color:#26221d}
.picker-view>.search-box{grid-column:2;grid-row:2;height:40px;margin:0!important;padding:6px 9px;border:2px solid #26221d;border-radius:19px;background:#fffdf8}
.picker-view>.food-grid{grid-column:2;grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:9px;margin:0;min-height:0!important}
.picker-view .food-card{height:auto!important;min-height:0!important;display:block;padding:0;border:1.5px solid #26221d;border-radius:16px;background:#fffaf4;overflow:hidden}
.picker-view .food-card-main{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 8px 8px;border:0;border-radius:14px;background:transparent;color:#26221d;text-align:left}
.picker-view .food-image{flex:0 0 112px;width:100%;height:112px;display:grid;place-items:center;border-radius:12px;background:#fffaf4}
.picker-view .food-image img{width:104px;height:104px;object-fit:contain}
.picker-view .food-card strong{font-size:15px;line-height:1.2;color:#26221d;white-space:nowrap;overflow:visible;text-overflow:clip}
.picker-view .food-card small{font-size:11px;line-height:1.3;color:#6d5a4d;white-space:nowrap;overflow:visible}
.picker-view .food-plus{right:7px;bottom:7px;width:44px;height:44px;border:2px solid #26221d;border-radius:50%;background:#ffd86e;color:#26221d;font-size:25px;z-index:2}
.picker-view>.pager{grid-column:2;grid-row:4;height:26px;margin:0!important;align-self:center}
.picker-view>.selection-tray{grid-column:1/-1;grid-row:5;height:70px;min-height:70px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:8px;position:static!important;padding:8px 10px!important;border:2px solid #26221d;border-radius:21px;background:#fffaf4;color:#26221d;font-size:11px}
.picker-view>.selection-tray .mini-foods img{width:42px;height:42px;border:1px solid #eadfc8;background:#fffdf8}
.picker-view>.selection-tray .primary-button{min-width:100px;min-height:44px;padding:9px 12px;border:2px solid #26221d;border-radius:14px;background:#ffad43;color:#26221d;font-size:11px;box-shadow:none;white-space:nowrap}

/* Single visible plate page: plate, selected-food board, grams and scale share the screen. */
.plate-v1{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 112px;grid-template-rows:40px 190px 234px 132px 24px 54px;column-gap:9px;row-gap:6px;overflow:hidden!important}
.plate-v1>.subhead{grid-column:1/-1;grid-row:1;height:40px;margin:0!important}
.plate-v1>.subhead h2{font-size:27px;color:#26221d}
.plate-v1>.plate-board-row{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:9px;min-width:0;height:190px}
.plate-v1 .plate-stage{width:100%;height:190px;min-height:190px;margin:0;border:2px solid #26221d;border-radius:24px;background:#fffaf4;overflow:hidden}
.plate-v1 .plate-stage .scene-base{width:100%;height:100%;object-fit:contain}
.plate-v1 .plate-food{z-index:2;gap:1px;padding:0;background:transparent;color:#26221d;font-size:10px;font-weight:900}
.plate-v1 .plate-food img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 6px 4px rgba(82,58,44,.2))}
.plate-v1 .plate-food span{padding:0;background:transparent;color:#26221d;font-size:10px;line-height:1.1;white-space:nowrap;text-shadow:0 1px 0 #fffaf4}
.plate-v1 .plate-food-1{left:17%;top:20%}.plate-v1 .plate-food-2{right:15%;top:19%}.plate-v1 .plate-food-3{left:20%;bottom:13%}.plate-v1 .plate-food-4{right:15%;bottom:12%}
.plate-v1>.plate-board-row>.plate-actions{height:190px;display:flex;flex-direction:column;gap:8px}
.plate-v1 .plate-actions button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 4px;border:2px solid #26221d;border-radius:15px;background:#fffaf4;color:#26221d;font-size:11px;font-weight:900;box-shadow:none}
.plate-v1 .plate-actions button:first-child{background:#fff0c5}
.plate-v1 .plate-actions img{width:29px;height:29px;object-fit:contain}
.plate-v1>.board-panel{grid-column:1/-1;grid-row:3;display:grid;grid-template-rows:184px 44px;gap:6px;min-height:0}
.plate-v1 .board-stage{width:88%;height:184px;min-height:184px;margin:0 auto;border:2px solid #26221d;border-radius:24px;background:#e5bc82;overflow:hidden}
.plate-v1 .board-stage .scene-base{width:100%;height:100%;object-fit:contain}
.plate-v1 .board-stage .board-food{width:126px;height:126px;object-fit:contain;z-index:2;filter:drop-shadow(0 8px 5px rgba(55,31,20,.28))}
.plate-v1 .board-stage .board-label{display:none}
.plate-v1 .board-food-copy{position:absolute;left:50%;bottom:11px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:1px;color:#26221d;text-shadow:0 1px 0 #fff1dc;white-space:nowrap}
.plate-v1 .board-food-copy strong{font-size:14px}.plate-v1 .board-food-copy small{font-size:10px;color:#523a32}
.plate-v1>.board-panel .gram-control{width:70%;height:44px;min-height:44px;margin:0 auto;display:grid;grid-template-columns:44px minmax(0,1fr) 26px 44px;gap:7px;align-items:center}
.plate-v1 .gram-control button{width:44px;height:44px;min-width:44px;border:2px solid #26221d;border-radius:13px;background:#fff0c5;color:#26221d;font-size:24px}
.plate-v1 .gram-control input{height:44px;border:2px solid #26221d;border-radius:13px;background:#fffaf4;color:#26221d;font-size:18px;text-align:center}
.plate-v1 .gram-control span{font-size:11px;color:#523a32}
.plate-v1>.scale-card{grid-column:1/-1;grid-row:4;width:76%;height:132px;min-height:132px;display:grid;grid-template-columns:94px minmax(0,1fr);grid-template-rows:34px minmax(0,1fr);gap:3px 7px;margin:0 auto;padding:8px 10px;border:2px solid #26221d;border-radius:20px;background:#edf3e9;overflow:hidden}
.plate-v1>.scale-card>img{grid-column:1;grid-row:1/3;width:88px;height:108px;object-fit:contain}
.plate-v1 .scale-reading{grid-column:2;grid-row:1;display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}
.plate-v1 .scale-reading span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#26221d}
.plate-v1 .scale-reading strong{font-size:22px;line-height:1;color:#315c56;white-space:nowrap}.plate-v1 .scale-reading strong small{font-size:10px}
.plate-v1 .board-macro-panel{grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;min-width:0;min-height:0;padding:0;border:0;background:transparent;overflow:hidden}
.plate-v1 .board-macro-title{grid-column:1/-1;display:flex;justify-content:space-between;line-height:1}.plate-v1 .board-macro-title strong{font-size:10px;color:#26221d}.plate-v1 .board-macro-title span{font-size:9px;color:#6d5a4d}
.plate-v1 .board-macro-row{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:2px;border-left:1px solid #c5d5ca}.plate-v1 .board-macro-row:first-of-type{border-left:0}
.plate-v1 .board-macro-row span{font-size:10px;color:#26221d;white-space:nowrap}.plate-v1 .board-macro-row strong{font-size:17px;line-height:1.05;white-space:nowrap}.plate-v1 .board-macro-row small{font-size:10px;white-space:nowrap}
.plate-v1 .board-macro-row:nth-of-type(2) strong{color:#c48636}.plate-v1 .board-macro-row:nth-of-type(3) strong{color:#4d8664}.plate-v1 .board-macro-row:nth-of-type(4) strong{color:#4c78aa}
.plate-v1>.day-macro-inline{grid-column:1/-1;grid-row:5;height:24px;display:flex;align-items:center;justify-content:center;color:#315c56;font-size:11px;white-space:nowrap}
.plate-v1>.settlement-strip{grid-column:1/-1;grid-row:6;height:54px;min-height:54px;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:3px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.plate-v1>.settlement-strip button{min-height:44px;border:0;border-radius:13px;background:transparent;color:#26221d;font-size:11px;font-weight:900}.plate-v1>.settlement-strip button+button{border-left:1px solid #eadfc8}.plate-v1>.settlement-strip img{width:31px;height:31px;vertical-align:middle;margin-right:4px}
.plate-v1 .supplement-preview{position:absolute;left:10px;right:10px;bottom:60px;z-index:8;display:flex;flex-direction:column;gap:4px;padding:9px;border:2px solid #26221d;border-radius:15px;background:#fffaf4;font-size:10px}

/* Summary: dynamic pot is the anchor, with vegetables/supplements and photo/check-in below. */
.summary-compact{height:calc(100% - 10px)!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:36px 18px minmax(0,1fr) 92px 88px 66px;column-gap:6px;row-gap:6px;margin:0!important;padding:0!important;overflow:hidden!important}
.summary-compact>.subhead{grid-column:1/-1;grid-row:1;height:36px;margin:0!important}.summary-compact>.subhead h2{font-size:25px;color:#26221d}
.summary-compact>.summary-pot-heading{grid-column:1/-1;grid-row:2;height:18px;margin:0;padding:0 3px;color:#523a32}
.summary-compact>.summary-pot-heading span{font-size:13px}.summary-compact>.summary-pot-heading small{font-size:10px}
.summary-compact>.wood-table{grid-column:1/-1;grid-row:3;width:100%;height:100%;min-height:0;margin:0;border:2px solid #26221d;border-radius:24px;background:repeating-linear-gradient(8deg,#c9986f 0 12px,#b7835d 12px 16px,#d2a078 16px 29px);box-shadow:none;overflow:hidden}
.summary-compact .pot-stage{width:100%;height:100%;min-height:0;margin:0;background:transparent;overflow:hidden}
.summary-compact .pot-stage .scene-base{width:100%;height:100%;object-fit:contain;transform:none;filter:none}
.summary-compact .pot-foods{position:absolute;inset:12% 10%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:2px 7px;padding:0;overflow:hidden}
.summary-compact .pot-food-label{width:100%;min-height:0;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#26221d;text-shadow:0 1px 0 #fff8ef;overflow:visible}
.summary-compact .pot-food-label img{width:clamp(70px,20vw,96px)!important;height:clamp(70px,20vw,96px)!important;object-fit:contain}
.summary-compact .pot-food-label b{font-size:12px;line-height:1.15;white-space:nowrap;color:#26221d}
.summary-compact>.vegetables-section{grid-column:1;grid-row:4;width:100%;height:92px;min-height:92px;display:grid!important;grid-template-columns:52px minmax(0,1fr);grid-template-rows:42px minmax(0,1fr);align-items:center;gap:2px 5px;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}
.summary-compact>.vegetables-section .vegetable-open{grid-column:1/-1;display:flex;align-items:center;gap:5px;width:100%;height:42px;padding:0;border:0;background:transparent;text-align:left;color:#26221d}
.summary-compact>.vegetables-section .compact-section-title{display:flex!important;align-items:center;gap:5px;min-width:0;width:auto;height:42px}
.summary-compact>.vegetables-section .compact-section-title .eyebrow{display:block!important;font-size:9px;white-space:nowrap}.summary-compact>.vegetables-section .compact-section-title strong{font-size:12px;white-space:nowrap}
.summary-compact>.vegetables-section .veg-bowl{width:47px;height:38px;flex:0 0 47px}.summary-compact>.vegetables-section .veg-list{grid-column:1/-1;width:100%;min-width:0;display:flex;justify-content:flex-start;overflow:hidden}.summary-compact>.vegetables-section .veg-chip{max-width:100%;padding:3px 5px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.vegetables-section .veg-chip img{width:28px;height:28px}
.summary-compact>.supplement-section{grid-column:2;grid-row:4;width:100%;height:92px;min-height:92px;padding:5px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}
.summary-compact>.supplement-section .compact-section-title{height:27px;min-height:27px;display:flex;align-items:center;gap:5px;margin:0 0 3px;overflow:hidden}.summary-compact>.supplement-section .compact-section-title>img{width:28px;height:28px;flex:0 0 28px}.summary-compact>.supplement-section .compact-section-title>span{min-width:0}.summary-compact>.supplement-section .compact-section-title strong{font-size:12px;white-space:nowrap}.summary-compact>.supplement-section .compact-section-title small{display:block;font-size:9px;white-space:nowrap}
.summary-compact .supplement-table{display:grid;gap:2px;min-width:0}.summary-compact .supplement-table-head{display:grid;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px;gap:2px;margin:0;color:#6d5a4d;font-size:8px;line-height:1;white-space:nowrap}.summary-compact .supplement-table-row{height:44px;min-height:44px;display:grid;grid-template-columns:15px minmax(0,1fr) 31px 28px 38px;gap:2px;align-items:center;padding:2px 3px;border-radius:7px;background:#fff0d4}.summary-compact .supplement-table-row input{width:15px;height:15px;margin:0}.summary-compact .supplement-copy,.summary-compact .supplement-copy b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1}.summary-compact .supplement-table-row i{font-style:normal;color:#bf754a}
.summary-compact>.photographer-section{grid-column:1/-1;grid-row:5;width:100%;height:88px;min-height:88px;display:flex;align-items:center;gap:7px;position:relative;padding:5px 8px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:visible}
.summary-compact>.photographer-section .cat-art{width:82px;height:78px;flex:0 0 82px;object-fit:contain}.summary-compact>.photographer-section .photo-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:2px}.summary-compact>.photographer-section .photo-copy strong{font-size:13px;color:#26221d}.summary-compact>.photographer-section .photo-state{font-size:9px;color:#6d5a4d}
.summary-compact>.photographer-section .photo-actions{position:static;display:flex;gap:5px}.summary-compact>.photographer-section .photo-action{width:92px;min-width:92px;height:52px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px;border:2px solid #26221d;border-radius:12px;background:#fff0d4;color:#26221d;font-size:10px}.summary-compact>.photographer-section .photo-action img{width:27px;height:27px}.summary-compact>.photographer-section .photo-action input{display:none}
.summary-compact>.compact-footer{grid-column:1/-1;grid-row:6;width:100%;height:66px;min-height:66px;display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:0!important;padding:4px 7px;border:2px solid #26221d;border-radius:18px;background:#fffaf4;overflow:hidden}.summary-compact>.compact-footer .lock-copy{min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.summary-compact>.compact-footer .lock-copy strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .lock-copy small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-compact>.compact-footer .checkin-button{width:190px;min-width:190px;height:58px;min-height:58px;margin:0;padding:10px 12px;border:2px solid #26221d;border-radius:15px;background:#ffad43;color:#26221d;font-size:13px;box-shadow:none}
.summary-compact>.vegetable-editor{position:absolute;inset:8px;z-index:10;overflow:auto;padding:10px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}

@media(max-width:375px){
  .screen-content{padding-inline:10px!important}.home-v3{grid-template-rows:62px 42px 34px minmax(0,1fr) 126px;gap:5px}.home-v3 .hero-row,.home-v3 .hero-row h2{height:62px;min-height:62px}.home-v3 .hero-row h2{font-size:34px}.home-v3 .hero-row .hero-cat{width:64px;height:60px}.home-v3 .home-meal-tabs,.home-v3 .home-meal-tabs .meal-tab{height:42px;min-height:42px}.home-v3 .home-meal-tabs .meal-tab span{font-size:14px}.home-v3 .home-entry-grid{gap:6px}.home-v3 .home-entry>.entry-art{top:42px;width:105px;height:130px}.home-v3 .home-entry>.entry-art img{width:104px;height:128px}.home-v3 .home-entry.custom-entry-card>.entry-art{top:91px;width:112px;height:120px}.home-v3 .home-entry.custom-entry-card>.entry-art img{width:112px;height:112px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark){left:10px;top:10px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b{font-size:15px}.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) small{font-size:9px}.home-v3 .entry-foods{left:6px;right:6px;bottom:7px}.home-v3 .entry-foods img{width:31px;height:31px}.home-v3 .entry-foods b{font-size:8px}.home-v3 .home-library-v3{height:126px;min-height:126px;padding:7px 8px;grid-template-rows:22px 30px minmax(0,1fr);gap:4px 6px}.home-v3 .home-library-v3 .library-heading strong{font-size:13px}.home-v3 .home-library-v3 .home-search{height:30px;min-height:30px}.home-v3 .home-library-v3 .library-examples,.home-v3 .home-library-v3 .library-examples>span{height:43px;min-height:43px}.home-v3 .home-library-v3 .library-examples>span>img{width:28px!important;height:28px!important}.home-v3 .home-library-v3 .library-cat{width:50px;height:56px;top:-25px}.picker-view{grid-template-columns:68px minmax(0,1fr);column-gap:7px;grid-template-rows:38px 38px minmax(0,1fr) 24px 64px;row-gap:5px}.picker-view>.subhead{height:38px}.picker-view>.subhead h2{font-size:23px}.picker-view .food-image{flex-basis:88px;height:88px}.picker-view .food-image img{width:82px;height:82px}.picker-view .food-card strong{font-size:13px}.picker-view .food-card small{font-size:10px}.picker-view .food-plus{width:44px;height:44px}.picker-view>.selection-tray{height:64px;min-height:64px;padding:6px 7px!important;grid-template-columns:62px minmax(0,1fr) auto}.picker-view>.selection-tray .primary-button{min-width:88px;padding-inline:7px;font-size:10px}.plate-v1{grid-template-rows:36px 170px 210px 118px 22px 52px;row-gap:4px}.plate-v1>.subhead{height:36px}.plate-v1>.subhead h2{font-size:23px}.plate-v1>.plate-board-row{height:170px;grid-template-columns:minmax(0,1fr) 96px;gap:6px}.plate-v1 .plate-stage{height:170px;min-height:170px}.plate-v1>.plate-board-row>.plate-actions{height:170px}.plate-v1 .plate-food img{width:66px;height:66px}.plate-v1 .plate-food span{font-size:9px}.plate-v1 .board-stage{width:88%;height:160px;min-height:160px}.plate-v1>.board-panel{grid-template-rows:160px 44px;height:210px}.plate-v1 .board-stage .board-food{width:112px;height:112px}.plate-v1>.scale-card{width:82%;height:118px;min-height:118px;grid-template-columns:78px minmax(0,1fr);padding:6px 7px}.plate-v1>.scale-card>img{width:73px;height:98px}.plate-v1 .board-macro-row strong{font-size:15px}.plate-v1>.day-macro-inline{font-size:10px}.plate-v1>.settlement-strip{height:52px;min-height:52px}.summary-compact{grid-template-rows:32px 17px minmax(0,1fr) 84px 78px 62px;row-gap:4px}.summary-compact>.subhead{height:32px}.summary-compact>.subhead h2{font-size:22px}.summary-compact>.summary-pot-heading{height:17px}.summary-compact .pot-food-label img{width:clamp(64px,18vw,82px)!important;height:clamp(64px,18vw,82px)!important}.summary-compact .pot-food-label b{font-size:10px}.summary-compact>.vegetables-section,.summary-compact>.supplement-section{height:84px;min-height:84px}.summary-compact>.supplement-section{padding:4px 5px}.summary-compact>.supplement-section .compact-section-title strong{font-size:10px}.summary-compact>.supplement-section .compact-section-title small{font-size:8px}.summary-compact .supplement-table-head{grid-template-columns:15px minmax(0,1fr) 28px 23px 32px;font-size:7px}.summary-compact .supplement-table-row{grid-template-columns:15px minmax(0,1fr) 28px 23px 32px}.summary-compact .supplement-table-row b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{font-size:8px}.summary-compact>.photographer-section{height:78px;min-height:78px;padding:4px 5px;gap:4px}.summary-compact>.photographer-section .cat-art{width:68px;height:68px;flex-basis:68px}.summary-compact>.photographer-section .photo-actions{gap:3px}.summary-compact>.photographer-section .photo-action{width:78px;min-width:78px;height:48px;min-height:48px;font-size:9px}.summary-compact>.photographer-section .photo-action img{width:23px;height:23px}.summary-compact>.compact-footer{height:62px;min-height:62px;padding-inline:5px}.summary-compact>.compact-footer .checkin-button{width:166px;min-width:166px;height:54px;min-height:54px;font-size:11px}.summary-compact>.compact-footer .lock-copy strong{font-size:9px}.summary-compact>.compact-footer .lock-copy small{font-size:8px}
}
@media(min-width:431px){.screen-content{padding-inline:20px!important}}

/* C18 visual convergence: tokens and larger independent layers; behavior/state stays unchanged. */
:root{
}
body,button,input,select{font-family:var(--font-body)}
.home-v3 h2,.picker-view h2,.plate-v2 h2,.board-view h2,.summary-compact h2,
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b,
.home-v3 .home-library-v3 .library-heading strong,
.host-view h2,.host-view h3{font-family:var(--font-display);font-weight:800}
.home-v3 .hero-row h2{font-family:var(--font-display);font-size:40px;line-height:1.05;font-weight:900;letter-spacing:-.05em}
.home-v3 .home-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b,
.home-v3 .home-library-v3 .library-heading strong{position:relative;z-index:0;display:inline-block;line-height:34px;padding-inline:8px}
.home-v3 .coach-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b::before,
.home-v3 .custom-entry-card>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b::before,
.home-v3 .home-library-v3 .library-heading strong::before{content:"";position:absolute;inset:1px -8px 0;z-index:-1;border-radius:9px;transform:rotate(-1.2deg)}
.home-v3 .coach-entry>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b::before{background:#d9e9be}
.home-v3 .custom-entry-card>span:not(.entry-art):not(.entry-foods):not(.entry-add-mark) b::before{background:#c9e7f5}
.home-v3 .home-library-v3 .library-heading strong::before{background:#fbe08a}
.home-v3 .home-entry>.entry-art{top:auto;bottom:14px;overflow:visible}
.home-v3 .coach-entry>.entry-art{left:50%;width:150px;height:181px;transform:translateX(-50%)}
.home-v3 .coach-entry>.entry-art img{width:150px;height:175px;object-fit:contain}
.home-v3 .coach-entry .entry-foods{top:62px;bottom:auto;left:8px;right:8px}
.home-v3 .custom-entry-card>.entry-art{left:auto;right:4px;width:150px;height:176px;transform:none}
.home-v3 .custom-entry-card>.entry-art img{width:145px;height:170px;object-fit:contain}
.home-v3 .custom-entry-card .entry-add-mark{top:58px}
.home-v3 .home-library-v3 .library-cat{top:-78px;width:76px;height:82px}

.picker-view{grid-template-columns:70px minmax(0,1fr);column-gap:10px}
.picker-view>.food-grid{grid-template-rows:repeat(2,250px);gap:12px;align-content:start}
.picker-view .food-card{height:250px;min-height:250px;padding:8px;border-radius:16px}
.picker-view .food-card-main{gap:5px;padding:8px 8px 10px}
.picker-view .food-image{height:126px;min-height:126px;border-radius:12px}
.picker-view .food-image img{width:118px;height:118px;object-fit:contain}
.picker-view .food-card strong{min-height:20px;font-size:15px;line-height:20px}
.picker-view .food-card small{min-height:15px;font-size:11px;line-height:15px}
.picker-view .food-plus{right:14px;bottom:14px;width:44px;height:44px;min-width:44px;min-height:44px}

.plate-v2 .plate-food img{width:88px!important;height:88px!important;object-fit:contain}
.plate-v2 .plate-food span{font-size:12px;line-height:15px;white-space:nowrap}
.plate-v2 .plate-food{z-index:2}

.board-view>.scale-card{width:300px;max-width:calc(100% - 20px);height:124px;min-height:124px;flex-basis:124px;padding:7px 9px;gap:4px 7px;background:#f6f4e9}
.board-view .scale-card>img{width:100px;height:82px}
.board-view .scale-card .scale-reading{gap:4px}
.board-view .scale-card .scale-reading span{font-size:10px}
.board-view .scale-card .scale-reading strong{font-size:23px}
.board-view .scale-card .board-macro-panel{min-height:66px;padding:4px 3px;border:1.5px solid #6b7568;border-radius:10px;background:#dfead4;gap:2px}
.board-view .scale-card .board-macro-title strong{font-size:10px}
.board-view .scale-card .board-macro-title span{font-size:8px}
.board-view .scale-card .board-macro-row span{font-size:10px}
.board-view .scale-card .board-macro-row strong{font-size:18px;line-height:1.05}
.board-view .scale-card .board-macro-row small{font-size:10px}
.board-view .scale-card .board-macro-row:nth-of-type(2) strong{color:#d19232}
.board-view .scale-card .board-macro-row:nth-of-type(3) strong{color:#4f8b65}
.board-view .scale-card .board-macro-row:nth-of-type(4) strong{color:#4c83a5}

.summary-compact .pot-food-label{width:145px;min-height:105px;gap:3px}
.summary-compact .pot-food-label img{width:84px!important;height:84px!important;object-fit:contain}
.summary-compact .pot-food-label b{font-size:12px;line-height:15px}
.summary-compact>.photographer-section{min-height:90px;height:90px}
.summary-compact>.photographer-section .cat-art{width:82px;height:82px}
.summary-compact>.photographer-section .photo-actions{gap:6px}
.summary-compact>.photographer-section .photo-action{min-width:92px;width:92px;min-height:52px;height:52px;padding:7px 5px;font-size:11px}
.summary-compact>.photographer-section .photo-action img{width:27px;height:27px}
.summary-compact>.compact-footer .checkin-button{min-width:190px!important;width:190px!important;min-height:58px!important;height:58px;padding:12px 16px;font-size:13px}
.summary-compact>.compact-footer{min-height:66px;height:66px}
.global-nav .nav-item{min-width:44px;min-height:64px}
.global-nav .nav-item img{width:27px;height:27px}
.global-nav .nav-item small{font-family:var(--font-display);font-size:12px;font-weight:800}
@media(max-width:375px){
  .home-v3 .hero-row h2{font-size:36px}
  .home-v3 .coach-entry>.entry-art{width:136px;height:176px}
  .home-v3 .coach-entry>.entry-art img{width:136px;height:170px}
  .home-v3 .custom-entry-card>.entry-art{width:138px;height:172px}
  .home-v3 .custom-entry-card>.entry-art img{width:136px;height:164px}
  .picker-view{grid-template-columns:68px minmax(0,1fr);column-gap:8px}
  .picker-view .food-card{height:250px;min-height:250px}
  .picker-view .food-image{height:120px;min-height:120px}
  .picker-view .food-image img{width:112px;height:112px}
  .summary-compact .pot-food-label img{width:76px!important;height:76px!important}
  .summary-compact>.photographer-section .photo-action{min-width:78px;width:78px}
  .summary-compact>.compact-footer .checkin-button{min-width:190px!important;width:190px!important}
}

/* B01: semantic hit areas are real labels/buttons; the artwork stays compact inside them. */
.back-button,.icon-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;display:grid!important;place-items:center!important}
.back-button{padding:8px!important}
.icon-button{padding:9px!important}
.home-v3 .today-strip{height:44px!important;min-height:44px!important;flex-basis:44px!important;padding-top:0!important;padding-bottom:0!important}
.home-v3 .training-check{height:44px!important;min-height:44px!important;display:flex!important;align-items:center!important}
.home-v3 .home-search{height:44px!important;min-height:44px!important;display:flex!important;align-items:center!important}
.home-v3 .home-search input{min-height:24px!important;height:24px!important}
.summary-compact .supplement-table-row{height:44px!important;min-height:44px!important;padding:3px 4px!important}
.summary-compact .supplement-table-row input{width:15px!important;height:15px!important}
@media(max-width:375px){
  .home-v3 .home-library-v3{margin-top:13px!important}
  .home-v3 .home-search{height:44px!important;min-height:44px!important}
}

/* B02: keep the four library actions clear of the fixed navigation at narrow widths. */
@media(max-width:375px){
  .home-v3 .home-entry-grid{flex-basis:308px!important}
  .home-v3 .home-entry{min-height:308px!important}
}
@media(min-width:376px) and (max-width:390px){
  .home-v3 .home-entry-grid{flex-basis:329px!important}
  .home-v3 .home-entry{min-height:329px!important}
}

/* R18-A01: picker card body and add control are separate hit targets. */
.picker-view .food-card{display:block;position:relative;padding:0;overflow:hidden}
.picker-view .food-card-main{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;height:100%;padding:7px 7px 8px;border:0;border-radius:14px;background:transparent;color:var(--ink);text-align:left}
.picker-view .food-card-main .food-image{flex:0 0 auto;width:100%}
.picker-view .food-card-main strong,.picker-view .food-card-main small{position:relative;z-index:1;max-width:calc(100% - 34px)}
.picker-view .food-plus{z-index:2;padding:0;border:2px solid #26221d;font:inherit;line-height:1;cursor:pointer}
.picker-view .food-plus:focus-visible,.picker-view .food-card-main:focus-visible{outline:3px solid #ed9a52;outline-offset:-3px}

/* R16-B02/C07: preserve the reference home hierarchy while keeping every food label in view. */
.home-v3 .hero-row{position:relative;justify-content:center;align-items:center}
.home-v3 .hero-row>div{text-align:center}
.home-v3 .hero-row .hero-cat{position:absolute;right:1px;top:0;width:64px;height:62px;object-fit:contain}
.home-v3 .home-library-v3{position:relative;overflow:visible}
.home-v3 .home-library-v3 .library-heading{padding-right:48px}
.home-v3 .home-library-v3 .library-cat{position:absolute;right:4px;top:-29px;width:58px;height:66px;object-fit:contain;z-index:2;filter:drop-shadow(0 5px 4px rgba(92,54,35,.16))}
.home-v3 .library-examples{margin-top:-3px;height:50px;overflow:visible}
.home-v3 .library-examples button{height:50px;min-height:50px;overflow:hidden}
.home-v3 .library-examples img{width:34px!important;height:34px!important}
.home-v3 .library-examples button span{font-size:10px;line-height:1;white-space:nowrap}

/* R16-C08: picker chef slot and selected-food tray remain independent dynamic layers. */
.picker-view{position:relative}
.picker-view .picker-chef-cat{position:absolute;right:52px;top:-22px;width:72px;height:78px;object-fit:contain;z-index:0;pointer-events:none;filter:drop-shadow(0 5px 4px rgba(92,54,35,.16))}
.picker-view>.subhead,.picker-view>.category-tabs,.picker-view>.search-box{position:relative;z-index:1}
.selection-tray{z-index:3}

/* R16-C09: the plate has a separate chef/trash visual layer; foods stay state-driven. */
.plate-v2{position:relative}
.plate-v2 .plate-chef-cat{position:absolute;right:50px;top:-14px;width:76px;height:84px;object-fit:contain;z-index:0;pointer-events:none;filter:drop-shadow(0 5px 4px rgba(92,54,35,.16))}
.plate-v2 .plate-stage,.plate-v2 .plate-actions,.plate-v2>.macro-card,.plate-v2>.settlement-strip{position:relative;z-index:1}
.plate-v2 .plate-food img{width:72px!important;height:72px!important}
.plate-v2 .plate-actions button{min-width:44px;min-height:44px}
.plate-v2 .plate-actions button:last-child img{width:30px;height:30px}

/* R16-C10: put the live C/P/F current/target columns inside the scale display. */
.board-view .scale-card{display:grid;grid-template-columns:100px minmax(0,1fr);grid-template-rows:30px minmax(0,1fr);height:96px;min-height:96px;padding:6px 8px;gap:2px 6px;overflow:hidden}
.board-view .scale-card>img{grid-column:1;grid-row:1 / 3;width:94px;height:78px;object-fit:contain}
.board-view .scale-card .scale-reading{grid-column:2;grid-row:1;display:flex;flex-direction:row;align-items:baseline;gap:5px;min-width:0;overflow:hidden}
.board-view .scale-card .scale-reading span{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.board-view .scale-card .scale-reading strong{font-size:21px;white-space:nowrap}
.board-view .scale-card .scale-reading em{display:none}
.board-view .scale-card .board-macro-panel{grid-column:2;grid-row:2;width:auto;height:auto;min-height:0;padding:0;border:0;border-radius:0;background:transparent;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;overflow:hidden}
.board-view .scale-card .board-macro-title{grid-column:1/-1;margin:0;line-height:1}
.board-view .scale-card .board-macro-title strong{font-size:8px}
.board-view .scale-card .board-macro-title span{font-size:7px}
.board-view .scale-card .board-macro-row{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1px;border:0;border-left:1px solid #ead6c2;min-width:0}
.board-view .scale-card .board-macro-row:first-of-type{border-left:0}
.board-view .scale-card .board-macro-row span{font-size:8px;white-space:nowrap}
.board-view .scale-card .board-macro-row strong{font-size:14px;line-height:1.05;white-space:nowrap}
.board-view .scale-card .board-macro-row small{font-size:8px;line-height:1;white-space:nowrap}

/* R16-C11: no white food cards in the pot; table columns and photo controls stay visible. */
.summary-compact .pot-food-label{display:flex!important;flex-direction:column;align-items:center;justify-content:center;width:145px;min-height:75px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;gap:1px}
.summary-compact .pot-food-label img{width:58px!important;height:58px!important;object-fit:contain}
.summary-compact .pot-food-label b{font-size:10px;line-height:1.1;white-space:nowrap;text-shadow:0 1px 0 #fff8ef}
.summary-compact .supplement-table-head{display:grid;grid-template-columns:15px minmax(0,1fr) 27px 25px 32px;gap:2px;align-items:center;margin:0 0 2px;color:#9d725e;font-size:7px;line-height:1;white-space:nowrap}
.summary-compact .supplement-table-row{grid-template-columns:15px minmax(0,1fr) 27px 25px 32px!important;gap:2px;align-items:center}
.summary-compact .supplement-copy{min-width:0;overflow:hidden}
.summary-compact .supplement-copy b,.summary-compact .supplement-timing,.summary-compact .supplement-quantity,.summary-compact .supplement-table-row i{font-size:8px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact .photographer-section{position:relative;overflow:visible}
.summary-compact .photographer-section .photo-actions{position:absolute;right:8px;top:3px;z-index:7;display:flex;gap:4px}
.summary-compact .photographer-section .photo-action{min-width:54px;min-height:44px;padding:5px;border:1.5px solid #26221d;border-radius:12px;background:#fff0d4;color:#26221d}
.summary-compact>.compact-footer{z-index:5}

/* R16-C12: active navigation is a single black/yellow state; no teal focus ring. */
.global-nav .nav-item:focus-visible{outline:none!important;outline-offset:0}
@media(max-width:375px){.summary-compact{min-height:655px!important;height:655px!important}}

/* R16-C04: keep both synchronized macro lines readable inside the compact plate cards. */
.plate-v2>.macro-card{display:grid!important;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:1fr 1fr;align-items:center;column-gap:8px;height:48px;min-height:48px;padding:4px 9px;gap:0}
.plate-v2>.macro-card span{grid-column:1;grid-row:1 / 3;font-size:9px;white-space:nowrap}
.plate-v2>.macro-card strong{grid-column:2;grid-row:1;font-size:11px;line-height:1.1;white-space:nowrap}
.plate-v2>.macro-card small{grid-column:2;grid-row:2;font-size:8px;line-height:1.1;white-space:nowrap}

/* R16 measured corrections: fill the available screen and keep the primary CTA above nav. */
.home-v3{height:calc(100dvh - 118px)!important}
.home-v3 .entry-foods{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
.home-v3 .today-strip{margin-top:7px}
.home-v3 .home-library-v3{margin-top:23px}
.picker-view{height:calc(100dvh - 136px)!important}
.picker-view>.category-tabs{margin-top:14px!important;height:540px;align-self:start}
.summary-compact{position:relative;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);grid-template-rows:32px 18px 300px 0 150px 130px;gap:5px;padding-bottom:0}
.summary-compact>.subhead,.summary-compact>.summary-pot-heading,.summary-compact>.wood-table,.summary-compact>.summary-macros{grid-column:1/-1}
.summary-compact>.wood-table,.summary-compact .pot-stage,.summary-compact .pot-stage .scene-base{height:300px}
.summary-compact>.summary-macros{position:absolute;left:10px;right:10px;top:56px;z-index:4;height:30px;min-height:30px}
.summary-compact>.vegetables-section{grid-column:1;grid-row:5;height:115px;min-height:115px}
.summary-compact>.supplement-section{grid-column:2;grid-row:5;height:150px;min-height:150px;margin-top:20px}
.summary-compact>.photographer-section{grid-column:1/-1;grid-row:6;height:105px;min-height:105px;margin-top:25px}
.summary-compact>.compact-footer{position:absolute;right:10px;top:550px;width:45%;height:50px;min-height:50px;z-index:5}
.summary-compact>.photographer-section .cat-art{width:92px;height:90px}
.summary-compact>.photographer-section .photo-action{min-height:44px}
.summary-compact>.compact-footer .checkin-button{min-height:44px}
@media(max-width:375px){
  .home-v3{height:calc(100dvh - 118px)!important}
  .home-v3 .home-library-v3{margin-top:23px;flex-basis:136px;min-height:136px!important}
  .picker-view{height:calc(100dvh - 136px)!important}
  .summary-compact{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:30px 18px 270px 0 100px 92px}
  .summary-compact>.wood-table,.summary-compact .pot-stage,.summary-compact .pot-stage .scene-base{height:270px}
  .summary-compact>.summary-macros{top:52px;height:28px;min-height:28px}
  .summary-compact>.vegetables-section{height:100px;min-height:100px}
  .summary-compact>.supplement-section{height:120px;min-height:120px;margin-top:16px}
  .summary-compact>.photographer-section{height:92px;min-height:92px;margin-top:20px}
  .summary-compact>.compact-footer{top:505px;height:46px;min-height:46px}
}

/* R16-C05 final usability pass: keep the reference two-column lower block readable. */
.summary-compact>.summary-macros{display:none!important}
.summary-compact>.vegetables-section{display:grid!important;grid-template-columns:54px minmax(0,1fr);grid-template-rows:48px minmax(0,1fr);align-items:center;column-gap:5px;overflow:hidden}
.summary-compact>.vegetables-section .compact-section-title{grid-column:1/-1;display:flex;align-items:center;gap:5px;min-width:0!important;width:auto!important;height:48px}
.summary-compact>.vegetables-section .compact-section-title>span{min-width:0!important;gap:1px}
.summary-compact>.vegetables-section .compact-section-title .eyebrow{font-size:8px;white-space:nowrap}
.summary-compact>.vegetables-section .compact-section-title strong{font-size:10px;white-space:nowrap}
.summary-compact>.vegetables-section .veg-bowl{width:50px;height:42px;flex:0 0 50px}
.summary-compact>.vegetables-section .veg-list{grid-column:1/-1;max-width:none!important;width:100%;min-width:0;justify-content:flex-start;overflow:hidden}
.summary-compact>.vegetables-section .veg-chip{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.supplement-section{overflow:hidden}
.summary-compact>.supplement-section .compact-section-title{display:flex;align-items:center;gap:5px;min-width:0!important;width:auto!important;overflow:hidden}
.summary-compact>.supplement-section .compact-section-title>span{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .compact-section-title strong,.summary-compact>.supplement-section .compact-section-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.supplement-section .supplement-table{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .supplement-table-row{min-width:0;grid-template-columns:15px 28px minmax(0,1fr) auto}
.summary-compact>.supplement-section .supplement-copy{min-width:0;overflow:hidden}
.summary-compact>.supplement-section .supplement-copy b,.summary-compact>.supplement-section .supplement-copy small{overflow:hidden;text-overflow:ellipsis}
.summary-compact>.compact-footer{left:50%!important;right:10px!important;top:550px!important;width:auto!important;height:96px!important;min-height:96px!important;display:flex!important;flex-direction:column;align-items:stretch;justify-content:center;gap:4px;padding:5px 6px;border:2px solid #26221d;border-radius:18px;background:#fffaf4}
.summary-compact>.compact-footer .lock-copy{width:100%!important;min-width:0!important;height:auto!important;display:block!important;overflow:hidden}
.summary-compact>.compact-footer .lock-copy strong,.summary-compact>.compact-footer .lock-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.summary-compact>.compact-footer .checkin-button{align-self:center;min-width:145px!important;width:145px!important;min-height:44px!important}
@media(max-width:375px){.summary-compact>.compact-footer{top:505px!important;height:88px!important;min-height:88px!important}.summary-compact>.compact-footer .checkin-button{min-width:132px!important;width:132px!important}.summary-compact>.vegetables-section .compact-section-title strong{font-size:9px}.summary-compact>.supplement-section .supplement-table-row{grid-template-columns:14px 24px minmax(0,1fr) auto}}
