/* Super admin: shared components for Delivery, Vendas B2B, Agendamentos and Smart Rotas.
   Theme selection is controlled by data-theme on the page body. */
#kyra-superadmin {
  color-scheme: light;
  --ks-bg: #f5f8f9;
  --ks-paper: #fff;
  --ks-ink: #19383f;
  --ks-muted: #566e75;
  --ks-line: #dce6e8;
  --ks-soft: #edf3f4;
  --ks-accent: #08757d;
  --ks-on: #fff;
  --ks-tint: #e7f5f2;
  --ks-green: #25765c;
  --ks-warm: #855318;
  --ks-warm-bg: #fff3df;
  --ks-red: #ab4248;
  --ks-red-bg: #fff0f0;
  --ks-toggle-off: #81969b;
  --ks-sidebar-bg: #fff;
  --ks-sidebar-ink: #19383f;
  --ks-sidebar-muted: #566e75;
  --ks-sidebar-line: #dce6e8;
  --ks-sidebar-selected: #e7f5f2;
  --ks-sidebar-selected-ink: #08757d;
  --ks-login-art-bg: #eaf5f2;
  --ks-login-art-ink: #204e47;
  --ks-login-art-muted: #50756e;
  --ks-login-art-line: #cddfd9;
  --ks-login-tag-bg: #f8fcfa;
  --ks-radius: 11px;
  --ks-shadow: 0 20px 70px #132e3326;
  --bg: var(--ks-bg);
  --card: var(--ks-paper);
  --ink: var(--ks-ink);
  --muted: var(--ks-muted);
  --line: var(--ks-line);
  --accent: var(--ks-accent);
  --neon: var(--ks-accent);
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  background: var(--ks-bg);
  color: var(--ks-ink);
  font: 14px/1.5 'Segoe UI', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-wrap: break-word;
}
#kyra-superadmin[data-theme="dark"] {
  color-scheme: dark;
  --ks-bg: #111e23;
  --ks-paper: #1a2c32;
  --ks-ink: #e7f0f2;
  --ks-muted: #acc0c5;
  --ks-line: #354a51;
  --ks-soft: #243940;
  --ks-accent: #79d8d1;
  --ks-on: #12353b;
  --ks-tint: #21403f;
  --ks-green: #99d9b8;
  --ks-warm: #ecc585;
  --ks-warm-bg: #423526;
  --ks-red: #ffb4b9;
  --ks-red-bg: #432c33;
  --ks-toggle-off: #607b84;
  --ks-sidebar-bg: #132b33;
  --ks-sidebar-ink: #edf8fa;
  --ks-sidebar-muted: #b8cfd6;
  --ks-sidebar-line: #35515a;
  --ks-sidebar-selected: #2c555d;
  --ks-sidebar-selected-ink: #f0ffff;
  --ks-login-art-bg: #122e35;
  --ks-login-art-ink: #e9f7f6;
  --ks-login-art-muted: #b3cfd0;
  --ks-login-art-line: #48676b;
  --ks-login-tag-bg: #1a3b42;
  --ks-shadow: 0 20px 70px #0006;
}

/* Components shared with the approved mockups. */
#kyra-superadmin *{box-sizing:border-box}
#kyra-superadmin [hidden]{display:none!important}
#kyra-superadmin h1,#kyra-superadmin h2,#kyra-superadmin h3,#kyra-superadmin p{margin:0}
#kyra-superadmin h1{font-size:29px;letter-spacing:-.9px;line-height:1.2;font-weight:500}
#kyra-superadmin h2{font-size:17px;letter-spacing:-.3px;font-weight:500}
#kyra-superadmin h3{font-size:14px;font-weight:500}
#kyra-superadmin strong,#kyra-superadmin b{font-weight:500}
#kyra-superadmin small{font-size:11px}
#kyra-superadmin button,#kyra-superadmin input,#kyra-superadmin select,#kyra-superadmin textarea{font:inherit}
#kyra-superadmin button{cursor:pointer}
#kyra-superadmin button:disabled{cursor:default;opacity:.5}
#kyra-superadmin svg{width:16px;height:16px;flex-shrink:0}
#kyra-superadmin .ks-muted{color:var(--ks-muted)}
#kyra-superadmin .ks-small{font-size:11px}
#kyra-superadmin .ks-numeric{font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-kicker{font-size:11px;letter-spacing:1.35px;color:var(--ks-muted);text-transform:uppercase}
#kyra-superadmin .ks-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100dvh}

#kyra-superadmin .ks-main{min-width:0}
#kyra-superadmin .ks-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 26px;border-bottom:1px solid var(--ks-line);gap:12px;background:var(--ks-paper);font-size:11px}
#kyra-superadmin .ks-breadcrumb{color:var(--ks-muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#kyra-superadmin .ks-topbar-right{display:flex;align-items:center;gap:12px}
#kyra-superadmin .ks-demo{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-demo:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--ks-accent)}
#kyra-superadmin .ks-content{padding:27px 25px 22px;min-width:0}
#kyra-superadmin .ks-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:25px}
#kyra-superadmin .ks-heading .ks-kicker{margin-bottom:7px}
#kyra-superadmin .ks-heading p{font-size:12px;color:var(--ks-muted);margin-top:9px;max-width:540px}
#kyra-superadmin .ks-heading-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#kyra-superadmin .ks-footer{display:flex;justify-content:space-between;gap:15px;margin:0 25px;padding:15px 0;border-top:1px solid var(--ks-line);color:var(--ks-muted);font-size:11px}
#kyra-superadmin .ks-toast{margin:0 25px 15px;padding:11px 14px;border-radius:8px;background:var(--ks-tint);color:var(--ks-accent);font-size:12px}
#kyra-superadmin .ks-toast:empty{display:none}
/* This status-only toast may float over a save action; clicks must reach the action. */
#kyra-superadmin .ks-toast{pointer-events:none}

#kyra-superadmin .ks-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;padding:9px 13px;background:var(--ks-paper);border:1px solid var(--ks-line);border-radius:7px;color:var(--ks-ink);font-size:12px;white-space:nowrap}
#kyra-superadmin .ks-button.primary{background:var(--ks-accent);border-color:var(--ks-accent);color:var(--ks-on)}
#kyra-superadmin .ks-button.danger{background:var(--ks-red-bg);color:var(--ks-red);border-color:var(--ks-red)}
#kyra-superadmin .ks-button svg{width:14px;height:14px}
#kyra-superadmin .ks-link{border:0;background:transparent;color:var(--ks-accent);padding:5px 0;display:inline-flex;gap:6px;align-items:center;font-size:12px;text-align:left}
#kyra-superadmin .ks-icon-button{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--ks-line);border-radius:7px;background:var(--ks-paper);color:var(--ks-muted)}
#kyra-superadmin .ks-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;font-size:11px;border-radius:5px;background:var(--ks-soft);color:var(--ks-muted);white-space:nowrap}
#kyra-superadmin .ks-badge.green{background:var(--ks-tint);color:var(--ks-green)}
#kyra-superadmin .ks-badge.amber{background:var(--ks-warm-bg);color:var(--ks-warm)}
#kyra-superadmin .ks-badge.red{background:var(--ks-red-bg);color:var(--ks-red)}
#kyra-superadmin .ks-panel{background:var(--ks-paper);border:1px solid var(--ks-line);border-radius:var(--ks-radius);min-width:0;overflow:hidden}
#kyra-superadmin .ks-pad{padding:20px}
#kyra-superadmin .ks-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:17px 19px;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-panel-head p{font-size:11px;color:var(--ks-muted);margin-top:4px}
#kyra-superadmin .ks-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
#kyra-superadmin .ks-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
#kyra-superadmin .ks-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#kyra-superadmin .ks-between{justify-content:space-between}
#kyra-superadmin .ks-stack{display:grid;gap:17px}
#kyra-superadmin .ks-gap-top{margin-top:20px}
#kyra-superadmin .ks-list-row{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:15px 18px;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-list-row:last-child{border-bottom:0}
#kyra-superadmin .ks-list-row small{display:block;color:var(--ks-muted);margin-top:4px}
#kyra-superadmin .ks-avatar{width:34px;height:34px;display:grid;place-items:center;flex-shrink:0;border-radius:10px;background:var(--ks-soft);color:var(--ks-muted);font-size:11px}
#kyra-superadmin .ks-avatar.accent{background:var(--ks-tint);color:var(--ks-accent)}
#kyra-superadmin .ks-person{display:flex;gap:10px;align-items:center;min-width:0}
#kyra-superadmin .ks-person small{display:block;font-size:11px;color:var(--ks-muted);margin-top:4px}
#kyra-superadmin .ks-person strong{font-size:12px}
#kyra-superadmin .ks-notice{background:var(--ks-tint);color:var(--ks-accent);padding:13px 15px;border-radius:8px;font-size:12px}
#kyra-superadmin .ks-notice.amber{background:var(--ks-warm-bg);color:var(--ks-warm)}
#kyra-superadmin .ks-notice p{font-size:11px;margin-top:5px}
#kyra-superadmin .ks-empty{text-align:center;padding:30px 20px;color:var(--ks-muted);font-size:12px}

