/* Upgrade workspaces only. Existing POS screens outside these scopes are unchanged. */
.upgrade-surface{--up-ink:#28251f;--up-muted:#716b5f;--up-gold:#cba64e;--up-line:#e6dece;--up-paper:#fffdf8;--up-soft:#f7f3e9;color:var(--up-ink);min-width:0;max-width:100%;box-sizing:border-box}
.upgrade-surface *, .upgrade-tv *{box-sizing:border-box}
.upgrade-admin{padding:clamp(16px,2vw,32px)!important;max-width:1600px;margin:auto}
.upgrade-surface h1{font-size:clamp(25px,2.2vw,34px);font-weight:700;letter-spacing:-.035em;margin:0 0 10px;line-height:1.2}
.upgrade-surface h2{font-size:21px;font-weight:650;margin:0 0 16px;letter-spacing:-.02em}
.upgrade-surface h3{font-size:17px;font-weight:650;margin:16px 0 12px}
.upgrade-surface p{color:var(--up-muted);line-height:1.65;max-width:100%;overflow-wrap:anywhere}
.upgrade-surface>h1+p{max-width:900px;margin-bottom:24px}
.upgrade-surface .card,.upgrade-surface .sli-card{background:var(--up-paper);border:1px solid var(--up-line);border-radius:16px;box-shadow:0 4px 18px #29221506;padding:clamp(18px,2vw,28px)!important}
.upgrade-surface .btn,.upgrade-surface button:not(.close):not(.upgrade-tab){min-height:42px;border-radius:9px;white-space:normal;line-height:1.35;padding:10px 17px;font-weight:600;max-width:100%;touch-action:manipulation}
.upgrade-surface .btn-primary{background:#d4b15d!important;border:1px solid #c3a151!important;color:#27241e!important;box-shadow:0 3px 8px #47371812}
.upgrade-surface .btn-primary:hover,.upgrade-surface .btn-primary:active{background:#29261f!important;border-color:#cba64e!important;color:#efd38b!important}
.upgrade-surface .btn-outline-primary,.upgrade-surface .btn-outline-secondary{background:transparent!important;border:1px solid #d5c8ad!important;color:#50432a!important}
.upgrade-surface .btn-outline-primary:hover,.upgrade-surface .btn-outline-secondary:hover{background:#f0e7d4!important;border-color:#b89646!important}
.upgrade-surface :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #b88e36!important;outline-offset:3px;box-shadow:none!important}
.upgrade-surface button:disabled{opacity:.5;cursor:not-allowed}
.upgrade-surface :is(input,select,textarea){min-width:0;max-width:100%;font:inherit}
.upgrade-surface :is(.form-control,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){border:1px solid #d9d0be;border-radius:9px;background:#fffefa;color:#28251f;padding:10px 12px;min-height:44px;height:auto;box-shadow:none}
.upgrade-surface input[type=checkbox],.upgrade-surface input[type=radio]{accent-color:#a8812c;width:18px;height:18px;vertical-align:middle;margin-right:8px;flex:none}
.upgrade-surface select[multiple]{min-height:130px}
.upgrade-surface textarea{min-height:110px;width:100%}
.upgrade-surface label{font-size:13px;font-weight:600;color:#504b40;margin-bottom:0;line-height:1.5;min-width:0}
.upgrade-surface label :is(input,select,textarea){margin-top:7px}
.upgrade-admin form:not(.upgrade-no-grid){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.upgrade-admin form>label,.upgrade-admin form>.upgrade-field{display:flex!important;flex-direction:column;min-width:0}
.upgrade-admin form>label:has(input[type=checkbox]){display:block!important;background:#f7f3e9;border:1px solid #e8dfcc;border-radius:10px;padding:13px}
.upgrade-admin form>:is(h2,h3,p,fieldset,code,.row,.ki-items,.ki-actual,#agg-fields,#benefit-questions,#insight-widgets){grid-column:1/-1}
.upgrade-admin form>button{justify-self:start;align-self:end}
.upgrade-admin fieldset{border:1px solid var(--up-line);border-radius:12px;padding:18px;min-width:0}
.upgrade-admin legend{width:auto;font-size:14px;font-weight:650;padding:0 7px;margin:0 0 10px}
.upgrade-admin fieldset label{margin:10px 0}
.upgrade-tabs{display:flex;gap:6px;overflow-x:auto;padding:6px;background:#eee7d9;border:1px solid #e2d8c4;border-radius:13px;margin:24px 0 20px;max-width:100%;scrollbar-width:thin}
.upgrade-tab{flex:0 0 auto;min-height:44px;padding:10px 17px;border:0;border-radius:9px;background:transparent;color:#6d6453;font-weight:600;white-space:nowrap;font-size:14px}
.upgrade-tab[aria-selected=true]{background:#fffdf8;color:#342e20;box-shadow:0 2px 7px #29221512}
.upgrade-tab:hover{color:#302718;background:#fffaf0}
.upgrade-panel[hidden],.upgrade-surface [hidden]{display:none!important}
.upgrade-panel>summary{display:none}
.upgrade-panel-title{padding-bottom:16px;border-bottom:1px solid var(--up-line);margin-bottom:20px!important}
.upgrade-surface details:not(.upgrade-panel)>summary{cursor:pointer;font-weight:650;line-height:1.6;padding:4px 0}
.upgrade-surface details[open]:not(.upgrade-panel)>summary{margin-bottom:18px}
.upgrade-surface [role=status]:not(:empty),.upgrade-surface [role=alert]:not(:empty){padding:13px 17px;border-radius:10px;background:#f3ebd7;border:1px solid #dfcfa9;color:#625025;margin:18px 0}
.upgrade-surface [role=alert]:not(:empty){background:#fbefea;border-color:#ebd0c0;color:#843d28}
.upgrade-surface .alert{border-radius:12px;padding:16px 20px;font-size:14px;line-height:1.6}
.upgrade-surface code{white-space:normal;overflow-wrap:anywhere;background:#f5f0e5;border-radius:6px;padding:4px 7px;color:#766034}
.upgrade-surface .table-responsive{border:1px solid var(--up-line);border-radius:13px;background:var(--up-paper);margin:15px 0 25px;overscroll-behavior-x:contain}
.upgrade-surface .table{margin:0!important;font-size:13px;min-width:0}
.upgrade-surface .table-responsive .table{min-width:600px}
.upgrade-vue .table{display:block;max-width:100%;overflow-x:auto}
.upgrade-surface .table th{background:#f4efe4!important;color:#6c6048;font-size:11px;letter-spacing:.035em;text-transform:uppercase;border-top:0;white-space:nowrap;padding:14px 16px}
.upgrade-surface .table td{padding:14px 16px;vertical-align:middle!important;border-color:#eee7da;max-width:340px;overflow-wrap:anywhere;line-height:1.55}
.upgrade-surface .table-striped tbody tr:nth-of-type(odd){background:#fcfaf5}
.upgrade-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:650;line-height:1.3;letter-spacing:.02em;background:#eee9df;color:#615846;white-space:nowrap}
.upgrade-badge[data-tone=good]{background:#e6efe3;color:#3f603b}.upgrade-badge[data-tone=waiting]{background:#f6ebcc;color:#806221}.upgrade-badge[data-tone=bad]{background:#f6e5dd;color:#8b4835}
.upgrade-record-details{min-width:200px;max-height:280px;overflow:auto;margin:14px 0 0}.upgrade-record-details dt{font-size:11px;color:#796c54;text-transform:uppercase}.upgrade-record-details dd{margin:3px 0 12px;white-space:normal;overflow-wrap:anywhere}
.upgrade-empty{padding:30px!important;text-align:center;border:1px dashed #d8cbb1;border-radius:12px;color:#807562;background:#fcfaf5;font-size:14px}
#agg-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#agg-fields>label{border:1px solid var(--up-line);padding:16px;border-radius:12px;background:#fffefa}
#agg-fields select{margin-bottom:8px}
#agg-tables>h2{margin-top:28px}
#queue-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}
#queue-list>.upgrade-queue-card{border:1px solid var(--up-line)!important;border-radius:14px!important;background:var(--up-paper);padding:20px!important;display:flex;gap:10px;flex-wrap:wrap;margin:0!important}
.upgrade-queue-card>strong{display:block;flex-basis:100%;font-size:16px;line-height:1.65}
.upgrade-queue-card>button{margin:0!important;font-size:13px}
.ki-items>div,.ki-actual>div,.benefit-question{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;background:#f8f4eb;border-radius:10px;padding:16px!important}
.upgrade-public{padding:clamp(16px,4vw,40px);background:#f8f4eb;min-height:100dvh}
.upgrade-public .collection,.upgrade-public>main{width:100%;max-width:620px;margin:20px auto;background:#fffdf8;border:1px solid #e2d6bf;border-radius:20px;box-shadow:0 10px 35px #382a1610;padding:clamp(22px,4vw,40px)}
.upgrade-public .collection label,.upgrade-public>main label{display:block;margin:20px 0;font-size:14px}
.upgrade-public .collection :is(input,select),.upgrade-public>main :is(input,select){width:100%;font-size:16px}
.upgrade-public .collection h2{font-size:24px;margin:18px 0}
.upgrade-public .collection .status{display:inline-block;background:#f3e7c8;padding:8px 14px;border-radius:99px;margin:0 0 14px;font-size:12px;letter-spacing:.06em}
.upgrade-public .collection button,.upgrade-public .collection .pay-button,.upgrade-public>main button{background:#d5b25e;color:#26231d;border:1px solid #c5a250;border-radius:10px;min-height:48px;padding:13px 20px;font:inherit;font-weight:650;display:inline-block;margin:8px 0;text-align:center;max-width:100%}
.upgrade-public .collection canvas,.upgrade-public .collection img{max-width:100%;height:auto!important;border-radius:8px}
.upgrade-public .collection section>div:has(canvas){width:max-content;max-width:100%;margin:24px auto;background:white;padding:14px;border:1px solid #eee6d7;border-radius:14px}
.upgrade-public .collection section>p{font-size:14px}
.upgrade-kiosk .kiosk-start button{max-width:100%;white-space:normal;min-height:64px}
.upgrade-kiosk .kiosk-mode .form-control{min-height:52px;font-size:18px}
.upgrade-kiosk .kiosk-mode .product-title{line-height:1.3}
.upgrade-vue .split-totals{gap:12px;flex-wrap:wrap}
.upgrade-vue .mode-tabs{overflow-x:auto;max-width:100%;gap:8px}
.upgrade-vue .draft-bills{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.upgrade-tv header{gap:20px;flex-wrap:wrap}.upgrade-tv header>div{display:flex;gap:10px;flex-wrap:wrap}.upgrade-tv button{border-radius:10px;min-height:46px;font:inherit;padding:12px 18px}
.upgrade-tv button:focus-visible{outline:3px solid #efd38b;outline-offset:4px}
.upgrade-dialog{width:calc(100% - 32px);max-width:560px;border:1px solid #ddcfb2;border-radius:18px;padding:28px;background:#fffdf8;box-shadow:0 24px 80px #211c1940;font-family:inherit}
.upgrade-dialog::backdrop{background:#211c1970}.upgrade-dialog label{display:block}.upgrade-dialog textarea{display:block;min-height:140px}.upgrade-dialog-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}
.upgrade-tv section{min-width:0}.upgrade-tv .tokens:empty:after{content:"No orders in this stage";font-size:clamp(18px,2vw,28px);color:#c7baa0;padding:20px 0;line-height:1.6}
.upgrade-tv #ready .token{background:#e7cf87;box-shadow:0 0 0 1px #f7e4ac40}.upgrade-tv .token{overflow-wrap:anywhere;max-width:100%;text-align:center}
.upgrade-metrics{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.upgrade-metrics>div{padding:12px;background:#f7f3ea;border-radius:10px}.upgrade-metrics dt{font-size:11px;font-weight:500;color:#7b705c;text-transform:uppercase;line-height:1.5}.upgrade-metrics dd{font-size:clamp(18px,2vw,25px);font-weight:650;margin:5px 0 0;overflow-wrap:anywhere}
@media(max-width:767px){.upgrade-admin form:not(.upgrade-no-grid),#agg-fields{grid-template-columns:1fr}.upgrade-admin form>.row{margin:0}.upgrade-admin form>.row>label{padding:0;margin-bottom:14px}.upgrade-surface .card{padding:18px!important}.upgrade-tabs{margin-top:18px}.upgrade-public{padding:12px}.upgrade-public .collection{margin:12px auto}.upgrade-tv header,.upgrade-tv main{padding:18px}.upgrade-tv main{gap:18px}.upgrade-surface .split-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ki-items>div,.ki-actual>div,.benefit-question{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.upgrade-surface *{scroll-behavior:auto!important;transition:none!important}}
@media print{.upgrade-tabs,.upgrade-surface form,.upgrade-surface button{display:none!important}.upgrade-panel[hidden]{display:block!important}.upgrade-surface .table-responsive{overflow:visible}.upgrade-surface{padding:0!important}}
