/* Shared screen UI. Printed checklists and purchase orders keep their own layout. */
.currency-display,.currency-edit-prefix{display:none}
@media screen{
 :root{--muted:#465742;--ui-gap:20px;--ui-support:13px}
 body{font-size:15px;line-height:1.6}
 input,select,textarea{font-size:16px;line-height:1.4}
 input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{min-height:48px}
 input::placeholder,textarea::placeholder{color:#56634e;opacity:1}
 .field{gap:8px;margin-bottom:18px;min-width:0}
 .field label{font-size:14.5px;line-height:1.6;color:#465742}
 .field input,.field select,.field textarea,.expense-line input,.recipe-line input,.recipe-line select,.qty,.plan-line input,.shopping-stock,.saved-combos select{font-size:16px;line-height:1.4;min-height:48px}
 .field-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
 .field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
 .panel,.help-card{padding:22px;margin-bottom:20px}
 .panel-head{margin-bottom:20px;gap:16px}
 .panel-head h2,.side-card h2,.saved-combos h2{font-size:16px;line-height:1.5}
 .panel-head .sub,.page-head .sub,.sub,.form-tip,.field small,.help-card p,.faq details p,.tip,.side-card .foot,.task small,.stat-foot,.pricing-meta small,.channel-card .sub,.channel-price small,.pricing-cmv small,.pricing-cmv span,.comparison small,.coupon-summary small,.order-line small,.saved-combos p{font-size:14.5px;line-height:1.7;color:#465742}
 .form-tip{margin-top:6px}
 .page-head{gap:20px;margin-bottom:24px}
 .page-head h1{line-height:1.3}
 .actions{gap:12px}
 .btn,.btn.sm{font-size:14.5px;line-height:1.4;min-height:44px;padding:12px 16px}
 .btn:not(.secondary):not(.sm){min-height:48px}
 .iconbtn{min-width:44px;min-height:44px;width:44px;height:44px}
 .textbtn{min-height:44px;font-size:14.5px;line-height:1.5;align-items:center}
 .nav button{min-height:48px;font-size:14.5px}
 .tabs button{min-height:44px;font-size:14.5px}
 .checkbox-label{min-height:44px;padding-top:8px;padding-bottom:8px;font-size:14.5px;line-height:1.6;color:#465742;cursor:pointer}
 .checkbox-label input{width:20px;height:20px;flex-shrink:0}
 .card-body{padding:20px}.card-body h3{font-size:16px;line-height:1.5}
 .card-body .sub,.card-cost,.card-cost strong,.card-foot,.price-columns small,.price-columns em,.product-cell strong,.product-cell small,.compactstat small,.plan-line span,.task,.split-row,.split-row strong,.check-task>span,.check-task select{font-size:14.5px;line-height:1.6}
 .card-cost,.price-columns small,.product-cell small,.compactstat small,.stat-head,.data-table th,.chart-labels span,.footer-note,.footer-note b,.pricing-meta small{color:#465742}
 .price-columns{padding:16px 10px;gap:8px}
 .price-columns b{font-size:16px}
 .stat{padding:20px}.stat-head{font-size:14.5px;line-height:1.5;gap:10px}
 .metric-value{font-size:26px;line-height:1.3}
 .pill,.pill.neutral,.pill.amber,.pill.red{font-size:12.5px;line-height:1.5;white-space:normal}
 .pill{color:#3d6338}.pill.neutral{color:#465742}.pill.amber{color:#705020}.pill.red{color:#923c34}
 .chart-labels span{font-size:12.5px;line-height:1.5}.chart-val,.legend{font-size:13.5px}
 .recipe-cost small{font-size:13.5px;line-height:1.6;color:#465742}
 .rates-seal,.channel-price .rates-seal{font-size:12.5px;line-height:1.5}
 .data-table th{font-size:12.5px;line-height:1.5}
 .data-table td{font-size:14.5px;line-height:1.6;padding-top:16px;padding-bottom:16px}
 .row-tools button{min-width:44px;min-height:44px}
 .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .currency-control{display:block;position:relative;min-width:0;width:100%;font-size:16px}
 .currency-control>input{width:100%;min-width:0;max-width:100%;font-size:16px;padding:12px}
 .currency-control:not(:focus-within)>input{color:transparent!important}
 .currency-control>.currency-display{position:absolute;inset:1px;display:flex;align-items:center;padding:0 12px;pointer-events:none;border-radius:6px;overflow:hidden;white-space:nowrap;font:400 16px/1.4 var(--font);color:var(--ink);background:#fff}
 .currency-control>.currency-display:empty{display:none}
 .currency-control:focus-within>.currency-display{display:none}
 .currency-control:focus-within>input{color:var(--ink);padding-left:40px}
 .currency-control:focus-within>.currency-edit-prefix{display:block;position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#465742;font-size:16px;line-height:1.4}
 .expense-line{grid-template-columns:minmax(0,1fr) 160px;font-size:14.5px;gap:16px;margin-bottom:14px}
 .dialog-head{padding:22px}.dialog-head p{font-size:14.5px;line-height:1.7;color:#465742}
 .dialog-body{padding:22px}.dialog-foot{padding:16px 22px;gap:14px;flex-wrap:wrap}
 .dialog-foot .sub,.confirm-copy{font-size:14.5px;line-height:1.7;color:#465742}
 .recipe-line{grid-template-columns:minmax(110px,1fr) 105px 30px 85px 44px;gap:10px}
 .recipe-line span,.recipe-line b{font-size:13.5px;line-height:1.5}
 .recipe-line button{min-height:44px;min-width:44px}
 .qty,.plan-line input{width:84px}
 #shopping-workspace .shopping-stock{width:108px;font-size:16px;min-height:48px}
 #shopping-workspace .shopping-unit,#shopping-workspace .shopping-controls small{font-size:13.5px;line-height:1.6;color:#465742}
 #checklist-workspace .checklist-routine-row{font-size:15px;line-height:1.7;gap:14px;padding:16px 0;flex-wrap:wrap}
 #checklist-workspace .checklist-editor-note,#checklist-workspace .checklist-print-hint,#checklist-workspace .checklist-print-hint small{font-size:14.5px;line-height:1.7;color:#465742}
 #checklist-workspace .checklist-routine-row select{font-size:16px;min-height:48px}
 #checklist-workspace .checklist-routine-tools{flex-wrap:wrap;gap:10px}
 #business-workspace .field label,#business-workspace .field small,#business-workspace .form-tip,#business-workspace .channel-config>small{font-size:14.5px}
 #business-workspace .expense-line{grid-template-columns:minmax(0,1fr) 160px;font-size:14.5px}
 #business-workspace .business-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:760px){
 .content{padding:24px 18px calc(96px + env(safe-area-inset-bottom,0px))}
 .panel,.help-card{padding:20px}.side-card .pad{padding:20px}
 .page-head h1{font-size:25px}
 .page-head,.section-controls{align-items:stretch}
 .page-head .actions{justify-content:flex-start;gap:10px}
 .page-head .actions .btn{flex:1 1 140px}
 .field-grid{column-gap:14px}.field-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
 .metric-value{font-size:22px;letter-spacing:-.7px}
 .stat{padding:16px}.stat-head{font-size:13.5px}
 .channel-card,.channel-config{padding:18px}
 .order-line{grid-template-columns:40px minmax(0,1fr) 78px 44px;gap:10px}
 .order-line .qty{width:78px}.order-line .remove{min-height:44px;min-width:44px}
 .plan-line{margin:18px 0;gap:16px}
 .footer-note{font-size:13.5px;line-height:1.7;margin-top:24px}
 .dialog-body,.dialog-head{padding:20px}.dialog-foot{padding:16px 20px}
 .dialog-foot .btn{flex:1 1 auto}
 .recipe-line{grid-template-columns:84px 30px minmax(70px,1fr) 44px;gap:8px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
 .recipe-line select{grid-column:1/-1}.recipe-line b{font-size:13.5px;overflow-wrap:anywhere}
 .search input{font-size:16px;min-height:48px}.search .icon{top:16px}
 .search{max-width:none;width:100%}
 .stock-controls .actions{gap:12px}
 .mobile-result{min-height:64px;bottom:calc(64px + env(safe-area-inset-bottom,0px))}
 body:has(.mobile-result) .content{padding-bottom:calc(164px + env(safe-area-inset-bottom,0px))}
 .mobile-result span{font-size:13.5px}.mobile-result strong{font-size:20px}
 .tax-exceptions summary,.faq summary,.shopping-covered summary{min-height:44px;padding-top:12px;padding-bottom:12px}
}
@media screen and (max-width:480px){
 .field-grid:not(.business-alerts):not(.channel-settings){grid-template-columns:minmax(0,1fr)}
 #business-workspace .business-alerts{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
 .expense-line,#business-workspace .expense-line{grid-template-columns:minmax(0,1fr) 148px;gap:12px}
 .expense-line>span:first-child{min-width:0}
 .topbar{padding-left:18px;padding-right:18px;gap:10px}
 .topactions{gap:8px}.topactions .savebadge{line-height:1.4}
 .simresult{padding:22px}.simresult .split-row{font-size:14.5px;gap:10px}
 .simresult .result-note{font-size:13.5px;line-height:1.7}
 #checklist-workspace .checklist-routine-tools{margin-left:0;width:100%}
}

/* Only the Cardápio category strip changes on small screens. */
@media screen and (max-width: 640px) {
  .catalog-tabs-wrap {position:relative;min-width:0;width:100%;max-width:100%;}
  .catalog-tabs-wrap::after {content:"";position:absolute;right:0;top:0;bottom:0;width:22px;border-radius:0 8px 8px 0;background:linear-gradient(to right,transparent,#e9eee5);pointer-events:none;}
  .catalog-tabs {display:flex;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;max-width:100%;min-width:0;gap:4px;padding:4px 22px 4px 4px;scrollbar-width:none;-ms-overflow-style:none;scroll-padding-inline:4px 22px;}
  .catalog-tabs::-webkit-scrollbar {display:none;}
  .catalog-tabs button {flex-shrink:0;white-space:nowrap;min-height:44px;padding:8px 10px;font-size:15px;scroll-margin-inline:4px;}
}

@media screen {
 dialog:has(#product-form),dialog:has(#ingredient-form){max-height:90dvh;overflow-y:auto;overscroll-behavior:contain;}
 #product-form .dialog-head,#ingredient-form .dialog-head{position:sticky;align-items:flex-start;}
 #product-form .dialog-head>div,#ingredient-form .dialog-head>div{padding-right:56px;min-width:0;}
 #product-form .dialog-head .iconbtn,#ingredient-form .dialog-head .iconbtn{position:absolute;right:14px;top:14px;width:44px;min-height:44px;}
 #product-form .dialog-foot,#ingredient-form .dialog-foot{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));}
 #ingredient-form .dialog-foot{display:flex;flex-direction:column;gap:6px;padding-top:10px;}
 #ingredient-form .dialog-foot .btn{width:100%;min-height:48px;flex:none;}
 .ingredient-save-note{font-size:13.5px;line-height:1.4;color:#465742;white-space:nowrap;}
 .recipe-new-ingredient{margin:10px 0 18px;}
 #ingredient-form input[type="number"],#product-form input[type="number"]{min-height:48px;font-size:16px;}
 #product-form [hidden]{display:none!important;}
}

@media screen {
 #product-form .recipe-new-ingredient{width:100%;min-height:48px;}
 #product-save-button:disabled,#ingredient-save-button:disabled{background:#e2e7df;color:#657063;border-color:#ccd3c8;box-shadow:none;cursor:not-allowed;opacity:1;}
 #product-recipe-hint{flex:1 1 100%;}
 #product-form .dialog-foot>div:empty{display:none;}
 .product-price-heading{margin-bottom:16px;}
}

/* Ajuste da migracao v17 (mobile, sem alterar layout ou regras):
   o seletor de periodo de Compras herdava 14px; o iPhone aplica zoom em campos < 16px. */
@media screen and (max-width:760px){#shopping-workspace .shopping-controls #shopping-period{font-size:16px}}