#kyra-superadmin input,#kyra-superadmin select,#kyra-superadmin textarea{width:100%;min-width:0;color:var(--ks-ink);background:var(--ks-paper);border:1px solid var(--ks-line);border-radius:6px;padding:9px 10px;font-size:12px;max-width:100%}
#kyra-superadmin input::placeholder,#kyra-superadmin textarea::placeholder{color:var(--ks-muted)}
#kyra-superadmin input[readonly],#kyra-superadmin input:disabled{background:var(--ks-soft);color:var(--ks-muted)}
#kyra-superadmin input[type=checkbox]{width:17px;height:17px;accent-color:var(--ks-accent);flex-shrink:0}
#kyra-superadmin input[type=range]{padding:0}
#kyra-superadmin textarea{resize:vertical;line-height:1.5}
#kyra-superadmin .ks-field{display:grid;gap:6px;font-size:11px;color:var(--ks-muted);min-width:0}
#kyra-superadmin .ks-field small{font-size:11px}
#kyra-superadmin .ks-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#kyra-superadmin .ks-wide{grid-column:1/-1}
#kyra-superadmin .ks-form-section{padding:20px;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-form-section h3{margin-bottom:15px}
#kyra-superadmin .ks-form-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 20px;background:var(--ks-soft)}
#kyra-superadmin .ks-form-footer p{font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--ks-line);font-size:12px}
#kyra-superadmin .ks-switch small{display:block;margin-top:4px;font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-switch:last-child{border-bottom:0}
#kyra-superadmin .ks-toolbar{display:flex;gap:10px;align-items:center;padding:13px 17px;border-bottom:1px solid var(--ks-line);flex-wrap:wrap}
#kyra-superadmin .ks-search{flex:1;min-width:180px;position:relative}
#kyra-superadmin .ks-search input{padding-left:32px}
#kyra-superadmin .ks-search>i,#kyra-superadmin .ks-search>svg{position:absolute;top:11px;left:10px;color:var(--ks-muted);width:14px;height:14px}
#kyra-superadmin .ks-toolbar select{width:auto;max-width:170px}
#kyra-superadmin .ks-tabs{display:flex;gap:22px;border-bottom:1px solid var(--ks-line);margin-bottom:20px;flex-wrap:wrap}
#kyra-superadmin .ks-capacity .ks-panel-head{flex-wrap:wrap}
#kyra-superadmin .ks-capacity-status{font-size:13px;font-weight:600;margin-bottom:5px}
#kyra-superadmin .ks-capacity-status[data-state=stale]{color:var(--ks-warm)}
#kyra-superadmin .ks-capacity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:16px;margin-top:18px}
#kyra-superadmin .ks-capacity-account{min-width:0;border:1px solid var(--ks-line);border-radius:10px;padding:16px;overflow-wrap:anywhere}
#kyra-superadmin .ks-capacity-account header{display:flex;justify-content:space-between;align-items:start;gap:10px;flex-wrap:wrap}
#kyra-superadmin .ks-capacity-account h3{font-size:15px;margin:0 0 4px}
#kyra-superadmin .ks-capacity-account header p,#kyra-superadmin .ks-capacity-window{font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-capacity-volume{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:20px 0 15px}
#kyra-superadmin .ks-capacity-volume strong{font-size:28px;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-capacity-volume span{font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-capacity-account dl{font-size:12px;margin:0 0 14px}
#kyra-superadmin .ks-capacity-account dl>div{display:flex;justify-content:space-between;gap:12px;margin:9px 0}
#kyra-superadmin .ks-capacity-account dt{color:var(--ks-muted)}
#kyra-superadmin .ks-capacity-account dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-capacity-account meter{display:block;width:100%;height:12px;margin:10px 0}
#kyra-superadmin .ks-capacity-account .ks-capacity-window{margin:13px 0 9px}
#kyra-superadmin .ks-capacity-account p{line-height:1.5}
#kyra-superadmin .ks-tabs button{padding:0 0 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ks-muted);font-size:12px}
#kyra-superadmin .ks-tabs button[aria-selected=true]{border-color:var(--ks-accent);color:var(--ks-accent)}
#kyra-superadmin .ks-table-wrap{overflow-x:auto}
#kyra-superadmin table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}
#kyra-superadmin th{font-size:11px;color:var(--ks-muted);font-weight:400;background:var(--ks-bg);padding:12px 15px;white-space:nowrap}
#kyra-superadmin td{padding:15px;border-top:1px solid var(--ks-line)}
#kyra-superadmin td small{display:block;color:var(--ks-muted);font-size:11px;margin-top:4px}
#kyra-superadmin td:last-child,#kyra-superadmin th:last-child{text-align:right}
#kyra-superadmin td .ks-link{font-size:11px}
#kyra-superadmin .ks-table-foot{padding:12px 17px;border-top:1px solid var(--ks-line);font-size:11px;color:var(--ks-muted);display:flex;justify-content:space-between;gap:12px}

#kyra-superadmin .ks-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:21px}
#kyra-superadmin .ks-stat{padding:17px 18px;background:var(--ks-paper);border:1px solid var(--ks-line);border-radius:var(--ks-radius)}
#kyra-superadmin .ks-stat-label{display:flex;justify-content:space-between;align-items:center;color:var(--ks-muted);font-size:11px}
#kyra-superadmin .ks-stat strong{display:block;font-size:28px;letter-spacing:-.8px;line-height:1.2;margin:14px 0 8px;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-stat p{font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-home-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:17px}
#kyra-superadmin .ks-revenue-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-revenue-row:last-child{border-bottom:0}
#kyra-superadmin .ks-revenue-name{font-size:12px}
#kyra-superadmin .ks-revenue-name small{display:block;color:var(--ks-muted);font-size:11px;margin-top:3px}
#kyra-superadmin .ks-revenue-amount{font-size:14px;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-attention{display:flex;gap:11px;align-items:start;padding:16px 18px;border:0;border-bottom:1px solid var(--ks-line);background:transparent;text-align:left;width:100%;color:var(--ks-ink)}
#kyra-superadmin .ks-attention:last-child{border-bottom:0}
#kyra-superadmin .ks-attention strong{display:block;font-size:12px}
#kyra-superadmin .ks-attention small{display:block;color:var(--ks-muted);font-size:11px;line-height:1.5;margin-top:5px}
#kyra-superadmin .ks-attention .ks-avatar{background:var(--ks-warm-bg);color:var(--ks-warm)}
#kyra-superadmin .ks-attention>.ks-chevron{margin-left:auto;color:var(--ks-muted)}

