.portion-editor{position:fixed;inset:auto;left:50%;top:calc(var(--visual-viewport-top,0px) + var(--visual-viewport-height,100dvh)/2);transform:translate(-50%,-50%);margin:0;width:min(440px,calc(100% - 24px));max-height:calc(var(--visual-viewport-height,100dvh) - 24px);padding:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:0 24px 80px #0004}.portion-editor::backdrop{background:#061b12aa}.portion-editor form{margin:0;padding:0}.portion-editor header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:24px 24px 16px;border-bottom:1px solid var(--line)}.portion-editor header .eyebrow{margin:0 0 7px}.portion-editor h2{margin:0;font-size:27px;line-height:1.15;letter-spacing:-.7px}.portion-close{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;background:var(--surface-soft);color:var(--text);border:1px solid var(--line);border-radius:50%;font-size:25px}.portion-editor-body{padding:20px 24px}.portion-editor h3{margin:0 0 22px;font-size:19px;line-height:1.4}.portion-editor label{font-size:13px;margin-bottom:10px}.portion-stepper{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:10px;align-items:center}.portion-stepper button{height:54px;border-radius:13px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text);font-size:27px;font-weight:800}.portion-stepper input{min-width:0;height:54px;padding:10px;text-align:center;font-size:22px!important;line-height:1.2;border:1px solid var(--line);border-radius:13px;background:var(--page);color:var(--text);box-sizing:border-box}.portion-stepper input::-webkit-inner-spin-button{appearance:none}.portion-estimate{font-size:14px;font-weight:800;margin:17px 0 12px}.portion-editor .fineprint{font-size:12px;line-height:1.6;color:var(--text-soft)}.portion-editor .form-error:empty{display:none}.portion-editor footer{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:sticky;bottom:0;background:var(--surface);border-top:1px solid var(--line);padding:16px 24px max(16px,env(safe-area-inset-bottom))}.portion-editor footer button{width:100%;min-height:48px;padding:12px 10px;font-size:13px}.portion-editor button:disabled{opacity:.5;cursor:default}.guide-meal button.guide-portions{border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);color:var(--text);padding:9px 7px;min-height:48px;font-size:12px;line-height:1.4;font-weight:800;width:80px;flex-basis:80px;cursor:pointer}.portion-editor :focus-visible{outline:2px solid var(--rank-color);outline-offset:3px}@media(max-height:520px){.portion-editor header{padding:14px 18px 10px}.portion-editor-body{padding:12px 18px}.portion-editor h3{margin-bottom:12px}.portion-editor footer{padding:10px 18px}.portion-editor .fineprint{margin:8px 0}.portion-estimate{margin:10px 0}}
