:root{--green:#0b6b5b;--green-dark:#074f44;--green-soft:#e8f5f1;--blue:#3478f6;--orange:#e78a24;--purple:#805ad5;--red:#c74646;--ink:#17352f;--muted:#6a7f7a;--line:#dce7e3;--surface:#fff;--background:#f4f7f6;--shadow:0 14px 36px rgba(20,61,52,.08)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--background)}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button,a{transition:.18s ease}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}h1,h2,h3,p{margin-top:0}h1{font-size:1.7rem;margin-bottom:0}h2{font-size:1.15rem;margin-bottom:.25rem}small{color:var(--muted)}
.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(165deg,#0b6b5b,#073f37 72%);color:white;padding:24px 16px;display:flex;flex-direction:column;z-index:30}.brand,.auth-brand{display:flex;align-items:center;gap:12px}.brand{padding:0 8px 24px}.brand strong,.auth-brand strong{display:block;font-size:1.05rem}.brand small{color:#add4ca}.hospital-mark{display:block;width:48px;height:50px;flex:0 0 auto;background:currentColor;-webkit-mask:url("logo-h.svg") center/contain no-repeat;mask:url("logo-h.svg") center/contain no-repeat;color:var(--green)}.brand .hospital-mark{width:49px;height:51px;color:#fff;filter:drop-shadow(0 7px 11px rgba(0,0,0,.16))}.auth-brand .hospital-mark{width:56px;height:58px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:11px;color:#c6dfd8;padding:11px 12px;border-radius:12px;font-size:.92rem}.sidebar nav a span{width:22px;text-align:center;font-size:1.05rem}.sidebar nav a:hover,.sidebar nav a.active{color:white;background:rgba(255,255,255,.12)}.sidebar nav a.active{box-shadow:inset 3px 0 #51d3b3}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:18px 8px 0;display:flex;align-items:center;gap:10px}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot strong{font-size:.82rem}.sidebar-foot small{color:#a9cec5;font-size:.72rem}.status-dot{width:9px;height:9px;border-radius:50%;background:#49d5aa;box-shadow:0 0 0 5px rgba(73,213,170,.15);flex:0 0 auto}
.main-area{min-width:0;display:flex;flex-direction:column}.topbar{height:88px;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;background:rgba(244,247,246,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(220,231,227,.8)}.eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.67rem;color:var(--green)}.user-chip{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:15px;padding:7px 10px;box-shadow:0 6px 20px rgba(20,61,52,.05)}.user-chip>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:800}.user-chip strong,.user-chip small{display:block;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip strong{font-size:.82rem}.user-chip small{font-size:.68rem}.user-chip>a{padding:6px;color:var(--muted)}.content{padding:28px 32px 44px;display:flex;flex-direction:column;gap:22px}.app-footer{margin-top:auto;padding:20px 32px;color:var(--muted);font-size:.75rem}.menu-toggle{display:none;border:0;background:transparent;font-size:1.5rem;color:var(--green)}
.primary,.secondary,.ghost,.small-button{border-radius:11px;padding:10px 15px;font-weight:750;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary{background:var(--green);color:#fff;box-shadow:0 8px 18px rgba(11,107,91,.18)}.primary:hover{background:var(--green-dark);transform:translateY(-1px)}.secondary{background:white;color:var(--green);border-color:#bdd8d1}.secondary:hover{border-color:var(--green);background:var(--green-soft)}.ghost{background:transparent;color:var(--muted)}.small-button{padding:7px 10px;background:white;border-color:var(--line);font-size:.75rem;color:var(--green)}.hero-actions,.summary-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.summary-actions form{display:inline-flex}
.panel,.hero-card,.report-hero,.hospital-banner,.integration-hero,.summary-row,.rule{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.panel{padding:22px}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.panel-head p:not(.eyebrow){color:var(--muted);font-size:.85rem;margin:0}.hero-card{position:relative;overflow:hidden;padding:28px;display:flex;align-items:center;gap:24px;background:linear-gradient(120deg,#fff,#eef9f6)}.hero-card>div{max-width:660px}.hero-card h2{font-size:1.55rem}.hero-card p:not(.eyebrow){color:var(--muted);margin-bottom:0}.hero-card .primary{margin-left:auto;z-index:2}.hero-mark{position:absolute;right:190px;top:-38px;font-size:10rem;font-weight:900;color:rgba(11,107,91,.055);transform:rotate(-8deg)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-grid article{background:white;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;gap:12px;align-items:flex-start}.metric-grid small,.metric-grid strong,.metric-grid p{display:block}.metric-grid strong{font-size:1.45rem;margin:3px 0}.metric-grid p{font-size:.72rem;color:var(--muted);margin:0}.metric-icon,.activity-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.metric-icon.blue{background:#eaf1ff;color:var(--blue)}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-icon.orange{background:#fff2e4;color:var(--orange)}.metric-icon.purple{background:#f1ebff;color:var(--purple)}
.two-columns{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px}.registration-columns{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:20px}.menu-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:20px}.empty{text-align:center;padding:38px 20px;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:1rem;margin-bottom:6px}.empty p{margin:0 auto 14px;max-width:440px;font-size:.85rem}.activity-list,.stock-list,.people-list,.audit-list,.requirement-list,.menu-list,.financial-list{display:flex;flex-direction:column;gap:8px}.activity-list article,.people-list article,.audit-list article{display:flex;align-items:center;gap:12px;padding:11px;border-radius:12px;background:#f8faf9}.activity-list article>div,.people-list article>div:first-of-type{min-width:0;flex:1}.activity-list strong,.activity-list small,.people-list strong,.people-list small,.audit-list strong,.audit-list small{display:block}.activity-list time{font-size:.69rem;color:var(--muted)}.activity-icon.hospital{color:var(--blue);background:#eaf1ff}.activity-icon.cafeteria{color:var(--green);background:var(--green-soft)}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid a{padding:14px;border:1px solid var(--line);border-radius:13px;display:grid;grid-template-columns:28px 1fr;gap:2px 8px;background:#fbfcfc}.quick-grid a:hover{border-color:#9bc9bd;transform:translateY(-1px)}.quick-grid a span{grid-row:1/3;color:var(--green);font-size:1.15rem}.quick-grid strong,.quick-grid small{display:block}.quick-grid strong{font-size:.82rem}.quick-grid small{font-size:.67rem}
.summary-row{display:flex;align-items:stretch;padding:16px 20px;gap:0}.summary-row>div:not(.summary-actions){padding:0 22px;border-right:1px solid var(--line);min-width:145px}.summary-row>div:first-child{padding-left:0}.summary-row small,.summary-row strong{display:block}.summary-row strong{font-size:1.25rem;margin-top:4px}.summary-row .period-value{font-size:.95rem}.summary-actions{margin-left:auto;padding-left:18px}.registrations-summary>div{flex:1}.stock-columns{grid-template-columns:.8fr 1.2fr}.stock-list article{display:flex;justify-content:space-between;gap:15px;padding:13px;border:1px solid var(--line);border-radius:12px}.stock-list article.low{border-color:#efc8a1;background:#fffaf4}.stock-list article>div:last-child{text-align:right}.stock-list strong,.stock-list small{display:block}.stock-list small{font-size:.7rem}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;min-width:700px;background:white}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-size:.78rem;vertical-align:middle}th{background:#f6f9f8;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:0}td strong,td small{display:block}td small{font-size:.67rem;margin-top:2px}.pill{display:inline-flex;width:max-content;border-radius:999px;padding:4px 8px;font-size:.66rem;font-weight:750;background:#eef3f1;color:var(--muted)}.pill.employee,.pill.entry,.pill.ready,.pill.served{background:#e2f5ed;color:#087258}.pill.contractor,.pill.planned{background:#eaf1ff;color:#285fbd}.pill.companion,.pill.preparing,.pill.waste{background:#fff1df;color:#9f5a11}.pill.cancelled{background:#fdeaea;color:#a13d3d}.pill.consumption,.pill.adjustment{background:#f0ebff;color:#6e45b3}.positive{color:#07805f!important}.negative{color:var(--red)!important}.muted{color:var(--muted)}.inline-form{display:flex;gap:6px;align-items:center}.inline-form select{min-width:100px;padding:6px 8px}
.report-hero,.hospital-banner,.integration-hero{padding:24px;display:flex;align-items:center;gap:20px}.report-hero>div:first-child,.hospital-banner>div:first-child,.integration-hero>div:first-child{flex:1}.report-hero p:not(.eyebrow),.hospital-banner p:not(.eyebrow),.integration-hero p:not(.eyebrow){color:var(--muted);margin:0;max-width:690px}.hospital-banner{background:linear-gradient(120deg,#fff,#eef4ff)}.hospital-banner>div:not(:first-child){padding:0 18px;border-left:1px solid var(--line);text-align:center}.hospital-banner>div strong,.hospital-banner>div small{display:block}.hospital-banner>div strong{font-size:1.55rem}.integration-hero{background:linear-gradient(120deg,#fff,#fff8ec)}.integration-hero.ready{background:linear-gradient(120deg,#fff,#edf9f5)}.integration-hero>div:first-child{display:flex;gap:14px;align-items:center}.integration-hero>div:not(:first-child){min-width:150px;text-align:center}.integration-hero>div strong,.integration-hero>div small{display:block}.integration-hero>div strong{font-size:1rem}.date-filter{display:flex;align-items:flex-end;gap:8px}.date-filter label{font-size:.7rem}.date-filter input{padding:8px}.report-metrics article{min-height:110px}.bar-list{display:flex;flex-direction:column;gap:18px}.bar-list article>div:first-child{display:flex;justify-content:space-between;font-size:.8rem}.bar{height:10px;background:#edf2f0;border-radius:99px;overflow:hidden;margin-top:6px}.bar span{height:100%;display:block;border-radius:99px}.bar .employee{background:var(--green)}.bar .contractor{background:var(--blue)}.bar .companion{background:var(--orange)}.financial-list article{display:flex;justify-content:space-between;padding:13px;background:#f8faf9;border-radius:11px}.sync-action{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.sync-action small{max-width:300px}.audit-list{max-height:490px;overflow:auto}.audit-list article{justify-content:space-between}.audit-list article>div:last-child{text-align:right}
.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rule{padding:18px;border-top:4px solid var(--line)}.rule.employee{border-top-color:var(--green)}.rule.contractor{border-top-color:var(--blue)}.rule.companion{border-top-color:var(--orange)}.rule span,.rule strong{display:block}.rule strong{font-size:1.1rem;margin:4px 0}.rule p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}.billing-preview{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;padding:13px;background:var(--green-soft);border-radius:12px}.billing-preview>div{padding:0 10px}.billing-preview small,.billing-preview strong{display:block}.billing-preview strong{font-size:.85rem;margin-top:3px}
.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.profile-card{padding:18px}.profile-head span,.profile-head strong{display:block}.profile-head span{color:var(--green);font-size:.7rem;font-weight:750}.profile-head strong{font-size:1.05rem;margin-top:4px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:15px 0}.price-grid div{padding:10px;background:#f7faf9;border-radius:10px}.price-grid small,.price-grid strong{display:block}.price-grid small{font-size:.6rem}.price-grid strong{font-size:.78rem;margin-top:3px}.recipe-box{border-top:1px solid var(--line);padding-top:12px}.recipe-box ul{margin:8px 0 0;padding-left:18px;font-size:.74rem}.recipe-box p{font-size:.74rem;color:var(--muted);margin:6px 0}.rule-note{padding:11px 13px;background:#f1f7f5;border-radius:11px;color:#45645d;font-size:.75rem}.rule-note.compact{margin-top:13px}.plan-tabs{display:flex;gap:9px;overflow:auto;padding-bottom:2px}.plan-tabs a{min-width:220px;padding:11px 14px;background:white;border:1px solid var(--line);border-radius:12px}.plan-tabs a.active{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.plan-tabs strong,.plan-tabs small{display:block}.plan-tabs strong{font-size:.8rem}.plan-tabs small{font-size:.65rem}.menu-list article{display:grid;grid-template-columns:86px 1fr auto;gap:12px;align-items:center;padding:13px;background:#f8faf9;border-radius:12px}.menu-date{padding-right:12px;border-right:1px solid var(--line)}.menu-date strong,.menu-date small,.menu-list article>div:nth-child(2) span,.menu-list article>div:nth-child(2) strong,.menu-list article>div:nth-child(2) small,.portion-total small{display:block}.menu-date strong{font-size:.75rem}.menu-list article>div:nth-child(2) span{color:var(--green);font-size:.65rem;font-weight:750}.menu-list article>div:nth-child(2) strong{font-size:.86rem}.menu-list article>div:nth-child(2) small{font-size:.64rem}.portion-total{text-align:center;font-size:1.15rem}.portion-total small{font-size:.58rem}.requirement-list article{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:13px;border:1px solid var(--line);border-radius:12px}.requirement-list article>div small,.requirement-list article>div strong{display:block}.requirement-list article>div:not(:first-child){text-align:right}.requirement-list article>span{grid-column:1/-1;padding-top:7px;border-top:1px solid var(--line);font-size:.68rem;color:var(--green)}.requirement-list article.shortage{border-color:#efc8a1;background:#fffaf4}.requirement-list article.shortage>span{color:#b7610d}
.people-list article>span{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:800}.people-list article>div:last-child{text-align:right}.people-list article>div:last-child .pill{margin-left:auto}.sync-banner{display:flex;align-items:center;gap:12px;padding:12px;background:#fff8ec;border-radius:12px;margin-bottom:15px}.sync-banner.ready{background:var(--green-soft)}.sync-banner>div{flex:1}.sync-banner strong,.sync-banner small{display:block}.apartment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.apartment-grid article{padding:14px;border:1px solid var(--line);border-radius:13px}.apartment-head{display:flex;justify-content:space-between;gap:10px}.apartment-head span,.apartment-head strong,.apartment-head small{display:block}.apartment-head>div>span{color:var(--green);font-weight:800;font-size:.72rem}.active-badge{font-size:.61rem!important;color:var(--green)!important;background:var(--green-soft);padding:4px 7px;border-radius:99px;height:max-content}.bed-chips{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.bed-chips>span{padding:6px 8px;border-radius:9px;background:#eef3f1;font-size:.7rem;font-weight:750}.bed-chips>span small{display:block;font-size:.55rem}.bed-chips .free{background:#e1f5ed;color:#087258}.bed-chips .occupied{background:#eaf1ff;color:#285fbd}.bed-chips .maintenance{background:#fdeaea;color:#a13d3d}.bed-chips .reserved{background:#fff1df;color:#9f5a11}.apartment-grid article>p{font-size:.68rem;color:var(--muted);margin:0}
dialog{width:min(640px,calc(100vw - 26px));max-height:calc(100vh - 30px);border:0;border-radius:18px;padding:0;box-shadow:0 30px 80px rgba(12,45,38,.28);color:var(--ink)}dialog::backdrop{background:rgba(5,28,24,.48);backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:1.2rem}.dialog-head p{margin:0;color:var(--muted);font-size:.78rem}.dialog-head button{border:0;background:#eef3f1;width:32px;height:32px;border-radius:9px;font-size:1.25rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px}.form-grid label,.auth-form label,.date-filter label{display:flex;flex-direction:column;gap:6px;font-size:.74rem;font-weight:700;color:#365a52}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.auth-form input,.date-filter input,.inline-form select{width:100%;border:1px solid #cddbd7;border-radius:10px;background:white;color:var(--ink);padding:10px 11px;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.auth-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(11,107,91,.1)}.form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.form-divider{display:flex;align-items:center;gap:10px;color:var(--green);font-weight:800}.form-divider:before,.form-divider:after{content:"";height:1px;background:var(--line);flex:1}
.alert{padding:12px 15px;border-radius:12px;font-size:.8rem;border:1px solid}.alert.success{background:#e2f5ed;border-color:#b8e3d2;color:#087258}.alert.error{background:#fdeaea;border-color:#efc3c3;color:#9c3434}.alert.warning{background:#fff4e4;border-color:#f0d3aa;color:#985611}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 20%,#dff4ed,transparent 34%),linear-gradient(135deg,#f7faf9,#e8f2ef)}.auth-card,.install-card{width:min(440px,100%);background:white;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 30px 70px rgba(20,61,52,.13)}.install-card{width:min(680px,100%)}.auth-brand{margin-bottom:28px}.auth-brand small{display:block}.auth-card>p,.install-card>p{color:var(--muted);font-size:.85rem}.auth-form{display:flex;flex-direction:column;gap:14px;margin:20px 0}.auth-card>small{display:block;text-align:center}.install-card .form-grid{padding:10px 0 0}.install-note{display:block;text-align:center;margin-top:16px}
@media(max-width:1150px){.metric-grid{grid-template-columns:1fr 1fr}.profile-grid{grid-template-columns:1fr 1fr}.menu-columns,.registration-columns{grid-template-columns:1fr}.apartment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-row{flex-wrap:wrap}.summary-row>div:not(.summary-actions){flex:1}.summary-actions{width:100%;margin:15px 0 0;padding:15px 0 0;border-top:1px solid var(--line)}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:250px;transition:left .2s}.sidebar.open{left:0;box-shadow:20px 0 50px rgba(0,0,0,.25)}.menu-toggle{display:block}.topbar{height:76px;padding:14px 18px;justify-content:flex-start;gap:14px}.topbar .user-chip{margin-left:auto}.topbar h1{font-size:1.35rem}.user-chip div{display:none}.content{padding:20px 16px 35px}.two-columns{grid-template-columns:1fr}.rule-grid{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.apartment-grid{grid-template-columns:1fr 1fr}.hospital-banner,.report-hero,.integration-hero{align-items:flex-start;flex-wrap:wrap}.hospital-banner>div:not(:first-child),.integration-hero>div:not(:first-child){border:0;padding:0}.hospital-banner>div:first-child,.report-hero>div:first-child,.integration-hero>div:first-child{flex-basis:100%}.hero-card{align-items:flex-start;flex-direction:column}.hero-card .primary{margin:0}.hero-mark{right:-20px}.menu-columns{grid-template-columns:1fr}.date-filter{width:100%;flex-wrap:wrap}.app-footer{padding:18px}.summary-row>div:not(.summary-actions){min-width:50%;border-right:0;border-bottom:1px solid var(--line);padding:12px}.summary-row>div:first-child{padding-left:12px}}
@media(max-width:560px){.metric-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr}.apartment-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.billing-preview{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr}.menu-list article{grid-template-columns:70px 1fr}.portion-total{grid-column:2;text-align:left}.requirement-list article{grid-template-columns:1fr 1fr}.requirement-list article>div:first-child{grid-column:1/-1}.user-chip{padding:6px}.summary-row>div:not(.summary-actions){min-width:100%}.auth-card,.install-card{padding:22px}}

/* Cadastros, lotes e etiquetas — v1.1 */
.record-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;text-align:left!important}.record-actions form{display:inline-flex}.small-button{cursor:pointer;text-decoration:none;white-space:nowrap}.small-button.edit{border-color:#a9c7df;color:#285fbd;background:#f6faff}.small-button.print{border-color:#a9d6c7;color:#087258;background:#f2fbf7}.small-button.danger{border-color:#efc3c3;color:#a13d3d;background:#fff8f8}.stock-list article{align-items:center;flex-wrap:wrap}.stock-list article>div:first-child{flex:1;min-width:180px}.stock-list .stock-balance{text-align:right}.stock-list .record-actions{width:100%;padding-top:9px;border-top:1px solid var(--line)}.people-list article{flex-wrap:wrap}.people-list article>.record-actions{width:100%;padding-top:8px;border-top:1px solid var(--line)}.profile-actions{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.meal-actions{min-width:290px}.dialog-body{padding:22px}.dialog-body h3{margin:0 0 12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-grid>div{padding:12px;background:#f7faf9;border-radius:10px}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{font-size:.67rem;color:var(--muted);margin-bottom:3px}.empty.compact{padding:18px}.bed-chips>span{display:inline-flex;align-items:center;gap:4px}.bed-chips>span small{margin-right:2px}.bed-chips>span button{border:0;background:transparent;color:inherit;padding:0 2px;font-weight:900;cursor:pointer}.bed-chips>span form{display:inline-flex}.panel-head>form{display:inline-flex}.table-wrap input[type=checkbox]{width:16px;height:16px;accent-color:var(--green)}.recipe-manage{list-style:none!important;padding:0!important}.recipe-manage li{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 0}.recipe-manage form{display:inline-flex}.recipe-manage button{border:0;background:#fdeaea;color:#a13d3d;border-radius:6px;font-weight:900;cursor:pointer}
@media(max-width:820px){.meal-actions{min-width:220px}.detail-grid{grid-template-columns:1fr}.stock-list .stock-balance{text-align:left}.record-actions{justify-content:flex-start}}

/* Estoque — tabela inteligente */
.stock-smart-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px 2px}.stock-smart-head h2{font-size:1.35rem}.stock-smart-head p:not(.eyebrow){margin:0;color:var(--muted);font-size:.82rem}.stock-smart-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.stock-metrics article{min-width:0}.stock-smart-panel{padding:0;overflow:hidden}.stock-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(170px,.36fr) minmax(170px,.36fr) auto;gap:12px;align-items:end;padding:18px 20px;background:linear-gradient(120deg,#fff,#f3faf7);border-bottom:1px solid var(--line)}.stock-toolbar label{display:flex;flex-direction:column;gap:6px;color:#365a52;font-size:.7rem;font-weight:750}.stock-toolbar input,.stock-toolbar select{width:100%;border:1px solid #cddbd7;border-radius:10px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}.stock-toolbar input:focus,.stock-toolbar select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(11,107,91,.1)}.stock-clear{height:40px;white-space:nowrap}.stock-result-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 20px;border-bottom:1px solid var(--line);background:#fff;color:var(--muted);font-size:.72rem}.stock-result-line strong{color:var(--green);font-size:.86rem}.stock-smart-table{border:0;border-radius:0}.stock-smart-table table{min-width:1110px}.stock-smart-table tbody tr{transition:background .16s ease}.stock-smart-table tbody tr:hover{background:#f5fbf8}.stock-smart-table th:last-child,.stock-smart-table td:last-child{text-align:right}.stock-smart-table td:nth-child(5){white-space:nowrap}.stock-status-list{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.pill.stock-regular{background:#e2f5ed;color:#087258}.pill.stock-low,.pill.stock-expiring{background:#fff1df;color:#9f5a11}.pill.stock-expired{background:#fdeaea;color:#a13d3d}.stock-table-actions{min-width:285px}.stock-history-panel{margin-top:0}.stock-history-panel .table-wrap table{min-width:760px}
@media(max-width:1150px){.stock-toolbar{grid-template-columns:minmax(220px,1fr) 1fr 1fr}.stock-clear{grid-column:1/-1;justify-self:start}.stock-smart-head{align-items:flex-start}.stock-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.stock-smart-head{flex-direction:column}.stock-smart-actions{width:100%;justify-content:flex-start}.stock-toolbar{grid-template-columns:1fr}.stock-clear{grid-column:auto}.stock-result-line{align-items:flex-start;flex-direction:column}.stock-metrics{grid-template-columns:1fr}.stock-smart-table table{min-width:980px}}

/* Fichas técnicas completas — v1.2 */
.technical-hero{background:linear-gradient(120deg,#fff,#edf9f5)}.compact-metrics article{display:flex;flex-direction:column;gap:1px}.compact-metrics article span{color:var(--muted);font-size:.7rem;font-weight:750}.compact-metrics article strong{color:var(--green)}.technical-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.technical-profile-card{display:flex;flex-direction:column;gap:14px}.technical-card-head>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.technical-card-head>strong{display:block;font-size:1.08rem;margin-top:9px}.technical-card-head p{font-size:.7rem;color:var(--muted);margin:3px 0 0}.status-pill{display:inline-flex;width:max-content;border-radius:999px;padding:5px 9px;font-size:.64rem;font-weight:800}.status-pill.approved{background:#e2f5ed;color:#087258}.status-pill.draft{background:#fff1df;color:#9f5a11}.technical-spec-grid,.technical-view-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.technical-spec-grid>div,.technical-view-grid>div{padding:11px;background:#f6f9f8;border-radius:11px}.technical-spec-grid small,.technical-spec-grid strong,.technical-view-grid small,.technical-view-grid strong{display:block}.technical-spec-grid small,.technical-view-grid small{font-size:.61rem}.technical-spec-grid strong,.technical-view-grid strong{font-size:.78rem;margin-top:3px}.technical-warning{padding:10px 12px;border:1px solid #f0d3aa;background:#fff8ec;color:#985611;border-radius:10px;font-size:.7rem}.technical-card-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.technical-card-meta span{background:var(--green-soft);color:var(--green);padding:5px 8px;border-radius:999px;font-size:.64rem;font-weight:750}.technical-dialog{width:min(1100px,calc(100vw - 26px))}.medium-dialog{width:min(760px,calc(100vw - 26px))}.technical-dialog .dialog-head{position:sticky;top:0;z-index:3;background:#fff}.technical-view{padding:22px;display:flex;flex-direction:column;gap:20px}.technical-section{border-top:1px solid var(--line);padding-top:18px}.section-title{display:flex;justify-content:space-between;gap:14px;margin-bottom:12px}.section-title h3{font-size:.95rem;margin:0 0 2px}.section-title p{font-size:.68rem;color:var(--muted);margin:0}.technical-table{min-width:1050px}.technical-table td{font-size:.72rem}.empty-cell{text-align:center;color:var(--muted);padding:24px}.inline-actions{display:flex;gap:4px}.inline-actions form{display:inline-flex}.icon-action{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--green);font-weight:850}.icon-action.danger{color:var(--red);border-color:#efc3c3;background:#fff8f8}.preparation-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.preparation-steps li{display:flex;align-items:center;gap:11px;padding:11px 12px;background:#f7faf9;border-radius:11px}.preparation-steps li>span{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:var(--green);color:#fff;font-weight:850}.preparation-steps li>div{min-width:0;flex:1}.preparation-steps strong,.preparation-steps small{display:block}.preparation-steps strong{font-size:.76rem}.preparation-steps small{font-size:.64rem;margin-top:3px}.preparation-steps form{display:inline-flex}.preparation-steps .empty-step{color:var(--muted);justify-content:center}.technical-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.technical-notes-grid>div{padding:12px;background:#f7faf9;border-radius:11px}.technical-notes-grid .wide{grid-column:1/-1}.technical-notes-grid small{font-size:.63rem;font-weight:750}.technical-notes-grid p{font-size:.73rem;line-height:1.5;margin:4px 0 0}.nutrition-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;padding:13px;background:var(--green-soft);border-radius:13px}.nutrition-strip div{text-align:center;border-right:1px solid #cbe2db}.nutrition-strip div:last-child{border-right:0}.nutrition-strip small,.nutrition-strip strong{display:block}.nutrition-strip small{font-size:.57rem}.nutrition-strip strong{font-size:.73rem;margin-top:3px;color:var(--green-dark)}.technical-form{grid-template-columns:repeat(4,1fr)}.form-subtitle{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0 3px;border-top:1px solid var(--line)}.form-subtitle strong{font-size:.83rem}.form-subtitle span{color:var(--muted);font-size:.66rem}.calculation-preview{display:flex;flex-direction:column;justify-content:center;padding:9px 12px;background:var(--green-soft);border-radius:10px}.calculation-preview span{font-size:.61rem;color:var(--muted)}.calculation-preview strong{font-size:.76rem;color:var(--green);margin-top:2px}.recipe-preview{font-weight:750;color:var(--green)}.form-grid label small{font-size:.61rem;font-weight:500}.checkbox-field{flex-direction:row!important;align-items:center!important;align-self:end;min-height:42px}.checkbox-field input{width:16px!important;height:16px!important;accent-color:var(--green)}
@media(max-width:1150px){.technical-profile-grid{grid-template-columns:1fr}.technical-form{grid-template-columns:1fr 1fr}.technical-form .wide{grid-column:1/-1}.nutrition-strip{grid-template-columns:repeat(3,1fr)}.nutrition-strip div:nth-child(3){border-right:0}}
@media(max-width:720px){.technical-spec-grid,.technical-view-grid{grid-template-columns:1fr 1fr}.technical-form{grid-template-columns:1fr}.technical-form .wide{grid-column:auto}.technical-notes-grid{grid-template-columns:1fr}.technical-notes-grid .wide{grid-column:auto}.nutrition-strip{grid-template-columns:1fr 1fr}.nutrition-strip div{border-right:0}.form-subtitle{align-items:flex-start;flex-direction:column}.technical-card-head>div{align-items:flex-start;flex-direction:column}}

/* Cadastro de insumos em lote */
.recipe-batch-form{padding:22px;display:flex;flex-direction:column;gap:16px}.recipe-profile-field{display:flex;flex-direction:column;gap:6px;font-size:.74rem;font-weight:700;color:#365a52}.recipe-profile-field select,.recipe-row-grid input,.recipe-row-grid select{width:100%;border:1px solid #cddbd7;border-radius:10px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}.recipe-profile-field select:focus,.recipe-row-grid input:focus,.recipe-row-grid select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(11,107,91,.1)}.recipe-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:4px}.recipe-batch-toolbar strong,.recipe-batch-toolbar small{display:block}.recipe-batch-toolbar small{font-size:.67rem;margin-top:2px}.recipe-batch-list{display:flex;flex-direction:column;gap:12px}.recipe-batch-row{border:1px solid var(--line);border-radius:14px;padding:14px;background:#f9fbfa}.recipe-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.recipe-row-head strong{font-size:.8rem;color:var(--green)}.recipe-row-grid{display:grid;grid-template-columns:minmax(240px,1.6fr) 1fr .45fr repeat(3,1fr);gap:10px}.recipe-row-grid label{display:flex;flex-direction:column;gap:5px;font-size:.68rem;font-weight:700;color:#365a52}.recipe-row-grid label small{font-size:.58rem;font-weight:500;color:var(--muted)}.recipe-row-grid .recipe-notes{grid-column:1/-1}.recipe-batch-row .recipe-preview{margin-top:10px}.recipe-batch-form>.form-actions{padding-top:2px}.recipe-batch-form>.rule-note{margin:0}
@media(max-width:1050px){.recipe-row-grid{grid-template-columns:repeat(3,1fr)}.recipe-row-grid .recipe-product{grid-column:span 2}.recipe-row-grid .recipe-notes{grid-column:1/-1}}
@media(max-width:650px){.recipe-batch-toolbar{align-items:flex-start;flex-direction:column}.recipe-row-grid{grid-template-columns:1fr 1fr}.recipe-row-grid .recipe-product,.recipe-row-grid .recipe-notes{grid-column:1/-1}.recipe-batch-form{padding:16px}.recipe-batch-toolbar .secondary{width:100%}}

/* Configurações e reinicialização segura — v1.2.3 */
.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;margin-bottom:18px;border:1px solid #cfe4dd;border-radius:18px;background:linear-gradient(120deg,#fff,#eaf8f3);overflow:hidden}.settings-hero h2{font-size:1.5rem;margin:2px 0 5px}.settings-hero>div>p:not(.eyebrow){margin:0;color:var(--muted);font-size:.82rem}.settings-preserved{display:flex;align-items:center;gap:11px;min-width:230px;padding:13px 16px;border:1px solid #b9dfd2;border-radius:14px;background:#fff}.settings-preserved>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--green);color:#fff;font-weight:900}.settings-preserved strong,.settings-preserved small{display:block}.settings-preserved strong{font-size:.8rem;color:var(--green-dark)}.settings-preserved small{font-size:.65rem;margin-top:2px}.settings-metrics .metric-date{font-size:1rem}.settings-columns{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin-bottom:18px}.settings-summary-panel,.danger-panel{margin:0}.reset-scope-list{display:flex;flex-direction:column;gap:8px}.reset-scope-list article{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fafcfb}.reset-scope-list article>span{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#fdeaea;color:#a13d3d;font-weight:900}.reset-scope-list article.preserved>span{background:#e2f5ed;color:#087258}.reset-scope-list article.backup>span{background:#eaf1ff;color:#285fbd}.reset-scope-list strong,.reset-scope-list small{display:block}.reset-scope-list strong{font-size:.76rem}.reset-scope-list small{font-size:.63rem;margin-top:2px}.danger-panel{border-color:#ebc2c2;background:linear-gradient(145deg,#fff,#fff9f9)}.danger-panel-head{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid #f0d7d7}.danger-panel-head>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#a13d3d;color:#fff;font-weight:900;font-size:1.15rem}.danger-panel-head h2{margin:2px 0 4px;color:#822f2f}.danger-panel-head p:not(.eyebrow){margin:0;color:var(--muted);font-size:.72rem}.reset-form{display:flex;flex-direction:column;gap:14px;padding-top:17px}.reset-form>label:not(.reset-check){display:flex;flex-direction:column;gap:6px;font-size:.72rem;font-weight:750;color:#5f3b3b}.reset-form input[type=text],.reset-form input[type=password],.reset-form input:not([type]){width:100%;border:1px solid #dfc2c2;border-radius:10px;background:#fff;padding:11px;outline:none}.reset-form input:focus{border-color:#a13d3d;box-shadow:0 0 0 3px rgba(161,61,61,.1)}.reset-check{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:10px;background:#fff4f4;color:#694040;font-size:.68rem;line-height:1.4}.reset-check input{width:17px;height:17px;flex:0 0 auto;margin-top:1px;accent-color:#a13d3d}.reset-warning{padding:9px 11px;border-left:3px solid #d39a52;background:#fff8ec;color:#87551c;font-size:.65rem}.danger-button{width:100%;border:0;border-radius:11px;padding:12px 15px;background:#a13d3d;color:#fff;font-weight:850;cursor:pointer;box-shadow:0 8px 18px rgba(161,61,61,.18)}.danger-button:hover:not(:disabled){background:#862f2f}.danger-button:disabled{background:#d8c8c8;color:#fff;box-shadow:none;cursor:not-allowed}.backup-panel .table-wrap table{min-width:720px}.backup-panel td:last-child{white-space:nowrap}
@media(max-width:1000px){.settings-columns{grid-template-columns:1fr}.settings-hero{align-items:flex-start}.settings-preserved{min-width:210px}}
@media(max-width:650px){.settings-hero{align-items:stretch;flex-direction:column;padding:20px}.settings-preserved{min-width:0}.settings-metrics{grid-template-columns:1fr}.danger-panel,.settings-summary-panel{padding:16px}.reset-scope-list article{align-items:flex-start}}