#kyra-superadmin .ks-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:15px 0 21px}
#kyra-superadmin .ks-product{border:1px solid var(--ks-line);background:var(--ks-paper);border-radius:var(--ks-radius);padding:15px;text-align:left;color:var(--ks-ink);min-width:0}
#kyra-superadmin .ks-product[aria-pressed=true]{background:var(--ks-tint);border-color:var(--ks-accent);box-shadow:inset 0 0 0 1px var(--ks-accent)}
#kyra-superadmin .ks-product-label{font-size:12px;display:flex;align-items:center;gap:7px;font-weight:500}
#kyra-superadmin .ks-product-label svg{width:15px;height:15px;color:var(--ks-accent)}
#kyra-superadmin .ks-product-value{display:block;font-size:23px;letter-spacing:-.6px;margin-top:17px;line-height:1.2;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-product-value small{font-size:11px;color:var(--ks-muted);letter-spacing:0}
#kyra-superadmin .ks-product-foot{display:block;margin-top:7px;font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-section-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}
#kyra-superadmin .ks-company-hero{display:flex;gap:15px;align-items:center;margin-bottom:24px}
#kyra-superadmin .ks-company-hero .ks-avatar{width:54px;height:54px;background:var(--ks-tint);color:var(--ks-accent);font-size:19px;border-radius:15px}
#kyra-superadmin .ks-company-hero .ks-hero-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
#kyra-superadmin .ks-company-hero h1{font-size:27px}
#kyra-superadmin .ks-company-hero .ks-row{margin-top:8px;gap:7px}
#kyra-superadmin .ks-back{margin-bottom:17px;font-size:11px}
#kyra-superadmin .ks-detail-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:17px}
#kyra-superadmin .ks-data-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--ks-line);font-size:12px}
#kyra-superadmin .ks-data-row:last-child{border-bottom:0}
#kyra-superadmin .ks-data-row span:first-child{color:var(--ks-muted)}
#kyra-superadmin .ks-mini-total{font-size:30px;letter-spacing:-.7px;line-height:1.2;margin:14px 0 10px;font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-mini-total small{font-size:11px;color:var(--ks-muted)}
#kyra-superadmin .ks-subnav{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
#kyra-superadmin .ks-subnav button{border:1px solid var(--ks-line);background:var(--ks-paper);color:var(--ks-muted);border-radius:6px;padding:7px 11px;font-size:11px}
#kyra-superadmin .ks-subnav button[aria-pressed=true]{color:var(--ks-accent);background:var(--ks-tint);border-color:var(--ks-accent)}

#kyra-superadmin .ks-pricing-grid{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:17px;align-items:start}
#kyra-superadmin .ks-client-choice{width:100%;display:block;text-align:left;border:1px solid var(--ks-line);background:var(--ks-paper);color:var(--ks-ink);padding:14px 12px;border-radius:8px;margin-bottom:8px}
#kyra-superadmin .ks-client-choice[aria-pressed=true]{border-color:var(--ks-accent);background:var(--ks-tint);box-shadow:inset 3px 0 0 var(--ks-accent)}
#kyra-superadmin .ks-client-choice .ks-row{justify-content:space-between;gap:6px;flex-wrap:nowrap}
#kyra-superadmin .ks-client-choice strong{font-size:12px}
#kyra-superadmin .ks-client-choice small{display:block;font-size:11px;color:var(--ks-muted);margin-top:6px}
#kyra-superadmin .ks-discount-area{background:var(--ks-soft);border-radius:7px;padding:12px;margin-top:14px}
#kyra-superadmin .ks-price-result{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0 0}
#kyra-superadmin .ks-price-result strong{display:block;font-size:28px;letter-spacing:-.8px;color:var(--ks-green);font-variant-numeric:tabular-nums}
#kyra-superadmin .ks-price-result strong small{font-size:11px;color:var(--ks-muted);letter-spacing:0}
#kyra-superadmin .ks-price-result .ks-calculation{font-size:11px;text-align:right;color:var(--ks-muted)}
#kyra-superadmin .ks-price-result .ks-calculation b{display:block;margin-top:4px;color:var(--ks-green)}
#kyra-superadmin .ks-fee-row{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:12px 0;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-fee-row:last-child{border:0}
#kyra-superadmin .ks-fee-row small{display:block;font-size:11px;color:var(--ks-muted);margin-top:3px}
#kyra-superadmin .ks-fee-toggle{background:none;border:0;text-align:right;color:var(--ks-ink);padding:0;font-size:12px}
#kyra-superadmin .ks-fee-toggle small{color:var(--ks-accent)}
#kyra-superadmin .ks-fee-fields{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:7px;margin-top:6px}
#kyra-superadmin .ks-fee-fields input,#kyra-superadmin .ks-fee-fields select{font-size:11px;padding:7px}
#kyra-superadmin .ks-condition-footer{padding:14px 19px;background:var(--ks-soft);border-top:1px solid var(--ks-line)}
#kyra-superadmin .ks-rule-note{font-size:11px;color:var(--ks-muted);margin-bottom:12px}
#kyra-superadmin .ks-steps{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}
#kyra-superadmin .ks-step{display:flex;gap:7px;align-items:center;color:var(--ks-muted);font-size:11px}
#kyra-superadmin .ks-step span{display:grid;place-items:center;width:25px;height:25px;background:var(--ks-soft);border-radius:50%;font-size:11px}
#kyra-superadmin .ks-step.current{color:var(--ks-accent)}
#kyra-superadmin .ks-step.current span{background:var(--ks-accent);color:var(--ks-on)}
#kyra-superadmin .ks-onboard-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#kyra-superadmin .ks-onboard-products .ks-product{padding:20px}
#kyra-superadmin .ks-onboard-products .ks-product-label{font-size:15px}
#kyra-superadmin .ks-wizard{max-width:640px;margin:0 auto}
#kyra-superadmin .ks-event{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--ks-line)}
#kyra-superadmin .ks-event small{display:block;color:var(--ks-muted);font-size:11px;margin-top:5px}
#kyra-superadmin .ks-event:last-child{border:0}
#kyra-superadmin .ks-event .ks-avatar{height:29px;width:29px;border-radius:50%}
#kyra-superadmin .ks-choice-row{display:flex;align-items:center;gap:8px;font-size:12px;padding:12px 0}
#kyra-superadmin .ks-price-comparison{padding:14px;background:var(--ks-tint);color:var(--ks-accent);border-radius:8px;margin-top:15px;font-size:12px}
#kyra-superadmin .ks-price-comparison strong{font-size:22px;display:block;margin-top:5px}


@media(max-width:980px){#kyra-superadmin .ks-shell{grid-template-columns:1fr;min-height:0}
#kyra-superadmin .ks-sidebar{display:block;padding:13px 19px}
#kyra-superadmin .ks-brand{font-size:29px;padding:0;display:inline-block}
#kyra-superadmin .ks-brand small{display:none}
#kyra-superadmin .ks-side-bottom{display:none}
#kyra-superadmin[data-menu=open] .ks-side-bottom{display:block}
#kyra-superadmin .ks-mobile-menu{display:flex;float:right;background:var(--ks-sidebar-selected);border:1px solid var(--ks-sidebar-line);border-radius:6px;color:var(--ks-sidebar-ink);font-size:11px;align-items:center;gap:8px;padding:6px 10px}
#kyra-superadmin .ks-menu{display:none;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:15px;gap:5px}
#kyra-superadmin[data-menu=open] .ks-menu{display:grid}
#kyra-superadmin .ks-menu-label{display:none}
#kyra-superadmin .ks-topbar{padding:13px 22px}
#kyra-superadmin .ks-content{padding:23px 21px}
#kyra-superadmin .ks-heading{margin-bottom:22px}
#kyra-superadmin .ks-products{gap:10px}
#kyra-superadmin .ks-product{padding:13px}
#kyra-superadmin .ks-product-value{font-size:21px}
}


