:root{--bg:#f4f7f5;--panel:#fff;--text:#17231d;--muted:#6a7b72;--border:#dbe5df;--green:#0f5132;--green2:#167447;--danger:#b42318;--warn:#9a6700;--sidebar:250px;--test:#9b1c1c}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%}a{color:inherit}.layout{min-height:100vh;display:flex}.layout.with-test-banner{padding-top:34px}.test-banner{position:fixed;z-index:1000;top:0;left:0;right:0;height:34px;display:flex;align-items:center;justify-content:center;background:var(--test);color:#fff;font-size:12px;font-weight:800;letter-spacing:.04em;text-align:center;padding:0 12px}.sidebar{width:var(--sidebar);background:#0d3d27;color:#fff;padding:22px 16px;display:flex;flex-direction:column;position:fixed;left:0;bottom:0;top:0;z-index:900;transition:transform .22s ease}.with-test-banner .sidebar{top:34px}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 22px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark,.brand-logo{width:46px;height:46px;border-radius:12px;background:#fff;color:var(--green);display:grid;place-items:center;font-weight:800;object-fit:contain;padding:4px}.brand strong{display:block;font-size:14px}.brand small{display:block;color:#cfe0d6;margin-top:3px}nav{display:grid;gap:6px;margin-top:18px;overflow:auto}nav a{text-decoration:none;padding:11px 12px;border-radius:10px;color:#dbe9e1;font-size:14px}nav a:hover,nav a.active{background:rgba(255,255,255,.12);color:#fff}.sidebar-footer{margin-top:auto;padding:14px 8px 2px;border-top:1px solid rgba(255,255,255,.12)}.user-chip{display:flex;gap:9px;align-items:center;margin-bottom:12px}.user-chip strong{display:block;font-size:13px}.user-chip small{display:block;color:#bdd1c5;margin-top:2px}.avatar{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.15);display:grid;place-items:center;font-weight:800}.signout-btn{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;border-radius:10px;background:#fff;color:#0d3d27!important;text-decoration:none!important;font-weight:800;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,.13)}.signout-btn:hover{background:#edf6f1}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}h1{font-size:26px;margin:0}h2{font-size:18px;margin:0 0 16px}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:12px}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 3px 10px rgba(28,53,40,.04)}.kpi-label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.kpi{font-size:26px;font-weight:800;margin-top:8px}.kpi small{font-size:13px;color:var(--muted);font-weight:500}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:16px;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;min-width:780px}th,td{padding:13px 14px;border-bottom:1px solid #edf2ef;text-align:left;font-size:14px}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fbfcfb}tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;white-space:nowrap}.badge.success{background:#e7f6ed;color:#137a3f}.badge.warning{background:#fff4d6;color:#8b5a00}.badge.danger{background:#fde8e7;color:#a61b14}.badge.muted{background:#eef2f0;color:#65756d}.badge.test{background:#fde8e7;color:#9b1c1c}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:10px 14px;background:var(--green);color:#fff;text-decoration:none;font-weight:700;cursor:pointer;font:inherit}.btn:hover{background:var(--green2)}.btn.secondary{background:#edf3ef;color:#214b34}.btn.danger{background:#b42318}.btn.small{padding:7px 10px;font-size:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid #cad8d0;border-radius:10px;padding:10px 12px;background:#fff;font:inherit;min-height:42px}.field textarea{min-height:92px}.section-title{grid-column:1/-1;margin-top:8px;padding-top:14px;border-top:1px solid var(--border);font-weight:800}.flash{padding:12px 14px;border-radius:10px;margin-bottom:14px}.flash.success{background:#e7f6ed;color:#137a3f}.flash.error{background:#fde8e7;color:#a61b14}.flash.warning{background:#fff4d6;color:#8b5a00}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0d3d27,#176340);padding:20px}.login-card{width:min(430px,94vw);background:#fff;border-radius:18px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.2)}.login-logo{display:block;max-width:150px;max-height:80px;object-fit:contain;margin:0 auto 16px}.login-card h1{margin-bottom:8px}.login-card form{display:grid;gap:14px;margin-top:20px}.note{background:#f7faf8;border:1px solid var(--border);padding:13px;border-radius:10px;font-size:13px;color:#50645a}.toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.toolbar .field{min-width:170px}.right{text-align:right}.mobile-menu{display:none;position:fixed;z-index:950;left:12px;top:12px;width:42px;height:42px;border:0;border-radius:10px;background:#0d3d27;color:#fff;font-size:22px}.with-test-banner~.mobile-menu{top:46px}.sidebar-overlay{display:none}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.security-item{display:flex;justify-content:space-between;gap:10px;padding:13px;border:1px solid var(--border);border-radius:12px;background:#fff}.shop-checkboxes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.shop-checkbox{display:flex;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:10px}.shop-checkbox input{width:auto;min-height:0}.mode-card{border:2px solid #f1b7b4;background:#fff8f7}.mode-card.live{border-color:#a6dfbd;background:#f6fff9}
@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.shop-checkboxes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body.nav-open{overflow:hidden}.layout,.layout.with-test-banner{display:block;padding-top:0}.sidebar,.with-test-banner .sidebar{top:0;transform:translateX(-105%);width:min(82vw,300px);box-shadow:10px 0 30px rgba(0,0,0,.25)}.sidebar.open{transform:translateX(0)}.mobile-menu{display:block}.test-banner{position:sticky;height:auto;min-height:36px;padding:8px 54px 8px 54px}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:850}.main{margin:0;width:100%;padding:72px 14px 20px}.test-banner+.mobile-menu,.with-test-banner .mobile-menu{top:48px}.cards,.form-grid,.security-grid{grid-template-columns:1fr}.shop-checkboxes{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.topbar .actions{width:100%}.topbar .actions .btn{flex:1}.toolbar{display:grid;grid-template-columns:1fr 1fr;width:100%}.toolbar .field{min-width:0}.toolbar .btn{align-self:end}.card{padding:15px}.kpi{font-size:23px}h1{font-size:23px}.table-wrap{border-radius:12px}.login-page{padding:14px}.login-card{padding:22px}.sidebar-footer{margin-top:18px}}
@media(max-width:460px){.cards{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr}.actions{width:100%}.actions .btn{flex:1;min-width:0}.main{padding-left:10px;padding-right:10px}.test-banner{font-size:10px}.login-card{width:100%}}
@media print{.sidebar,.mobile-menu,.sidebar-overlay,.no-print,.flash,.test-banner{display:none!important}.layout,.layout.with-test-banner{padding:0}.main{margin:0;width:100%;padding:0}.card,.table-wrap{box-shadow:none;border-color:#ccc}body{background:#fff}}

.live-badge{display:inline-flex;margin-left:8px;padding:4px 8px;border-radius:999px;background:#e7f6ed;color:#137a3f;font-size:11px;font-weight:800;letter-spacing:.04em}

.key-reveal{display:grid;gap:8px;border:1px solid #e0c26b;background:#fffaf0;border-radius:12px;padding:14px}.key-reveal strong{color:#7a5a00;font-size:12px;letter-spacing:.05em}.key-reveal code{display:block;overflow-wrap:anywhere;word-break:break-all;font:600 13px/1.5 Consolas,Monaco,monospace;background:#fff;border:1px solid #eadba9;padding:10px;border-radius:8px}.key-reveal small{color:#6f6250}

/* Logo sizing guard: uploaded artwork can be any normal pixel size, but UI logos stay compact. */
.brand-logo{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;min-height:46px!important;max-height:46px!important;object-fit:contain!important;padding:4px!important;display:block!important;flex:0 0 46px!important}
.login-logo{display:block!important;width:auto!important;height:auto!important;max-width:min(180px,70vw)!important;max-height:90px!important;object-fit:contain!important;margin:0 auto 16px!important}
.logo-preview-wrap{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.settings-logo-preview{display:block;width:auto!important;height:auto!important;max-width:220px!important;max-height:90px!important;object-fit:contain!important;border:1px solid #dbe5df;border-radius:10px;padding:8px;background:#fff}
@media(max-width:640px){.login-logo{max-width:min(160px,68vw)!important;max-height:76px!important}.settings-logo-preview{max-width:180px!important;max-height:76px!important}}
