.checkout-extra{border-top:1px solid #d9e2d1;margin:15px 0;padding-top:10px;display:grid;gap:12px}.checkout-extra input,.checkout-extra select{width:100%;min-width:0}.promo-error{color:#a34332;font-size:12px}.payment-qr{margin:15px 0;border-top:1px dashed #999;padding-top:12px}.payment-qr img{width:190px;height:190px;object-fit:contain}#bank-form{display:grid;max-width:500px}#bank-form input{width:100%}@media print{.payment-qr{break-inside:avoid}.payment-qr img{width:48mm;height:48mm}}

@media screen{
 button,.button{border-radius:10px;min-height:44px;touch-action:manipulation;box-shadow:0 2px 3px #153b3210}
 button.secondary{box-shadow:none;background:#f2f6f4;border:1px solid #dbe5df}
 button[data-do=pay],button[data-do=accept],button[data-do=create],button[data-do=advance]{background:#196b50;color:white;border:1px solid #196b50;box-shadow:0 3px 8px #196b5020}
 button[data-do=cancel]{color:#ac453c;background:#fff4f2;border:1px solid #efd3ce}
 #content table button{min-height:42px;font-size:12px;padding:10px 12px;white-space:nowrap}
 .table-actions{min-width:220px;width:240px}
 .table-actions .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .table-actions .actions button{width:100%;margin:0}
 .card>.responsive-table{display:table}
 @media(max-width:1100px){
  body{display:block}aside{position:relative;inset:auto;width:100%;padding:14px 20px;overflow:visible}.brand{font-size:20px;padding:0 4px 10px}.brand small{display:none}aside nav{display:flex;gap:5px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}aside nav a{white-space:nowrap;flex-shrink:0;padding:10px 14px;margin:0}aside footer{display:none}
  main{width:100%;margin:0;max-width:none;padding:24px}.customer-view main{max-width:1100px}
  .responsive-table,.card>.responsive-table{display:block!important}.responsive-table thead{display:none}.responsive-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .responsive-table tr{display:flex;flex-direction:column;border:1px solid #dfe7e2;border-radius:12px;padding:16px;background:white;min-width:0}
  .responsive-table td{display:block;border:0;padding:8px 0;width:auto;min-width:0;overflow-wrap:anywhere;font-size:13px}
  .responsive-table td::before{content:attr(data-label);display:block;font-size:10px;font-weight:600;letter-spacing:.6px;color:#728278;margin-bottom:5px}
  .responsive-table td:first-child{padding-top:0;font-size:14px}.responsive-table td p{margin:6px 0}
  .responsive-table .table-actions{margin-top:auto;padding-top:14px;border-top:1px solid #e8eee9}.responsive-table .table-actions::before{display:none}
  .table-wrap{border:0;overflow:visible}.responsive-table td[colspan]{width:100%}
 }
 @media(max-width:600px){
  main{padding:16px}aside{padding:12px 16px}.responsive-table tbody{grid-template-columns:minmax(0,1fr);gap:12px}.card:has(>.table-wrap){padding:16px}
  button,.button,#content table button,.actions button{min-height:44px;font-size:13px}.reference-row button{min-height:44px}
  .reference-row{grid-template-columns:minmax(0,1fr) 66px 76px}.field-pair{grid-template-columns:minmax(0,1fr)}
  form:not(.reference-add):not(.dish-form)>label{flex-basis:100%}.menu-controls{grid-template-columns:minmax(0,1fr)}.menu-search{grid-column:auto}
  .table-actions .actions{gap:8px}dialog .close{min-height:44px}.menu-hero h2{font-size:24px}
 }
}

@media screen{
 :root{--brand:#215a43;--deep:#123c32;--soft:#e9eddf;--canvas:#f4f6f8;--ink:#243c35;--line:#dbe5df;--accent:#dff3ae}
 :root[data-theme=ocean]{--brand:#2457a7;--deep:#152e53;--soft:#e8effa;--canvas:#f3f6fb;--ink:#263b58;--line:#d9e2ef;--accent:#cde3ff}
 :root[data-theme=plum]{--brand:#70418c;--deep:#382346;--soft:#f4eaf5;--canvas:#faf6fa;--ink:#48334e;--line:#e9dceb;--accent:#f0d1ed}
 :root[data-theme=coffee]{--brand:#795039;--deep:#3c2a20;--soft:#f3e9dc;--canvas:#faf7f1;--ink:#493c32;--line:#e7dccd;--accent:#f3d7ad}
 :root[data-theme=ember]{--brand:#b94708;--deep:#191919;--soft:#fff0e4;--canvas:#faf7f4;--ink:#29221e;--line:#eadace;--accent:#ffad66}
 :root[data-theme=custom]{--brand:var(--custom-brand);--deep:var(--custom-deep);--soft:#f0f2f4;--canvas:#f6f7f9;--ink:#252b32;--line:#dce1e6;--accent:var(--custom-brand)}
 :root{background:var(--canvas);color:var(--ink)}aside{background:var(--deep)}nav a{color:#eee}nav a.active{background:var(--accent);color:var(--deep)}
 button,.button,button[data-do=pay],button[data-do=accept],button[data-do=create],button[data-do=advance]{background:var(--brand);color:white;border-color:var(--brand)}
 button.secondary,.button.secondary{background:var(--soft);color:var(--brand);border-color:var(--line)}
 button[data-do=cancel]{background:#fff4f2;color:#ac453c;border-color:#efd3ce}
 .welcome,.menu-hero{background:var(--soft)}.welcome p,.menu-hero p{color:var(--ink)}
 .category-tabs button{background:white;color:var(--brand);border-color:var(--line)}.category-tabs button.selected{background:var(--brand);color:white;border-color:var(--brand)}
 .dish-price,a,.weekly-revenue{color:var(--brand)}.product{background:var(--soft);color:var(--ink)}.product:hover{background:var(--soft);box-shadow:inset 0 0 0 2px var(--brand)}
 .highlight-week,#toast{background:var(--brand)}.hero-picture>span{background:var(--deep)}
 .card,dialog,#operator-bar{border-color:var(--line)}dialog{color:var(--ink)}input:not([type=checkbox]):not([type=radio]),select,textarea{color:var(--ink);border-color:var(--line)}
 input[type=checkbox],input[type=radio]{accent-color:var(--brand)}.add-list-button{background:transparent;color:var(--brand);border:0;box-shadow:none}
 header{flex-wrap:wrap}header>div:first-child{flex:1}#appearance-button{white-space:nowrap;font-size:12px}
 .theme-options{clear:both;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .theme-choice{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:16px!important;gap:12px!important;background:white!important;color:var(--ink)!important;border:2px solid var(--line)!important;box-shadow:none}
 .theme-choice[aria-pressed=true]{border-color:var(--brand)!important;background:var(--soft)!important}
 .theme-swatches{display:flex;height:66px;overflow:hidden;border-radius:9px}.theme-swatches i:first-child{flex:2}.theme-swatches i:last-child{flex:1}.theme-choice small{font-weight:400;color:var(--brand)}
 button.secondary[data-do=pay],button.secondary[data-do=accept],button.secondary[data-do=advance]{background:var(--brand);border-color:var(--brand);color:white}
 .custom-colors{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}#custom-colors-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.color-input-pair{display:flex;gap:8px}.color-input-pair input[type=color]{width:54px;flex:0 0 54px;padding:4px}.color-input-pair input:not([type=color]){width:100%;min-width:0}#custom-colors-form>button{grid-column:1/-1}
 :root[data-theme=custom] :is(button,.button,button[data-do=pay],button[data-do=accept],button[data-do=create],button[data-do=advance],.category-tabs button.selected,.highlight-week,#toast){color:var(--custom-button-ink)}
 :root[data-theme=custom] :is(button.secondary,.button.secondary,.add-list-button,.category-tabs button:not(.selected),.dish-price,.weekly-revenue,.theme-choice small){color:var(--ink)}
 :root[data-theme=custom] main a:not(.button){color:var(--ink)}
 :root[data-theme=custom] button[data-do=cancel]{color:#ac453c}
 :root[data-theme=custom] :is(aside,aside nav a,.brand,.brand small,aside footer span,.hero-picture>span){color:var(--custom-nav-ink)}
 :root[data-theme=custom] nav a.active{color:var(--custom-button-ink)}
 .color-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.color-suggestions button{font-size:12px}.color-preview{padding:16px;border-radius:12px;margin:16px 0;display:grid;gap:12px}.color-preview span{padding:10px;border-radius:8px}.color-preview small{color:inherit}
 @media(max-width:450px){header>.badge{display:none}.theme-options{grid-template-columns:1fr}.theme-swatches{height:44px}#custom-colors-form{grid-template-columns:1fr}}
}