@media(max-width:660px){#kyra-superadmin .ks-content{padding:20px 14px}
#kyra-superadmin .ks-topbar{padding:12px 15px}
#kyra-superadmin .ks-topbar .ks-demo{display:none}
#kyra-superadmin .ks-heading{align-items:flex-start;flex-direction:column;gap:15px}
#kyra-superadmin h1{font-size:27px}
#kyra-superadmin .ks-heading p{font-size:12px}
#kyra-superadmin .ks-metrics{grid-template-columns:1fr;gap:8px}
#kyra-superadmin .ks-stat{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:13px 15px;align-items:center}
#kyra-superadmin .ks-stat-label{justify-content:flex-start;gap:8px}
#kyra-superadmin .ks-stat strong{font-size:25px;grid-row:1/3;grid-column:2;margin:0}
#kyra-superadmin .ks-stat p{font-size:11px}
#kyra-superadmin .ks-home-grid,#kyra-superadmin .ks-grid2,#kyra-superadmin .ks-grid3,#kyra-superadmin .ks-detail-layout,#kyra-superadmin .ks-pricing-grid{grid-template-columns:1fr}
#kyra-superadmin .ks-products{grid-template-columns:1fr 1fr;gap:10px}
#kyra-superadmin .ks-product-value{font-size:23px;margin-top:13px}
#kyra-superadmin .ks-product-value small{font-size:11px;display:block;margin-top:3px}
#kyra-superadmin .ks-product-label{font-size:12px}
#kyra-superadmin .ks-footer{margin:0 15px;flex-direction:column;gap:6px}
#kyra-superadmin .ks-toast{margin:0 15px 15px}
#kyra-superadmin .ks-menu{grid-template-columns:1fr 1fr}
#kyra-superadmin .ks-menu button{font-size:11px}
#kyra-superadmin .ks-panel-head{padding:15px;align-items:flex-start}
#kyra-superadmin .ks-pad,#kyra-superadmin .ks-form-section{padding:16px}
#kyra-superadmin .ks-person{gap:8px}
#kyra-superadmin .ks-company-hero{flex-wrap:wrap;gap:12px}
#kyra-superadmin .ks-company-hero h1{font-size:24px}
#kyra-superadmin .ks-company-hero .ks-hero-actions{width:100%;margin:0}
#kyra-superadmin .ks-tabs{gap:14px}
#kyra-superadmin .ks-tabs button{font-size:11px}
#kyra-superadmin .ks-toolbar{padding:12px}
#kyra-superadmin .ks-toolbar select{flex:1;max-width:none}
#kyra-superadmin .ks-search{width:100%;flex-basis:100%}
#kyra-superadmin .ks-list-row{padding:14px;flex-wrap:wrap}
#kyra-superadmin .ks-form-grid{gap:13px;grid-template-columns:1fr}
#kyra-superadmin .ks-discount-area .ks-form-grid{grid-template-columns:.7fr 1.3fr}
#kyra-superadmin .ks-fee-fields{grid-template-columns:1fr 1fr}
#kyra-superadmin .ks-fee-fields .ks-field:first-child{grid-column:1/-1}
#kyra-superadmin .ks-form-footer{padding:14px 16px;flex-wrap:wrap}
#kyra-superadmin .ks-login{grid-template-columns:1fr;min-height:0}
#kyra-superadmin .ks-login-art{padding:25px;gap:25px}
#kyra-superadmin .ks-login-art h2{font-size:27px;max-width:none}
#kyra-superadmin .ks-login-art p,#kyra-superadmin .ks-login-products{display:none}
#kyra-superadmin .ks-login-form{padding:30px 25px}
#kyra-superadmin .ks-onboard-products{grid-template-columns:1fr}
#kyra-superadmin .ks-onboard-products .ks-product{padding:16px}
#kyra-superadmin .ks-onboard-products .ks-product-foot{font-size:11px}
#kyra-superadmin table.ks-company-table{min-width:620px}
#kyra-superadmin table.ks-finance-table{min-width:580px}
}

#kyra-superadmin #ks-auto-form table{min-width:580px}


@media(max-width:660px){#kyra-superadmin #ks-auto-company{flex-basis:100%;width:100%;order:3}
}


@media(pointer:coarse){#kyra-superadmin input,#kyra-superadmin select,#kyra-superadmin textarea{font-size:16px;min-height:44px}
#kyra-superadmin button{min-height:44px}
#kyra-superadmin input[type=checkbox]{min-height:20px;width:20px;height:20px}
}

