:root{--bg:#080e1b;--surface:#101a2c;--surface2:#152137;--border:#253349;--muted:#8fa0bb;--text:#f0f5ff;--accent:#2784ff;--green:#38dca7;--danger:#fb617a;--radius:16px;--shadow:0 14px 32px rgba(0,0,0,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.panel-shell{display:flex;min-height:100vh}.app-sidebar{width:258px;min-width:258px;background:#0d1728;border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:20}.brand{height:94px;display:flex;align-items:center;gap:12px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.055)}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--accent);color:#fff;font-size:20px;box-shadow:0 8px 22px rgba(38,119,255,.25)}.brand-copy strong{display:block;line-height:1.15;letter-spacing:.05em;font-size:20px}.brand-copy strong em{color:#56acff;font-style:normal}.brand-copy small{display:block;letter-spacing:.12em;color:var(--muted);font-size:9px;margin-top:4px}.sidebar-label{font-size:10px;letter-spacing:.17em;font-weight:750;color:#617492;margin:29px 24px 12px}.sidebar-nav{display:grid;gap:5px;padding:0 12px}.menu-link{padding:12px 14px;min-height:44px;display:flex;align-items:center;gap:14px;color:#9eafc9;border-radius:11px;font-weight:600;transition:background .14s,color .14s}.menu-link:hover,.menu-link.is-active{background:#192b45;color:#fff}.menu-link.is-active{background:color-mix(in srgb,var(--accent) 18%,#111e30);border:1px solid color-mix(in srgb,var(--accent) 29%,transparent);padding:11px 13px}.menu-link>i:first-child{width:20px;text-align:center;font-size:15px}.nav-arrow{margin-left:auto;font-size:12px;color:var(--accent)}.sidebar-bottom{margin-top:auto;padding:20px 13px}.mode-indicator{display:flex;align-items:flex-start;gap:10px;margin:0 1px 16px;padding:13px;border:1px solid #214443;border-radius:13px;background:#102928}.mode-indicator strong{display:block;font-size:12px;color:#bdfff0}.mode-indicator small{display:block;margin-top:4px;color:#77bbaa;font-size:11px}.indicator-dot{display:inline-block;flex:none;width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(56,220,167,.12)}.logout-link{color:#d39daf}.logout-link:hover{color:#ffe0e6;background:#3d1d30}.app-content{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:94px;flex:none;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:18px;padding:0 34px;background:rgba(15,24,42,.8)}.topbar-left,.topbar-right{display:flex;align-items:center;gap:20px;min-width:0}.eyebrow{font-size:10px;font-weight:750;color:var(--accent);letter-spacing:.17em}.heading-group h1{font-size:24px;font-weight:750;letter-spacing:-.04em;margin:3px 0 0}.status-chip{display:flex;align-items:center;gap:8px;border:1px solid #244343;border-radius:999px;padding:8px 12px;color:#a4e8d6;font-weight:700;letter-spacing:.09em;font-size:10px;white-space:nowrap}.status-chip .indicator-dot{margin:0;width:7px;height:7px}.account-chip{display:flex;align-items:center;gap:11px;color:#dde7f7;white-space:nowrap;font-size:12px;font-weight:650}.avatar{background:#253853;border:1px solid #395376;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#d1deef}.mobile-toggle{display:none;background:#16253a;color:white;border:1px solid var(--border);border-radius:9px;padding:10px}.main-area{width:100%;max-width:1600px;margin:0 auto;padding:30px 34px 50px;flex:1}.page-footer{padding:16px 34px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#637795}.page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:26px}.page-intro h2{margin:0 0 5px;font-size:20px;letter-spacing:-.03em}.page-intro p{margin:0;color:var(--muted);line-height:1.65}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:11px 15px;border-radius:10px;border:1px solid #39516f;background:#1a2c43;color:#e7f0fd;font-weight:650;font-size:12px;min-height:42px;white-space:nowrap;transition:filter .12s,background .12s}.btn:hover{filter:brightness(1.13)}.btn-primary{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 7px 19px rgba(22,109,246,.16)}.btn-danger{background:#462438;border-color:#74354b;color:#ffd8e0}.btn-light{background:#17263b}.btn-sm{padding:7px 10px;min-height:35px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}.stat{background:linear-gradient(144deg,#18283f,#101a2b 72%);border:1px solid var(--border);border-radius:15px;padding:19px;min-width:0;box-shadow:var(--shadow)}.stat-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#9db0cd;font-size:12px;font-weight:650}.stat-head i{color:#6199ff;border-radius:9px;background:#1b3653;padding:10px}.stat-value{font-size:29px;letter-spacing:-.05em;font-weight:800;margin-top:8px}.stat-foot{font-size:11px;color:#657f9f;margin-top:4px}.stat.green .stat-head i{background:#173b35;color:var(--green)}.stat.red .stat-head i{background:#3a2538;color:#ff8fa0}.stat.yellow .stat-head i{background:#413322;color:#facb67}.panel-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}.panel-card-header{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border);flex-wrap:wrap}.panel-card-header h2{font-size:15px;margin:0;letter-spacing:-.015em}.panel-card-header small{font-size:12px;color:var(--muted)}.panel-card-body{padding:24px}.search-input{background:#0d1929;color:var(--text);border:1px solid var(--border);border-radius:9px;width:min(280px,100%);padding:11px 13px;font-size:12px}.table-scroll{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;text-align:left;width:100%;white-space:nowrap}th{color:#8499b9;font-size:10px;text-transform:uppercase;letter-spacing:.075em;font-weight:800;background:#142138;border-bottom:1px solid var(--border);padding:14px 17px}td{font-size:12px;border-bottom:1px solid #1e2d42;padding:16px 17px;color:#cfdbed}tr:last-child td{border-bottom:0}tr:hover td{background:rgba(255,255,255,.02)}tr[hidden]{display:none}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.02em}.td-title{font-weight:700;color:#f3f7ff}.subcell{display:block;color:#7d91b0;font-size:10px;margin-top:3px}.badge-status{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:750;border-radius:999px;padding:6px 9px;background:#153b35;color:#66edc6}.badge-status:before{content:"";width:6px;height:6px;background:currentColor;border-radius:50%}.badge-status.expired{background:#3c2534;color:#ff94a9}.badge-status.pending{background:#3b3425;color:#f3cf80}.cell-actions{display:flex;gap:7px}.empty-state{padding:48px 16px;text-align:center;color:var(--muted)}.empty-state>i{font-size:32px;color:#516c95;display:block;margin-bottom:15px}.empty-state strong{color:#ecf4fe;display:block;font-size:15px}.empty-state p{margin:6px auto 0;max-width:420px}.form-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}.field label{font-weight:700;color:#cbdaf0;font-size:12px}.field .hint{color:#7590ad;font-size:11px}.form-control{min-height:44px;background:#0a1423;border:1px solid #2e4160;border-radius:10px;color:#f1f7ff;padding:11px 13px;width:100%;outline:0;transition:border-color .12s}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(55,125,255,.11)}.form-control::placeholder{color:#617590}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:24px;margin-top:24px;border-top:1px solid var(--border)}.info-banner{display:flex;align-items:flex-start;gap:13px;padding:15px 16px;margin-bottom:22px;background:#142e47;border:1px solid #235477;border-radius:12px;color:#c7e5fa;font-size:12px}.info-banner i{font-size:16px;color:#69b4ff;margin-top:2px}.text-muted{color:var(--muted)}.notice{padding:13px 16px;margin:0 0 18px;border:1px solid #77424b;background:#381e30;color:#ffd1d8;border-radius:10px}.toast-msg{position:fixed;top:22px;right:22px;z-index:100;max-width:min(410px,calc(100vw - 36px));display:flex;align-items:center;gap:12px;background:#163a38;border:1px solid #2c8c76;border-left:4px solid var(--green);box-shadow:0 16px 46px rgba(0,0,0,.4);color:#d5ffec;padding:14px;border-radius:12px;transition:opacity .16s,transform .16s}.toast-error{background:#412332;border-color:#a44863;color:#ffe4e8}.toast-close{background:none;border:0;color:inherit;font-size:22px;margin-left:auto}.toast-msg.is-gone{opacity:0;transform:translateY(-8px)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.mini-note{background:#111f32;border:1px solid #283a55;padding:17px;border-radius:12px}.mini-note strong{display:block;margin-bottom:4px}.mini-note p{margin:0;color:var(--muted);font-size:12px}.color-swatches{display:flex;gap:12px;flex-wrap:wrap}.swatch-option{display:flex;align-items:center;gap:10px;border:1px solid #344863;background:#102033;padding:11px 14px;border-radius:10px;cursor:pointer}.swatch-option input{accent-color:var(--accent)}.color-dot{width:17px;height:17px;border-radius:50%;display:inline-block;background:var(--dot)}.sidebar-mask{display:none}.top-form{max-width:890px}@media(max-width:1200px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-name{display:none}}@media(max-width:840px){.app-sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-102%);transition:transform .2s ease;box-shadow:20px 0 55px rgba(0,0,0,.4)}.menu-open .app-sidebar{transform:translateX(0)}.menu-open .sidebar-mask{display:block;position:fixed;inset:0;background:rgba(1,5,15,.68);z-index:19}.mobile-toggle{display:grid;place-items:center}.topbar{height:80px;padding:0 20px}.main-area{padding:24px 20px 40px}.page-footer{padding:16px 20px}}@media(max-width:560px){.heading-group h1{font-size:20px}.topbar-left{gap:12px}.status-chip{font-size:0;padding:9px}.status-chip .indicator-dot{width:8px;height:8px}.account-chip{display:none}.main-area{padding:20px 14px 30px}.page-intro{display:block}.page-intro .actions{margin-top:16px}.stat-grid{gap:10px}.stat{padding:14px}.stat-head{font-size:10px}.stat-value{font-size:24px}.panel-card-body{padding:16px}.panel-card-header{padding:16px}.form-layout,.info-grid{grid-template-columns:1fr}.form-layout>.field.wide{grid-column:auto}.page-footer{display:block;text-align:center}.page-footer span{display:block}.page-footer span+span{margin-top:4px}.search-input{width:100%}.topbar{padding:0 14px}.topbar .eyebrow{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* v4 · Scrollbar preto/azul, sem interferência nos endpoints ou nas ações do painel. */
:root { color-scheme: dark; }
html, body, .app-sidebar, .table-scroll, .main-area, textarea, select {
  scrollbar-color: #237cff #080f1d;
  scrollbar-width: thin;
}
::-webkit-scrollbar { width: 11px; height: 11px; background: #080f1d; }
::-webkit-scrollbar-track { background: #080f1d; border-radius: 12px; }
::-webkit-scrollbar-thumb {
  background: #246ff2;
  border: 2px solid #080f1d;
  border-radius: 12px;
}
::-webkit-scrollbar-thumb:hover { background: #459aff; }
::-webkit-scrollbar-corner { background: #080f1d; }

/* Conteúdo dimensionado para telas pequenas, sem recortes em formulários e cartões. */
.panel-shell, .app-content, .main-area, .panel-card, .panel-card-header,
.panel-card-body, .page-intro, .form-layout, .field, .info-grid { min-width: 0; }
.app-sidebar { overflow-y: auto; overscroll-behavior-y: contain; }
.sidebar-nav { min-width: 0; }
.panel-card-header > *, .page-intro > * { min-width: 0; max-width: 100%; }
.form-control, .search-input { max-width: 100%; }
.page-intro, .panel-card-header, .actions { overflow-wrap: anywhere; }
.table-scroll { overscroll-behavior-x: contain; }
.top-form { max-width: min(890px, 100%); }
@media (max-width: 840px) {
  .app-sidebar { height: 100dvh; max-height: 100vh; }
  .app-content { width: 100%; }
}
@media (max-width: 560px) {
  .form-actions > .btn { width: 100%; }
  .page-intro { text-align: left; }
  .topbar-left { flex: 1; min-width: 0; }
  .heading-group { min-width: 0; }
  .heading-group h1 { overflow-wrap: anywhere; line-height: 1.2; }
  .topbar { min-height: 80px; height: auto; padding-top: 12px; padding-bottom: 12px; }
  .panel-card-header .actions, .panel-card-header .actions > form,
  .panel-card-header .search-input { width: 100%; }
}
@media (max-width: 360px) {
  .topbar-left { gap: 9px; }
  .topbar-right { gap: 7px; }
  .stat-grid { grid-template-columns: 1fr; }
  .page-intro h2 { font-size: 18px; }
}
