:root{--bg: #f6f7fb;--card: #ffffff;--text: #111827;--muted: #6b7280;--border: #e5e7eb;--shadow: 0 1px 2px rgba(0, 0, 0, .06)}*{box-sizing:border-box}html{min-height:100%;font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text);min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto}#root{min-height:100vh;min-height:100dvh}.appShell{display:flex;flex-direction:row;align-items:flex-start;width:100%;min-height:100vh;min-height:100dvh;margin:0;padding:0;box-sizing:border-box}.appSidebar{flex-shrink:0;display:flex;flex-direction:column;background:var(--card);border-right:1px solid var(--border);box-shadow:var(--shadow);transition:width .2s ease;z-index:40;position:sticky;top:0;align-self:flex-start;max-height:100vh;max-height:100dvh;overflow-y:auto}.appSidebar--expanded{width:240px}.appSidebar--collapsed{width:56px}.appSidebarToggle{flex-shrink:0;margin:12px 10px 8px;padding:8px 10px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:10px;background:#f9fafb;font-size:18px;line-height:1;cursor:pointer;color:var(--text)}.appSidebarToggle:hover{background:#f3f4f6;border-color:#d1d5db}.appSidebarNav{display:flex;flex-direction:column;gap:4px;padding:4px 8px 12px;flex:1;min-height:0;overflow-y:auto}.appSidebarNavItem{display:flex;flex-direction:row;align-items:center;gap:10px;width:100%;padding:10px 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:10px;background:transparent;font-size:14px;font-weight:700;color:#475569;cursor:pointer;text-align:left}.appSidebarNavItem:hover{background:#f3f4f6}.appSidebarNavItem--active{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.appSidebarNavIcon{flex-shrink:0;width:1.5rem;text-align:center;font-size:1.15rem;line-height:1}.appSidebarNavLabel{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appSidebar--collapsed .appSidebarNavLabel{display:none}.appSidebar--collapsed .appSidebarNavItem{justify-content:center;padding:10px 8px;gap:0}.appSidebar--collapsed .appSidebarToggle{margin-left:auto;margin-right:auto;padding:8px}.appMobileMenuBtn,.appSidebarBackdrop{display:none}body.appMobileNavOpen{overflow:hidden}@media (max-width: 936px){.appSidebar{position:fixed;top:0;left:0;bottom:0;width:min(280px,86vw);max-height:100dvh;transform:translate(-105%);transition:transform .22s ease;z-index:50;align-self:auto}.appSidebar--expanded,.appSidebar--collapsed{width:min(280px,86vw)}.appSidebar--mobileOpen{transform:translate(0)}.appSidebarToggle{display:none}.appSidebar--collapsed .appSidebarNavLabel,.appSidebar .appSidebarNavLabel{display:block}.appSidebar--collapsed .appSidebarNavItem{justify-content:flex-start;padding:10px 12px;gap:10px}.appSidebarBackdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;margin:0;padding:0;border:0;background:#0f172a80;cursor:pointer;opacity:0;pointer-events:none}.appSidebarBackdrop--visible{display:block;opacity:1;pointer-events:auto}.appMobileMenuBtn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:10px;background:#f9fafb;font-size:20px;line-height:1;color:var(--text);cursor:pointer}.appMobileMenuBtn:hover{background:#f3f4f6}.appMainColumn{padding:10px 12px;width:100%}.header{padding:12px;border-radius:12px}.headerTitle{font-size:1.35rem;line-height:1.2;min-width:0}.headerTitleRow{display:flex;flex-direction:row;align-items:center;gap:10px;min-width:0;width:100%}.headerTop{flex-direction:column;align-items:stretch;gap:12px}.headerTop:not(:has(.headerControls .searchWrap)){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title title" "badge lang";align-items:center;gap:8px 10px}.headerTop:not(:has(.headerControls .searchWrap)) .headerTopLeft{display:contents}.headerTop:not(:has(.headerControls .searchWrap)) .headerTitleRow{grid-area:title;width:auto;min-width:0}.headerTop:not(:has(.headerControls .searchWrap)) .activePatientBadge{grid-area:badge;width:auto;max-width:min(100%,300px);justify-self:start}.headerTop:not(:has(.headerControls .searchWrap)) .headerControls{grid-area:lang;width:auto;flex-shrink:0;margin-left:0;justify-self:end;align-self:center;overflow-x:visible}.headerTopLeft{flex-direction:column;align-items:stretch;gap:10px;width:100%}.headerControls{margin-left:0;width:100%;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;justify-content:flex-start;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.headerControls::-webkit-scrollbar{display:none}.headerControls .langSelectWrap,.headerControls .searchWrap{width:auto;flex:0 1 auto;min-width:0;flex-direction:column;align-items:stretch;gap:4px;flex-wrap:nowrap}.headerControls .langSelectLabel{font-size:10px;line-height:1.2;white-space:nowrap}.headerControls .langSelect{width:100%;min-width:4.25rem;max-width:6.5rem;padding:7px 22px 7px 8px;font-size:11px;background-position:calc(100% - 10px) calc(50% - 2px),calc(100% - 6px) calc(50% - 2px)}.headerControls .langSelectWrap:first-child .langSelect{max-width:5.25rem}.headerControls .langSelectWrap:nth-child(2) .langSelect{max-width:7rem}.headerControls .searchInputWrap{width:auto}.headerControls .searchInput{width:min(92px,24vw);min-width:72px;max-width:none;padding:7px 26px 7px 8px;font-size:11px;box-sizing:border-box}.headerControls .filterButton{width:auto;flex-shrink:0;align-self:flex-end;padding:7px 10px;font-size:11px;white-space:nowrap}.langSelectWrap,.searchWrap{flex-wrap:nowrap}.activePatientBadge{max-width:100%;width:100%}.content{padding:12px;border-radius:12px}.tableScrollHint{display:block;margin:0 0 8px;font-size:12px;font-weight:600;color:var(--muted);line-height:1.35}.nutrientsMobilePager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;flex-wrap:wrap}.nutrientsMobilePagerMeta{flex:1 1 auto;min-width:0;text-align:center;font-size:11px;font-weight:600;color:var(--muted);line-height:1.3}.nutrientsMobilePagerBtn{flex:0 0 auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.nutrientsMobilePagerBtn:disabled{opacity:.45;cursor:not-allowed}.nutrientsMobilePagerBtn:not(:disabled):hover{background:#f3f4f6}.tableWrap--data{overflow:auto;-webkit-overflow-scrolling:touch;max-width:100%;max-height:min(58dvh,calc(100dvh - 17rem));border:1px solid var(--border);border-radius:12px;background:#fff}.tableWrap--data.tableWrap--nutrientsSplit{overflow-x:hidden;overflow-y:auto}.tableWrap--data .table--wide{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.tableWrap--data .table th,.tableWrap--data .table td{white-space:nowrap}.tableWrap--data .table thead th{position:sticky;top:0;z-index:4;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.tableWrap--data .table th:first-child,.tableWrap--data .table td:first-child{min-width:2.5rem}.tableWrap--data:not(.tableWrap--nutrientsSplit) .nutrientsNameCell{min-width:140px;max-width:200px}.filterModal{width:min(100%,calc(100vw - 24px));padding:16px 14px}.filterRow{grid-template-columns:minmax(0,1fr) auto minmax(0,1.15fr) 2.125rem;gap:6px}.filterOpWrap{width:2.5rem}.filterOp{padding:8px 14px 8px 2px;font-size:12px}.filterSelect:not(.filterOp){padding:8px;font-size:12px}.filterInput{padding:8px;font-size:12px}}@media (max-width: 936px) and (orientation: landscape){.header{padding:8px 10px}.headerTop:not(:has(.headerControls .searchWrap)){flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 10px}.headerTop:not(:has(.headerControls .searchWrap)) .headerTopLeft{flex-direction:row;flex-wrap:wrap;align-items:center;width:auto;flex:0 1 auto;gap:8px 10px}.headerTop:not(:has(.headerControls .searchWrap)) .headerTitle{font-size:1.2rem}.headerTop:not(:has(.headerControls .searchWrap)) .activePatientBadge{width:auto;max-width:min(220px,34vw)}.headerTop:has(.headerControls .searchWrap){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"primary controls";align-items:center;gap:6px 8px}.headerTop:has(.headerControls .searchWrap) .headerTopLeft{display:flex;flex-direction:row;align-items:center;gap:8px;grid-area:primary;min-width:0;width:auto}.headerTop:has(.headerControls .searchWrap) .headerTitleRow{width:auto;min-width:0}.headerTop:has(.headerControls .searchWrap) .activePatientBadge{width:auto;max-width:min(168px,24vw);gap:6px;padding:4px 6px 4px 4px}.headerTop:has(.headerControls .searchWrap) .activePatientBadgeAvatar{flex-basis:28px;width:28px;min-width:28px;max-width:28px;height:28px}.headerTop:has(.headerControls .searchWrap) .activePatientBadgeAvatarLetter{font-size:12px}.headerTop:has(.headerControls .searchWrap) .activePatientBadgeName{font-size:11px}.headerTop:has(.headerControls .searchWrap) .activePatientBadgeMeta{font-size:10px;margin-top:0}.headerTop:has(.headerControls .searchWrap) .activePatientBadgeEdit{width:28px;height:28px;font-size:13px;border-radius:8px}.headerTop:has(.headerControls .searchWrap) .headerTitle{font-size:1.05rem}.headerTop:has(.headerControls .searchWrap) .headerControls{grid-area:controls;width:auto;min-width:0;margin-left:0;flex:none;justify-content:flex-end;flex-wrap:nowrap;gap:5px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.headerTop:has(.headerControls .searchWrap) .headerControls::-webkit-scrollbar{display:none}.headerTop:has(.headerControls .searchWrap) .headerControls .langSelectWrap,.headerTop:has(.headerControls .searchWrap) .headerControls .searchWrap{flex:0 1 auto;min-width:0;gap:2px}.headerTop:has(.headerControls .searchWrap) .headerControls .langSelectLabel{font-size:9px;line-height:1.1}.headerTop:has(.headerControls .searchWrap) .headerControls .langSelect{min-width:4.5rem;max-width:5.75rem;padding:5px 20px 5px 6px;font-size:11px;background-position:calc(100% - 8px) calc(50% - 2px),calc(100% - 5px) calc(50% - 2px)}.headerTop:has(.headerControls .searchWrap) .headerControls .langSelectWrap:first-child .langSelect{max-width:5rem}.headerTop:has(.headerControls .searchWrap) .headerControls .langSelectWrap:nth-child(2) .langSelect{max-width:6.25rem}.headerTop:has(.headerControls .searchWrap) .headerControls .searchInput{width:min(104px,18vw);min-width:72px;padding:5px 22px 5px 6px;font-size:11px}.headerTop:has(.headerControls .searchWrap) .headerControls .filterButton{padding:5px 8px;font-size:11px;border-radius:10px}.recipesColumnFilterBar{padding:5px 8px;gap:6px 8px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.recipesColumnFilterBar::-webkit-scrollbar{display:none}.recipesColumnFilterField{flex:0 0 auto;font-size:11px;gap:5px}.recipesColumnFilterSelect{min-width:7.5rem;max-width:10rem;padding:5px 22px 5px 6px;font-size:11px}.recipesColumnFilterMeta--idle{display:none}.recipeGramSliderWrap{min-width:0;padding:6px 10px}.recipesScreen{gap:6px}.tableWrap--data{max-height:min(44dvh,calc(100dvh - 9rem))}.tableWrap--nutrientsSplit{--nutrients-pin-id-w: 1.65rem;--nutrients-pin-name-w: 4.75rem}}@media (max-width: 936px) and (orientation: portrait){.recipesControlsGroup--left{flex:3 1 0;min-width:0;gap:5px}.recipesControlsGroup--right{flex:1 1 0;min-width:0}.recipesControlsGroup--right .recipesActionBtn{width:100%}.usersSaveBtn.recipesActionBtn{flex:1 1 0;min-width:0;min-height:2.25rem;padding:8px 6px;font-size:12px;line-height:1.2;border-radius:8px}.recipeGramSliderWrap{padding:6px 8px;gap:6px}.recipeGramValueGroup{gap:3px;min-width:0}.recipeGramStepBtn{min-width:2.1rem;min-height:2.1rem;font-size:16px}.recipeGramStepValue{min-width:2rem;font-size:13px}}.appMainColumn{flex:1;min-width:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:visible;padding:16px}.header{background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:20px 18px;position:sticky;top:0;z-index:30;flex-shrink:0;isolation:isolate}.header h1,.headerTitle{margin:0;font-size:28px;letter-spacing:-.02em}.header p{margin:0;color:var(--muted)}.screenTabs{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px}.screenTab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:#fff;color:#475569;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.screenTab--active{background:#eb8225;border-color:#eb8225;color:#fff}.headerTop{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.headerControls{display:flex;align-items:center;gap:12px;margin-left:auto;flex-wrap:wrap}.filterButton{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:#fff;color:var(--text);border-radius:12px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 1px 2px #0000000a}.filterButton:hover{border-color:#d1d5db}.filterButton:disabled{opacity:.5;cursor:not-allowed}.filterBadge{margin-left:8px;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:#eb8225;color:#fff;font-size:11px;font-weight:700}.langSelectWrap,.searchWrap{display:flex;align-items:center;gap:10px}.searchInputWrap{position:relative}.searchInput{width:220px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);font-size:13px;font-weight:500;padding:10px 34px 10px 12px;box-shadow:0 1px 2px #0000000a}.searchInput:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px;border-color:#2563eb8c}.searchClear{position:absolute;top:50%;right:8px;transform:translateY(-50%);border:0;background:transparent;color:#6b7280;cursor:pointer;width:20px;height:20px;border-radius:50%;line-height:1;font-size:12px}.searchClear:hover{background:#f3f4f6}.langSelectLabel{font-size:13px;color:var(--muted);font-weight:700;-webkit-user-select:none;user-select:none}.langSelect{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:10px 36px 10px 12px;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--text);font-size:13px;font-weight:600;box-shadow:0 1px 2px #0000000a;line-height:1;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.langSelect:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px;border-color:#2563eb8c}.langSelect:hover{border-color:#d1d5db}.content{margin-top:2px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:18px;flex:1 1 auto;min-height:auto;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:visible}.status{color:var(--muted);padding:10px 0}.status--error{color:#b91c1c;font-weight:600}.hint{margin-top:6px;font-weight:400;color:var(--muted);line-height:1.4}.tableWrap--data{overflow:auto;-webkit-overflow-scrolling:touch;max-height:min(78vh,880px)}.tableWrap--data .table--wide{border-collapse:separate;border-spacing:0}.tableWrap--data .table thead th{position:sticky;top:0;z-index:4;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.tableWrap--data .table--wide.table--rda{width:100%;min-width:100%}.table--rda{width:100%;min-width:0;table-layout:fixed}.table--rda th,.table--rda td{padding:6px 8px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;box-sizing:border-box}.table--rda [data-col=idnut]{width:8%;min-width:0;max-width:none}.table--rda [data-col=otronom]{width:34%;min-width:0;max-width:none}.table--rda [data-col=medida]{width:14%;min-width:0;max-width:none}.table--rda [data-col=sexo]{width:8%;min-width:0;max-width:none}.table--rda [data-col=desde],.table--rda [data-col=hasta],.table--rda [data-col=cant]{width:12%;min-width:0;max-width:none}.table--rda [data-col=ul]{width:10%;min-width:0;max-width:none}.rdaUlCell{padding:4px 6px}.rdaUlInput{width:100%;min-width:0;box-sizing:border-box;padding:4px 6px;border:1px solid var(--border);border-radius:4px;font:inherit;font-size:12px;background:var(--surface);color:var(--text)}.rdaUlInput:focus{outline:none;border-color:var(--accent, #2563eb);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent, #2563eb) 35%,transparent)}.rdaUlInput:disabled{opacity:.6}.tableWrap{overflow:auto;flex:1 1 auto;min-height:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table thead{position:sticky;top:0;z-index:10}.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;font-size:13px}.table th{background:#f9fafb;color:#374151;font-weight:700}.thButton{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;color:inherit;font:inherit;font-weight:700;cursor:pointer}.sortArrow{color:#6b7280;font-size:12px;line-height:1;min-width:10px}.table tr:hover td{background:#fafafa}.nutrientsNameCell{max-width:10rem}.nutrientsNameText{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table--nutrients{--nutrients-sticky-id-w: 2.75rem;--nutrients-sticky-name-w: 10rem}.table--nutrients thead{position:static}.table--nutrients tbody .nutrientsStickyCol{position:sticky;z-index:2;background:#fff}.table--nutrients tbody tr:hover .nutrientsStickyCol{background:#fafafa}.tableWrap--data .table--nutrients thead th{position:sticky;top:0;z-index:4;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.table--nutrients thead .nutrientsStickyCol{position:sticky;top:0;z-index:12;background:#f9fafb;will-change:transform}.table--nutrients .nutrientsStickyCol--id{width:var(--nutrients-sticky-id-w);min-width:var(--nutrients-sticky-id-w);max-width:var(--nutrients-sticky-id-w)}.table--nutrients .nutrientsStickyCol--name{min-width:var(--nutrients-sticky-name-w);max-width:var(--nutrients-sticky-name-w);box-shadow:4px 0 8px -4px #0f172a24}.table--nutrients tbody .nutrientsStickyCol--id{left:0}.table--nutrients tbody .nutrientsStickyCol--name{left:var(--nutrients-sticky-id-w)}.table--nutrients thead .nutrientsStickyCol--name{box-shadow:4px 0 8px -4px #0f172a24,0 1px 0 var(--border)}@media (max-width: 936px){.table--nutrients{--nutrients-sticky-name-w: 8.75rem}.tableWrap--nutrientsSplit{--nutrients-pin-id-w: 1.85rem;--nutrients-pin-name-w: 3.5rem}}@media (min-width: 937px){.appShell{align-items:stretch}.appMainColumn{min-height:100dvh;box-sizing:border-box}.appMainColumn:has(.usersScreen){height:100dvh;max-height:100dvh;overflow:hidden}.content{flex:1 1 auto;min-height:0}.content>.usersScreen{flex:1 1 auto;min-height:0;overflow:hidden}.content:has(>.usersScreen){overflow:hidden}.content>.tableWrap--data{flex:0 1 auto;min-height:0;max-height:min(calc(100dvh - 11rem),880px);border:1px solid var(--border);border-radius:12px;background:#fff}.tableScrollHint{display:none}.table--nutrients{--nutrients-sticky-id-w: 2.5rem;--nutrients-sticky-name-w: 10rem}.table--nutrients .nutrientsStickyCol--name{width:var(--nutrients-sticky-name-w)}.tableWrap--data .table--nutrients .nutrientsNameCell{max-width:var(--nutrients-sticky-name-w);min-width:0}.usersScreen{gap:10px;padding-bottom:0;overflow:hidden;max-height:none}.usersScrollBody{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.usersScreen .usersSection{padding:10px 14px}.usersScreen .usersSectionTitle{margin-bottom:8px}.usersTripleSections{--users-triple-panel-h: min(290px, 36vh);gap:12px}.usersTripleSections .usersMacroTableWrap,.usersTripleSections .usersResultsGrid,.usersTripleSections .usersRdaTableWrap{flex:1 1 auto;min-height:var(--users-triple-panel-h);max-height:var(--users-triple-panel-h);overflow:auto;margin-top:10px}.usersTripleSections .usersSection--results .usersResultsGrid{align-content:start}.usersSaveRow{position:static;z-index:6;flex-shrink:0;margin-top:0;padding:12px 14px;border-top:2px solid #e2e8f0;background:#f8fafc;box-shadow:none}.usersSaveRow .usersSaveBtn{min-width:9.5rem;padding:12px 32px;font-size:16px;box-shadow:0 2px 10px #d8741f4d}}.filterOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.filterModal{position:relative;width:min(860px,100%);max-height:min(85vh,85dvh);overflow:auto;background:#fff;border-radius:16px;border:1px solid var(--border);box-shadow:0 24px 80px #00000040;padding:22px;font-size:14px;line-height:1.4;-webkit-text-size-adjust:100%;text-size-adjust:100%}.filterTitle{margin:0 0 16px;font-size:18px;font-weight:700;line-height:1.25}.filterClose{position:absolute;top:12px;right:12px;border:0;background:transparent;color:#6b7280;font-size:18px;line-height:1;cursor:pointer;padding:4px}.filterRows{display:flex;flex-direction:column;gap:10px}.filterRow{display:grid;grid-template-columns:minmax(0,1.5fr) auto minmax(0,1fr) auto;gap:8px;align-items:center}.filterSelect,.filterInput{border:1px solid var(--border);border-radius:10px;padding:9px 10px;font-size:13px;min-width:0}.filterInput{width:100%}.filterOpWrap{width:2.75rem;flex-shrink:0}.filterOp{width:100%;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:9px 16px 9px 4px;text-align:center;text-align-last:center;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#6b7280 50%),linear-gradient(135deg,#6b7280 50%,transparent 50%);background-position:calc(100% - 7px) calc(50% - 2px),calc(100% - 4px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.filterRemove{border:1px solid var(--border);background:#fff;color:#6b7280;border-radius:10px;width:34px;height:34px;font-size:14px;cursor:pointer}.filterAdd{margin-top:12px;border:1px dashed #cbd5e1;background:#f8fafc;color:#334155;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer}.filterActions{margin-top:16px;display:flex;justify-content:flex-end;gap:10px}.filterSecondary,.filterPrimary{border-radius:10px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;border:1px solid var(--border)}.filterSecondary{background:#fff;color:#374151}.filterPrimary{background:#eb8225;border-color:#eb8225;color:#fff}.recipesScreen{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:auto;overflow:visible}.recipesTablePair{flex:0 1 auto;min-height:auto;display:flex;flex-direction:column;overflow:visible}.recipesColumnFilterBar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:#f8fafc}.recipesColumnFilterToggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#0f172a;cursor:pointer}.recipesColumnFilterToggle input{margin:0}.recipesColumnFilterMeta{font-size:12px;color:#475569}.recipesLayoutBtn{border:1px solid #fdba74;background:#fff7ed;color:#9a3412;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;line-height:1.2;cursor:pointer;white-space:nowrap}.recipesLayoutBtn:hover{background:#ffedd5}.recipesColumnFilterField{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#334155}.recipesColumnFilterSelect{min-width:150px;max-width:280px}.recipesInlineMultiSelect{display:flex;align-items:center;gap:6px;min-height:38px;max-width:min(62vw,640px);padding:5px 6px;border:1px solid var(--border);border-radius:10px;background:#fff;overflow-x:auto;overflow-y:hidden;white-space:nowrap}.recipesInlineMultiSelect--disabled{background:#f8fafc;color:#94a3b8}.recipesInlineMultiSelectOption{flex:0 0 auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #dbe3ef;border-radius:999px;background:#f8fafc;color:#334155;padding:5px 10px;font-size:12px;font-weight:700;line-height:1.2;cursor:pointer}.recipesInlineMultiSelectOption:hover{background:#eef2ff;border-color:#c7d2fe}.recipesInlineMultiSelectOption--selected{background:#eb8225;border-color:#eb8225;color:#fff}.structureAccent{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:800}.structureAccent--tejidos{background:#dcfce7;border-color:#86efac;color:#166534}.structureAccent--articulaciones{background:#ffedd5;border-color:#fdba74;color:#c2410c}.recipesInlineMultiSelectOption.structureAccent--tejidos:hover{background:#bbf7d0;border-color:#4ade80}.recipesInlineMultiSelectOption.structureAccent--articulaciones:hover{background:#fed7aa;border-color:#fb923c}.recipesInlineMultiSelectOption--selected.structureAccent--tejidos,.recipesInlineMultiSelectOption--selected.structureAccent--articulaciones{color:#0f172a}.recipesInlineMultiSelectEmpty{display:block;padding:0 6px;font-size:12px;font-weight:600}.recipesStructureRiskInline{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:min(54vw,620px);padding:4px 8px;border:1px solid #fed7aa;border-radius:999px;background:#fff7ed;white-space:nowrap}.recipesStructureRiskToggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #fdba74;border-radius:999px;background:#ffedd5;color:#9a3412;padding:2px 8px;font-size:11px;font-weight:800;cursor:pointer;line-height:1.2}.recipesStructureRiskToggle:hover{background:#fed7aa}.recipesStructureRiskInlineText{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:#7c2d12}.recipesStructureRiskInlineText strong:first-of-type{color:#b45309}.recipesStructureRiskInlineText strong:last-of-type{color:#b91c1c}.recipesTableBlock{flex-shrink:0}.recipesTableWrap{border-radius:12px;border:1px solid var(--border);background:#fff}.recipesTableWrap--aligned{scrollbar-gutter:stable}.recipesTableScroll{--recipes-thead-h: 40px;--recipes-row-h: 34px;flex:0 1 auto;min-width:0;width:100%;max-height:min(calc(var(--recipes-thead-h) + var(--recipes-visible-rows, 10) * var(--recipes-row-h)),70dvh);overflow-x:auto;overflow-y:auto;scrollbar-gutter:stable}.recipesTableScroll.recipesTableScroll--ingredients,.recipesTotalsBlock .recipesTotalsTableScroll{scrollbar-gutter:auto}.recipesTableScroll.recipesTableScroll--ingredients{scrollbar-width:thin}.recipesTotalsBlock .recipesTotalsTableScroll{scrollbar-width:none;-ms-overflow-style:none}.recipesTableScroll.recipesTableScroll--ingredients::-webkit-scrollbar:horizontal,.recipesTotalsBlock .recipesTotalsTableScroll::-webkit-scrollbar:horizontal{height:8px}.recipesTableScroll.recipesTableScroll--ingredients::-webkit-scrollbar-thumb:horizontal,.recipesTotalsBlock .recipesTotalsTableScroll::-webkit-scrollbar-thumb:horizontal{background:transparent}.recipesTableScroll.recipesTableScroll--ingredients::-webkit-scrollbar-track:horizontal,.recipesTotalsBlock .recipesTotalsTableScroll::-webkit-scrollbar-track:horizontal{background:transparent}.recipesTotalsBlock .recipesTotalsTableScroll::-webkit-scrollbar:vertical{width:0;display:none}.recipesTableScroll.recipesTableScroll--ingredients{flex:0 0 auto;--recipes-ingredients-h: calc( var(--recipes-thead-h) + var(--recipes-visible-rows, 4) * var(--recipes-row-h) );min-height:min(var(--recipes-ingredients-h),70dvh);max-height:min(var(--recipes-ingredients-h),70dvh)}.recipesTableScroll .recipesAlignedTable thead{position:sticky;top:0;z-index:12}.recipesTableScroll .recipesAlignedTable thead tr{height:var(--recipes-thead-h);box-sizing:border-box}.recipesTableScroll .recipesAlignedTable tbody tr{height:var(--recipes-row-h);box-sizing:border-box}.recipesSectionDivider{flex-shrink:0;margin:0;padding:7px 12px;border-radius:8px;border:1px solid #fdba74;background:#ffedd5;text-align:center}.recipesSectionDividerTitle{margin:0;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#9a3412;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipesAlignedTable{table-layout:fixed;width:max-content;min-width:100%;max-width:none}.recipesAlignedTable .recipesCell{white-space:nowrap;overflow:hidden;padding:8px 4px;vertical-align:middle}.recipesAlignedTable .recipesCell--name{text-overflow:ellipsis}.recipesAlignedTable .recipesThButton{min-width:0;width:100%}.recipesAlignedTable .recipesThButton>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipesClickRow{cursor:pointer}.recipesRowSelected td{background:#dbeafe!important}.recipesAlignedTable tr.recipesRowSelected:hover td{background:#bfdbfe!important}.recipeGramSliderWrap{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;background:#f9fafb;padding:8px 12px;width:100%;min-width:0;min-height:0;box-sizing:border-box;contain:layout style}.recipesControlsRow{display:flex;flex-direction:column;align-items:stretch;gap:8px}.recipesControlsActions{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0}.recipesControlsGroup{display:inline-flex;align-items:center;gap:8px;min-width:0}.recipesControlsGroup--left{flex:0 1 auto}.recipesControlsGroup--right{flex:0 0 auto}.usersSaveBtn.recipesActionBtn{padding:7px 12px;font-size:13px;border-radius:8px;white-space:nowrap;border-color:#eb8225;background:#eb8225}.usersSaveBtn.recipesActionBtn:hover{background:#d8741f;border-color:#d8741f}.recipesActionBtnLabel--short{display:none}@media (max-width: 936px) and (orientation: portrait){.recipesControlsGroup--left .recipesActionBtnLabel--full,.recipesControlsGroup--right .recipesActionBtnLabel--full{display:none}.recipesControlsGroup--left .recipesActionBtnLabel--short,.recipesControlsGroup--right .recipesActionBtnLabel--short{display:inline}}.recipePickerModal{width:min(760px,100%)}.recipeSaveModal{width:min(480px,100%)}.recipeSaveForm{display:flex;flex-direction:column;gap:14px}.recipeSaveField{display:flex;flex-direction:column;gap:6px}.recipeSaveLabel{font-size:13px;font-weight:600;color:#374151}.recipeSaveInput{border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:14px;width:100%;box-sizing:border-box}.recipeSavePublicRow{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.recipeSavePublicRow input[type=checkbox]{width:18px;height:18px;cursor:pointer}.recipeSaveHint{margin:-6px 0 0;font-size:12px;line-height:1.45;color:var(--muted)}.recipeSaveActions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.recipeIntakeMismatchText,.recipeIntakeMismatchHint{margin:0 0 12px;font-size:14px;line-height:1.45;color:var(--muted)}.recipeIntakeOverrideNotice{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:#ffc1071f;border:1px solid rgba(255,193,7,.35);font-size:14px;line-height:1.45}.filterCancelBtn{border:1px solid var(--border);background:#fff;color:#374151;border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer}.filterCancelBtn:hover{background:#f3f4f6}.recipePickerStatus{margin:8px 0;font-size:14px;color:var(--muted)}.recipePickerList{display:flex;flex-direction:column;gap:10px;max-height:55vh;overflow:auto}.recipePickerRow{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#f8fafc}.recipePickerMeta{flex:1 1 auto;min-width:0;font-size:14px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipePickerActions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.recipePickerActionBtn{padding:7px 10px}.recipePickerDeleteBtn{color:#b91c1c;border-color:#fecaca;background:#fff5f5}.recipePickerDeleteBtn:hover{background:#ffe4e6}.recipeGramSliderLabel{flex:0 0 auto;font-size:13px;font-weight:800;color:var(--text);white-space:nowrap}.recipeGramSliderInput{flex:1 1 auto;min-width:0;margin:0;vertical-align:middle}.recipeGramValueGroup{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;min-width:4.5rem}.recipeGramStepBtn{flex:0 0 auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);font-size:18px;font-weight:800;line-height:1;padding:0;min-width:2.5rem;min-height:2.5rem;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.recipeGramStepBtn:hover:not(:disabled){border-color:#d1d5db;background:#f9fafb}.recipeGramStepBtn:disabled{opacity:.4;cursor:not-allowed}.recipeGramStepValue{flex:0 0 auto;min-width:2.5rem;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;text-align:center;color:var(--text)}.recipeGramUnit{font-weight:800;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}.recipeGramDeleteBtn{flex:0 0 auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:#fff;color:#374151;border-radius:10px;padding:6px 12px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}.recipeGramDeleteBtn:hover:not(:disabled){border-color:#d1d5db;background:#f9fafb}.recipeGramDeleteBtn:disabled{opacity:.45;cursor:not-allowed;background:#f3f4f6;color:#9ca3af}.recipesThExceeded{color:#d11a2a!important}.recipesThMetRda{color:#15803d!important}.recipesThShort{color:#1d4ed8!important}.recipesRdaExceeded{color:#d11a2a!important;font-weight:700}.recipesRdaMetRda{color:#15803d!important;font-weight:700}.recipesRdaDeficit{color:#1d4ed8!important;font-weight:700}.recipesTotalsBlock{flex-shrink:0;min-width:0}.recipesTotalsBlock .recipesTotalsTableScroll{--recipes-thead-h: 40px;--recipes-row-h: 34px;flex:0 0 auto;min-width:0;width:100%;overflow-x:auto;overflow-y:auto;height:calc(var(--recipes-thead-h) + var(--recipes-totals-visible-rows, 2) * var(--recipes-row-h) + 8px);max-height:min(calc(var(--recipes-thead-h) + var(--recipes-totals-visible-rows, 2) * var(--recipes-row-h) + 8px),70dvh)}.recipesTotalsBlock .recipesAlignedTable thead tr{height:var(--recipes-thead-h);box-sizing:border-box}.recipesTotalsBlock .recipesAlignedTable tbody tr{height:var(--recipes-row-h);box-sizing:border-box}.recipesTotalsBlock .recipesAlignedTable thead th,.recipesTotalsBlock .recipesAlignedTable tbody td,.recipesTotalsBlock .recipesAlignedTable .recipesCell{box-sizing:border-box;font-size:13px;vertical-align:middle;line-height:1.2;padding:8px 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.recipesTotalsBlock .table thead th{position:static}.recipesTotalsThNutrient{cursor:context-menu}.recipeExcDefModal{width:min(560px,100%)}.recipeExcDefDl{margin-top:8px}.recipeExcDefDd--pre{white-space:pre-wrap;word-break:break-word}.recipeExcDefDd a{word-break:break-all}.organsScreen{flex:1 1 auto;min-height:auto;display:flex;flex-direction:column;gap:16px;overflow:auto}.organsToolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px}.organsField{display:flex;flex-direction:column;gap:6px;min-width:200px}.organsFieldLabel{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.organsSelect{min-width:220px}.organsListPair{display:grid;grid-template-columns:1fr 1fr;gap:16px;flex:1;min-height:200px}.organsListPair--triple{grid-template-columns:1fr 1fr 1fr}@media (max-width: 720px){.organsListPair{grid-template-columns:1fr}}.organsListBox{display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);border-radius:12px;background:#fff;overflow:hidden}.organsListBoxHeader{padding:10px 12px;font-size:13px;font-weight:800;flex-shrink:0}.organsListBox--good .organsListBoxHeader{background:#ecfdf5;color:#047857;border-bottom:1px solid #a7f3d0}.organsListBox--bad .organsListBoxHeader{background:#fef2f2;color:#b91c1c;border-bottom:1px solid #fecaca}.organsListBox--warn .organsListBoxHeader{background:#fff7ed;color:#c2410c;border-bottom:1px solid #fdba74}.organsListBoxBody{margin:0;padding:8px 0;list-style:none;overflow:auto;flex:1;min-height:120px;max-height:min(42vh,360px);font-size:13px;line-height:1.45}.organsListBoxBody li{padding:6px 12px;border-bottom:1px solid #f3f4f6;cursor:context-menu}.organsListBoxBody li:hover{background:#f8fafc}.organsListBoxBody li:last-child{border-bottom:none}.organContextMenu{position:fixed;z-index:140;min-width:190px;max-width:min(320px,90vw);max-height:220px;overflow:auto;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 40px #0f172a38}.organContextMenuHeader{padding:8px 10px;font-size:12px;color:var(--muted);border-bottom:1px solid #eef2f7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.organContextMenuBody{display:flex;flex-direction:column}.organContextMenuBtn{border:0;border-bottom:1px solid #f1f5f9;background:#fff;text-align:left;padding:9px 10px;font-size:13px;cursor:pointer}.organContextMenuBtn:last-child{border-bottom:0}.organContextMenuBtn:hover{background:#eff6ff}.structuresMeta{margin-bottom:0}.usersScreen{flex:1 1 auto;min-height:auto;display:flex;flex-direction:column;gap:20px;overflow:auto;max-height:none;padding-bottom:10px}.usersScrollBody{display:flex;flex-direction:column;gap:12px;min-width:0}.usersToolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.usersUserSelect{min-width:min(100%,320px);max-width:100%}.reportsBarsWrap{height:220px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:12px 10px 8px;display:flex;align-items:flex-end;gap:6px;overflow-x:auto}.reportsBarItem{width:42px;min-width:42px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.reportsBar{width:100%;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#f7b267,#eb8225)}.reportsBarLabel{width:100%;font-size:11px;color:var(--muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reportsBarPct{font-size:10px;color:var(--muted);text-align:center;line-height:1.2}.reportsMacroHint{margin:0 0 10px;font-size:13px;color:var(--muted)}.usersSection{border:1px solid var(--border);border-radius:12px;padding:14px 16px;background:#fafbfc}.usersSection--results{background:#f8fafc}.usersTripleSections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.usersTripleSections .usersSection{margin:0;min-width:0;display:flex;flex-direction:column;min-height:0}.usersSectionTitle{margin:0 0 12px;font-size:15px;font-weight:800;color:#1e293b}.usersSectionHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.usersSectionHeader .usersSectionTitle{margin-bottom:0}.usersSectionHeader--compact{align-items:baseline}.usersSectionMeta{margin-left:auto;font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}.usersSectionHint{margin:0 0 10px;font-size:13px;color:var(--muted);line-height:1.45}.usersGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 16px}.usersField{display:flex;flex-direction:column;gap:6px;min-width:0}.usersField--grow{flex:1}.usersField--wide{max-width:min(100%,520px)}.usersMacroControls{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-end}.usersTripleSections .usersMacroControls .usersInput{max-width:100%}.usersMacroTableWrap{margin-top:10px;border:1px solid var(--border);border-radius:10px;background:#fff;max-height:220px;overflow:auto}.usersMacroTable{width:100%;border-collapse:collapse;font-size:13px}.usersMacroTable thead th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#334155;text-align:left;font-weight:800;padding:0;border-bottom:1px solid var(--border)}.usersMacroTable td{padding:7px 10px;border-bottom:1px solid #eef2f7;color:#1f2937;font-variant-numeric:tabular-nums}.usersMacroTableRow{cursor:pointer}.usersMacroTableRow:hover{background:#f8fafc}.usersMacroTableRow--selected{background:#eff6ff}.usersMacroThButton{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#334155;padding:8px 10px;font-size:12px;font-weight:800;cursor:pointer}.usersMacroThButton:hover{background:#eef2f7}.usersMacroThButton--active{color:#1d4ed8}.usersMacroThArrow{min-width:1ch;text-align:right;font-size:11px}.usersFieldLabel{font-size:12px;font-weight:700;color:var(--muted)}.usersFieldHint{font-weight:500;color:#9ca3af}.usersInput{padding:8px 10px;border-radius:10px;border:1px solid var(--border);font-size:14px;background:#fff;color:var(--text);width:100%;min-width:0}.usersInput:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px;border-color:#2563eb8c}.usersMuted{color:var(--muted);font-size:13px}.usersActivityTableHead{display:grid;grid-template-columns:minmax(320px,1fr) 110px 92px auto;gap:8px;align-items:center;margin:4px 0 6px;padding:0 8px;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.usersActivityRowsList{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.usersActivityRow{border:1px solid var(--border);border-radius:10px;background:#fff;padding:6px 8px}.usersActivityRowFields{display:grid;grid-template-columns:minmax(320px,1fr) 110px 92px auto;gap:8px;align-items:center}.usersActivityRowSelect,.usersActivityHoursInput{height:34px;padding-top:6px;padding-bottom:6px}.usersActivityMetBadge{display:inline-flex;align-items:center;justify-content:center;height:34px;border-radius:8px;border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;font-size:12px;font-weight:700;padding:0 8px;font-variant-numeric:tabular-nums}.usersActivityFooter{margin-top:8px}.usersAddActivityBtn{padding:8px 12px;border-radius:9px;border:1px dashed #cbd5e1;background:#fff;color:#0f172a;font-size:13px;font-weight:700;cursor:pointer}.usersAddActivityBtn:hover{background:#f8fafc;border-color:#94a3b8}@media (max-width: 900px){.usersSectionMeta{margin-left:0;white-space:normal}}.usersActivityAddRow{display:flex;gap:12px;margin-bottom:10px}.usersActivityList{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.usersActivityItem{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#fff}.usersActivityItemText{font-size:14px;min-width:0}.usersRemoveBtn{flex-shrink:0;padding:6px 12px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;font-size:13px;font-weight:600;color:#b91c1c;cursor:pointer}.usersRemoveBtn:hover{background:#fef2f2;border-color:#fecaca}.usersResultsGrid{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 16px}.usersTripleSections .usersResultsGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.usersResultRow{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#fff}.usersResultRow--hasTooltip{cursor:help}.usersResultRow dt{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.usersResultRow dd{margin:0;font-size:18px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.usersRdaTableWrap{margin-top:10px;border:1px solid var(--border);border-radius:10px;background:#fff;max-height:300px;overflow:auto}.usersRdaTable{width:100%;border-collapse:collapse;font-size:13px}.usersRdaTable thead th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#334155;text-align:left;font-weight:800;padding:8px 10px;border-bottom:1px solid var(--border)}.usersRdaTable td{padding:7px 10px;border-bottom:1px solid #eef2f7;color:#1f2937}.usersRdaTable tbody tr:last-child td{border-bottom:none}.usersSaveRow{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0 4px;position:sticky;bottom:0;z-index:5;background:linear-gradient(to top,#f6f7fbfa,#f6f7fbfa 72%,#f6f7fb00)}.usersSaveBtn{padding:10px 22px;border-radius:10px;border:1px solid #d8741f;background:#eb8225;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.usersSaveBtn:hover{background:#d8741f}.usersSaveOk{font-size:14px;font-weight:600;color:#047857}.usersSaveErr{font-size:14px;font-weight:600;color:#b91c1c;max-width:48ch}@media (max-width: 1400px){.usersTripleSections{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1024px){.usersTripleSections{grid-template-columns:1fr}}.patientGate{flex:1 1 auto;min-height:auto;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:var(--bg)}.patientGateInner{max-width:420px;text-align:center;padding:28px 24px;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.patientGateText{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}.patientGateButton{margin-top:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #d8741f;border-radius:10px;background:#eb8225;color:#fff;padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer}.patientGateButton:hover{background:#d8741f}.patientModalOverlay{z-index:110}.patientModalOverlay .filterModal.patientModal--select,.patientModalOverlay .filterModal.patientModal--confirm{width:min(480px,calc(100vw - 40px))!important;max-width:min(480px,calc(100vw - 40px))!important;max-height:min(85vh,85dvh);overflow:hidden;display:flex;flex-direction:column;font-size:14px;line-height:1.4}.patientModal--select.filterModal h2.filterTitle,.patientModal--confirm.filterModal h2.filterTitle{margin:0 0 16px;padding-right:36px;font-size:18px;font-weight:700;line-height:1.25;flex-shrink:0}.patientModalHint{margin:-8px 0 16px;font-size:14px;color:var(--muted);line-height:1.45;flex-shrink:0}.patientModalSearchWrap{margin-bottom:14px;flex-shrink:0}.patientModalSearchWrap .langSelectLabel{font-size:13px}.patientModalSearch{margin-top:6px;width:100%;font-size:14px;padding:10px 12px}.headerTopLeft{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px 20px;min-width:0}.headerTopLeft .headerTitle{flex-shrink:0}.activePatientBadge{display:inline-flex;align-items:center;gap:10px;padding:8px 10px 8px 8px;border-radius:12px;border:1px solid var(--border);background:#f8fafc;max-width:min(100%,320px);isolation:isolate;position:relative}.activePatientBadgeAvatar{flex:0 0 36px;width:36px;min-width:36px;max-width:36px;height:36px;display:block;overflow:hidden}.activePatientBadgeAvatarLetter{fill:#1e40af;font-size:15px;font-weight:800;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.activePatientBadgeText{min-width:0;flex:1}.activePatientBadgeName{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activePatientBadgeMeta{font-size:12px;color:var(--muted);margin-top:2px}.activePatientBadgeMeta strong{color:#0f172a;font-variant-numeric:tabular-nums}.activePatientBadgeNA{color:#9ca3af}.activePatientBadgeEdit{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:#fff;border-radius:10px;width:38px;height:38px;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.activePatientBadgeEdit:hover{background:#f3f4f6;border-color:#d1d5db}.patientModalStatus{margin:8px 0;font-size:14px;color:var(--muted);flex-shrink:0}.patientModalError{margin:8px 0;font-size:14px;font-weight:600;color:#b91c1c;flex-shrink:0}.patientModalMuted{margin:12px 0 0;font-size:14px;color:var(--muted);flex-shrink:0}.patientModalDl{margin:0 0 20px;display:flex;flex-direction:column;gap:10px}.patientModalDlRow{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:baseline;font-size:14px}.patientModalDlRow dt{margin:0;color:var(--muted);font-weight:600}.patientModalDlRow dd{margin:0;font-weight:600;color:var(--text)}.patientModalActions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:8px;flex-shrink:0}.patientModalBtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer;border:1px solid var(--border)}.patientModalBtn:disabled{opacity:.5;cursor:not-allowed}.patientModalBtn--secondary{background:#fff;color:#334155}.patientModalBtn--secondary:hover:not(:disabled){background:#f9fafb}.patientModalBtn--primary{background:#eb8225;border-color:#d8741f;color:#fff}.patientModalBtn--primary:hover:not(:disabled){background:#d8741f}.patientModalList{list-style:none;margin:0;padding:0;flex:0 1 auto;min-height:0;max-height:min(420px,55dvh);overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:#fafafa;-webkit-overflow-scrolling:touch}.patientModalList li{border-bottom:1px solid var(--border)}.patientModalList li:last-child{border-bottom:0}.patientModalListBtn{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:0;background:transparent;font-family:inherit;font-size:14px;font-weight:400;line-height:1.3;text-align:left;cursor:pointer;color:var(--text)}.patientModalListBtn:hover{background:#eff6ff}.patientModalListName{display:block;font-weight:700;font-size:14px;line-height:1.3;color:var(--text)}.patientModalListMeta{display:block;font-size:12px;line-height:1.3;color:var(--muted);font-variant-numeric:tabular-nums}.recipeBrowseScreen{display:flex;flex-direction:column;gap:16px;flex:1 1 auto;min-height:auto;width:100%}.recipeBrowseToolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;padding:12px 14px;background:#f9fafb;border:1px solid var(--border);border-radius:12px}.recipeBrowseField{display:flex;flex-direction:column;gap:4px;min-width:140px}.recipeBrowseField--grow{flex:1 1 220px;min-width:200px}.recipeBrowseQueryRow{display:contents}.recipeBrowseFieldLabel{font-size:12px;font-weight:600;color:#374151}.recipeBrowseCheckbox{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#374151;padding-bottom:2px;-webkit-user-select:none;user-select:none;cursor:pointer}.recipeBrowseCheckbox input{width:16px;height:16px;cursor:pointer}.recipeBrowseSection{display:flex;flex-direction:column;gap:8px;flex:1 1 40%;min-height:auto}.recipeBrowseSectionTitle{margin:0;font-size:15px;font-weight:700;color:var(--text)}.recipeBrowseTableOuter{overflow:auto;flex:1 1 auto;min-height:160px;max-height:42vh;border:1px solid var(--border);border-radius:10px;background:#fff;-webkit-overflow-scrolling:touch}.recipeBrowseTableOuter .recipeBrowseTable{border-collapse:separate;border-spacing:0}.recipeBrowseTableOuter .recipeBrowseTable thead th{position:sticky;top:0;z-index:4;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.recipeBrowseTable{width:max-content;min-width:1100px;table-layout:fixed;font-variant-numeric:tabular-nums}.recipeBrowseRow{cursor:pointer}.recipeBrowseRow:hover td{background:#f3f4f6}.recipeBrowseRow--selected td{background:#dbeafe}.recipeBrowseTable .recipeBrowseTh--name,.recipeBrowseTable .recipeBrowseCell--name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.recipeBrowseTable td.recipeBrowseCell--name{vertical-align:middle}@media (max-width: 936px){.recipeBrowseScreen{gap:12px}.recipeBrowseToolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:10px 12px;align-items:end}.recipeBrowseField{min-width:0;flex:none}.recipeBrowseCheckbox{grid-column:1 / -1;font-size:12px;padding-bottom:0}.recipeBrowseQueryRow{display:grid;grid-column:1 / -1;grid-template-columns:minmax(0,1fr) 2.75rem minmax(0,auto) minmax(0,auto);gap:5px;align-items:end}.recipeBrowseQueryRow .recipeBrowseField{min-width:0}.recipeBrowseQueryRow .recipeBrowseFieldLabel{font-size:10px;line-height:1.2}.recipeBrowseQueryRow .usersInput,.recipeBrowseQueryRow .langSelect{padding:7px 6px;font-size:11px}.recipeBrowseQueryRow .recipeBrowseField--match .langSelect{padding:7px 16px 7px 4px;text-align:center;text-align-last:center;background-position:calc(100% - 6px) calc(50% - 2px),calc(100% - 3px) calc(50% - 2px)}.recipeBrowseQueryRow .usersSaveBtn{width:auto;min-width:0;padding:7px 6px;font-size:10px;line-height:1.2;white-space:nowrap}.recipeBrowseTableOuter{max-height:min(48dvh,calc(100dvh - 15rem));-webkit-overflow-scrolling:touch}.table--rda th,.table--rda td{padding:5px 4px;font-size:11px}}@media (max-width: 767px){.tableWrap--data .table--wide.table--rda{min-width:0;width:max-content}.table--rda{width:max-content;max-width:100%}.table--rda [data-col=idnut]{width:2.35rem;min-width:2.35rem;max-width:2.35rem}.table--rda [data-col=otronom]{width:5.25rem;min-width:5.25rem;max-width:5.25rem}.table--rda [data-col=medida]{width:3.15rem;min-width:3.15rem;max-width:3.15rem}.table--rda [data-col=sexo]{width:1.85rem;min-width:1.85rem;max-width:1.85rem}.table--rda [data-col=desde]{width:2.15rem;min-width:2.15rem;max-width:2.15rem}.table--rda [data-col=hasta]{width:2.4rem;min-width:2.4rem;max-width:2.4rem}.table--rda [data-col=cant]{width:2.35rem;min-width:2.35rem;max-width:2.35rem}.table--rda [data-col=ul]{width:2.6rem;min-width:2.6rem;max-width:2.6rem}}@media (max-width: 936px){.usersScreen{gap:12px;padding-bottom:6px}.usersSection{padding:10px 12px}.usersSectionTitle{font-size:14px;margin-bottom:10px}.usersToolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:6px 10px;align-items:end}.usersToolbar>.usersSaveBtn{grid-row:1 / span 2;align-self:stretch;display:inline-flex;align-items:center;justify-content:center;padding:9px 8px;font-size:12px;white-space:nowrap;width:100%}.usersToolbar>.usersFieldLabel{grid-column:2;grid-row:1;font-size:10px;margin:0}.usersToolbar>.usersUserSelect{grid-column:2;grid-row:2;min-width:0;width:100%;max-width:none;font-size:12px;padding:8px 28px 8px 10px}.usersGrid{grid-template-columns:1fr;gap:10px}.usersPersonalGrid{grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr) minmax(0,.72fr) minmax(0,.72fr);gap:6px 8px}.usersPersonalGrid>.usersField:first-child{grid-column:1 / -1}.usersPersonalGrid .usersFieldLabel{font-size:10px;line-height:1.2}.usersPersonalGrid .usersFieldHint{display:none}.usersPersonalGrid .usersInput{font-size:12px;padding:7px 6px}.usersTripleSections{grid-template-columns:1fr;gap:12px}.usersResultsGrid,.usersTripleSections .usersResultsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.usersResultRow{padding:8px 10px}.usersResultRow dd{font-size:16px}.usersSectionHint{font-size:12px;line-height:1.4}.usersSectionHeader{flex-direction:column;align-items:stretch;gap:8px}.usersSectionHeader .usersSectionTitle{margin-bottom:0}.usersAddActivityBtn{width:100%;text-align:center;padding:8px 10px;font-size:12px}.usersSectionMeta{margin-left:0;white-space:normal;font-size:11px}.usersActivityTableHead{display:grid;grid-template-columns:minmax(0,1fr) 3.5rem 3.25rem auto;gap:4px 5px;margin:0 0 4px;padding:0 8px;font-size:9px;line-height:1.2}.usersActivityRowFields{grid-template-columns:minmax(0,1fr) 3.5rem 3.25rem auto;gap:4px 5px}.usersActivityRowSelect,.usersActivityHoursInput{height:32px;min-width:0;padding:5px 4px;font-size:11px}.usersActivityMetBadge{width:auto;min-width:0;height:32px;justify-content:center;padding:0 4px;font-size:10px}.usersRemoveBtn{width:auto;min-width:0;padding:5px 7px;font-size:10px;white-space:nowrap}.usersMacroTableWrap{max-height:min(28dvh,200px)}.usersMacroTable{font-size:12px}.usersRdaTableWrap{max-height:min(38dvh,calc(100dvh - 14rem));-webkit-overflow-scrolling:touch}.usersRdaTable{border-collapse:separate;border-spacing:0;font-size:12px}.usersRdaTable thead th{z-index:4;padding:6px 8px}.usersRdaTable td{padding:6px 8px}.usersSaveRow{padding:8px 0 6px}.usersSaveRow .usersSaveBtn{flex:1 1 100%;width:100%;text-align:center;padding:10px 16px;font-size:14px}.usersInput{font-size:14px;padding:8px 10px}}@media (max-width: 936px) and (orientation: landscape){.usersGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.usersPersonalGrid{grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr) minmax(0,.72fr) minmax(0,.72fr);gap:6px 8px}.usersPersonalGrid>.usersField:first-child{grid-column:1 / -1}.usersResultsGrid,.usersTripleSections .usersResultsGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.usersRdaTableWrap{max-height:min(34dvh,calc(100dvh - 9rem))}.usersMacroTableWrap{max-height:min(24dvh,180px)}}.tableWrap--data.tableWrap--nutrientsSplit{--nutrients-pin-id-w: 2.75rem;--nutrients-pin-name-w: 10rem;overflow-x:hidden;overflow-y:auto}.tableWrap--nutrientsSorting{cursor:progress}.nutrientsVirtualSpacer td{padding:0!important;border:none!important;background:transparent!important;pointer-events:none}@media (max-width: 936px){.tableWrap--nutrientsSplit .table--nutrientsPin tbody tr:not(.nutrientsVirtualSpacer),.tableWrap--nutrientsSplit .table--nutrientsScroll tbody tr:not(.nutrientsVirtualSpacer){content-visibility:auto;contain-intrinsic-size:auto 32px}.recipesTableScroll tbody tr:not(.nutrientsVirtualSpacer){content-visibility:auto;contain-intrinsic-size:auto 34px}}.recipesTableScroll--sorting{cursor:progress}.recipeLayoutModal{width:min(520px,100%)}.recipeLayoutModalHint{margin:0 0 12px;font-size:12px;color:#475569}.recipeLayoutModalGrid{display:grid;gap:10px}.recipeLayoutModalField{display:grid;gap:6px;font-size:12px;color:#334155}.recipeLayoutModalField input{border:1px solid var(--border);border-radius:10px;padding:8px 10px;font-size:14px;font-weight:700;width:100%;box-sizing:border-box}.recipeLayoutModalActions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.recipeLayoutModal--compact{width:min(640px,100%);padding:16px 18px}.recipeLayoutModal--compact .filterTitle{margin-bottom:8px;font-size:16px;line-height:1.2}.recipeLayoutModal--compact .recipeLayoutModalHint{margin-bottom:10px;font-size:11px;line-height:1.3}.recipeLayoutModal--compact .recipeLayoutModalGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recipeLayoutModal--compact .recipeLayoutModalField{gap:4px;font-size:11px}.recipeLayoutModal--compact .recipeLayoutModalField input{padding:6px 8px;font-size:13px;min-width:0}.recipeLayoutModal--compact .recipeLayoutModalActions{margin-top:12px}@media (max-width: 936px) and (orientation: landscape){.recipeLayoutModal:not(.recipeLayoutModal--compact) .recipeLayoutModalGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recipeLayoutModal:not(.recipeLayoutModal--compact) .recipeLayoutModalField input{min-width:0}}.nutrientsSplitRow{display:flex;align-items:flex-start;width:100%;max-width:100%;min-width:0}.nutrientsSplitPin{flex:0 0 calc(var(--nutrients-pin-id-w) + var(--nutrients-pin-name-w));width:calc(var(--nutrients-pin-id-w) + var(--nutrients-pin-name-w));max-width:calc(var(--nutrients-pin-id-w) + var(--nutrients-pin-name-w));min-width:0;z-index:3;background:#fff;box-shadow:4px 0 8px -4px #0f172a24}.nutrientsSplitScroll{flex:1 1 0;min-width:0;display:flex;flex-direction:column}.nutrientsSplitScrollHead{position:sticky;top:0;z-index:5;flex:0 0 auto;overflow:hidden;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.nutrientsSplitScrollHeadInner{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x}.nutrientsSplitScrollHeadInner::-webkit-scrollbar{display:none}.nutrientsSplitScrollBody{flex:0 0 auto;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.table--nutrientsPin{width:100%;min-width:0;max-width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0}.table--nutrientsScroll{table-layout:fixed;width:max-content;min-width:0;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}.table--nutrientsScroll th,.table--nutrientsScroll td{box-sizing:border-box;overflow:hidden;white-space:nowrap}.nutrientsScrollThButton{min-width:0;width:100%}.nutrientsScrollThButton>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nutrientsSplitScrollHeadInner,.nutrientsSplitScrollBody{scrollbar-gutter:stable}.tableWrap--nutrientsSplit .table--wide.table--nutrientsScroll{width:max-content;min-width:0}.tableWrap--nutrientsSplit .table--nutrientsPin.table,.tableWrap--nutrientsSplit .table--nutrientsScroll.table{min-width:0}.nutrientsPinCol--id{width:var(--nutrients-pin-id-w);min-width:var(--nutrients-pin-id-w);max-width:var(--nutrients-pin-id-w)}.nutrientsPinCol--name{width:var(--nutrients-pin-name-w);min-width:var(--nutrients-pin-name-w);max-width:var(--nutrients-pin-name-w)}.tableWrap--data.tableWrap--nutrientsSplit .table--nutrients thead{position:sticky;top:0;z-index:5}.tableWrap--data .table--nutrientsPin thead th{position:sticky;top:0;z-index:6;background:#f9fafb;box-shadow:0 1px 0 var(--border)}.tableWrap--data.tableWrap--nutrientsSplit .table--nutrientsScrollHead thead th{position:static;z-index:1;background:#f9fafb;box-shadow:none}.tableWrap--data.tableWrap--nutrientsSplit .table--nutrientsScrollHead thead{position:static}.tableWrap--data.tableWrap--nutrientsSplit .table--nutrientsPin thead,.tableWrap--data.tableWrap--nutrientsSplit .table--nutrientsPin thead th{z-index:6}.table--nutrientsPin .nutrientsPinCol--name{overflow:hidden}.table--nutrientsPin th,.table--nutrientsPin td,.table--nutrientsScroll th,.table--nutrientsScroll td{vertical-align:middle}@media (max-width: 936px){.tableWrap--data.tableWrap--nutrientsSplit .table--wide.table--nutrientsScroll{width:max-content;min-width:0}.tableWrap--nutrientsSplit .nutrientsNameCell{min-width:0;max-width:none}.tableWrap--nutrientsSplit .nutrientsNameText{max-width:100%}.table--nutrientsPin th,.table--nutrientsPin td,.table--nutrientsScroll th,.table--nutrientsScroll td{padding:5px 3px;font-size:11px}}