/* Navigation and login share the same explicit palette as the content. */
#kyra-superadmin .ks-sidebar {
  position: sticky;
  top: 0;
  height: 100dvh;
  padding: 30px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 27px;
  overflow-y: auto;
  background: var(--ks-sidebar-bg);
  color: var(--ks-sidebar-ink);
  border-right: 1px solid var(--ks-sidebar-line);
}
#kyra-superadmin .ks-brand { color: var(--ks-sidebar-ink); font-size: 37px; line-height: 1; letter-spacing: -2px; padding: 0 11px; font-weight: 600; }
#kyra-superadmin .ks-brand em { font-style: normal; color: var(--ks-accent); }
#kyra-superadmin .ks-brand small { display: block; letter-spacing: 1.5px; font-size: 10px; line-height: 1.4; margin-top: 11px; color: var(--ks-sidebar-muted); text-transform: uppercase; }
#kyra-superadmin .ks-menu { display: grid; gap: 5px; }
#kyra-superadmin .ks-menu-label { font-size: 10px; letter-spacing: 1.2px; padding: 18px 11px 8px; color: var(--ks-sidebar-muted); }
#kyra-superadmin .ks-menu-label:first-child { padding-top: 3px; }
#kyra-superadmin .ks-menu button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 41px; padding: 10px 11px; border: 0; border-radius: 7px; background: transparent; color: var(--ks-sidebar-muted); text-align: left; font-size: 13px; }
#kyra-superadmin .ks-menu button[aria-current="page"],
#kyra-superadmin .ks-menu button:hover { background: var(--ks-sidebar-selected); color: var(--ks-sidebar-selected-ink); }
#kyra-superadmin .ks-menu button[aria-current="page"] { font-weight: 600; }
#kyra-superadmin .ks-menu .ks-count { margin-left: auto; background: var(--ks-soft); color: var(--ks-muted); border-radius: 5px; font-size: 11px; padding: 1px 6px; }
#kyra-superadmin .ks-side-bottom { margin-top: auto; padding: 19px 9px 0; border-top: 1px solid var(--ks-sidebar-line); }
#kyra-superadmin .ks-profile { display: flex; gap: 10px; align-items: center; font-size: 12px; color: var(--ks-sidebar-ink); }
#kyra-superadmin .ks-profile small { display: block; font-size: 11px; color: var(--ks-sidebar-muted); margin-top: 3px; }
#kyra-superadmin .ks-profile .ks-avatar { background: var(--ks-sidebar-selected); color: var(--ks-sidebar-selected-ink); }
#kyra-superadmin .ks-logout { border: 0; background: transparent; color: var(--ks-sidebar-muted); padding: 15px 0 0; display: flex; align-items: center; gap: 8px; font-size: 12px; }
#kyra-superadmin .ks-mobile-menu { display: none; }
#kyra-superadmin .ks-main { display: flex; flex-direction: column; }
#kyra-superadmin .ks-topbar { min-height: 67px; padding: 17px 32px; }
#kyra-superadmin .ks-content { flex: 1; width: 100%; max-width: 1600px; margin: 0 auto; padding: 32px; }
#kyra-superadmin .ks-footer { margin: 0 32px; }
#kyra-superadmin .ks-heading h1 { font-weight: 600; }
#kyra-superadmin .ks-heading p { line-height: 1.65; }
#kyra-superadmin .ks-login { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); min-height: 100dvh; background: var(--ks-paper); }
#kyra-superadmin .ks-login-art { background: var(--ks-login-art-bg); color: var(--ks-login-art-ink); padding: clamp(32px,6vw,88px); display: flex; flex-direction: column; justify-content: space-between; gap: 40px; border-right: 1px solid var(--ks-login-art-line); }
#kyra-superadmin .ks-login-art .ks-brand { padding: 0; font-size: 44px; color: var(--ks-login-art-ink); }
#kyra-superadmin .ks-login-art h2 { font-size: clamp(32px,3.2vw,48px); line-height: 1.15; max-width: 450px; letter-spacing: -1.4px; color: var(--ks-login-art-ink); font-weight: 500; }
#kyra-superadmin .ks-login-art p { color: var(--ks-login-art-muted); font-size: 14px; margin-top: 21px; line-height: 1.8; max-width: 420px; }
#kyra-superadmin .ks-login-art > .ks-small { color: var(--ks-login-art-muted); }
#kyra-superadmin .ks-login-products { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 30px; max-width: 430px; }
#kyra-superadmin .ks-login-products span { border: 1px solid var(--ks-login-art-line); padding: 12px; border-radius: 7px; font-size: 12px; background: var(--ks-login-tag-bg); color: var(--ks-login-art-ink); }
#kyra-superadmin .ks-login-form { width: 100%; max-width: 530px; margin: auto; padding: 56px clamp(24px,5vw,65px); display: flex; flex-direction: column; justify-content: center; }
#kyra-superadmin .ks-login-form h1 { font-size: 29px; margin: 10px 0 13px; }
#kyra-superadmin .ks-login-form p { color: var(--ks-muted); font-size: 13px; line-height: 1.7; margin-bottom: 26px; }
#kyra-superadmin .ks-login-form .ks-button { width: 100%; margin-top: 17px; min-height: 44px; }
#kyra-superadmin .ks-login-form .ks-small { margin-top: 17px; color: var(--ks-muted); }
#kyra-superadmin .ks-login-form .ks-field { margin-top: 15px; }
#kyra-superadmin #login-erro { color: var(--ks-red); margin-top: 14px; font-size: 13px; }
#kyra-superadmin [data-sa-action="theme"] { min-height: 34px; }
#kyra-superadmin .sa-icon { display: inline-flex; flex: 0 0 18px; width: 18px; height: 18px; align-items: center; justify-content: center; line-height: 1; }

/* Input, focus and status treatment also covers dynamically loaded controls. */
#kyra-superadmin a { color: var(--ks-accent); }
#kyra-superadmin button { touch-action: manipulation; }
#kyra-superadmin :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline: 3px solid var(--ks-accent); outline-offset: 3px; }
#kyra-superadmin :is(input,select,textarea):focus-visible { outline-width: 2px; outline-offset: 1px; border-color: var(--ks-accent); }
#kyra-superadmin :is(button,input,select,textarea):disabled { cursor: not-allowed; }
#kyra-superadmin input[type="checkbox"],
#kyra-superadmin input[type="radio"] { accent-color: var(--ks-accent); width: 18px; height: 18px; min-height: 18px; margin: 0; vertical-align: middle; padding: 0; }
#kyra-superadmin input[type="file"] { max-width: 100%; }
#kyra-superadmin input[type="file"]::file-selector-button { background: var(--ks-soft); color: var(--ks-ink); border: 0; border-right: 1px solid var(--ks-line); padding: 7px 10px; margin-right: 10px; cursor: pointer; }
#kyra-superadmin .ks-button:hover:not(:disabled),
#kyra-superadmin .ks-icon-button:hover:not(:disabled),
#kyra-superadmin .ks-product:hover:not(:disabled),
#kyra-superadmin .ks-client-choice:hover:not(:disabled) { border-color: var(--ks-accent); }
#kyra-superadmin .ks-button.primary:hover:not(:disabled),
#kyra-superadmin .btn-save:hover:not(:disabled) { filter: brightness(.94); }
#kyra-superadmin .ks-button:disabled { opacity: .55; }
#kyra-superadmin .ks-notice.red,
#kyra-superadmin .ks-toast.err,
#kyra-superadmin .ks-toast.error { background: var(--ks-red-bg); color: var(--ks-red); }
#kyra-superadmin .ks-toast.ok { background: var(--ks-tint); color: var(--ks-green); }
#kyra-superadmin .ks-toast { position: sticky; bottom: 14px; z-index: 5; border: 1px solid var(--ks-line); }
#kyra-superadmin .ks-person > div,
#kyra-superadmin .ks-company-hero > div { min-width: 0; overflow-wrap: anywhere; }
#kyra-superadmin .ks-stat strong,
#kyra-superadmin .ks-product-value { overflow-wrap: anywhere; }
#kyra-superadmin .ks-table-wrap { max-width: 100%; overscroll-behavior-x: contain; }
#kyra-superadmin .ks-table-wrap table { min-width: 650px; }
#kyra-superadmin .ks-table-wrap .ks-button { font-size: 11px; padding: 7px 9px; }
#kyra-superadmin .ks-kicker { font-size: 11px; }
#kyra-superadmin .ks-field { font-size: 12px; }
#kyra-superadmin .ks-field input,
#kyra-superadmin .ks-field select,
#kyra-superadmin .ks-field textarea { font-size: 13px; }
#kyra-superadmin .ks-form-grid > *,
#kyra-superadmin .ks-grid2 > *,
#kyra-superadmin .ks-grid3 > * { min-width: 0; }
#kyra-superadmin .ks-form-grid fieldset { min-width: 0; border: 0; margin: 0; padding: 0; }
#kyra-superadmin .ks-switch > span { min-width: 0; }
#kyra-superadmin pre { font: 12px/1.6 ui-monospace, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; max-width: 100%; }
#kyra-superadmin code { overflow-wrap: anywhere; }
#kyra-superadmin #loading { padding: 50px 20px; text-align: center; color: var(--ks-muted); }

