:root {
  --brand-primary: #8b5cf6;
  --brand-secondary: #ec4899;
  --ink: #171326;
  --muted: #6f6a7d;
  --surface: rgba(255, 255, 255, .64);
  --surface-strong: rgba(255, 255, 255, .82);
  --line: rgba(255, 255, 255, .62);
  --shadow: 0 18px 54px rgba(68, 47, 109, .14);
  --radius: 24px;
  --app-font: 'Inter', sans-serif;
}

[data-bs-theme="dark"] {
  --ink: #f7f4ff;
  --muted: #aaa3ba;
  --surface: rgba(25, 21, 42, .7);
  --surface-strong: rgba(30, 25, 49, .88);
  --line: rgba(255, 255, 255, .1);
  --shadow: 0 18px 56px rgba(0, 0, 0, .32);
}

* { box-sizing: border-box; }
html { min-height: 100%; background: #f5f1fb; }
[data-bs-theme="dark"] { background: #0c0a18; }
body {
  min-height: 100vh; margin: 0; color: var(--ink); font-family: var(--app-font);
  background: linear-gradient(145deg, #f8f4ff 0%, #fdf4fa 50%, #edf7ff 100%);
  background-attachment: fixed; overflow-x: hidden;
}
[data-bs-theme="dark"] body { background: linear-gradient(145deg, #0c0a18 0%, #151020 52%, #0b1620 100%); }
a { color: var(--brand-primary); }
.ambient { position: fixed; border-radius: 999px; filter: blur(2px); opacity: .3; pointer-events: none; z-index: -2; }
.ambient-one { width: 460px; height: 460px; top: -170px; right: -120px; background: radial-gradient(circle, var(--brand-secondary), transparent 68%); }
.ambient-two { width: 520px; height: 520px; bottom: -230px; left: -190px; background: radial-gradient(circle, var(--brand-primary), transparent 68%); }
.noise { position: fixed; inset: 0; pointer-events: none; opacity: .025; z-index: -1; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
.glass-card, .modal-content, .offcanvas, .dropdown-menu {
  background: var(--surface); border: 1px solid var(--line); box-shadow: var(--shadow);
  backdrop-filter: blur(24px) saturate(140%); -webkit-backdrop-filter: blur(24px) saturate(140%);
}
.glass-card { border-radius: var(--radius); padding: 22px; }
.glass-alert { background: var(--surface-strong); border: 1px solid var(--line); color: var(--ink); box-shadow: var(--shadow); }
.app-shell { width: 100%; max-width: 620px; margin: 0 auto; padding: 82px 16px 104px; min-height: 100vh; }
.admin-shell { max-width: none; padding: 92px 28px 48px 280px; }

/* Header and navigation */
.topbar { position: fixed; z-index: 1030; top: 12px; left: 50%; transform: translateX(-50%); width: calc(100% - 28px); max-width: 600px; height: 58px; padding: 8px 10px 8px 13px; display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--line); border-radius: 20px; background: var(--surface-strong); box-shadow: 0 10px 35px rgba(39, 24, 67, .12); backdrop-filter: blur(25px); }
.admin-mode .topbar { max-width: none; width: calc(100% - 28px); }
.brand { display: flex; align-items: center; gap: 10px; color: var(--ink); font-size: .95rem; font-weight: 800; text-decoration: none; }
.brand-logo-wrap { display:grid;place-items:center;max-width:min(var(--logo-width),52vw);height:40px;padding:3px 8px;border-radius:11px;background:var(--logo-background); }
.brand img { width:var(--logo-width);max-width:100%;height:34px;object-fit:contain; }
.brand-mark { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 12px; color: #fff; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); box-shadow: 0 8px 18px color-mix(in srgb, var(--brand-primary) 32%, transparent); }
.top-actions { display: flex; align-items: center; gap: 7px; }
.icon-btn, .avatar-link { display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 13px; color: var(--ink); background: rgba(127, 111, 155, .09); text-decoration: none; transition: .2s ease; }
.icon-btn:hover { color: #fff; background: var(--brand-primary); transform: translateY(-1px); }
.avatar-link { overflow: hidden; color: #fff; font-weight: 800; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); }
.avatar-link img { width: 100%; height: 100%; object-fit: cover; }
.notif-dot { position: absolute; top: -4px; right: -4px; min-width: 18px; height: 18px; padding: 0 4px; display: grid; place-items: center; border: 2px solid var(--surface-strong); border-radius: 20px; background: #ef476f; color: #fff; font-size: .61rem; font-weight: 800; }
.mobile-nav { position: fixed; z-index: 1040; bottom: max(12px, env(safe-area-inset-bottom)); left: 50%; transform: translateX(-50%); width: calc(100% - 28px); max-width: 600px; display: grid; grid-template-columns: repeat(5,1fr); padding: 8px 6px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface-strong); box-shadow: 0 16px 46px rgba(28, 14, 53, .22); backdrop-filter: blur(25px); }
.mobile-nav a { display: flex; min-width: 0; flex-direction: column; align-items: center; gap: 3px; padding: 7px 2px; border-radius: 17px; color: var(--muted); text-decoration: none; font-size: .64rem; font-weight: 700; }
.mobile-nav i { font-size: 1.15rem; }
.mobile-nav a.active { color: #fff; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); box-shadow: 0 8px 22px color-mix(in srgb, var(--brand-primary) 30%, transparent); }
.admin-sidebar { position: fixed; z-index: 1020; top: 84px; bottom: 18px; left: 14px; width: 240px; padding: 12px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); box-shadow: var(--shadow); backdrop-filter: blur(24px); overflow-y: auto; }
.admin-sidebar nav { display: grid; gap: 5px; }
.admin-sidebar a { display: flex; gap: 12px; align-items: center; padding: 11px 13px; border-radius: 14px; color: var(--muted); text-decoration: none; font-size: .88rem; font-weight: 650; }
.admin-sidebar a:hover, .admin-sidebar a.active { color: #fff; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); }
.admin-sidebar i { width: 20px; font-size: 1rem; }
.nav-label { padding: 17px 12px 5px; color: var(--muted); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .11em; }
.verify-banner { display: flex; align-items: center; gap: 9px; margin-bottom: 16px; padding: 11px 14px; border: 1px solid rgba(245, 158, 11, .25); border-radius: 16px; background: rgba(245, 158, 11, .13); color: var(--ink); font-size: .79rem; }
.verify-banner span { flex: 1; }.verify-banner a { font-weight: 800; }

/* Typography and dashboard */
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin: 18px 3px 24px; }
.page-heading h1 { margin: 3px 0 0; font-size: clamp(1.65rem, 4vw, 2.3rem); line-height: 1.05; font-weight: 800; letter-spacing: -.045em; }
.page-heading p { margin: 7px 0 0; color: var(--muted); font-size: .88rem; }
.eyebrow { color: var(--brand-primary); font-size: .68rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.section-title { display: flex; align-items: center; justify-content: space-between; margin: 28px 2px 12px; }
.section-title h2 { margin: 0; font-size: 1rem; font-weight: 800; }.section-title a { font-size: .75rem; font-weight: 700; }
.stat-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.admin-mode .stat-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
.stat-card { position: relative; min-height: 128px; overflow: hidden; }
.stat-card::after { content: ''; position: absolute; width: 84px; height: 84px; right: -20px; bottom: -26px; border-radius: 50%; background: var(--accent, var(--brand-primary)); opacity: .11; }
.stat-icon { display: grid; place-items: center; width: 38px; height: 38px; margin-bottom: 17px; border-radius: 13px; color: var(--accent, var(--brand-primary)); background: color-mix(in srgb, var(--accent, var(--brand-primary)) 13%, transparent); }
.stat-value { display: block; font-size: 1.5rem; line-height: 1; font-weight: 800; letter-spacing: -.04em; }.stat-label { display: block; margin-top: 7px; color: var(--muted); font-size: .72rem; font-weight: 600; }
.quick-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.quick-action { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 0; padding: 15px 5px 11px; color: var(--ink); text-decoration: none; }
.quick-action i { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 15px; color: #fff; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); box-shadow: 0 8px 20px color-mix(in srgb, var(--brand-primary) 25%, transparent); }
.quick-action span { overflow: hidden; width: 100%; color: var(--muted); font-size: .65rem; font-weight: 700; text-align: center; text-overflow: ellipsis; }

/* Forms */
.form-label { margin: 0 0 6px 2px; color: var(--muted); font-size: .72rem; font-weight: 700; }
.form-control, .form-select, .input-group-text { min-height: 48px; border: 1px solid rgba(127, 111, 155, .17); border-radius: 14px; color: var(--ink); background: rgba(255,255,255,.42); font-size: .86rem; }
[data-bs-theme="dark"] .form-control, [data-bs-theme="dark"] .form-select, [data-bs-theme="dark"] .input-group-text { background-color: rgba(255,255,255,.045); border-color: rgba(255,255,255,.1); color: var(--ink); }
.form-control:focus, .form-select:focus { border-color: var(--brand-primary); background: var(--surface-strong); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--brand-primary) 14%, transparent); color: var(--ink); }
textarea.form-control { min-height: 110px; }.form-check-input:checked { border-color: var(--brand-primary); background-color: var(--brand-primary); }
.input-group > .form-control:first-child, .input-group > .form-select:first-child { border-radius: 14px 0 0 14px; }.input-group > .btn:last-child { border-radius: 0 14px 14px 0; }
.btn { border-radius: 14px; min-height: 43px; font-weight: 750; font-size: .82rem; }
.btn-brand { border: 0; color: #fff; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); box-shadow: 0 10px 24px color-mix(in srgb, var(--brand-primary) 24%, transparent); }
.btn-brand:hover { color: #fff; filter: brightness(1.06); transform: translateY(-1px); }
.btn-soft { border: 1px solid var(--line); color: var(--ink); background: rgba(127, 111, 155, .09); }.btn-soft:hover { color: var(--brand-primary); background: var(--surface-strong); }
.btn-icon { display: inline-grid; place-items: center; width: 40px; min-height: 40px; padding: 0; }
.required::after { content: ' *'; color: #ef476f; }

/* Authentication */
.auth-screen { display: grid; min-height: 100vh; place-items: center; padding: 22px 14px; }
.auth-screen[style*="--login-background"] { background-image: linear-gradient(145deg, rgba(248,244,255,.84), rgba(253,244,250,.82)), var(--login-background); background-position: center; background-size: cover; }
[data-bs-theme="dark"] .auth-screen[style*="--login-background"] { background-image: linear-gradient(145deg, rgba(12,10,24,.88), rgba(21,16,32,.86)), var(--login-background); }
.auth-screen .app-shell { max-width: 460px; min-height: auto; margin: auto; padding: 0; }
.auth-card { padding: clamp(24px, 6vw, 38px); }
.auth-logo { display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 24px; border-radius: 23px; color: #fff; font-size: 1.8rem; font-weight: 850; background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary)); box-shadow: 0 15px 36px color-mix(in srgb, var(--brand-primary) 30%, transparent); }
.auth-card h1 { margin: 0; font-size: 1.75rem; font-weight: 850; letter-spacing: -.045em; }.auth-card > p { margin: 7px 0 25px; color: var(--muted); font-size: .85rem; }
.auth-foot { margin: 22px 0 0; color: var(--muted); font-size: .78rem; text-align: center; }.auth-foot a { font-weight: 800; }
.password-toggle { border: 1px solid rgba(127,111,155,.17); border-left: 0; color: var(--muted); background: rgba(255,255,255,.3); }

/* Tables and lists */
.table-card { padding: 8px 16px; overflow: hidden; }.table { --bs-table-bg: transparent; --bs-table-color: var(--ink); margin: 0; }.table > :not(caption) > * > * { padding: 14px 10px; border-bottom-color: rgba(127,111,155,.12); vertical-align: middle; }.table th { color: var(--muted); font-size: .67rem; letter-spacing: .05em; text-transform: uppercase; }.table td { font-size: .8rem; }
.data-list { display: grid; gap: 10px; }.list-card { display: flex; align-items: center; gap: 13px; padding: 14px; }.list-card .list-main { min-width: 0; flex: 1; }.list-card h3 { overflow: hidden; margin: 0; font-size: .84rem; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }.list-card p { margin: 4px 0 0; color: var(--muted); font-size: .7rem; }.list-icon { display: grid; flex: 0 0 43px; place-items: center; width: 43px; height: 43px; border-radius: 15px; color: var(--brand-primary); background: color-mix(in srgb, var(--brand-primary) 12%, transparent); }
.badge { padding: .52em .78em; border-radius: 99px; font-size: .63rem; }.badge-soft-success{color:#13845b;background:rgba(34,197,94,.13)}.badge-soft-warning{color:#b06d00;background:rgba(245,158,11,.15)}.badge-soft-danger{color:#d33b5b;background:rgba(239,71,111,.13)}.badge-soft-info{color:#3476b8;background:rgba(59,130,246,.13)}
.product-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }.product-card { overflow: hidden; padding: 0; }.product-image { position: relative; aspect-ratio: 1.15; background: linear-gradient(135deg, rgba(139,92,246,.16),rgba(236,72,153,.11)); }.product-image img { width: 100%; height: 100%; object-fit: cover; }.product-image .stock-pill { position: absolute; top: 9px; right: 9px; padding: 5px 8px; border-radius: 20px; color: var(--ink); background: var(--surface-strong); backdrop-filter: blur(10px); font-size: .57rem; font-weight: 800; }.product-body { padding: 13px; }.product-body h3 { min-height: 34px; margin: 0 0 5px; font-size: .78rem; line-height: 1.35; font-weight: 800; }.product-price { color: var(--brand-primary); font-size: .9rem; font-weight: 850; }.product-body .btn { min-height: 36px; margin-top: 10px; font-size: .7rem; }
.tabs-glass { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 5px; margin-bottom: 18px; padding: 5px; border: 1px solid var(--line); border-radius: 18px; background: rgba(127,111,155,.07); }.tabs-glass .nav-link { border-radius: 13px; color: var(--muted); font-size: .76rem; font-weight: 750; }.tabs-glass .nav-link.active { color: #fff; background: linear-gradient(135deg,var(--brand-primary),var(--brand-secondary)); }
.pix-box { border: 1px dashed color-mix(in srgb,var(--brand-primary) 45%,transparent); background: color-mix(in srgb,var(--brand-primary) 7%,transparent); }.pix-key { display: flex; align-items: center; gap: 8px; padding: 10px; border-radius: 12px; background: rgba(127,111,155,.08); word-break: break-all; }.pix-key code { flex:1; color: var(--ink); font-size: .72rem; }

/* CRM, charts, steps and chat */
.crm-board { display: grid; grid-template-columns: repeat(4,minmax(235px,1fr)); gap: 12px; overflow-x: auto; padding-bottom: 10px; }.crm-column { min-height: 300px; padding: 13px; border: 1px solid var(--line); border-radius: 20px; background: rgba(127,111,155,.055); }.crm-column-head { display: flex; justify-content: space-between; margin-bottom: 11px; font-size: .75rem; font-weight: 800; }.crm-lead { margin-bottom: 9px; padding: 12px; border-radius: 15px; background: var(--surface-strong); box-shadow: 0 7px 18px rgba(36,23,60,.07); }.crm-lead h4 { margin: 0 0 4px; font-size: .75rem; font-weight: 800; }.crm-lead p { margin:0;color:var(--muted);font-size:.66rem}.crm-lead small{display:block;margin-top:8px;color:var(--brand-primary);font-weight:800}
.chart-wrap { height: 230px; }.bar-chart { display: flex; height: 190px; align-items: flex-end; gap: 8px; padding-top: 18px; }.bar-item { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; gap:6px; }.bar { width:100%; max-width:32px; min-height:4px; border-radius:10px 10px 4px 4px; background:linear-gradient(180deg,var(--brand-secondary),var(--brand-primary)); }.bar-item small { color:var(--muted);font-size:.55rem}.bar-item em { color:var(--ink);font-size:.55rem;font-style:normal;font-weight:700}
.steps { display: flex; margin: 0 0 22px; }.step-dot { position:relative; flex:1; text-align:center;color:var(--muted);font-size:.6rem;font-weight:700}.step-dot::before{content:attr(data-step);position:relative;z-index:2;display:grid;place-items:center;width:29px;height:29px;margin:0 auto 5px;border:2px solid rgba(127,111,155,.18);border-radius:50%;background:var(--surface-strong)}.step-dot:not(:last-child)::after{content:'';position:absolute;top:14px;left:55%;right:-45%;height:2px;background:rgba(127,111,155,.14)}.step-dot.active{color:var(--brand-primary)}.step-dot.active::before{border-color:var(--brand-primary);color:#fff;background:var(--brand-primary)}.form-step{display:none}.form-step.active{display:block}
.chat-layout { display:grid;grid-template-columns:290px 1fr;gap:14px;min-height:560px}.chat-contacts,.chat-panel{padding:14px}.chat-contacts{overflow:auto}.contact{display:flex;gap:10px;align-items:center;padding:10px;border-radius:14px;color:var(--ink);text-decoration:none}.contact.active,.contact:hover{background:rgba(127,111,155,.1)}.contact-avatar{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));font-weight:800}.contact div{min-width:0}.contact strong,.contact small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact strong{font-size:.75rem}.contact small{color:var(--muted);font-size:.62rem}.chat-panel{display:flex;flex-direction:column}.chat-messages{flex:1;max-height:450px;overflow-y:auto;padding:8px}.message{max-width:76%;margin-bottom:9px;padding:10px 12px;border-radius:16px 16px 16px 5px;background:rgba(127,111,155,.1);font-size:.76rem}.message.mine{margin-left:auto;border-radius:16px 16px 5px 16px;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary))}.message small{display:block;margin-top:4px;opacity:.66;font-size:.56rem}.message a{color:inherit;font-weight:700}.chat-compose{display:flex;gap:7px;padding-top:10px;border-top:1px solid rgba(127,111,155,.12)}.chat-compose .form-control{min-height:44px}.recording{color:#fff!important;background:#ef476f!important;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.65}}
.empty-state { padding: 44px 24px; text-align: center; }.empty-state > i { display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:19px;color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 12%,transparent);font-size:1.45rem}.empty-state h3{font-size:1rem;font-weight:800}.empty-state p{margin:6px auto 0;max-width:340px;color:var(--muted);font-size:.78rem}
.profile-hero{text-align:center}.profile-photo{position:relative;width:100px;height:100px;margin:0 auto 14px}.profile-photo img,.profile-photo .fallback{display:grid;width:100%;height:100%;place-items:center;border:4px solid var(--surface-strong);border-radius:50%;object-fit:cover;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));font-size:2rem;font-weight:800;box-shadow:var(--shadow)}.profile-photo label{position:absolute;right:0;bottom:2px;display:grid;place-items:center;width:34px;height:34px;border:3px solid var(--surface-strong);border-radius:50%;color:#fff;background:var(--brand-primary);cursor:pointer}

/* Utilities and overlays */
.desktop-gate { display: none; position: fixed; z-index: 9999; inset: 0; place-items: center; padding: 24px; background: inherit; }.desktop-gate .glass-card { width: 100%; max-width: 470px; padding: 42px; }.gate-icon { display:grid;place-items:center;width:76px;height:76px;margin:0 auto 20px;border-radius:25px;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));font-size:2rem}.desktop-gate h1{font-weight:850;letter-spacing:-.04em}.desktop-gate p{color:var(--muted)}#desktopQr{display:grid;place-items:center;margin:22px auto}#desktopQr img{padding:10px;border-radius:14px;background:white}.desktop-gate code{display:block;color:var(--ink);word-break:break-all}
.install-prompt { display:none;position:fixed;z-index:1090;right:16px;bottom:16px;width:310px;padding:17px}.install-prompt.show{display:block}.install-prompt .btn-close{position:absolute;top:10px;right:10px}.install-prompt small{display:block;color:var(--muted);font-size:.7rem}.install-icon{display:grid;place-items:center;width:45px;height:45px;flex:0 0 45px;border-radius:15px;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary))}
.modal-content { border-radius: 24px; color: var(--ink); }.modal-header,.modal-footer{border-color:rgba(127,111,155,.12)}.modal-title{font-weight:800}.btn-close{filter:none}[data-bs-theme="dark"] .btn-close{filter:invert(1)}
.text-muted{color:var(--muted)!important}.pagination{--bs-pagination-bg:var(--surface);--bs-pagination-color:var(--ink);--bs-pagination-border-color:var(--line);--bs-pagination-active-bg:var(--brand-primary);--bs-pagination-active-border-color:var(--brand-primary)}
.order-total{font-size:1rem;font-weight:850}.order-items{color:var(--muted);font-size:.68rem}.file-preview{display:none;margin-top:8px;padding:8px;border-radius:10px;background:rgba(127,111,155,.08);font-size:.7rem}.consent-box{max-height:260px;overflow-y:auto;color:var(--muted);font-size:.78rem;line-height:1.65}.color-input{width:56px;padding:5px}.nowrap{white-space:nowrap}.w-fit{width:fit-content}.cursor-pointer{cursor:pointer}.text-brand{color:var(--brand-primary)!important}

.user-mode.non-smartphone-device:not(.auth-screen) .desktop-gate { display:grid; }
.user-mode.non-smartphone-device:not(.auth-screen) > .app-shell,
.user-mode.non-smartphone-device:not(.auth-screen) > .topbar,
.user-mode.non-smartphone-device:not(.auth-screen) > .mobile-nav { visibility:hidden; }
@media (max-width: 900px) {
  .admin-shell { padding: 84px 14px 100px; }
  .admin-sidebar { left:50%;top:auto;bottom:12px;transform:translateX(-50%);width:calc(100% - 28px);height:auto;padding:6px;overflow-x:auto;border-radius:22px; }
  .admin-sidebar nav{display:flex}.admin-sidebar a{flex:0 0 68px;flex-direction:column;gap:3px;padding:7px 3px;font-size:.59rem;text-align:center}.admin-sidebar a i{width:auto;font-size:1.08rem}.admin-sidebar .nav-label{display:none}
  .admin-mode .stat-grid { grid-template-columns:repeat(2,minmax(0,1fr))}.chat-layout{grid-template-columns:1fr}.chat-contacts{max-height:170px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading .btn{width:100%}
}
@media (max-width: 520px) {
  html,body{touch-action:pan-x pan-y}.app-shell { padding-left:13px;padding-right:13px}.glass-card{padding:17px}.stat-card{min-height:116px}.quick-grid{grid-template-columns:repeat(4,1fr)}.product-grid{gap:10px}.product-body{padding:11px}.product-body h3{font-size:.73rem}.table-card{overflow-x:auto}.chat-layout{min-height:480px}.message{max-width:86%}.form-control,.form-select,.input-group-text{font-size:16px}.registration-steps .step-dot{font-size:.55rem}
}
@media print {
  body{background:#fff!important;color:#111!important}.ambient,.noise,.topbar,.mobile-nav,.admin-sidebar,.verify-banner,.no-print,.install-prompt{display:none!important}.app-shell,.admin-shell{max-width:none;padding:0}.glass-card{border:1px solid #ddd;box-shadow:none;background:#fff;backdrop-filter:none}.anamnesis-print .form-step{display:block!important;page-break-inside:avoid}
}
