:root,[data-theme=client]{--color-bg: #F4F6FB;--color-surface: #FFFFFF;--color-surface-2: #FAFBFE;--color-ink: #10162B;--color-ink-2: #363E58;--color-muted: #6B7491;--color-line: #DCE1EE;--color-line-strong: #C3CADC;--color-primary: #0A1A6E;--color-primary-hover: #10248F;--color-primary-ink: #FFFFFF;--color-primary-soft: #E6EAFA;--color-accent: #F5A800;--color-accent-hover: #E08A00;--color-accent-ink: #060F3F;--color-accent-soft: #FFF3CC;--color-focus: #10C9D4;--color-gw-alert: #D90562;--font-heading: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-theme=cabinet]{--color-bg: #F6F8FF;--color-surface: #FFFFFF;--color-surface-2: #FBFCFF;--color-ink: #2D3748;--color-ink-2: #3E4A60;--color-muted: #6A7690;--color-line: #D8E2FF;--color-line-strong: #BCCBF5;--color-primary: #19389F;--color-primary-hover: #122B7A;--color-primary-ink: #FFFFFF;--color-primary-soft: #E7ECFF;--color-accent: #19389F;--color-accent-hover: #122B7A;--color-accent-ink: #FFFFFF;--color-accent-soft: #E7ECFF;--color-focus: #10C9D4;--color-gw-alert: #D90562;--font-heading: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root{--ok-ink: #0F6B3E;--ok-dot: #1F9D5C;--ok-bg: #DDF5E8;--warn-ink: #8A4B00;--warn-dot: #D97706;--warn-bg: #FEF0D7;--err-ink: #A3141F;--err-dot: #DC2E3B;--err-bg: #FDE2E4;--info-ink: #0B5E8C;--info-dot: #1C8CD0;--info-bg: #DFF0FB;--l1-ink: #0A6A57;--l1-dot: #13967B;--l1-bg: #DDF4EE;--l2-ink: #5B2A86;--l2-dot: #7D45B8;--l2-bg: #EFE5FA;--radius-xs: 6px;--radius-sm: 9px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--shadow-1: 0 1px 2px rgba(16, 22, 43, .05);--shadow-2: 0 4px 12px rgba(16, 22, 43, .06), 0 1px 2px rgba(16, 22, 43, .04);--shadow-3: 0 12px 32px rgba(16, 22, 43, .12), 0 2px 6px rgba(16, 22, 43, .06)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}.tabular-nums,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.poc-proto-bar{display:flex;align-items:center;justify-content:space-between;background:#060f3f;color:#fff;padding:6px 14px;font-size:12px;border-bottom:1px solid rgba(255,255,255,.12);gap:8px;flex-wrap:wrap}.poc-proto-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.poc-proto-btn{background:#ffffff14;color:#e6eafa;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-xs);padding:4px 9px;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.poc-proto-btn:hover{background:#ffffff29}.poc-proto-btn.active{background:#f5a800;color:#060f3f;border-color:#f5a800;font-weight:700}.k-appbar{display:flex;align-items:center;justify-content:space-between;background:var(--color-primary);color:var(--color-primary-ink);padding:10px 16px;min-height:54px;box-shadow:var(--shadow-1)}.k-appbar-brand{display:flex;align-items:center;gap:10px}.k-appbar-logo{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-heading);font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center}.k-appbar-title{font-family:var(--font-heading);font-weight:800;font-size:16px;letter-spacing:-.01em}.k-appbar-sub{font-size:11.5px;opacity:.82}.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:var(--font-body);font-weight:700;font-size:13px;border-radius:var(--radius-sm);padding:8px 14px;min-height:38px;border:1px solid transparent;cursor:pointer;transition:all .14s ease;text-decoration:none;white-space:nowrap}.k-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.k-btn-sm{min-height:32px;padding:5px 10px;font-size:12px}.k-btn-lg,.k-btn-xl{min-height:48px;padding:11px 18px;font-size:14px;border-radius:var(--radius-md)}.k-btn-primary{background:var(--color-primary);color:var(--color-primary-ink)}.k-btn-primary:hover{background:var(--color-primary-hover)}.k-btn-accent{background:var(--color-accent);color:var(--color-accent-ink)}.k-btn-accent:hover{background:var(--color-accent-hover)}.k-btn-soft{background:var(--color-primary-soft);color:var(--color-primary)}.k-btn-ghost{background:var(--color-surface);color:var(--color-ink-2);border-color:var(--color-line-strong)}.k-btn-ok{background:var(--ok-dot);color:#fff}.k-btn-danger{background:var(--err-dot);color:#fff}.k-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:600;line-height:1.3;white-space:nowrap}.k-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.k-pill-ok{background:var(--ok-bg);color:var(--ok-ink)}.k-pill-ok .k-dot{background:var(--ok-dot)}.k-pill-warn{background:var(--warn-bg);color:var(--warn-ink)}.k-pill-warn .k-dot{background:var(--warn-dot)}.k-pill-err{background:var(--err-bg);color:var(--err-ink)}.k-pill-err .k-dot{background:var(--err-dot)}.k-pill-info{background:var(--info-bg);color:var(--info-ink)}.k-pill-info .k-dot{background:var(--info-dot)}.k-pill-l1{background:var(--l1-bg);color:var(--l1-ink)}.k-pill-l1 .k-dot{background:var(--l1-dot)}.k-pill-l2{background:var(--l2-bg);color:var(--l2-ink)}.k-pill-l2 .k-dot{background:var(--l2-dot)}.k-pill-sun{background:var(--color-accent-soft);color:var(--warn-ink)}.k-pill-navy{background:var(--color-primary-soft);color:var(--color-primary)}.k-chip-row{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-bottom:2px}.k-chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:7px 14px;border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-ink-2);border:1px solid var(--color-line);font-size:12.5px;font-weight:600;cursor:pointer}.k-chip.active{background:var(--color-primary);color:var(--color-primary-ink);border-color:var(--color-primary)}.k-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--err-dot);color:#fff;font-size:11px;font-weight:700}.k-avatar{width:34px;height:34px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary);font-weight:700;font-size:12.5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.k-thumb{width:44px;height:44px;border-radius:var(--radius-sm);font-family:var(--font-heading);font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.k-qty{display:inline-flex;align-items:center;border:1px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);overflow:hidden}.k-qty-btn{width:44px;height:44px;border:none;background:var(--color-surface-2);color:var(--color-primary);font-size:18px;font-weight:800;cursor:pointer}.k-qty-btn:hover{background:var(--color-primary-soft)}.k-qty-val{min-width:40px;text-align:center;font-family:var(--font-mono);font-weight:700;font-size:14px}.k-input{width:100%;min-height:42px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-body);font-size:13.5px}.k-input:focus{outline:none;border-color:var(--color-focus);box-shadow:0 0 0 2px #10c9d440}.k-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-radius:var(--radius-md);border:1px solid transparent;font-size:13px}.k-banner-warn{background:var(--warn-bg);color:var(--warn-ink);border-color:#d9770659}.k-banner-ok{background:var(--ok-bg);color:var(--ok-ink);border-color:#1f9d5c59}.k-banner-err{background:var(--err-bg);color:var(--err-ink);border-color:#dc2e3b59}.k-banner-info{background:var(--info-bg);color:var(--info-ink);border-color:#1c8cd059}.k-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:15px 17px;box-shadow:var(--shadow-1)}.k-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.k-kpi{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);padding:14px 16px;display:flex;flex-direction:column;gap:5px}.k-surtitre{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.k-kpi-value{font-family:var(--font-heading);font-weight:800;font-size:22px;line-height:1.15;color:var(--color-ink);font-variant-numeric:tabular-nums}.k-list{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}.k-li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--color-line)}.k-li:last-child{border-bottom:none}.k-tabbar{display:flex;align-items:stretch;justify-content:space-around;background:var(--color-surface);border-top:1px solid var(--color-line);min-height:58px}.k-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11.5px;font-weight:600;color:var(--color-muted);border:none;background:transparent;cursor:pointer;min-height:52px}.k-tab.active{color:var(--color-primary);background:var(--color-primary-soft);font-weight:700}.desktop-shell{display:grid;grid-template-columns:248px 1fr;min-height:calc(100vh - 42px)}.k-sidebar{background:var(--color-surface);border-right:1px solid var(--color-line);padding:14px 10px;display:flex;flex-direction:column;gap:12px}.k-side-group{display:flex;flex-direction:column;gap:3px}.k-side{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--color-ink-2);background:transparent;border:none;cursor:pointer;text-align:left;width:100%}.k-side:hover{background:var(--color-surface-2)}.k-side.active{background:var(--color-primary);color:var(--color-primary-ink);font-weight:700}.k-progress{width:100%;height:8px;background:var(--color-line);border-radius:var(--radius-pill);overflow:hidden}.k-progress-bar{height:100%;background:var(--ok-dot);border-radius:var(--radius-pill);transition:width .25s ease}.k-numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.k-numkey{min-height:50px;border-radius:var(--radius-md);border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-ink);font-family:var(--font-heading);font-weight:800;font-size:18px;cursor:pointer}.k-numkey:hover{background:var(--color-primary-soft)}.k-toast{position:fixed;bottom:18px;right:18px;background:#10162b;color:#fff;padding:11px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-3);font-size:13px;font-weight:600;z-index:999}.k-table{width:100%;border-collapse:collapse;font-size:13px}.k-table th{background:var(--color-surface-2);color:var(--color-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:9px 12px;border-bottom:1px solid var(--color-line)}.k-table td{padding:10px 12px;border-bottom:1px solid var(--color-line);color:var(--color-ink)}.k-table th.num,.k-table td.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.swiss-qr-coupon{border-top:2px dashed #10162B;margin-top:16px;padding-top:14px;display:grid;grid-template-columns:210px 1fr;gap:18px;background:#fff;color:#000;font-family:Open Sans,Arial,sans-serif}.swiss-qr-box{width:136px;height:136px;border:2px solid #000000;position:relative;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(90deg,#000 0,#000 3px,#fff 3px,#fff 6px),repeating-linear-gradient(0deg,#000 0,#000 3px,#fff 3px,#fff 6px);background-blend-mode:difference}.swiss-cross-badge{width:28px;height:28px;background:#000;border:2px solid #FFFFFF;display:flex;align-items:center;justify-content:center;position:relative}.swiss-cross-badge:before,.swiss-cross-badge:after{content:"";position:absolute;background:#fff}.swiss-cross-badge:before{width:16px;height:5px}.swiss-cross-badge:after{width:5px;height:16px}.device-frame-shell{max-width:100%;margin:0 auto;min-height:calc(100vh - 42px);display:flex;flex-direction:column;justify-content:space-between;background:var(--color-bg)}