/* Legacy company fields keep their IDs and behavior inside the new tabs. */
#kyra-superadmin .sa-company-fields { min-width: 0; }
#kyra-superadmin .sa-company-fields .empresa-card { background: transparent; border: 0; border-radius: 0; margin: 0; overflow: visible; }
#kyra-superadmin .sa-company-fields .empresa-header { display: none; }
#kyra-superadmin .sa-company-fields .empresa-body { padding: 0; border: 0; }
#kyra-superadmin .sa-company-fields .empresa-body.open { display: block; }
#kyra-superadmin .sa-settings-panel { min-width: 0; background: var(--ks-paper); border: 1px solid var(--ks-line); border-radius: var(--ks-radius); padding: 0; }
#kyra-superadmin .sa-settings-panel + .sa-settings-panel { margin-top: 18px; }
#kyra-superadmin .sa-company-fields .section-title { font-size: 12px; font-weight: 600; letter-spacing: .02em; text-transform: none; color: var(--ks-ink); margin: 26px 0 15px; }
#kyra-superadmin .sa-company-fields .section-title:first-child { margin-top: 0 !important; }
#kyra-superadmin .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
#kyra-superadmin .form-group { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
#kyra-superadmin .form-group label { font-size: 12px; color: var(--ks-muted); line-height: 1.5; min-height: 36px; }
#kyra-superadmin .sa-company-fields :is(input,select,textarea) { color: var(--ks-ink) !important; background: var(--ks-paper) !important; border: 1px solid var(--ks-line) !important; border-radius: 7px; font: inherit; font-size: 13px !important; padding: 10px 11px; }
#kyra-superadmin .sa-company-fields :is(input,select,textarea):disabled { background: var(--ks-soft) !important; color: var(--ks-muted) !important; }
#kyra-superadmin .sa-company-fields :is(input,select,textarea):focus-visible { border-color: var(--ks-accent) !important; }
#kyra-superadmin .sa-company-fields .form-group > :is(small,span),
#kyra-superadmin .sa-company-fields p { font-size: 12px !important; line-height: 1.65; color: var(--ks-muted) !important; }
#kyra-superadmin .sa-company-fields :is(div,span,label,strong,pre,b)[style*="color:"] { color: var(--ks-ink) !important; }
#kyra-superadmin .sa-company-fields :is(div,span,label)[style*="color:#64748b"],
#kyra-superadmin .sa-company-fields :is(div,span,label)[style*="color:#94a3b8"] { color: var(--ks-muted) !important; }
#kyra-superadmin .sa-company-fields :is(div,span)[style*="background:"] { background: var(--ks-soft) !important; color: var(--ks-ink) !important; }
#kyra-superadmin .sa-company-fields :is(div,span)[style*="border:"] { border-color: var(--ks-line) !important; }
#kyra-superadmin .sa-company-fields .toggle-label > span[style*="background:"] { background: var(--ks-tint) !important; color: var(--ks-green) !important; }
#kyra-superadmin .sa-company-fields :is(pre,span)[style*="color:#fca5a5"],
#kyra-superadmin .sa-company-fields span[style*="color:#f87171"],
#kyra-superadmin .sa-company-fields [id^="sp-erro-"] { color: var(--ks-red) !important; }
#kyra-superadmin .toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--ks-line); }
#kyra-superadmin .toggle-row:last-child { border-bottom: 0; }
#kyra-superadmin .toggle-label { color: var(--ks-ink); font-size: 13px; }
#kyra-superadmin .toggle { position: relative; display: inline-block; width: 42px; height: 24px; flex: 0 0 42px; }
#kyra-superadmin .toggle input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; margin: 0; padding: 0; min-height: 0; cursor: pointer; }
#kyra-superadmin .toggle .slider { position: absolute; inset: 0; background: var(--ks-toggle-off); border-radius: 24px; cursor: pointer; transition: background .15s; }
#kyra-superadmin .toggle .slider::before { content: ''; position: absolute; width: 18px; height: 18px; left: 3px; top: 3px; background: var(--ks-paper); border-radius: 50%; transition: transform .15s; }
#kyra-superadmin .toggle input:checked + .slider { background: var(--ks-accent); }
#kyra-superadmin .toggle input:checked + .slider::before { transform: translateX(18px); background: var(--ks-on); }
#kyra-superadmin .toggle input:focus-visible + .slider { outline: 3px solid var(--ks-accent); outline-offset: 3px; }
#kyra-superadmin .toggle input:disabled + .slider { cursor: not-allowed; opacity: .5; }
#kyra-superadmin .save-row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
#kyra-superadmin .btn-save,
#kyra-superadmin .btn-primary { display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 10px 16px; border: 1px solid var(--ks-accent); border-radius: 7px; background: var(--ks-accent); color: var(--ks-on); font: inherit; font-size: 13px; cursor: pointer; }
#kyra-superadmin .sa-company-fields .btn-save { background: var(--ks-accent) !important; color: var(--ks-on) !important; border-color: var(--ks-accent) !important; }
#kyra-superadmin .sa-company-fields .btn-save[style*="background:#334155"] { background: var(--ks-paper) !important; color: var(--ks-ink) !important; border-color: var(--ks-line) !important; }
#kyra-superadmin .sa-company-fields .btn-save[style*="background:#450a0a"],
#kyra-superadmin .sa-company-fields .btn-save[style*="background:#7f1d1d"] { background: var(--ks-red-bg) !important; color: var(--ks-red) !important; border-color: var(--ks-red) !important; }
#kyra-superadmin .save-msg { display: none; font-size: 12px; }
#kyra-superadmin .save-msg.ok { color: var(--ks-green); }
#kyra-superadmin .save-msg.err { color: var(--ks-red); }
#kyra-superadmin .sa-company-fields [id^="produtos-"] { color: var(--ks-muted) !important; }
#kyra-superadmin .sa-company-fields [id^="produtos-"] > div { border-color: var(--ks-line) !important; }
#kyra-superadmin .sa-company-fields [id^="saform-"] > div { background: var(--ks-soft); border-color: var(--ks-line) !important; }
#kyra-superadmin .sa-company-fields [id^="sp-rows-"] > div { flex-wrap: wrap; align-items: flex-start !important; gap: 8px !important; padding: 12px 0; border-bottom: 1px solid var(--ks-line); }
#kyra-superadmin .sa-company-fields [id^="sp-rows-"] :is(input,select,textarea) { flex-basis: 150px; }
#kyra-superadmin .sa-company-fields [id^="sp-rows-"] select { max-width: 180px; }
#kyra-superadmin .sa-company-fields [id^="sp-rows-"] .btn-save { flex: 0 0 auto; min-width: 36px; }
#kyra-superadmin .sa-company-fields [id$="-slug-prefixo"] { white-space: normal !important; overflow-wrap: anywhere; flex: 0 1 auto; }
#kyra-superadmin .sa-company-fields [id$="-slug"] { flex-basis: 130px !important; min-width: 80px; }

/* Operational views: company connections, activity and test bench. */
#kyra-superadmin .sa-connection-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: 18px; align-items: start; }
#kyra-superadmin .sa-connection-list { min-width: 0; }
#kyra-superadmin .sa-connection-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px 18px; border: 0; border-bottom: 1px solid var(--ks-line); background: transparent; color: var(--ks-ink); text-align: left; }
#kyra-superadmin .sa-connection-row:last-child { border-bottom: 0; }
#kyra-superadmin .sa-connection-row[aria-selected="true"],
#kyra-superadmin .sa-connection-row.selected { background: var(--ks-tint); box-shadow: inset 3px 0 var(--ks-accent); }
#kyra-superadmin .sa-connection-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
#kyra-superadmin .sa-state-box { background: var(--ks-soft); border-radius: 9px; padding: 18px; display: grid; gap: 10px; }
#kyra-superadmin .sa-state-box p { color: var(--ks-muted); font-size: 12px; line-height: 1.7; }
#kyra-superadmin .sa-diagnostics { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--ks-line); }
#kyra-superadmin .sa-diagnostics summary { cursor: pointer; color: var(--ks-muted); font-size: 12px; }
#kyra-superadmin .sa-diagnostics pre { padding: 12px; background: var(--ks-soft); border-radius: 7px; }
#kyra-superadmin .sa-lab-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 18px; }
#kyra-superadmin .sa-slots { display: grid; grid-template-columns: repeat(10,minmax(0,1fr)); gap: 8px; }
#kyra-superadmin .sa-slot { display: grid; gap: 7px; padding: 14px 6px; border: 1px solid var(--ks-line); border-radius: 8px; background: var(--ks-paper); color: var(--ks-ink); text-align: center; }
#kyra-superadmin .sa-slot[aria-pressed="true"] { background: var(--ks-tint); border-color: var(--ks-accent); color: var(--ks-accent); }
#kyra-superadmin .sa-slot small { color: var(--ks-muted); }
#kyra-superadmin .sa-activity-list { display: grid; }
#kyra-superadmin .sa-activity-row { display: flex; gap: 12px; padding: 17px 0; border-bottom: 1px solid var(--ks-line); }
#kyra-superadmin .sa-activity-row:last-child { border-bottom: 0; }
#kyra-superadmin .sa-activity-row small { display: block; color: var(--ks-muted); margin-top: 5px; }

