/* Cafe workspace. Loaded only by the five staff/entry pages; kiosk stays original. */
:root{--ui-bg:#f3f5f2;--ui-paper:#fff;--ui-ink:#192c25;--ui-muted:#62746b;--ui-line:#dce4de;--ui-accent:#17664b;--ui-lime:#d5ed98;--ui-dark:#101e19;--ui-dark-card:#1b2c25;--ui-dark-line:#34483e}
body[class^="ui-"]{font-family:"Segoe UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif;letter-spacing:-.025em;line-height:1.5;-webkit-font-smoothing:antialiased}
body[class^="ui-"] button,body[class^="ui-"] input,body[class^="ui-"] select,body[class^="ui-"] textarea{font-family:inherit;letter-spacing:inherit}
body[class^="ui-"] button,body[class^="ui-"] a{touch-action:manipulation}
body[class^="ui-"] button{min-height:44px;transition:background .15s,box-shadow .15s,transform .15s}
body[class^="ui-"] :focus-visible{outline:3px solid #489d7c;outline-offset:3px}
body[class^="ui-"] input,body[class^="ui-"] select,body[class^="ui-"] textarea{min-width:0;accent-color:var(--ui-accent)}
body[class^="ui-"] input:focus,body[class^="ui-"] textarea:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px #17664b15}
body[class^="ui-"] button:disabled{cursor:not-allowed}
.eyebrow{display:block;font-size:11px;font-weight:750;letter-spacing:.18em;line-height:1.5;margin-bottom:8px}
body[class^="ui-"] .zoomGear{background:var(--ui-accent);border:1px solid #ffffff38;box-shadow:0 4px 18px #071a2326;right:20px;bottom:max(20px,env(safe-area-inset-bottom));border-radius:14px}
body[class^="ui-"] .zoomModal{color:var(--ui-ink);border-radius:22px;padding:26px}
body[class^="ui-"] .zoomModal .zrow button,body[class^="ui-"] .zoomModal .zpre button{background:#edf2ed;color:var(--ui-ink);border-color:var(--ui-line)}
body[class^="ui-"] .zoomModal .zpre button.on,body[class^="ui-"] .zoomModal .zclose{background:var(--ui-accent);color:white;border-color:var(--ui-accent)}
body[class^="ui-"] .zoomModal .zval{color:var(--ui-accent)}
body[class^="ui-"] .zoomModalBg,body[class^="ui-"] .modalBg,body[class^="ui-"] .bellBg{backdrop-filter:blur(6px)}

/* Entry: spacious two-column desktop launcher, compact mobile list. */
.ui-main{background:var(--ui-dark);color:#f2f5ed;min-height:100svh;height:auto}
.ui-main header{width:min(1180px,100%);margin:0 auto;padding:56px 40px 28px;text-align:left}
.ui-main .eyebrow{color:var(--ui-lime);margin-bottom:20px}
.ui-main header h1{font-size:clamp(28px,3.4vw,44px);font-weight:750;letter-spacing:-.055em;line-height:1.2}
.ui-main header .sub{color:#b1c0b7;margin-top:14px;font-size:16px}
.ui-main .grid{flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;max-width:1180px;width:100%;padding:12px 40px 48px;gap:18px;margin:0 auto}
.ui-main .tile{min-height:255px;border-radius:20px;padding:28px 30px;border:1px solid #3e5045;background:#1c2c24;transition:transform .18s,border-color .18s}
.ui-main .tile .ico{font-size:14px;letter-spacing:.1em;font-weight:600;display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;color:#b4c8b9}
.ui-main .ico span{font-size:25px;letter-spacing:0}
.ui-main .tile .tname{font-size:28px;font-weight:750;letter-spacing:-.045em}
.ui-main .tile .tdesc{font-size:14px;opacity:1;color:#b7c6bc;margin-top:8px}
.ui-main .tile .turl{font-size:12px;color:#c7d5cb;opacity:1;margin-top:22px;letter-spacing:0}
.ui-main .t-kiosk{background:var(--ui-lime);color:#173327;border-color:var(--ui-lime)}
.ui-main .t-kiosk .ico,.ui-main .t-kiosk .tdesc,.ui-main .t-kiosk .turl{color:#34513a}
.ui-main .t-admin{background:#e9eee5;color:var(--ui-ink);border-color:#e9eee5}
.ui-main .t-admin .ico,.ui-main .t-admin .tdesc,.ui-main .t-admin .turl{color:#516458}
@media(hover:hover){.ui-main .tile:hover{transform:translateY(-4px);border-color:#a4c6ae}.ui-admin .addBtn:hover{background:#d9e7de}}

/* Admin: light canvas with a persistent desktop navigation rail. */
.ui-admin{background:var(--ui-bg);color:var(--ui-ink);min-height:100svh}
.ui-admin header{background:#fff;color:var(--ui-ink);padding:18px 32px;border-bottom:1px solid var(--ui-line);min-height:88px;gap:16px;z-index:5}
.ui-admin header h1{font-size:22px;font-weight:750;line-height:1.15}
.ui-admin header .eyebrow{color:var(--ui-muted);font-size:10px;margin-bottom:5px}
.ui-admin #saveBtn{background:var(--ui-accent);color:white;font-size:14px;padding:12px 22px;border-radius:10px;white-space:nowrap;box-shadow:0 3px 8px #17664b16}
.ui-admin main,.ui-admin main.wide{max-width:1680px;padding:30px 32px 88px;margin:0 auto;display:grid;grid-template-columns:190px minmax(0,1fr);gap:30px;align-items:start}
.ui-admin .tabs{display:flex;flex-direction:column;position:sticky;top:118px;gap:6px;margin:0;grid-column:1;grid-row:1}
.ui-admin .tabs::before{content:"WORKSPACE";font-size:10px;letter-spacing:.16em;color:var(--ui-muted);padding:0 14px 14px;font-weight:700}
.ui-admin .tabs button{text-align:left;font-size:14px;border-radius:10px;padding:14px 16px;background:transparent;color:var(--ui-muted);font-weight:650}
.ui-admin .tabs button.on{background:var(--ui-accent);color:#fff;box-shadow:0 4px 12px #17664b12}
.ui-admin .panel{grid-column:2;grid-row:1;min-width:0}
.ui-admin .box{border:1px solid var(--ui-line);border-radius:16px;box-shadow:0 3px 12px #233c2a03;padding:24px;margin-bottom:20px}
.ui-admin .box h3{font-size:18px;letter-spacing:-.03em}
.ui-admin input[type=text],.ui-admin input[type=number],.ui-admin input[type=password],.ui-admin input[type=date],.ui-admin select,.ui-admin textarea{border:1px solid #cdd9d0;border-radius:9px;color:var(--ui-ink);background:#fff;font-size:14px;min-height:44px}
.ui-admin .menuRow{border-top:1px solid var(--ui-line);padding:24px 0 20px}
.ui-admin .menuRow .mf>label:not(.ckLine){display:block;font-size:11px;letter-spacing:.015em;color:var(--ui-muted);font-weight:650;margin-bottom:7px}
.ui-admin .mrRow1{gap:14px;margin-bottom:16px}
.ui-admin .mrRow2{background:#f3f6f2;border:1px solid #e7ece5;border-radius:10px;padding:16px;gap:22px}
.ui-admin .mf-name{flex:2 1 190px;min-width:140px}
.ui-admin .mf-price{flex:1 1 100px}.ui-admin .mf-stock{flex:1 1 80px}
.ui-admin .mf-opt{min-width:0;flex:2 1 240px}
.ui-admin .mThumb,.ui-admin .imgBtn{width:60px;height:60px;border-radius:12px}
.ui-admin .addBtn,.ui-admin .optEditBtn{background:#eaf1eb;color:#285740;border:1px solid #d7e3d9;border-radius:9px;font-size:13px;font-weight:650}
.ui-admin .optEditBtn{min-height:36px}
.ui-admin .delBtn,.ui-admin .grpDel{background:#fff0ed;color:#a53f35;border:1px solid #f5dbd6;border-radius:9px;flex-shrink:0}
.ui-admin .mf-del .delBtn,.ui-admin .arrowBtn{width:44px;height:44px}
.ui-admin .small,.ui-admin .optSum,.ui-admin .optNone,.ui-admin .modalHelp,.ui-admin .vOpts,.ui-admin .vUsed,.ui-admin .vMemo{color:var(--ui-muted);line-height:1.7}
.ui-admin #p0>p.small{padding:18px;background:#eaf0e8;border-radius:12px;font-size:12px}
.ui-admin .field{padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #e8eee8;min-width:0}
.ui-admin .field:last-child{border-bottom:0;margin-bottom:0}
.ui-admin .field label{font-size:14px;margin-bottom:10px}
.ui-admin .colorItem{color:var(--ui-muted)}
.ui-admin .bankPickBtn{white-space:normal}
.ui-admin .qrStyleBar,.ui-admin .vCard,.ui-admin .grpCard{background:#f7f9f5;border:1px solid var(--ui-line);border-radius:12px}
.ui-admin .vCard{padding:18px;margin-bottom:12px}
.ui-admin .vCode{color:var(--ui-muted)}
.ui-admin .vTop{gap:12px;flex-wrap:wrap}
.ui-admin .vForm{gap:10px}
.ui-admin #p3 .box>div>span[style*="display:flex"]{flex-wrap:wrap}
.ui-admin .qrStyleBar select{max-width:100%}
.ui-admin .tblWrap{border:1px solid var(--ui-line);border-radius:10px;max-width:100%;overscroll-behavior-x:contain}
.ui-admin .ordTbl th,.ui-admin .ordTbl th.actCol{background:#eaf0e8;color:#42584a;border-bottom:1px solid #cdd9d0;padding:14px 12px;font-size:12px}
.ui-admin .ordTbl td{padding:13px 12px;border-bottom:1px solid #e8eee7}
.ui-admin .ordTbl tr.ordFirst td{border-top:1px solid #cedbd0}
.ui-admin #hTotal{color:var(--ui-accent)}
.ui-admin .modalBox{border-radius:20px;padding:28px;border:1px solid var(--ui-line);box-shadow:0 24px 80px #0c211d33}
.ui-admin .modalHelp{background:#f0f5ee}
.ui-admin .modalFoot .btn.main,.ui-admin .addGrpBtn{background:var(--ui-accent);color:white}
.ui-admin .bankItem{background:#f3f6f0}.ui-admin .bankItem.on{border-color:var(--ui-accent);background:#e5f0e6}
.ui-admin #login{background:var(--ui-dark);padding:24px;z-index:20}
.ui-admin #login .box{width:420px;max-width:100%;padding:40px;text-align:left;box-shadow:0 28px 90px #0003;border:0;border-radius:22px}
.ui-admin #login .eyebrow{color:var(--ui-accent);margin-bottom:22px}
.ui-admin .login-intro{font-size:27px;letter-spacing:-.045em;font-weight:750;line-height:1.35;margin-bottom:32px;word-break:keep-all}
.ui-admin #login h3{justify-content:flex-start!important;font-size:13px;color:var(--ui-muted);margin-bottom:10px}
.ui-admin #login input{font-size:16px;min-height:52px}
.ui-admin #login button{background:var(--ui-accent);border-radius:10px;font-size:15px;min-height:52px}
.ui-admin #toast{background:var(--ui-accent);box-shadow:0 6px 24px #172c2533;max-width:calc(100% - 100px);z-index:101}
@media(min-width:1200px){.ui-admin #p1>.box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.ui-admin #p1 .field:first-child,.ui-admin #p1 .field:nth-child(5){grid-column:1/-1}}

/* Live operations: dark low-glare surfaces and distinct state accents. */
.ui-kitchen,.ui-sum{background:var(--ui-dark);color:#eef4ed;min-height:100svh}
.ui-kitchen header,.ui-sum header{background:#101e19f5;border-bottom:1px solid var(--ui-dark-line);padding:20px 28px;gap:22px;z-index:10;backdrop-filter:blur(12px)}
.ui-kitchen header h1,.ui-sum header h1{font-size:23px;font-weight:750;line-height:1.25;flex-shrink:0}
.ui-kitchen .eyebrow,.ui-sum .eyebrow{color:#a2b9ac;font-size:10px;margin-bottom:7px}
.ui-kitchen .header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px!important}
.ui-kitchen #count{color:var(--ui-lime);font-size:14px;white-space:nowrap}
.ui-kitchen #soundBtn,.ui-kitchen #clearBtn,.ui-kitchen header a{background:#203329!important;border-color:#42594b!important;color:#d8e5da!important;padding:10px 14px!important;min-height:44px;display:inline-flex;align-items:center;font-size:13px!important}
.ui-kitchen main{padding:26px 28px 88px;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:18px;max-width:1920px;margin:0 auto}
.ui-kitchen .order{background:var(--ui-dark-card);border:1px solid #405147;border-top:4px solid #82b9f5;border-left:1px solid #405147;border-radius:15px;padding:20px;box-shadow:0 4px 14px #00000012;min-width:0}
.ui-kitchen .order.cooking{border-top-color:#e8b66e;border-left-color:#405147}
.ui-kitchen .order.finished{border-top-color:#6c8073;background:#17271f;opacity:.72;border-left-color:#34483e}
.ui-kitchen .order .no{font-size:34px;font-weight:750;letter-spacing:-.045em;color:#f2f7ed}
.ui-kitchen .order .time{font-size:12px;color:#a4b6a8}
.ui-kitchen .badge{font-size:12px;border-radius:6px;padding:5px 10px;font-weight:700}
.ui-kitchen .badge.wait{background:#233e54;color:#b2d6ff}
.ui-kitchen .badge.cooking{background:#493b27;color:#f3ce96}
.ui-kitchen .badge.fin{background:#2c3c32;color:#bdcdc0}
.ui-kitchen .pay{font-size:14px;color:#b8c8bc;overflow-wrap:anywhere}
.ui-kitchen .item{border-color:#35483c;padding:15px 3px;font-size:17px;line-height:1.5;overflow-wrap:anywhere}
.ui-kitchen .item .opt{color:#c2d7a6;font-size:13px}
.ui-kitchen .item.done,.ui-kitchen .item.done b{color:#97aa9b}.ui-kitchen .item.done .opt{color:#91a288}
.ui-kitchen .tags{background:#35432a;color:#d8e8b5;font-size:12px}
.ui-kitchen .total{font-size:20px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px}
.ui-kitchen .order button{font-size:16px;padding:14px;border-radius:9px}
.ui-kitchen .btnPay{background:#82b9f5;color:#102a43;box-shadow:inset 0 1px 0 #ffffff38}
.ui-kitchen .btnDone{background:#e8b66e;color:#392810;box-shadow:inset 0 1px 0 #ffffff38}
.ui-kitchen .btnDone.ready{background:#ffcf87;color:#392810;box-shadow:0 0 0 2px #ffcf8740,inset 0 1px 0 #ffffff60}
.ui-kitchen .btnUndo{background:#2d4135;color:#c4d3c7}
.ui-kitchen .btnRevert{color:#bbccbe;border-color:#4a6150!important}
.ui-kitchen .btnCancel{color:#e7ab97;border-color:#714f40!important}
.ui-kitchen .bellBtn{background:#253c30;color:#bdcec0;border-color:#47604e;padding:5px 10px!important;font-size:14px!important}
.ui-kitchen .bellBtn.on{background:#494665;border-color:#77738c;color:#f4efff}
.ui-kitchen .bellBox{background:#203329;border:1px solid #4c6152;border-radius:22px;padding:24px}
.ui-kitchen .bellDisp{background:#12231a;color:var(--ui-lime)}
.ui-kitchen .bellPad button{background:#344c3c}.ui-kitchen .bellPad .bellOk{background:var(--ui-lime);color:#203b26}
.ui-kitchen .bellPad .bellDel{background:#503c32;color:#f2c7ae}.ui-kitchen .bellClear{color:#c2cfc5;border-color:#546a5a}
.ui-kitchen .empty,.ui-sum .empty{color:#a4b8aa;border:1px dashed #415847;border-radius:16px;padding:80px 20px;font-size:17px;margin-top:8px}
.ui-sum header .sub{color:#a9bcad;font-size:12px;margin-top:6px}
.ui-sum .toggle{padding:4px;background:#1d3025;border:1px solid #3a5040;border-radius:12px;gap:4px;flex-shrink:0}
.ui-sum .toggle button{border:0;background:transparent;color:#b9cdbd;border-radius:8px;font-size:13px;padding:10px 18px}
.ui-sum .toggle button.on{background:var(--ui-lime);color:#243d27}
.ui-sum main{max-width:1600px;margin:0 auto;padding:28px 28px 88px}
.ui-sum .total-bar{border:1px solid #496043;background:#263c28;border-radius:16px;padding:22px 28px;margin-bottom:32px;gap:16px}
.ui-sum .total-bar .big{font-size:40px;font-weight:750;color:var(--ui-lime);letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.ui-sum .total-bar .lbl{color:#d6e4cc;font-size:14px}
.ui-sum .catHead{border-bottom:1px solid #3a5040;padding-bottom:12px;margin-bottom:16px;justify-content:space-between;flex-wrap:wrap}
.ui-sum .catName{font-size:19px;font-weight:700}.ui-sum .catQty{color:#c7dea4;font-size:13px}
.ui-sum .grid{gap:32px}.ui-sum .catGrid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:14px}
.ui-sum .mcard{background:var(--ui-dark-card);border:1px solid #354b3c;border-radius:14px;padding:24px 20px;gap:22px}
.ui-sum .qty{font-size:48px;font-weight:700;color:var(--ui-lime);min-width:66px;letter-spacing:-.05em}
.ui-sum .qty .unit{font-size:15px;color:#a7bcab}
.ui-sum .mname{font-size:20px;font-weight:700;overflow-wrap:anywhere}
.ui-sum .mopt{color:#b2c5b7;font-size:13px}.ui-sum .from,.ui-sum .updated{color:#a0b4a6;font-size:12px}

/* Gift redemption: focused ticket-like panel, without altering the redemption flow. */
.ui-gift{--paper:#eff3ec;--ink:#192c25;--ink-2:#62746b;--bark:#17664b;--line:#dce4de;--gold:#17664b;--green:#17664b;background:var(--paper)}
.ui-gift header{background:var(--ui-dark);padding:52px 24px 74px;color:#f0f5ed}
.ui-gift header .eyebrow{color:var(--ui-lime);font-size:10px;margin-bottom:20px}
.ui-gift header h1{font-size:29px;font-weight:750;letter-spacing:-.045em}
.ui-gift .gift-intro{font-size:14px;color:#b7c9bb;margin-top:12px}
.ui-gift main{max-width:560px;padding:0 24px 40px;margin-top:-32px;position:relative;flex:0 0 auto}
.ui-gift .card{padding:32px;border:1px solid #dae4d8;border-radius:20px;box-shadow:0 12px 38px #233c2a0c;margin-bottom:18px}
.ui-gift .fld{margin-bottom:22px}.ui-gift .fld label{font-size:13px;margin-bottom:9px}
.ui-gift .fld input{border-width:1px;border-radius:10px;min-height:54px}
.ui-gift .btn{border-radius:10px;font-size:15px;min-height:54px}
.ui-gift .grpBtn{border-width:1px;border-radius:10px}
.ui-gift .lbl{font-size:12px}.ui-gift .val{font-size:25px;margin-bottom:24px}
.ui-gift .done .no{font-size:64px;margin:24px 0;color:var(--ui-accent)}
.ui-gift .small{font-size:12px;line-height:1.7}

/* Phone/tablet: reflow instead of shrinking the desktop canvas. */
@media(max-width:900px){
 .ui-admin main,.ui-admin main.wide{display:block;padding:18px 20px 88px}
 .ui-admin .tabs{position:relative;top:auto;flex-direction:row;gap:6px;padding:5px;background:#e6ece4;border-radius:12px;margin-bottom:22px;overflow-x:auto}
 .ui-admin .tabs::before{display:none}.ui-admin .tabs button{flex:1;white-space:nowrap;text-align:center;padding:12px;font-size:13px}
 .ui-admin .box{padding:20px}
 .ui-kitchen header{flex-wrap:wrap;gap:16px}.ui-kitchen .header-actions{justify-content:flex-start;width:100%}
}
@media(max-width:600px){
 .ui-main header{padding:32px 22px 22px}.ui-main .eyebrow{font-size:10px;margin-bottom:14px}.ui-main header .sub{font-size:14px}
 .ui-main .grid{grid-template-columns:minmax(0,1fr);padding:0 16px 28px;gap:12px}
 .ui-main .tile{min-height:150px;padding:20px 22px;border-radius:16px;display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:start}
 .ui-main .tile .ico{margin:5px 0 0;font-size:12px}.ui-main .ico span{position:absolute;right:20px;top:18px;font-size:22px}
 .ui-main .tile .tname{font-size:22px;padding-right:24px}.ui-main .tile .tdesc{font-size:13px;line-height:1.6;margin-top:6px}
 .ui-main .tile .turl{display:block;margin-top:14px;font-size:11px}
 .ui-admin header{padding:14px 16px;min-height:78px}.ui-admin header h1{font-size:20px}.ui-admin #saveBtn{font-size:12px;padding:11px 13px}
 .ui-admin main,.ui-admin main.wide{padding:16px 12px 84px}.ui-admin .tabs{gap:2px;margin-bottom:18px}.ui-admin .tabs button{font-size:12px;padding:11px 7px}
 .ui-admin .box{padding:16px;border-radius:13px}.ui-admin .menuRow{padding:20px 0}
 .ui-admin input[type=text],.ui-admin input[type=number],.ui-admin input[type=password],.ui-admin input[type=date],.ui-admin select,.ui-admin textarea{font-size:16px}
 .ui-admin .mrRow1{gap:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}
 .ui-admin .mf-img{grid-column:1}.ui-admin .mf-name{grid-column:2/-1;min-width:0}.ui-admin .mf-tag,.ui-admin .mf-price,.ui-admin .mf-stock{min-width:0}
 .ui-admin .mf-arrow{grid-column:1/3;grid-row:auto}.ui-admin .mf-del{grid-column:3;justify-self:end;margin:0}
 .ui-admin .mrRow2{padding:12px;gap:16px}.ui-admin .mf-opt{flex-basis:100%;min-width:0}.ui-admin .mf-temp{flex:1 1 100%}
 .ui-admin .mf-chk{flex-basis:100%}.ui-admin .chkWrap{height:auto;min-height:44px;flex-wrap:wrap;gap:12px}
 .ui-admin .mfSub{flex-wrap:wrap}.ui-admin .mfSub .descInput{flex-basis:100%}
 .ui-admin .vForm input,.ui-admin .vForm select{flex:1 1 100%;width:100%;font-size:16px}.ui-admin .vUsedRow{flex-wrap:wrap}
 .ui-admin #hTotal{width:100%;margin-left:0!important;padding:12px;background:#edf3e9;border-radius:8px;overflow-wrap:anywhere}
 .ui-admin .modalBg{padding:10px;align-items:flex-end}.ui-admin .modalBox{padding:20px 16px;border-radius:18px;max-height:90svh}
 .ui-admin .itemRow{flex-wrap:wrap}.ui-admin .itemName{flex:1 1 100%}.ui-admin .itemDel{margin-left:auto}
 .ui-admin #login{padding:20px}.ui-admin #login .box{padding:30px 24px}.ui-admin .login-intro{font-size:25px}
 .ui-kitchen header,.ui-sum header{padding:16px;position:relative;gap:16px;flex-wrap:wrap}
 .ui-kitchen header h1,.ui-sum header h1{font-size:22px}.ui-kitchen .header-actions{gap:8px!important}
 .ui-kitchen #count{flex-basis:100%;padding-bottom:4px}.ui-kitchen header a,.ui-kitchen #soundBtn,.ui-kitchen #clearBtn{font-size:12px!important;padding:9px 10px!important}
 .ui-kitchen main{padding:16px 12px 84px;grid-template-columns:minmax(0,1fr);gap:14px}
 .ui-kitchen .order{padding:18px}.ui-kitchen .order .no{font-size:32px}.ui-kitchen .item{font-size:17px}
 .ui-sum .toggle{width:100%}.ui-sum .toggle button{flex:1}
 .ui-sum main{padding:18px 14px 84px}.ui-sum .total-bar{padding:18px 20px;margin-bottom:26px}.ui-sum .total-bar .big{font-size:34px}
 .ui-sum .catGrid{grid-template-columns:minmax(0,1fr)}.ui-sum .mcard{padding:20px 18px}.ui-sum .qty{font-size:42px}
 .ui-gift header{padding:36px 20px 64px}.ui-gift header h1{font-size:26px}.ui-gift main{padding:0 16px 32px}.ui-gift .card{padding:26px 22px;border-radius:17px}
 body[class^="ui-"] .zoomGear{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}
}
/* Category headings and compact, independently expandable menu rows. */
.ui-admin .categoryBox{padding:0;overflow:hidden}
.ui-admin .categoryHead{display:flex;align-items:center;gap:16px;padding:22px 24px;background:#203e30;color:#f5f8ef;border-bottom:3px solid #cbe49c}
.ui-admin .categoryTitle{flex:1;min-width:0}
.ui-admin .categoryTitle label{display:block;color:#bdd1b8;font-size:11px;font-weight:650;letter-spacing:.04em;margin-bottom:6px}
.ui-admin .categoryTitle input{width:100%;max-width:420px;background:transparent;color:#fff;border:1px solid transparent;border-bottom-color:#67806b;border-radius:5px;font-size:25px;font-weight:750;line-height:1.3;padding:8px 12px;min-height:48px}
.ui-admin .categoryTitle input:hover{background:#ffffff0b}.ui-admin .categoryTitle input:focus{background:#ffffff12;border-color:#cbe49c;box-shadow:none}
.ui-admin .categoryCount{font-size:12px;white-space:nowrap;color:#d5e6c2;background:#ffffff10;padding:6px 10px;border-radius:20px}
.ui-admin .categoryHead .delBtn{background:#ffffff0d;border-color:#ffffff25;color:#e9e9d7}
.ui-admin .categoryBox>.addBtn{margin:16px 24px 20px!important}
.ui-admin .categoryBox .menuRow{padding:0;margin:0 24px;border-top:0;border-bottom:1px solid var(--ui-line);border-radius:0;background:transparent}
.ui-admin .menuSummary{display:flex;align-items:center;gap:16px;padding:16px 0;min-height:90px}
.ui-admin .menuSummary .mf-name{flex:1;min-width:0}.ui-admin .menuSummary .mf-name>label{display:none!important}
.ui-admin .menuSummary .mf-name input{font-size:17px;font-weight:700;border-color:transparent;padding:10px 8px;background:transparent;text-overflow:ellipsis}
.ui-admin .menuSummary .mf-name input:hover{background:#f3f6f2}.ui-admin .menuSummary .mf-name input:focus{background:white;border-color:var(--ui-accent)}
.ui-admin .menuSummary .mThumb,.ui-admin .menuSummary .imgBtn{width:52px;height:52px;border-radius:11px}
.ui-admin .menuSummary .rmImg{display:none}.ui-admin .is-open .menuSummary .rmImg{display:block}
.ui-admin .menuExpand{flex:0 0 48px;width:48px;height:48px;padding:0;border:0;background:transparent;border-radius:10px;color:#64786b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s,color .18s;box-shadow:none}
.ui-admin .menuExpand svg{width:18px;height:18px;display:block;flex:none;fill:currentColor;transition:transform .2s ease;pointer-events:none}
.ui-admin .menuExpand:hover{background:#edf3ed;color:#285c41}
.ui-admin .menuExpand:focus-visible{outline:2px solid #285c41;outline-offset:2px}
.ui-admin .is-open .menuExpand{background:transparent;color:#285c41}.ui-admin .is-open .menuExpand svg{transform:rotate(180deg)}
.ui-admin .menuDetails{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .26s ease,visibility .26s}
.ui-admin .is-open .menuDetails{grid-template-rows:1fr;visibility:visible}
.ui-admin .menuDetailsClip{min-height:0;overflow:hidden}
.ui-admin .menuDetailsContent{padding:4px 0 22px}
.ui-admin .detailHeading{font-size:11px;letter-spacing:.05em;font-weight:700;color:var(--ui-muted);margin-bottom:14px;display:flex;align-items:center;gap:12px}
.ui-admin .detailHeading::after{content:"";height:1px;background:var(--ui-line);flex:1}
.ui-admin .menuSummary .mf-arrow{flex:0 0 auto;margin:0}
@media(max-width:600px){
 .ui-admin .categoryHead{padding:18px 16px;gap:10px;flex-wrap:wrap}.ui-admin .categoryTitle{flex-basis:calc(100% - 64px)}
 .ui-admin .categoryTitle input{font-size:23px}.ui-admin .categoryCount{order:3;font-size:11px;padding:3px 9px}
 .ui-admin .categoryHead .delBtn{width:40px;flex-basis:40px}
 .ui-admin .categoryBox .menuRow{margin:0 16px}.ui-admin .categoryBox>.addBtn{margin:14px 16px 18px!important}
 .ui-admin .menuSummary{gap:10px;min-height:82px;padding:14px 0;flex-wrap:wrap}
 .ui-admin .menuSummary .mf-name input{font-size:16px;padding:8px 4px}.ui-admin .menuSummary .mf-name{flex:1 1 0}
 .ui-admin .menuSummary .mThumb,.ui-admin .menuSummary .imgBtn{width:46px;height:46px}
 .ui-admin .menuSummary .mf-arrow{flex-basis:100%}
 .ui-admin .menuDetailsContent .mrRow1{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){body[class^="ui-"] *,body[class^="ui-"] *::before,body[class^="ui-"] *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
