:root{--green:#123c2b;--green2:#1b573d;--accent:#35a967;--accent-soft:#e5f5eb;--ink:#17241e;--muted:#6c7b73;--line:#dce6e0;--paper:#f5f8f6;--white:#fff;--danger:#b4473d;--radius:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#2a8756;color:#effff5;border:1px solid #72c99455;font-weight:900;font-size:21px}.brand strong,.brand small{display:block}.brand strong{font-size:20px}.brand small{color:#a8c8b7;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.eyebrow{margin:0 0 12px;color:var(--accent);font-size:11px;font-weight:850;letter-spacing:.16em}.muted,.help{color:var(--muted)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1fr) minmax(420px,.8fr)}.login-brand{display:flex;flex-direction:column;justify-content:space-between;padding:52px clamp(36px,7vw,110px);background:linear-gradient(145deg,#0d2f21,#174b35);color:#fff}.login-brand h1{font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.045em;max-width:720px;margin:0 0 20px}.login-brand p:not(.eyebrow){color:#bed6ca;font-size:18px;line-height:1.65}.secure-line{font-size:12px;color:#a5c6b5}.login-form-wrap{display:grid;place-items:center;padding:30px}.login-card{width:min(430px,100%);background:#fff;padding:42px;border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 70px #173b2920}.login-card h2{font-size:30px;margin:0 0 8px}label{display:grid;gap:8px;margin:20px 0;font-size:13px;font-weight:750}input,textarea,select{width:100%;border:1px solid #cbd8d1;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #35a9671f}.login-card>button,.primary{border:0;border-radius:10px;background:#196c44;color:#fff;font-weight:800;padding:13px 16px}.login-card>button{width:100%}.help{font-size:12px;text-align:center;margin-top:20px}.notice{background:#fff0ee;color:#8b332c;padding:12px;border-radius:10px;font-size:13px}.notice.info{background:var(--accent-soft);color:#256b45}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--green);color:#fff;padding:26px 17px;display:flex;flex-direction:column}.sidebar .brand{padding:0 8px 22px}.store-context{margin:4px 4px 18px;padding:13px;border:1px solid #ffffff1c;background:#ffffff0d;border-radius:11px}.store-context small,.store-context strong{display:block}.store-context small{font-size:9px;letter-spacing:.14em;color:#9fc2b0}.store-context strong{font-size:12px;margin-top:4px}.sidebar nav{display:grid;gap:3px;overflow:auto}.nav-item{border:0;background:transparent;color:#b8d0c4;padding:10px 12px;border-radius:9px;text-align:left;font-size:13px}.nav-item:hover,.nav-item.active{background:#ffffff12;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #57cf83}.workspace{min-width:0}.topbar{height:88px;display:flex;align-items:center;gap:16px;padding:17px clamp(22px,4vw,50px);background:#fff;border-bottom:1px solid var(--line)}.topbar h1{margin:2px 0 0;font-size:23px}.breadcrumb{font-size:11px;color:var(--muted);margin:0}.user{display:flex;align-items:center;gap:16px;margin-left:auto;text-align:right}.user strong,.user small{display:block}.user small{font-size:11px;color:var(--muted)}.ghost-button,.menu-button,.secondary,.actions button,.modifier-card button,.button-link{border:1px solid #ccd9d2;background:#fff;color:#315343;border-radius:9px;padding:9px 12px}.menu-button{display:none}.content{padding:clamp(24px,4vw,48px)}.welcome,.catalog-head{padding:clamp(26px,4vw,46px);background:linear-gradient(135deg,#fff,#edf6f1);border:1px solid var(--line);border-radius:var(--radius)}.welcome h2,.catalog-head h2{font-size:clamp(28px,4vw,46px);margin:0 0 12px;letter-spacing:-.035em}.welcome p:not(.eyebrow),.catalog-head p{color:var(--muted);max-width:650px;line-height:1.6}.empty,.state{margin-top:22px;padding:48px;text-align:center;background:#fff;border:1px dashed #bfcec5;border-radius:var(--radius)}.empty.compact{margin-top:0}.empty span,.state>span{font-size:32px;color:var(--accent)}.empty h3,.state h3{margin:10px 0 4px}.empty p,.state p{color:var(--muted)}.catalog-head{display:flex;justify-content:space-between;align-items:center}.tenant-badge{padding:8px 11px;border-radius:999px;background:var(--accent-soft);color:#257149;font-size:11px;font-weight:800}.tabs{display:flex;gap:6px;overflow:auto;margin:22px 0;padding-bottom:4px}.tab{white-space:nowrap;border:1px solid var(--line);background:#fff;color:#53645b;padding:10px 14px;border-radius:9px}.tab.active{background:var(--green);border-color:var(--green);color:#fff}.section-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:26px 0 16px}.section-bar h3{margin:0 0 4px;font-size:21px}.section-bar p{margin:0;color:var(--muted);font-size:13px}.table-list{display:grid;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table-row{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.table-row:last-child{border-bottom:0}.table-row strong,.table-row small{display:block}.table-row small{color:var(--muted);margin-top:4px}.pill{display:inline-flex;width:max-content;border-radius:999px;padding:5px 8px;background:#eef2f0;color:#617168;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.pill.active{background:var(--accent-soft);color:#257149}.pill.archived{background:#f0f1f0;color:#737a76}.actions{display:flex;gap:7px}.actions button{font-size:12px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.product-card,.modifier-card{display:flex;flex-direction:column;justify-content:space-between;min-height:190px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.product-card h4,.modifier-card h4{font-size:18px;margin:14px 0 6px}.product-card p,.modifier-card p{color:var(--muted);font-size:13px}.modifier-card ul{padding-left:18px;color:#53645b;font-size:12px}.modifier-card li span{float:right}.editor{max-width:720px;margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.editor h3{font-size:24px;margin:0 0 18px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.check{display:flex;grid-template-columns:auto 1fr;align-items:center}.check input{width:auto}.editor hr{border:0;border-top:1px solid var(--line);margin:26px 0}.button-link{margin-top:22px}.inline-loading{padding:36px;text-align:center;color:var(--muted)}.spinner{display:inline-block;width:28px;height:28px;border:3px solid #dce8e0;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.toast{position:fixed;right:24px;bottom:24px;z-index:30;background:#174d35;color:#fff;border-radius:11px;padding:13px 17px;box-shadow:0 16px 40px #132f222b}.toast.error{background:#8d3932}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:35vh;padding:28px}.login-brand h1{font-size:38px}.secure-line{display:none}.login-form-wrap{padding:20px}.login-card{padding:28px}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:20;left:-265px;width:250px;transition:left .2s}.menu-open .sidebar{left:0}.menu-button{display:block}.topbar{padding:14px 18px}.user span{display:none}.content{padding:18px}.catalog-head{display:block}.tenant-badge{display:inline-flex;margin-top:10px}.table-row{grid-template-columns:1fr auto}.table-row .actions{grid-column:1/-1}.field-grid{grid-template-columns:1fr}}
.text-link{color:#176c4a;font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.notice.success{background:var(--accent-soft);color:#256b45}.secret-value{display:block;margin:1rem 0;padding:1rem;border:1px solid #cbd9d2;border-radius:10px;background:#f3f8f5;color:#103f2f;overflow-wrap:anywhere;letter-spacing:.08em}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin:1rem 0;padding:0;list-style:none}.recovery-codes li{padding:.65rem;border:1px solid #d7e1dc;border-radius:8px;background:#f7faf8;font-family:ui-monospace,monospace;font-size:.85rem}.danger{border:0;border-radius:10px;background:var(--danger);color:#fff;font-weight:800;padding:13px 16px}@media(max-width:520px){.recovery-codes{grid-template-columns:1fr}}
.enrollment-start{width:100%}.mfa-qr-frame{display:grid;place-items:center;margin:20px auto 12px;padding:12px;width:min(280px,100%);aspect-ratio:1;border:1px solid var(--line);border-radius:16px;background:#fff}.mfa-qr-frame img{display:block;width:100%;height:auto}.mfa-qr-instruction{text-align:center;color:var(--ink);font-weight:700}.manual-fallback{margin:22px 0;padding-top:18px;border-top:1px solid var(--line);text-align:center}.manual-fallback p{margin:0 0 10px}.manual-fallback .secret-value{text-align:left}.recovery-actions{display:flex;gap:8px;flex-wrap:wrap}.recovery-confirm{grid-template-columns:auto 1fr}.login-card form button[type="submit"],#continue-app{width:100%;border:0;border-radius:10px;background:#196c44;color:#fff;font-weight:800;padding:13px 16px}@media(max-width:520px){.mfa-qr-frame{width:min(240px,100%)}.manual-fallback>.secondary,.recovery-actions button{width:100%}}
.operational-list{margin-top:22px}.money-total{font-size:clamp(24px,4vw,38px);color:var(--green)}button:disabled{cursor:not-allowed;opacity:.55}@media(max-width:520px){.operational-list .table-row{grid-template-columns:1fr}.operational-list .table-row .pill,.operational-list .table-row .actions{justify-self:start}.section-bar{align-items:flex-start;flex-direction:column}.section-bar>.actions{flex-wrap:wrap}}
.integration-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.health-list{display:grid;gap:8px;margin:18px 0}.health-list div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:8px}.health-list dt{color:var(--muted)}.health-list dd{margin:0;text-align:right}.fixture-card select{margin:8px 0 12px}.fixture-card .primary{width:100%}@media(max-width:760px){.integration-layout{grid-template-columns:1fr}.health-list div{align-items:flex-start}}
.kds-head{align-items:flex-end}.kds-controls{display:flex;align-items:flex-end;gap:10px}.kds-controls label{margin:0;min-width:190px}.kds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:22px}.kds-ticket{display:flex;flex-direction:column;min-height:290px;padding:20px;border:2px solid #cbd8d1;border-radius:16px;background:#fff;box-shadow:0 12px 32px #173b2910}.kds-ticket.status-in_preparation{border-color:#e6a83f}.kds-ticket.status-ready{border-color:var(--accent);background:#f2fbf5}.kds-ticket header{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.kds-ticket header h3{margin:5px 0 0}.kds-ticket header small{color:var(--muted)}.kds-ticket ul{display:grid;gap:12px;padding:0;list-style:none}.kds-ticket li{display:grid;gap:4px}.kds-ticket li small{color:var(--muted)}.kds-action{margin-top:auto;min-height:50px;font-size:16px}@media(max-width:760px){.kds-head{display:block}.kds-controls{margin-top:18px;align-items:stretch;flex-direction:column}.kds-grid{grid-template-columns:1fr}.kds-ticket{min-height:260px}}
.pdv-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:24px 26px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#fff,#edf6f1)}.pdv-head h2{margin:0 0 8px;font-size:clamp(28px,4vw,42px)}.pdv-head p:not(.eyebrow){max-width:720px;margin:0;color:var(--muted);line-height:1.5}.pdv-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:20px;margin-top:20px;align-items:start}.pdv-products,.pdv-cart,.pdv-orders{min-width:0}.pdv-categories{display:flex;gap:8px;padding-bottom:10px;overflow-x:auto}.pdv-categories button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;padding:10px 15px;color:#53645b;font-weight:750}.pdv-categories button.active{border-color:var(--green);background:var(--green);color:#fff}.pdv-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.pdv-product{display:grid;min-height:132px;text-align:left;align-content:space-between;gap:8px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);box-shadow:0 8px 22px #173b290b}.pdv-product:hover:not(:disabled){border-color:#87bea0;transform:translateY(-1px)}.pdv-product span{font-weight:800;font-size:16px}.pdv-product strong{color:var(--green);font-size:20px}.pdv-product small{color:var(--muted)}.pdv-product:disabled{background:#eef1ef}.pdv-cart{position:sticky;top:18px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 35px #173b2910}.pdv-cart h3{margin:0}.pdv-cart ul{display:grid;gap:0;margin:18px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.pdv-cart li{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.pdv-cart li strong,.pdv-cart li small{display:block}.pdv-cart li small{margin-top:4px;color:var(--muted)}.pdv-line-actions{display:flex;align-items:center;gap:5px}.pdv-line-actions button{display:grid;place-items:center;min-width:34px;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff}.pdv-total{display:grid;grid-template-columns:1fr auto;gap:4px;margin:16px 0;padding:14px;border-radius:12px;background:var(--accent-soft)}.pdv-total strong{font-size:22px;color:var(--green)}.pdv-total small{grid-column:1/-1;color:var(--muted)}.pdv-confirm{width:100%;min-height:52px;font-size:16px}.pdv-new-tab{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.pdv-new-tab summary{cursor:pointer;font-weight:800;color:#315343}.pdv-new-tab form{padding-top:4px}.pdv-orders{margin-top:28px}.pdv-cancel-form{margin-left:auto;margin-right:auto}.pdv-product-editor{max-width:840px}.pdv-product-editor fieldset{display:grid;gap:8px;margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:12px}.pdv-product-editor legend{font-weight:850}.pdv-product-editor legend small{margin-left:6px;color:var(--muted);font-weight:600}.pdv-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:0;padding:11px;border:1px solid #e6ece8;border-radius:9px}.pdv-option input{width:auto;margin:0}.pdv-option strong{color:var(--green)}
@media(max-width:1050px){.pdv-layout{grid-template-columns:1fr}.pdv-cart{position:static}.pdv-product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
@media(max-width:520px){.pdv-head{display:block;padding:20px}.pdv-head .secondary{margin-top:16px;width:100%}.pdv-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pdv-product{min-height:122px;padding:13px}.pdv-product span{font-size:14px}.pdv-product strong{font-size:17px}.pdv-cart{padding:16px}.pdv-cart li{align-items:flex-start;flex-direction:column}.pdv-line-actions{width:100%}.pdv-line-actions button{flex:1;min-height:42px}.pdv-option{grid-template-columns:auto 1fr}.pdv-option strong{grid-column:2}.pdv-orders .actions{width:100%;flex-wrap:wrap}.pdv-orders .actions button{min-height:42px}}
.web-catalog-admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;align-items:start}.web-catalog-admin-grid .editor{max-width:none}.web-catalog-publish{position:sticky;top:18px}.web-catalog-publish .form-actions{align-items:center;justify-content:flex-start;flex-wrap:wrap}.web-catalog-publish .button-link{margin:0}.web-catalog-publish>button{width:100%;margin-top:20px}.web-token-section{margin-top:30px}.web-token-form{display:grid;grid-template-columns:minmax(200px,1fr) auto;align-items:end;gap:12px;max-width:700px}.web-token-form h3{grid-column:1/-1}.web-token-form label{margin:0}.web-token-once{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:16px 0}.web-token-once input{min-width:0}@media(max-width:900px){.web-catalog-admin-grid{grid-template-columns:1fr}.web-catalog-publish{position:static}}@media(max-width:560px){.web-token-form{grid-template-columns:1fr}.web-token-form h3{grid-column:auto}.web-token-once{grid-template-columns:1fr}.web-catalog-admin-grid .field-grid{grid-template-columns:1fr}}
.hub-once{margin:20px 0}.hub-secret-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.hub-pair-form{max-width:560px}.hub-printer-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;max-width:none}.hub-printer-form label{margin:0}.hub-section{margin-top:30px}@media(max-width:850px){.hub-printer-form{grid-template-columns:1fr 1fr}.hub-printer-form button{align-self:end}}@media(max-width:560px){.hub-printer-form,.hub-secret-row{grid-template-columns:1fr}.hub-device{grid-template-columns:1fr}.hub-device .pill,.hub-device .actions{justify-self:start}}