/* Dialog surfaces remain opaque in either theme; QR content stays white. */
#kyra-superadmin #modal-qr { display: none; position: fixed; inset: 0; background: #07171dcc; align-items: center; justify-content: center; z-index: 1000; padding: 20px; overflow-y: auto; }
#kyra-superadmin .qr-card { width: min(100%,400px); max-height: calc(100dvh - 40px); overflow-y: auto; background: var(--ks-paper); color: var(--ks-ink); border: 1px solid var(--ks-line); border-radius: 14px; padding: 28px; text-align: center; box-shadow: var(--ks-shadow); }
#kyra-superadmin .qr-card h3 { font-size: 19px; margin: 0 0 10px; color: var(--ks-ink); }
#kyra-superadmin .qr-card p { font-size: 13px; color: var(--ks-muted); margin: 0 0 20px; line-height: 1.7; }
#kyra-superadmin #qr-box { display: flex; align-items: center; justify-content: center; min-height: 200px; overflow: hidden; }
#kyra-superadmin #qr-box img,
#kyra-superadmin #qr-box canvas { background: #fff; padding: 12px; border-radius: 8px; max-width: 100%; height: auto; box-sizing: content-box; }
#kyra-superadmin #qr-status { font-size: 13px; color: var(--ks-muted); margin-top: 16px; }
#kyra-superadmin #qr-status.ok { color: var(--ks-green); font-weight: 600; }
#kyra-superadmin .qr-card .btn-save { background: var(--ks-soft) !important; color: var(--ks-ink); border-color: var(--ks-line); }
#kyra-superadmin .fin-dialog { --bg: var(--ks-bg); --card: var(--ks-paper); --ink: var(--ks-ink); --muted: var(--ks-muted); --line: var(--ks-line); --accent: var(--ks-accent); --neon: var(--ks-accent); background: var(--ks-bg); color: var(--ks-ink); border-color: var(--ks-line); box-shadow: var(--ks-shadow); }
#kyra-superadmin .fin-dialog :is(.fin-card,.panel,.metric,.sidebar,.help-card,.button.subtle) { background: var(--ks-paper); color: var(--ks-ink); border-color: var(--ks-line); }
#kyra-superadmin .fin-dialog :is(.fin-primary,.button) { background: var(--ks-accent); border-color: var(--ks-accent); color: var(--ks-on); }
#kyra-superadmin .fin-dialog .button.subtle { background: var(--ks-paper); border-color: var(--ks-line); color: var(--ks-ink); }
#kyra-superadmin .fin-dialog .button.danger { background: var(--ks-red-bg); border-color: var(--ks-red); color: var(--ks-red); }
#kyra-superadmin .fin-dialog .row { color: var(--ks-muted); }
#kyra-superadmin .fin-dialog .row strong { color: var(--ks-ink); }
#kyra-superadmin .fin-dialog .row.green,
#kyra-superadmin .fin-dialog .row.green strong { color: var(--ks-green); }
#kyra-superadmin .fin-dialog .fin-error { color: var(--ks-red) !important; }

@media (min-width: 1500px) {
  #kyra-superadmin .ks-content { padding: 38px 44px; }
}
@media (max-width: 1100px) {
  #kyra-superadmin .ks-shell { grid-template-columns: 204px minmax(0,1fr); }
  #kyra-superadmin .ks-sidebar { padding-right: 12px; padding-left: 12px; }
  #kyra-superadmin .ks-content { padding: 26px 24px; }
  #kyra-superadmin .sa-connection-grid { grid-template-columns: 1fr; }
  #kyra-superadmin .sa-slots { grid-template-columns: repeat(5,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  #kyra-superadmin .ks-shell { grid-template-columns: 1fr; }
  #kyra-superadmin .ks-sidebar { position: static; display: block; width: 100%; height: auto; padding: 17px 22px; border-right: 0; border-bottom: 1px solid var(--ks-sidebar-line); }
  #kyra-superadmin .ks-sidebar .ks-brand { padding: 0; display: inline-block; font-size: 31px; }
  #kyra-superadmin .ks-sidebar .ks-brand small { display: none; }
  #kyra-superadmin .ks-mobile-menu { display: flex; float: right; align-items: center; gap: 8px; padding: 7px 11px; border: 1px solid var(--ks-sidebar-line); border-radius: 7px; background: var(--ks-sidebar-selected); color: var(--ks-sidebar-ink); font-size: 12px; }
  #kyra-superadmin .ks-menu { display: none; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 17px; }
  #kyra-superadmin[data-menu="open"] .ks-menu { display: grid; }
  #kyra-superadmin .ks-menu-label { display: none; }
  #kyra-superadmin .ks-side-bottom { display: none; padding: 16px 10px 0; margin-top: 17px; }
  #kyra-superadmin[data-menu="open"] .ks-side-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
  #kyra-superadmin .ks-side-bottom .ks-logout { padding: 8px 0; }
  #kyra-superadmin .ks-topbar { padding: 15px 24px; }
  #kyra-superadmin .ks-footer { margin: 0 24px; }
  #kyra-superadmin .sa-lab-grid { grid-template-columns: 1fr; }
}
@media (max-width: 660px) {
  #kyra-superadmin .ks-content { padding: 23px 14px; }
  #kyra-superadmin .ks-sidebar { padding: 15px; }
  #kyra-superadmin .ks-topbar { min-height: 58px; padding: 12px 15px; }
  #kyra-superadmin .ks-topbar-right { gap: 7px; }
  #kyra-superadmin .ks-topbar-right > .ks-avatar { display: none; }
  #kyra-superadmin .ks-breadcrumb { gap: 5px; font-size: 11px; }
  #kyra-superadmin .ks-menu { grid-template-columns: 1fr 1fr; }
  #kyra-superadmin .ks-menu button { font-size: 12px; padding: 9px; }
  #kyra-superadmin .ks-footer { margin: 0 15px; }
  #kyra-superadmin .ks-heading { gap: 16px; }
  #kyra-superadmin .ks-heading-actions { width: 100%; }
  #kyra-superadmin .ks-heading-actions .ks-button { flex: 1 1 auto; white-space: normal; }
  #kyra-superadmin .ks-stat strong { font-size: 25px; }
  #kyra-superadmin .ks-panel-head { flex-wrap: wrap; }
  #kyra-superadmin .ks-tabs { gap: 18px; flex-wrap: nowrap; overflow-x: auto; padding: 3px 3px 0; }
  #kyra-superadmin .ks-tabs button { flex: 0 0 auto; }
  #kyra-superadmin .ks-discount-area .ks-form-grid { grid-template-columns: 1fr; }
  #kyra-superadmin .ks-company-hero .ks-hero-actions { flex-wrap: wrap; }
  #kyra-superadmin .ks-company-hero .ks-hero-actions .ks-button { flex: 1 1 auto; }
  #kyra-superadmin .ks-price-result { flex-wrap: wrap; }
  #kyra-superadmin .ks-price-result .ks-calculation { text-align: left; }
  #kyra-superadmin .form-grid { grid-template-columns: 1fr; }
  #kyra-superadmin .form-group label { min-height: 0; }
  #kyra-superadmin .sa-settings-panel { padding: 0; }
  #kyra-superadmin .sa-company-fields .form-row { flex-wrap: wrap; }
  #kyra-superadmin .sa-company-fields [id$="-regua-wrap"] > div { flex-wrap: wrap; }
  #kyra-superadmin .sa-company-fields [id^="sp-rows-"] :is(input,select,textarea) { flex-basis: 100%; max-width: 100%; }
  #kyra-superadmin .sa-company-fields [id^="sp-rows-"] .btn-save { margin-left: auto; }
  #kyra-superadmin .sa-connection-row { flex-wrap: wrap; padding: 15px; }
  #kyra-superadmin .sa-connection-actions { width: 100%; justify-content: flex-start; padding-left: 44px; }
  #kyra-superadmin .sa-slots { grid-template-columns: repeat(3,minmax(0,1fr)); }
  #kyra-superadmin .ks-login { grid-template-columns: 1fr; }
  #kyra-superadmin .ks-login-art { padding: 27px; gap: 28px; border-right: 0; border-bottom: 1px solid var(--ks-login-art-line); }
  #kyra-superadmin .ks-login-art .ks-brand { font-size: 35px; }
  #kyra-superadmin .ks-login-art h2 { font-size: 29px; max-width: none; }
  #kyra-superadmin .ks-login-art p,
  #kyra-superadmin .ks-login-art > .ks-small,
  #kyra-superadmin .ks-login-products { display: none; }
  #kyra-superadmin .ks-login-form { padding: 32px 27px; }
  #kyra-superadmin .qr-card { padding: 20px; }
  #kyra-superadmin #qr-box img,
  #kyra-superadmin #qr-box canvas { max-width: calc(100% - 24px); }
  #kyra-superadmin .ks-stat { min-width: 0; }
}
@media (pointer: coarse) {
  #kyra-superadmin :is(button,.ks-button,.btn-save) { min-height: 44px; }
  #kyra-superadmin :is(input,select,textarea),
  #kyra-superadmin .sa-company-fields :is(input,select,textarea) { font-size: 16px !important; }
  #kyra-superadmin .sa-company-fields .toggle input { min-height: 0; }
  #kyra-superadmin .toggle { margin: 10px 0; }
}
@media (prefers-reduced-motion: reduce) {
  #kyra-superadmin *,
  #kyra-superadmin *::before,
  #kyra-superadmin *::after { transition: none !important; scroll-behavior: auto !important; }
}

