/* One presentation contract for menu administration, food operations and hospital administration. */
:root{font-family:Arial,system-ui,sans-serif;font-size:15px;--paper:#fff;--ink:#173d47;--muted:#526c74;--line:#d4e2e5;--border:var(--line);--cream:#f2f7f7;--wash:#eaf3f4;--teal:#007c91;--red:var(--teal);--red-dark:#005568;--green:#397342;--navy:#173d47;--amber:#875817;color-scheme:light}
body.backoffice{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,system-ui,sans-serif;line-height:1.45}
body.backoffice:is([data-theme=dark],[data-theme=night]){--paper:#17333e;--ink:#edf6f8;--muted:#bfd0d6;--line:#42616d;--border:var(--line);--cream:#0f242e;--wash:#23434f;--teal:#00839a;--red-dark:#a9e7ee;--green:#96d19b;color-scheme:dark;background:var(--cream)}
.backoffice *{box-sizing:border-box}.backoffice a{color:inherit}.backoffice [hidden]{display:none!important}
.bo-header{height:86px;padding:14px 30px;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;background:var(--paper);border-bottom:1px solid var(--line);color:var(--ink)}
.bo-brand{display:flex;align-items:center;gap:22px;text-decoration:none;flex-shrink:0}.bo-brand img{width:235px;height:auto;background:white;padding:5px;border-radius:5px}.bo-brand>span{font-weight:750;font-size:19px;line-height:1.2;padding-left:22px;border-left:1px solid var(--line)}.bo-brand small{display:block;font-size:11px;font-weight:500;color:var(--muted);margin-top:5px;letter-spacing:.04em}
.bo-header nav{display:flex;gap:9px;align-items:center;background:none;border:0;padding:0;margin-left:auto;flex-wrap:nowrap}.bo-header nav a{padding:10px 13px;white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none;border-radius:9px}.bo-header nav a:hover{background:var(--wash)}.bo-header .bo-register{background:var(--wash);border:1px solid var(--line)}.bo-person{font-size:12px;max-width:170px;color:var(--muted)}
.bo-sidebar{position:fixed;left:0;top:86px;bottom:0;width:248px;background:var(--paper);border-right:1px solid var(--line);overflow-y:auto;padding:19px 15px;z-index:5}.bo-sidebar nav{display:block;padding:0;border:0;background:transparent}.bo-nav-group{margin-bottom:10px;border:0;border-bottom:1px solid var(--line);padding-bottom:10px}.bo-nav-group summary{list-style:none;padding:10px 9px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.065em;cursor:pointer;color:var(--muted);min-height:38px}.bo-nav-group summary::-webkit-details-marker{display:none}.bo-nav-group summary::after{content:'＋';float:right}.bo-nav-group[open] summary::after{content:'−'}.bo-nav-group a,.bo-nav-group button{display:block;width:100%;min-height:41px;padding:10px 12px;margin:3px 0;border:0;border-radius:9px;text-align:left;text-decoration:none;line-height:1.4;background:transparent;color:var(--ink);font:600 13px/1.45 Arial,system-ui,sans-serif;cursor:pointer}.bo-nav-group a:hover,.bo-nav-group button:hover{background:var(--wash)}.bo-nav-group [aria-current=page],.bo-nav-group button.active{background:var(--wash);color:var(--ink);box-shadow:inset 3px 0 var(--teal);font-weight:800}.bo-sidebar-note{font-size:11px;color:var(--muted);padding:12px 10px;line-height:1.8}
.backoffice .bo-content,.backoffice .workspace,.backoffice .admin-shell{max-width:none;margin:0 0 0 248px;min-width:0;padding:30px 36px 60px;min-height:calc(100vh - 86px)}
.backoffice h1,.backoffice h2,.backoffice h3,.backoffice .metric strong{font-family:Arial,system-ui,sans-serif;color:var(--ink);font-weight:750;letter-spacing:-.025em}.backoffice h1{font-size:30px;line-height:1.2;margin:0 0 9px}.backoffice h2{font-size:21px;line-height:1.3;margin:0 0 12px}.backoffice h3{font-size:17px}.backoffice p{color:var(--muted);line-height:1.6}.backoffice .eyebrow{color:var(--teal);font:800 10px/1.5 Arial,system-ui,sans-serif;letter-spacing:.12em;margin-bottom:7px}.backoffice .bo-page-title{margin-bottom:25px}.backoffice .bo-page-title p{margin:0;font-size:14px}.backoffice .workspace-head{gap:20px;flex-wrap:wrap;margin-bottom:25px}.backoffice .workspace-head h1{max-width:800px;margin-top:6px}.backoffice .head-actions{flex-wrap:wrap}.backoffice .search{min-width:240px;max-width:380px;height:44px;background:var(--paper)}
.backoffice section:not(#content),.backoffice .panel,.backoffice .metric,.backoffice .po-card,.backoffice .hospital-cards article,.backoffice fieldset,.backoffice .recipe-components fieldset{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 5px #173d4703}.backoffice section:not(#content){padding:23px;margin:0 0 20px}.backoffice #content{background:none;border:0;padding:0;margin:0}.backoffice .panel{padding:0}.backoffice .admin-shell .panel{padding:23px}.backoffice .hospital-cards article{padding:20px}.backoffice .panel-head{padding:18px 20px;border-color:var(--line);background:var(--paper)}.backoffice .panel-head h2{font-size:18px;margin:0}.backoffice .panel-head p{font-size:13px;margin:4px 0 0}.backoffice .metric{padding:21px}.backoffice .metric strong{font-size:30px}.backoffice .metric span{font-size:12px}.backoffice .stats{margin:22px 0;gap:15px}.backoffice .stat{font-size:13px}.backoffice .stat strong{font-size:32px}.backoffice .overview-grid a{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:20px;transition:background .15s}.backoffice .overview-grid a:hover{background:var(--wash)}.backoffice .overview-grid span{font-size:13px;color:var(--muted)}
.backoffice label,.backoffice .field{font-size:13px;color:var(--ink);font-weight:650}.backoffice label{line-height:1.45}.backoffice input:not([type=checkbox],[type=radio],[type=hidden]),.backoffice select,.backoffice textarea{font:14px Arial,system-ui,sans-serif;min-height:44px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);padding:11px 12px}.backoffice input[type=checkbox],.backoffice input[type=radio]{accent-color:var(--teal);width:20px;height:20px;min-height:20px;flex-shrink:0}.backoffice .search input{min-height:38px;border:0;padding:0}.backoffice fieldset{padding:16px}.backoffice .fields,.backoffice .form-grid{gap:17px}.backoffice .fields textarea{min-height:100px}.backoffice input:focus,.backoffice select:focus,.backoffice textarea:focus{border-color:var(--teal);outline:2px solid #00839a33;outline-offset:1px}
.backoffice button,.backoffice .button,.backoffice .button-link,.backoffice .primary,.backoffice .secondary,.backoffice .batch-link{font-family:Arial,system-ui,sans-serif;font-size:13px;font-weight:750;min-height:42px;border-radius:9px;line-height:1.35;cursor:pointer}.backoffice button:not(.secondary,.danger,.close),.backoffice .primary,.backoffice .button:not(.secondary),.backoffice .button-link{background:var(--teal);border-color:var(--teal);color:#fff}.backoffice .secondary,.backoffice .batch-link{background:var(--wash);border:1px solid var(--line);color:var(--ink)}.backoffice .button,.backoffice .button-link,.backoffice .action-link{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;text-decoration:none}.backoffice .danger{background:#fce9e7;color:#9b2c21}.backoffice .bo-nav-group button{background:transparent!important;color:var(--ink)!important;border:0;margin-top:3px;padding:10px 12px;font-size:13px;min-height:41px}.backoffice .bo-nav-group button.active{background:var(--wash)!important}.backoffice .filter-chips button{min-height:36px;background:var(--paper)!important;color:var(--ink)!important}.backoffice .filter-chips button.active{background:var(--wash)!important;border-color:var(--teal)}.backoffice button:hover,.backoffice .button:hover,.backoffice .button-link:hover{filter:brightness(.97)}.backoffice :is(a,button,summary):focus-visible{outline:3px solid #d3a12c;outline-offset:3px}.backoffice .close{background:var(--wash);color:var(--ink)}
.backoffice table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:var(--paper);color:var(--ink)}.backoffice .table-wrap,.backoffice .menu-table{border:1px solid var(--line);border-radius:10px;background:var(--paper);overflow:auto}.backoffice th,.backoffice .menu-table th{font:750 11px/1.4 Arial,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.045em;background:var(--wash);color:var(--muted);padding:13px 14px;border-color:var(--line)}.backoffice td,.backoffice .menu-table td{font-size:13px;padding:14px;border-color:var(--line)}.backoffice tr:hover td{background:var(--wash)}.backoffice .catalog-table{max-height:66vh}.backoffice .catalog-table td small,.backoffice .muted,.backoffice small,.backoffice .subtle{color:var(--muted)}.backoffice .item-cell strong{font-size:14px}.backoffice .item-cell small{font-size:12px}.backoffice .attention-row{border-color:var(--line)}.backoffice .drawer,.backoffice .drawer-head,.backoffice .drawer-actions,.backoffice .recipe-component-card,.backoffice .check,.backoffice .master-recipe-preview span{background:var(--paper);border-color:var(--line);color:var(--ink)}.backoffice .drawer-head h2{font-size:24px}.backoffice .drawer-body{padding:25px 26px 100px}.backoffice .form-section{border-color:var(--line)}.backoffice .inventory-help,.backoffice .recipe-total,.backoffice .readiness{background:var(--wash);border-color:var(--line);color:var(--ink)}.backoffice .readiness{border-left:4px solid var(--teal);border-radius:6px;font-size:13px;padding:15px}.backoffice .error,.backoffice .alert{background:#fff1e9;color:#903610;border:1px solid #ebc7b0}.backoffice .success{background:#e8f3e9;color:#285e31;border:1px solid #b2d7b8}.backoffice>.error{margin-left:280px}.backoffice footer{margin-left:248px;border-top:1px solid var(--line);padding:18px 36px;color:var(--muted);font-size:12px}.backoffice .admin-nav{margin:16px 0 20px}.backoffice .admin-nav a{min-height:39px;padding:9px 13px}.backoffice .admin-shell>.links{margin:16px 0}.backoffice .hospital-cards h3{margin:0 0 10px}.backoffice .status.good{background:#e4f1e7;color:#276039}.backoffice .status.warn{background:#fff0d3;color:#785107}
@media(min-width:1700px){.backoffice .bo-content,.backoffice .workspace,.backoffice .admin-shell{padding:34px 48px 65px}.backoffice .fields{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}
@media(max-width:1150px){.bo-person{display:none}.bo-header{padding:13px 21px;gap:16px}.bo-brand img{width:195px}.bo-brand>span{font-size:17px;padding-left:16px}.bo-header nav{gap:2px}.backoffice .bo-content,.backoffice .workspace,.backoffice .admin-shell{padding:25px}.backoffice .metric-grid{grid-template-columns:repeat(2,1fr)}.backoffice .section-grid{grid-template-columns:1fr}}
@media(max-width:850px){.bo-header{height:auto;min-height:78px;position:relative;flex-wrap:wrap;gap:15px}.bo-brand img{width:180px}.bo-brand{gap:14px}.bo-brand>span{font-size:16px}.bo-header nav{margin-left:0}.bo-sidebar{position:static;width:auto;padding:10px 16px;border-right:0;border-bottom:1px solid var(--line)}.bo-sidebar nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.bo-nav-group{margin:0;padding:0;border:1px solid var(--line);border-radius:8px;align-self:start}.bo-nav-group summary{padding:12px}.bo-nav-group a,.bo-nav-group button{width:calc(100% - 12px);margin:4px 6px}.bo-sidebar-note{display:none}.backoffice .bo-content,.backoffice .workspace,.backoffice .admin-shell{margin-left:0;min-height:0;padding:24px 17px}.backoffice footer{margin-left:0;padding:18px}.backoffice h1{font-size:27px}.backoffice .fields{grid-template-columns:1fr}.backoffice .direct-master-edit .drawer{width:100vw}.backoffice>.error{margin:15px}.backoffice .form-grid{grid-template-columns:1fr}}
@media print{.bo-header,.bo-sidebar,.backoffice form,.backoffice button,.backoffice .admin-nav,.backoffice footer{display:none!important}.backoffice .bo-content,.backoffice .workspace,.backoffice .admin-shell{margin:0;padding:0}.backoffice{background:white!important;color:black!important}.backoffice section{break-inside:avoid}.backoffice table{font-size:10px}.backoffice .table-wrap{overflow:visible;max-height:none}}
body.backoffice:is([data-theme=dark],[data-theme=night]) :is(section,.table-wrap,input,select,textarea,fieldset){background:var(--paper);color:var(--ink);border-color:var(--line)}body.backoffice:is([data-theme=dark],[data-theme=night]) nav{background:transparent;border-color:var(--line)}body.backoffice:is([data-theme=dark],[data-theme=night]) th{background:var(--wash);color:var(--muted)}body.backoffice:is([data-theme=dark],[data-theme=night]) .eyebrow{color:#a8dce4}body.backoffice:is([data-theme=dark],[data-theme=night]) .button-link{background:#00798e;color:white;border-color:#00798e}body.backoffice:is([data-theme=dark],[data-theme=night]) .secondary{background:var(--wash);color:var(--ink)}

.nutrition-frame{width:100%;height:470px;border:1px solid #b9ceca;border-radius:12px;background:white}.sb-nutrition{margin:12px 0;padding:14px;border:1px solid #80aaa4;border-radius:12px}.sb-nutrition summary{cursor:pointer;font-weight:700}.nutrition-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.nutrition-highlights div{padding:16px;border-radius:12px;background:#e7f2ef;color:#143f39}.nutrition-highlights strong,.nutrition-highlights span{display:block}.nutrition-highlights strong{font-size:1.4rem}.nutrition-highlights span{font-size:.85rem}.nutrition-panel{margin:20px 0;padding:20px;border:1px solid #b9ceca;border-radius:16px}.nutrition-panel details{margin:15px 0}.nutrition-panel summary{cursor:pointer;font-weight:700}.nutrition-panel ul{overflow-wrap:anywhere;font-size:.8rem}
