/* V46 — approved pearl / classic rose theme. Screen-only: printed artwork is isolated. */
@media screen {
 :root,:root[data-theme=light],:root[data-theme=dark] {
  --primary:#c35683;--primary-2:#e476a3;--primary-soft:#fcecf3;--accent:#c35683;
  --gold:#c35683;--gold-dark:#aa3969;--bg:#f3f6f9;--surface:#fff;--surface-2:#f6f8fa;
  --text:#111318;--muted:#56677e;--border:#dde5ed;--sidebar:#fff;--sidebar-2:#fff;
  --rose-edge:linear-gradient(125deg,#a84069 0%,#f1b5cc 17%,#fff7fb 26%,#ca628b 42%,#aa3f69 68%,#ffe8f1 86%,#bc4b78 100%);
  --rose-white:linear-gradient(180deg,#fff,#fdfbfd);
  --rose-fill:linear-gradient(180deg,#dc8bac 0%,#cf7199 45%,#bf527e 100%);
  --shadow:0 3px 16px #1c304908;color-scheme:light;
 }
 html,body,#root,html body #root .app-shell {background:#f3f6f9!important;color:#111318!important}
 html body #root .app-shell .sidebar {background:#fff!important;border-right:1px solid #dfe6ee!important;color:#111318!important;box-shadow:2px 0 16px #1c304904!important}
 html body #root .app-shell .sidebar :is(.brand,.brand b,.brand strong,.brand h1,.brand h2) {color:#111318!important;letter-spacing:0!important}
 html body #root .app-shell .sidebar :is(.brand small,.sidebar-help small) {color:#56677e!important}
 html body #root .app-shell .sidebar .sidebar-help {background:#f6f8fa!important;border-color:#e1e6ed!important;color:#111318!important}
 html body #root .app-shell .sidebar .sidebar-help b {color:#111318!important}
 html body #root .app-shell .content>header {background:#fffffff5!important;border-bottom-color:#dfe6ee!important;box-shadow:none!important}
 html body #root .app-shell :is(h1,h2,h3,h4,.page-header h1,.card-head b,label,.stat h2) {color:#111318!important}
 html body #root .app-shell :is(.page-header p,.card-head p,.section-title p,.modal-note,td small,.quick-products small,.customer-options-empty,.stat p,.stat small) {color:#56677e!important}
 html body #root .app-shell :is(.card,.bill-panel,.modal,.settings-content,.settings-card,.product-panel,.access-panel,.report-chart,.payment-chart,.chart-card) {background:#fff!important;border-color:#dde5ed!important;box-shadow:0 3px 16px #1c304908!important}
 html body #root .app-shell :is(th,thead td) {background:#eef2f6!important;color:#435b77!important;border-color:#e0e6ed!important}
 html body #root .app-shell tbody td {color:#111318!important}
 html body #root .app-shell tbody tr:hover td {background:#fdf3f7!important}
 html body #root .app-shell :is(input,select,textarea) {color:#111318!important;background-color:#fff!important;border-color:#ccd6e1!important}
 html body #root .app-shell :is(input,textarea)::placeholder {color:#718096!important}
 html body #root .app-shell :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea):is(:focus,:focus-visible) {border-color:#bc4e7b!important;box-shadow:none!important;outline:none!important}
 html body #root .app-shell :is(.inline-search,.sale-search,.global-search) {background:#fff!important;border-color:#ccd6e1!important}
 html body #root .app-shell :is(.inline-search,.sale-search,.global-search):focus-within {border-color:#bc4e7b!important;box-shadow:none!important}
 html body #root .app-shell :is(.inline-search,.sale-search,.global-search)>input {background:transparent!important;border:0!important}
 html body #root .app-shell input:is([type=checkbox],[type=radio]) {accent-color:#c35683!important}

 html body #root .app-shell :is(p,small,td,input,select,textarea) {font-weight:450!important}
 html body #root .app-shell :is(h1,h2,h3,h4,b,strong) {font-weight:700!important}
 html body #root .app-shell :is(th,label) {font-weight:600!important}
 /* A single reflective edge is part of each control's background, never a click-blocking overlay. */
 html body #root .app-shell :is(button,.btn,a.text-btn,.text-btn,[role=button],.sidebar nav a,.sidebar nav .nav-title),
 html body :is(.spark-label-designer button,.print-preview-print,.print-preview-close) {
  border:1px solid transparent!important;border-radius:8px!important;
  background:var(--rose-white) padding-box,var(--rose-edge) border-box!important;
  background-origin:padding-box,border-box!important;background-clip:padding-box,border-box!important;
  color:#111318!important;font-weight:650!important;text-shadow:none!important;
  box-shadow:inset 0 1px 0 #fff,0 2px 5px #95365c13!important;
  transition:box-shadow .18s ease,filter .18s ease!important;
 }
 html body #root .app-shell :is(button,.btn,a.text-btn,.text-btn,[role=button],.sidebar nav a,.sidebar nav .nav-title):not(:disabled):hover,
 html body :is(.spark-label-designer button,.print-preview-print,.print-preview-close):not(:disabled):hover {
  background:linear-gradient(180deg,#fff,#fceaf2) padding-box,var(--rose-edge) border-box!important;
  box-shadow:inset 0 1px 0 #fff,0 2px 7px #b744732b!important;color:#111318!important;
 }
 html body #root .app-shell :is(.btn.primary,.save-sale,.settings-submit,.settings-save,.bill-save-row button:first-child,.modal-actions button.primary,.return-save-actions .primary,.sl-btn-primary,.access-actions .primary,.sl-primary),
 html body #root .app-shell :is(.product-mode button,.gstr-tabs button,.settings-nav button,.chips button,.price-mode-buttons button,.payment-method button).active,
 html body #root .app-shell .page-header .page-actions>.btn,
 html body .spark-label-designer button.sl-primary,
 html body .print-preview-print {
  background:var(--rose-fill) padding-box,var(--rose-edge) border-box!important;color:#111318!important;
  box-shadow:inset 0 1px 0 #ffffffb0,0 3px 8px #a53e6b24!important;
 }
 html body #root .app-shell :is(.btn.primary,.save-sale,.settings-submit,.settings-save,.sl-btn-primary,.sl-primary):not(:disabled):hover,
 html body #root .app-shell .page-header .page-actions>.btn:not(:disabled):hover,
 html body .spark-label-designer button.sl-primary:not(:disabled):hover,
 html body .print-preview-print:not(:disabled):hover {
  background:linear-gradient(180deg,#d77ca3,#bf527e) padding-box,var(--rose-edge) border-box!important;
  box-shadow:inset 0 1px 0 #ffffffb0,0 3px 10px #a53e6b35!important;
 }
 html body #root .app-shell :is(.btn.danger,.remove-action,.saved-user-remove,.row-actions button.danger) {background:linear-gradient(180deg,#fff8f8,#fce9ec) padding-box,var(--rose-edge) border-box!important;color:#111318!important}
 html body #root .app-shell :is(button,a,[role=button]):focus-visible,
 html body .spark-label-designer button:focus-visible {outline:2px solid #8f315b!important;outline-offset:3px!important}
 html body #root .app-shell button:disabled,html body .spark-label-designer button:disabled {opacity:.5!important;box-shadow:none!important;cursor:not-allowed!important}
 html body #root .app-shell :is(button,.btn,[role=button]) svg {color:currentColor!important;stroke:currentColor!important}
 html body #root .app-shell :is(.settings-nav,.product-mode,.price-mode-buttons,.gstr-tabs,.chips,.theme-options,.language-options) button:not(.active):not(.selected) {background:var(--rose-white) padding-box,var(--rose-edge) border-box!important;color:#111318!important;box-shadow:inset 0 1px #fff,0 2px 5px #95365c13!important}
 html body #root .app-shell :is(.theme-options,.language-options)>button.selected {background:linear-gradient(180deg,#fff3f8,#f9dce9) padding-box,var(--rose-edge) border-box!important;color:#111318!important;box-shadow:inset 0 1px #fff,0 2px 5px #95365c13!important}
 html body #root .app-shell :is(.theme-options,.language-options)>button.selected :is(small,svg) {color:#111318!important}
 html body #root .app-shell .card-head select {background:var(--rose-white) padding-box,var(--rose-edge) border-box!important;border:1px solid transparent!important;border-radius:8px!important;box-shadow:inset 0 1px #fff,0 2px 5px #95365c13!important}
 html body #root .app-shell a.text-btn,html body #root .app-shell .text-btn {display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;text-decoration:none}
 html body #root .app-shell .sidebar nav {padding:2px 2px 6px;gap:6px}
 html body #root .app-shell .sidebar nav :is(a,.nav-title) {color:#111318!important;font-weight:600!important;border-radius:8px!important;padding-top:10px;padding-bottom:10px}
 html body #root .app-shell .sidebar nav :is(a,.nav-title) svg {color:#17283b!important;stroke:currentColor!important}
 html body #root .app-shell .sidebar nav a.active {background:linear-gradient(180deg,#fff3f8,#f9dce9) padding-box,var(--rose-edge) border-box!important;color:#111318!important;font-weight:750!important}
 html body #root .app-shell .sidebar nav a.active svg {color:#d34581!important}
 html body #root .app-shell .header-actions .profile>span {background:#edf1f5!important;color:#111318!important;border-color:#dde5ed!important}
 html body #root .app-shell :is(.dashboard-user-greeting,.payment-total b) {color:#111318!important}
 html body #root .app-shell :is(.dashboard-user-greeting span,.account-status-badge) {background:#fceaf2!important;border-color:#e2b6ca!important;color:#111318!important}
 html body #root .app-shell :is(.stat:nth-child(n),.report-metric:nth-child(n),.gstr-metric:nth-child(n)) {background:#fff!important;border-color:#dde5ed!important;border-top-color:#d977a0!important}
 html body #root .app-shell :is(.stat:nth-child(n) .stat-icon,.report-metric:nth-child(n)>i,.gstr-metric:nth-child(n)>i) {background:#fff2f8!important;color:#d34581!important}
 html body #root .app-shell :is(.payment-chart,.payment-method-cards article) {background:#fff!important}
 html body #root .app-shell .payment-method-cards .payment-total {background:#fff3f8!important;border-color:#edc2d5!important}
 html body #root .app-shell :is(.chart-empty,.empty-state,.payment-chart-empty,.report-empty) {background:#f8fafc!important;border-color:#e2e7ed!important;color:#56677e!important}
 html body #root .app-shell .chart-empty span {color:#56677e!important}
 html body #root .app-shell .chart-empty svg {color:#d34581!important}
 html body #root .app-shell .chart-sales {color:#d34581!important}
 html body #root .app-shell .chart-collection {color:#6c7e94!important}
 html body #root .app-shell .chart-legend .chart-collection {color:#6c7e94!important}
 html body #root .app-shell .recharts-text {fill:#56677e!important}
 html body #root .app-shell :is(.product-pricing,.price-mode-bar,.purchase-live-total,.stock-summary,.ledger-totals) {border-color:#dde5ed!important}
 html body #root .app-shell .stats {gap:0;border:1px solid #dde5ed;border-radius:8px;background:#fff;margin-bottom:18px;overflow:hidden}
 html body #root .app-shell .stats>.stat {border:0!important;border-radius:0!important;box-shadow:none!important;position:relative;padding:22px 20px}
 html body #root .app-shell .stats>.stat:not(:last-child)::after {content:'';position:absolute;right:0;top:20%;height:60%;width:1px;background:#e0e6ed}
 html body #root .app-shell .stats>.stat .stat-icon {background:transparent!important}
 html body #root .app-shell .card {border-radius:8px}

 /* Label editor chrome follows the app; the preview iframe keeps its exact printable design. */
 html body .spark-label-designer {background:#f3f6f9!important;color:#111318!important}
 html body .spark-label-designer :is(h2,h3,h4,label) {color:#111318!important}
 html body #root .app-shell .spark-label-designer :is(.sl-products,.sl-design,.sl-preview,.sl-panel,.sl-body>section,.sl-header) {background:#fff!important;border-color:#dde5ed!important}
 html body .spark-label-designer :is(input,select) {background:#fff!important;border-color:#ccd6e1!important;color:#111318!important}
 html body .spark-label-designer :is(.sl-message,.sl-help,.sl-quantity-controls,.sl-layout-summary,.sl-notices,.sl-field) {background:#f8f1f5!important;color:#111318!important;border-color:#e6cfda!important}
 html body .spark-label-designer :is(small,.sl-hint,.sl-product small,.sl-selected-product small) {color:#56677e!important}
 html body .spark-label-designer .sl-message.error {color:#a92335!important;background:#fff0f0!important}
 html body #root .app-shell .dashboard-grid>.card:not(.chart-card)>.card-head>.text-btn {padding:7px 11px!important;line-height:1.4!important}
 html body #root .app-shell .sidebar .brand div {min-width:0}
 html body #root .app-shell .sidebar .brand b {white-space:normal!important;overflow-wrap:anywhere!important;text-overflow:clip!important;line-height:1.25}

 /* A fixed viewport owns scrolling. Decorative shapes can never extend the document. */
 html body #root .hardware-login {position:fixed!important;inset:0!important;width:100%!important;max-width:100%!important;height:100vh!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;overflow-x:hidden!important;overflow-y:auto!important;padding:140px max(12vw,28px) 90px!important;align-items:center!important;justify-content:flex-end!important;background:#f4dce6!important}
 html body #root .hardware-login::before,html body #root .hardware-login::after {position:fixed!important;inset:0!important;width:auto!important;height:auto!important;transform:none!important}
 html body #root .hardware-login .fancy-window-light {position:fixed!important;inset:0!important;transform:none!important;animation:none!important}
 html body #root .hardware-login .fancy-login-wave {position:fixed!important;left:0!important;bottom:0!important;width:30vw!important;height:30vh!important;max-width:400px!important;max-height:280px!important;clip-path:ellipse(78% 95% at 0% 100%);border-radius:0!important;transform:none!important;background:linear-gradient(145deg,#f5c5d633,#e7a1bd44)!important;box-shadow:none!important}
 html body #root .hardware-login .login-card {flex:0 0 auto!important;margin:auto 0!important;background:#fffafd!important;border:1px solid #cf7099!important;border-radius:28px!important;box-shadow:0 18px 50px #6f324929,0 0 18px #e986b367,inset 0 1px 0 #fff!important;color:#111318!important}
 html body #root .hardware-login .login-card::before {content:''!important;position:absolute!important;inset:-10px!important;z-index:-1!important;border-radius:36px!important;background:conic-gradient(from var(--fancy-outline-angle),#dd83aa18,#f19cbe80 18%,#fff4fbcc 22%,#cf5f934a 27%,#dd83aa18 42%,#dd83aa18 70%,#f5b2cf88 78%,#dd83aa18 90%)!important;padding:3px!important;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0)!important;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0)!important;mask-composite:exclude!important;-webkit-mask-composite:xor!important;filter:blur(6px)!important;pointer-events:none!important;animation:fancy-outline-orbit 8s linear infinite!important;transform:none!important}
 html body #root .hardware-login .login-card::after {inset:-2px!important;padding:2px!important;border-radius:29px!important;background:conic-gradient(from var(--fancy-outline-angle),#c86a9444 0deg,#e6a1bd66 195deg,#ce6495 245deg,#fffaff 274deg,#f3a0c8 292deg,#c86a9444 328deg)!important;filter:drop-shadow(0 0 4px #ea93bbaa)!important;animation:fancy-outline-orbit 8s linear infinite!important}
 html body #root .hardware-login .login-card :is(h2,label,input) {color:#111318!important}
 html body #root .hardware-login .login-card>h2 {font-size:clamp(28px,2.6vw,40px)!important}
 html body #root .hardware-login .fancy-login-brand h1 {color:#a83c6b!important}
 html body #root .hardware-login .fancy-login-brand p {color:#283240!important}
 html body #root .hardware-login .fancy-login-footer {right:max(12vw,28px)!important;color:#384455!important}
 html body #root .hardware-login .login-button {background:var(--rose-fill) padding-box,var(--rose-edge) border-box!important;color:#111318!important;border:1px solid transparent!important;box-shadow:inset 0 1px 0 #ffffffc0,0 4px 12px #a53e6b2b!important}
 html body #root .hardware-login .login-button:hover:not(:disabled) {background:linear-gradient(180deg,#d77ca3,#bf527e) padding-box,var(--rose-edge) border-box!important}
 html body #root .hardware-login .password-toggle {border:1px solid #e2bacd!important;background:linear-gradient(180deg,#fff,#f9edf3)!important;border-radius:8px!important;color:#111318!important}
 html body #root .hardware-login .login-card label>div {background:#fff!important;border-color:#d3cad1!important}

 /* Recoloured chrome rings retain the full-screen approved motion and percentage. */
 .fancy-startup {background:#140b14!important;color:#fff2f8!important}
 .fancy-startup-stage::after {background:linear-gradient(180deg,#140b1470,transparent 30%,transparent 63%,#140b1470)!important}
 .fancy-startup-heading strong {color:#fff2f8!important}
 .fancy-startup-heading p {color:#ebbad0!important}
 .fancy-startup-progress {text-shadow:0 2px 18px #140b14!important}
 .fancy-startup-progress>span {color:#edb3ce!important}
 .fancy-startup-progress>p {color:#c99bb6!important}
 @media(min-width:1600px) {html body #root .hardware-login .fancy-login-footer {width:540px!important}}
 @media(max-width:1000px) {
  html body #root .hardware-login {justify-content:center!important;padding:145px 24px 85px!important}
  html body #root .hardware-login .fancy-login-footer {right:24px!important;width:calc(100% - 48px)!important}
 }
 @media(max-width:700px) {
  html body #root .app-shell .stats {grid-template-columns:repeat(2,minmax(0,1fr))}
  html body #root .app-shell .stats>.stat {padding:16px 12px}
  html body #root .app-shell .stats>.stat:nth-child(2)::after {display:none}
  html body #root .app-shell .stats>.stat:nth-child(-n+2) {border-bottom:1px solid #e0e6ed!important}
 }
 @media(max-width:600px) {
  html body #root .hardware-login {padding:130px 18px 75px!important}
  html body #root .hardware-login .login-card {width:420px!important;max-width:100%!important;padding:30px 24px!important;border-radius:24px!important}
  html body #root .hardware-login .login-card::after {border-radius:25px!important}
  html body #root .hardware-login .fancy-login-brand {top:24px!important}
  html body #root .hardware-login .fancy-login-footer {right:18px!important;width:calc(100% - 36px)!important;max-width:none!important;bottom:22px!important}
 }
 @media(max-width:360px) {
  html body #root .app-shell .stats {grid-template-columns:1fr}
  html body #root .app-shell .stats>.stat::after {display:none}
  html body #root .app-shell .stats>.stat:not(:last-child) {border-bottom:1px solid #e0e6ed!important}
 }
 @media(max-height:720px) and (min-width:1001px) {
  html body #root .hardware-login {padding-top:112px!important;padding-bottom:64px!important}
  html body #root .hardware-login .login-card {padding:30px 34px!important;width:450px!important}
  html body #root .hardware-login .login-card>h2 {font-size:31px!important;margin-bottom:26px!important}
  html body #root .hardware-login .login-card form {gap:18px!important}
  html body #root .hardware-login .login-card label>div {height:50px!important;min-height:50px!important}
  html body #root .hardware-login .login-button {height:54px!important}
  html body #root .hardware-login .fancy-login-brand {top:20px!important}
  html body #root .hardware-login .fancy-login-footer {bottom:20px!important}
 }
 @media(max-height:550px) {
  html body #root .hardware-login .fancy-login-brand {position:relative!important;top:auto!important;left:auto!important;width:100%!important;max-width:100%!important;flex:0 0 auto!important}
  html body #root .hardware-login {flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:28px!important;padding:26px 24px!important}
  html body #root .hardware-login .login-card {margin:0!important}
  html body #root .hardware-login .fancy-login-footer {position:relative!important;right:auto!important;bottom:auto!important;width:auto!important;flex:0 0 auto!important}
 }
 @media(prefers-reduced-motion:reduce) {
  html body #root .hardware-login .login-card::before,html body #root .hardware-login .login-card::after {animation:none!important}
  html body #root .app-shell :is(button,.btn,a.text-btn,.text-btn,[role=button],.sidebar nav a,.sidebar nav .nav-title) {transition:none!important}
 }
}