/* Production shell integration: the settings sections own their panel padding. */
#kyra-superadmin .ks-skip { position: fixed; top: 12px; left: 12px; z-index: 1100; padding: 12px 16px; background: var(--ks-paper); color: var(--ks-accent); border: 1px solid var(--ks-accent); border-radius: 7px; transform: translateY(-160%); text-decoration: none; }
#kyra-superadmin .ks-skip:focus { transform: translateY(0); }
#kyra-superadmin .ks-eyebrow { font-size: 11px; letter-spacing: 1.35px; color: var(--ks-muted); margin-bottom: 8px; text-transform: uppercase; }
#kyra-superadmin .ks-error { color: var(--ks-red); font-size: 13px; }
#kyra-superadmin .ks-error:empty { display: none; }
#kyra-superadmin #sa-new-error { padding: 0 20px 18px; }
#kyra-superadmin .ks-badge.warm { background: var(--ks-warm-bg); color: var(--ks-warm); }
#kyra-superadmin .ks-button.secondary { background: var(--ks-paper); border-color: var(--ks-line); color: var(--ks-ink); }
#kyra-superadmin .ks-button.small { padding: 7px 11px; font-size: 12px; }
#kyra-superadmin .ks-button[type="submit"],
#kyra-superadmin #sa-login-button,
#kyra-superadmin .ks-button[data-sa="new"]:not(.secondary) { background: var(--ks-accent); border-color: var(--ks-accent); color: var(--ks-on); }
#kyra-superadmin .ks-menu button > span[aria-hidden] { display: inline-flex; width: 18px; flex: 0 0 18px; justify-content: center; font-size: 18px; line-height: 1; }
#kyra-superadmin .ks-login-form > .ks-link { margin-top: 20px; align-self: flex-start; }
#kyra-superadmin .ks-login-art > small { color: var(--ks-login-art-muted); }
#kyra-superadmin .ks-empty h3 { margin-bottom: 7px; color: var(--ks-ink); }
#kyra-superadmin .ks-empty p { line-height: 1.7; }
#kyra-superadmin .ks-search:not(:has(svg,i)) input { padding-left: 12px; }
#kyra-superadmin .ks-onboard-products { margin-top: 23px; }
#kyra-superadmin .sa-settings-save { position: sticky; bottom: 14px; z-index: 4; margin-top: 18px; border: 1px solid var(--ks-line); border-radius: var(--ks-radius); background: var(--ks-paper); box-shadow: 0 4px 18px #10252d0d; }
#kyra-superadmin .sa-settings-save > span { font-size: 12px; color: var(--ks-muted); }
#kyra-superadmin .sa-settings-panel + .sa-settings-panel { margin-top: 0; }
#kyra-superadmin .sa-settings-panel .ks-pad > .form-group + .form-group { margin-top: 18px; }
#kyra-superadmin .sa-settings-panel .ks-pad > .form-group { max-width: 100%; }
#kyra-superadmin .sa-settings-panel .ks-pad > .ks-row:last-child { margin-top: 18px; }
#kyra-superadmin .sa-company-fields .form-group > .form-group { margin-top: 12px; }
#kyra-superadmin .sa-company-fields .sa-rule-editor { margin: 20px 0 6px; }
#kyra-superadmin .sa-rule-editor .ks-section-row { margin-top: 0; flex-wrap: wrap; }
#kyra-superadmin .sa-rule-editor p { margin: 10px 0 14px; }
#kyra-superadmin .sa-rule-editor .ks-table-wrap { border: 1px solid var(--ks-line); border-radius: 8px; }
#kyra-superadmin .sa-rule-editor table { table-layout: fixed; min-width: 710px; }
#kyra-superadmin .sa-rule-editor :is(th,td) { padding: 12px; vertical-align: top; }
#kyra-superadmin .sa-rule-editor :is(th,td):first-child { width: 132px; }
#kyra-superadmin .sa-rule-editor :is(th,td):nth-child(2) { width: 165px; }
#kyra-superadmin .sa-rule-editor :is(th,td):last-child { width: 100px; }
#kyra-superadmin .sa-rule-editor textarea { min-height: 80px; }
#kyra-superadmin #sa-settings-company { width: auto; max-width: min(500px,100%); flex: 1 1 250px; }
#kyra-superadmin .ks-content > .ks-toolbar { padding: 0 0 18px; margin-bottom: 20px; border-bottom: 0; }
#kyra-superadmin .ks-grid2 .ks-pad > .ks-row { margin-top: 16px; }
#kyra-superadmin .ks-grid2 .ks-pad > p + .ks-row { margin-top: 18px; }
@media (max-width: 660px) {
  #kyra-superadmin .ks-heading > .ks-row { width: 100%; }
  #kyra-superadmin .ks-heading > .ks-row .ks-button { flex: 1; }
  #kyra-superadmin .sa-settings-save { bottom: 8px; gap: 8px; }
  #kyra-superadmin .sa-settings-save > .ks-row { width: 100%; justify-content: space-between; }
  #kyra-superadmin .sa-settings-save > .ks-row button { margin-left: auto; }
  #kyra-superadmin .ks-login-art > small { display: none; }
}
