/* Dev Connect 0.5.2: linguagem visual do Smart Connecta 1.4.28.
   Tokens e componentes espelham platform.css, overview.css e login.css do Smart:
   menu lateral branco, roxo #794adb, cartões claros, degradê da marca e login com aurora.
   Todos os seletores usados pelo JavaScript foram mantidos. */
:root{
  --bg:#f8f7ff;--surface:#fff;--soft:#f7f5fc;--soft-2:#fcfbfe;
  --line:#ece9f2;--line-2:#f3eff7;--field-line:#e4dcef;
  --ink:#29213f;--ink-strong:#1d1238;--text:#4a3f66;--muted:#81788f;--muted-2:#9b8daa;--placeholder:#b4a7c4;
  --purple:#794adb;--purple-hover:#6c3cc8;--purple-soft:#eee8fb;--purple-text:#6537c7;--purple-bar:#8053e3;--focus:#beabed;
  --brand:linear-gradient(100deg,#ff7a1a 0%,#e5179b 34%,#6a3df0 68%,#2f8cff 100%);
  --good:#2f8a62;--good-bg:#eaf8f1;--warn:#9a6b12;--warn-bg:#fdf5e4;--warn-line:#f1dfb5;
  --bad:#b4405f;--bad-bg:#fff1f4;--bad-line:#f5d3dd;--info:#4f5fc4;--info-bg:#eef1ff;
  --green:var(--purple);--mint:var(--purple-soft);--amber:#c58a1e;--red:#c94a6a;
  --radius:14px;--radius-lg:20px;--shadow:0 6px 20px rgba(29,18,56,.04);--shadow-pop:0 20px 75px rgba(36,20,45,.16)
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0;background:none;color:inherit}
button:disabled{cursor:not-allowed;opacity:.58}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
h1{font-size:25px;letter-spacing:-.7px;font-weight:700;color:var(--ink-strong);line-height:1.2}
h2{font-size:20px;letter-spacing:-.5px;font-weight:650;color:var(--ink-strong)}
h3{font-size:15px;font-weight:650;color:var(--ink-strong);letter-spacing:-.2px}
small{font-size:12px}
a{color:var(--purple-text)}
.icon{width:19px;height:19px;display:block;flex:0 0 19px}

/* Campos */
input,select,textarea{border:1px solid var(--field-line);background:#fff;border-radius:9px;padding:11px 13px;min-height:42px;width:100%;color:var(--ink);font-size:13px;transition:border-color .15s,box-shadow .15s}
input:hover,select:hover,textarea:hover{border-color:#d3c6e8}
input:focus,select:focus,textarea:focus{border-color:#a98be8;box-shadow:0 0 0 3px rgba(121,74,219,.12);outline:none}
input::placeholder,textarea::placeholder{color:var(--placeholder)}
input:disabled,select:disabled{color:#b8a8c3;background:#faf8fc;cursor:not-allowed}
input[type=checkbox],input[type=radio]{accent-color:var(--purple);min-height:0}
input[type=file]{padding:9px;background:var(--soft-2)}
label{display:block;font-weight:600;font-size:12.5px;color:#5f5276;margin:18px 0 8px}

/* Botões */
.primary,.secondary{border-radius:10px;padding:10px 16px;font-weight:650;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;line-height:1.4;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s}
.primary{background:var(--purple);color:#fff;border:1px solid var(--purple);box-shadow:0 3px 8px rgba(117,64,202,.18)}
.primary:hover:not(:disabled){background:var(--purple-hover);border-color:var(--purple-hover)}
.secondary{background:#fff;border:1px solid #e9e3ef;color:#5f4b74;box-shadow:0 1px 1px rgba(50,25,86,.03)}
.secondary:hover:not(:disabled){background:#faf8ff;border-color:#d6c6ee;color:var(--purple-text)}
.text-button{color:var(--purple-text);font-size:12.5px;font-weight:700}
.text-button:hover{text-decoration:underline}
.icon-button{font-size:24px;line-height:1;color:var(--muted);width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}
.icon-button:hover{background:var(--soft);color:var(--purple-text)}
.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--muted-2);text-transform:uppercase}

/* Marca */
.brand{display:flex;align-items:center;gap:11px;color:var(--ink-strong);text-decoration:none;min-height:40px}
.brand-symbol{width:38px;height:38px;flex:0 0 38px;filter:drop-shadow(0 6px 14px rgba(229,23,155,.22))}
.brand-text{font-size:19px;font-weight:600;letter-spacing:-.6px;white-space:nowrap}
.brand-text b{font-weight:800;background:var(--brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand.has-logo{min-width:150px}
.brand.has-logo>*{visibility:hidden}

/* Login: aurora escura e cartão branco, como o Smart */
.login-shell{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(400px,.9fr);align-items:center;gap:clamp(24px,4vw,72px);padding:clamp(28px,5vw,72px) clamp(24px,6vw,96px);background:radial-gradient(120% 90% at 0% 0%,#24124f 0%,#130b2e 46%,#0c0720 100%);color:#fff}
.login-aurora{position:absolute;inset:-20%;z-index:-2;pointer-events:none;filter:blur(90px) saturate(125%)}
.login-aurora i{position:absolute;border-radius:50%;opacity:.5;mix-blend-mode:screen;animation:login-drift 26s ease-in-out infinite alternate}
.login-aurora i:nth-child(1){width:46vw;height:46vw;left:4%;top:8%;background:#e5179b}
.login-aurora i:nth-child(2){width:40vw;height:40vw;left:30%;top:46%;background:#2f6bff;animation-duration:30s;animation-delay:-6s}
.login-aurora i:nth-child(3){width:34vw;height:34vw;left:-6%;top:52%;background:#6a3df0;animation-duration:22s;animation-delay:-12s}
.login-aurora i:nth-child(4){width:26vw;height:26vw;left:42%;top:0;background:#ff7a1a;opacity:.36;animation-duration:28s;animation-delay:-3s}
@keyframes login-drift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(6vw,-4vh,0) scale(1.12)}100%{transform:translate3d(-4vw,5vh,0) scale(.94)}}
.login-grid{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:radial-gradient(85% 70% at 30% 45%,#000 0%,transparent 75%);mask-image:radial-gradient(85% 70% at 30% 45%,#000 0%,transparent 75%)}
.login-story{max-width:620px;justify-self:end;width:100%}
.login-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 14px 7px 10px;border-radius:999px;font-size:12px;font-weight:700;color:#efe9ff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px)}
.login-eyebrow i{width:8px;height:8px;border-radius:50%;background:#34e3a0;box-shadow:0 0 0 4px rgba(52,227,160,.18)}
.login-story h1{margin:22px 0 18px;font-size:clamp(38px,4.2vw,62px);line-height:1.04;letter-spacing:-1.8px;font-weight:800;color:#fff}
.login-story h1 em{font-style:normal;background:linear-gradient(95deg,#ffb36b 0%,#ff5fae 40%,#a58bff 72%,#5fd4ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.login-story p{max-width:500px;font-size:17px;line-height:1.65;color:rgba(239,233,255,.78)}
.login-story small{display:block;margin-top:34px;color:rgba(239,233,255,.55);font-size:12.5px}
.connection-diagram{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:38px;font-size:12.5px;font-weight:700}
.connection-diagram span{padding:11px 16px;border-radius:999px;color:#f6f2ff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px)}
.connection-diagram b{color:rgba(239,233,255,.6)}
.connection-diagram .highlight{background:linear-gradient(120deg,#7b4dff,#e5179b);border-color:transparent;color:#fff;box-shadow:0 10px 30px rgba(229,23,155,.3)}
.login-access{display:flex;flex-direction:column;align-items:center;justify-self:start;width:100%;max-width:460px}
.login-form{width:100%;padding:40px 40px 30px;border-radius:28px;background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(5,2,20,.5);border:1.5px solid rgba(255,255,255,.65)}
.login-form .brand{margin-bottom:26px}
.login-form h2{font-size:27px;font-weight:800;letter-spacing:-.8px;margin:10px 0 8px;color:var(--ink-strong)}
.login-form p{color:var(--muted);line-height:1.65;font-size:14px}
.login-form form{margin-top:22px}
.login-form input{background:#faf8fe;min-height:48px;border-radius:12px}
.login-form button.primary{width:100%;justify-content:center;margin:22px 0 6px;min-height:50px;border-radius:14px;font-size:15px;border:0;background:linear-gradient(100deg,#ff7a1a 0%,#e5179b 45%,#8a3df0 100%);box-shadow:0 14px 30px rgba(229,23,155,.28)}
.login-form button.primary:hover:not(:disabled){filter:brightness(1.06);background:linear-gradient(100deg,#ff7a1a 0%,#e5179b 45%,#8a3df0 100%)}
.login-form .error{font-size:13px;min-height:18px}
.login-note{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--soft-2);color:var(--muted);line-height:1.6;font-size:12px;margin:14px 0 14px}
.login-form small{display:block;color:var(--muted-2);line-height:1.6;font-size:11.5px}
.login-copy{margin-top:18px;font-size:12px;color:rgba(239,233,255,.5)}
.error{color:var(--bad)!important}

/* Menu lateral branco */
.sidebar{width:236px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);color:var(--ink);padding:28px 14px 18px;display:flex;flex-direction:column;z-index:30;overflow-y:auto}
.sidebar .brand{padding:0 6px;gap:10px}.sidebar .brand-text{font-size:17px}.sidebar .brand-symbol{width:34px;height:34px;flex-basis:34px}
.product-label{font-size:9.5px;letter-spacing:1.6px;font-weight:700;color:#a39bad;margin:10px 0 18px 10px}
.sidebar nav{display:flex;flex-direction:column;gap:4px}
.nav-item{width:100%;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:500;padding:11px 14px;border-radius:11px;text-align:left;color:#766e84;transition:background .15s,color .15s}
.nav-item>span{display:flex;width:19px;color:currentColor}
.nav-item:hover:not(.active){background:var(--soft);color:var(--purple)}
.nav-item.active{background:var(--purple-soft);color:var(--purple-text);font-weight:650;box-shadow:inset 3px 0 var(--purple-bar)}
.nav-item.active .icon{stroke-width:2}
.nav-item b{background:var(--purple);color:#fff;font-size:10px;font-weight:700;min-width:20px;padding:2px 6px;border-radius:999px;margin-left:auto;text-align:center}
.nav-caption{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#a39bad;margin:16px 14px 8px}
.nav-caption:first-child{margin-top:4px}
.sidebar-bottom{margin-top:auto;display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:18px 6px 0}
.sidebar-bottom strong{display:block;font-size:12.5px;font-weight:650;color:var(--ink);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-bottom small{display:block;font-size:11px;color:var(--muted-2);margin-top:2px}
.tenant-avatar,.user-avatar{display:flex;align-items:center;justify-content:center;border-radius:11px;width:34px;height:34px;flex:0 0 34px;background:var(--purple-soft);color:#7650ba;font-size:11px;font-weight:800}
.sidebar-bottom button{margin-left:auto;color:var(--muted);padding:7px;border-radius:9px}
.sidebar-bottom button:hover{background:var(--soft);color:var(--purple-text)}

/* Área de trabalho */
.workspace{margin-left:236px;min-height:100vh}
.topbar{height:76px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 36px;position:sticky;top:0;z-index:20}
.topbar>div:first-child{display:flex;align-items:center;min-width:0}
.breadcrumb{font-size:12.5px;color:#a096ae}
.breadcrumb span{margin:0 11px;color:#cfc6da}
.breadcrumb strong{color:#62576f;font-weight:650}
.topbar-right{display:flex;align-items:center;gap:16px}
.user-avatar{width:34px;height:34px}
.mode{font-size:10.5px;font-weight:750;letter-spacing:.4px;border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn);padding:7px 11px;border-radius:999px;white-space:nowrap}
.mode.live{color:var(--good);background:var(--good-bg);border-color:#c9ecd9}
main{padding:34px 36px 44px;max-width:1600px;margin:auto}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px}
.page-heading .eyebrow{margin-bottom:8px}
.page-heading p{color:var(--muted);margin-top:7px;font-size:13px;max-width:640px;line-height:1.6}
.heading-actions{display:flex;align-items:center;gap:14px}
.heading-actions button{font-size:12.5px}
.sync{font-size:11.5px;color:var(--muted-2)}
.demo-banner{display:flex;gap:10px;align-items:center;padding:13px 17px;background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:12px;margin-bottom:22px;color:#7d5a14;font-size:12.5px;line-height:1.5}
.demo-banner strong{font-weight:750}
.dot{width:8px;height:8px;display:inline-block;background:#22b07d;border-radius:50%;flex-shrink:0}
.dot.amber{background:#e0a020}
.dot.red{background:#e0476d}
#alert{padding:13px 17px;background:var(--bad-bg);border:1px solid var(--bad-line);border-radius:12px;margin-bottom:20px;color:#9f2f50;font-size:12.5px}

/* Indicadores */
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.metric{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 21px;box-shadow:var(--shadow)}
.metric::before{content:'';position:absolute;inset:0 0 auto 0;height:3px;background:var(--brand)}
.metric-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12.5px;font-weight:650}
.metric-symbol{background:var(--purple-soft);border-radius:10px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--purple-text)}
.metric-value{font-size:32px;font-weight:800;letter-spacing:-1px;margin:8px 0 6px;color:var(--ink-strong);line-height:1.1}
.metric-note{color:var(--muted-2);font-size:12px;display:flex;gap:6px;align-items:center}
.metric-note.warn{color:var(--warn)}

/* Painéis */
.columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:18px;margin-bottom:20px}
.panel{border:1px solid var(--line);background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);min-width:0}
.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px}
.panel-header h3{font-size:15px;font-weight:750}
.panel-header p{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.55}
.panel-header .pill{color:var(--purple-text)}
.pill{font-size:11px;font-weight:650;padding:5px 10px;border:1px solid #e6dcf7;border-radius:999px;background:#f6f2fd;color:var(--purple-text);white-space:nowrap}
.chart-wrap{padding:0 22px 14px;height:240px;position:relative}
.chart-wrap canvas{width:100%;height:100%}
.chart-empty{position:absolute;inset:55px 20px auto;text-align:center;font-size:13px;color:var(--muted)}
.chart-legend{display:flex;gap:16px;padding:0 22px 20px;font-size:11.5px;color:var(--muted)}
.chart-legend i{width:9px;height:9px;background:#8b5cf6;display:inline-block;border-radius:3px;margin-right:6px}
.chart-legend .failed{background:#f472b6}
.orbital-brand{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#efe8ff,#fde8f4);color:var(--purple-text);border-radius:12px;font-weight:800;font-size:18px;letter-spacing:-1px;flex:0 0 40px}
.connector-title{display:flex;gap:12px;align-items:center}
.connector-title strong{font-size:14px;color:var(--ink-strong)}
.connector-title small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.connector-body{padding:0 22px 20px}
.status-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line-2);font-size:12.5px}
.status-row>span:first-child{color:var(--muted)}
.status-row:last-child{border:0}
.status-label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text)}
.connector-bottom{background:var(--soft-2);border-top:1px solid var(--line);padding:14px 22px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}

/* Tabelas */
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12.5px;text-align:left}
th{font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;font-weight:650;color:#9b8daa;background:var(--soft-2);padding:12px 20px;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
td{padding:15px 20px;border-bottom:1px solid var(--line-2);color:#655876;vertical-align:middle}
tbody tr:hover td{background:#fdfcfe}
tr:last-child td{border-bottom:0}
.operation{font-weight:650;color:var(--ink)}
.operation-code{display:block;font-size:11px;font-weight:400;color:var(--muted-2);margin-top:3px}
.status{padding:4px 9px;border-radius:7px;font-size:11px;font-weight:650;display:inline-flex;align-items:center;gap:5px;background:#f2f1f5;color:#7f7290}
.status.good{background:var(--good-bg);color:var(--good)}
.status.bad{background:var(--bad-bg);color:var(--bad)}
.status.pending{background:var(--warn-bg);color:var(--warn)}
.status.running{background:var(--info-bg);color:var(--info)}
.empty{text-align:center;padding:46px 20px;color:var(--muted);white-space:normal;font-size:13px}
.empty strong{font-size:14px;display:block;color:var(--text);margin-bottom:6px}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;border-bottom:1px solid var(--line)}
.toolbar select{width:220px;font-size:12.5px;min-height:38px;padding:8px 11px}
.toolbar label{display:inline-flex;gap:9px;align-items:center;margin:0;font-size:12.5px;font-weight:500}
.toolbar input[type=checkbox]{width:auto}
.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.pagination button{font-size:12px;padding:7px 12px;margin-left:6px}

/* Formulários */
.form-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:18px}
.form-body{padding:2px 24px 26px}
.form-body>p{color:var(--muted);font-size:13px;line-height:1.7}
.form-body .primary{margin-top:22px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-note{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0}
.info-card{background:linear-gradient(160deg,#f6f2fd,#fbf3fa);border:1px solid #ebe2f7;border-radius:var(--radius-lg);padding:22px 24px;height:fit-content}
.info-card h3{margin-bottom:14px}
.info-card p{font-size:13px;line-height:1.75;color:var(--text);margin-bottom:12px}
.info-card .status-row{border-color:#e9def5}
.result{margin-top:20px;border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:12.5px;background:var(--soft-2);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}
.result h3{margin-bottom:10px}
.checks{list-style:none;padding:0;font-size:13px;color:var(--text);line-height:2.4}
.checks li:before{content:'✓';margin-right:10px;color:var(--purple);font-weight:800}
.spaced{margin-top:18px}
footer{margin:28px 0 0;color:var(--muted-2);font-size:11.5px;display:flex;gap:9px;align-items:center}
.footer-right{margin-left:auto}

/* Detalhe e avisos */
dialog{border:1px solid #f2ebf8;border-radius:20px;max-width:680px;width:calc(100% - 32px);padding:24px 26px;color:var(--ink);box-shadow:var(--shadow-pop)}
dialog::backdrop{background:rgba(48,32,61,.38);backdrop-filter:blur(4px)}
.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line-2)}
.dialog-heading h2{margin-top:6px}
pre{background:var(--soft-2);border-radius:12px;border:1px solid var(--line);padding:18px;font-size:12.5px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;max-height:55vh;overflow:auto;color:var(--text)}
#detail-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}
#toast{position:fixed;right:28px;bottom:26px;background:#fff;color:#5f3f8f;border:1px solid #e3d8ef;padding:14px 20px;border-radius:12px;box-shadow:0 10px 32px rgba(56,33,65,.16);z-index:50;max-width:380px;font-size:13px;font-weight:600}
#mobile-nav{display:none;color:var(--muted);padding:6px;border-radius:9px}

@media(min-width:1450px){main{padding-top:40px}.chart-wrap{height:270px}}
@media(max-width:1150px){
  .sidebar{width:212px;padding-left:11px;padding-right:11px}
  .workspace{margin-left:212px}
  main{padding:28px 24px}
  .topbar{padding:0 24px}
  .heading-actions .sync{display:none}
  .metric{padding:17px}
  .columns{grid-template-columns:1.4fr 1fr}
  .demo-banner{flex-wrap:wrap}
  .login-shell{grid-template-columns:1fr minmax(380px,1fr)}
}
@media(max-width:900px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .columns,.form-layout{grid-template-columns:1fr}
  .login-shell{grid-template-columns:1fr;padding:28px 20px;align-content:center}
  .login-story{justify-self:center;text-align:left}
  .login-story p,.login-story small,.connection-diagram{display:none}
  .login-story h1{font-size:34px;margin:16px 0 4px}
  .login-access{justify-self:center}
  .page-heading{align-items:flex-start}
  .page-heading h1{font-size:23px}
}
@media(max-width:650px){
  .sidebar{transform:translateX(-100%);width:248px;transition:transform .2s;box-shadow:none}
  .sidebar.open{transform:translateX(0);box-shadow:10px 0 40px rgba(51,32,70,.18)}
  .workspace{margin-left:0}
  .topbar{height:64px;padding:0 14px}
  #mobile-nav{display:inline-flex;margin-right:8px}
  .breadcrumb{font-size:12px}
  .breadcrumb>span{margin:0 5px}
  .topbar-right{gap:8px}
  .topbar-right .user-avatar{display:none}
  .mode{font-size:9.5px;padding:6px 8px}
  main{padding:22px 16px 32px}
  .page-heading{gap:10px;flex-direction:column}
  .page-heading p{line-height:1.6}
  .heading-actions .secondary{padding:8px 12px}
  .demo-banner{font-size:12px}
  .cards{gap:10px}
  .metric{padding:15px}
  .metric-value{font-size:26px}
  .metric-symbol{display:none}
  .panel-header{padding:17px}
  .form-body{padding:2px 17px 22px}
  .form-row{grid-template-columns:1fr;gap:0}
  .footer-right{display:none}
  .toolbar{padding:13px;gap:10px;flex-wrap:wrap}
  .toolbar select{width:100%}
  .toolbar .text-button{font-size:12px}
  dialog{padding:18px}
  .login-form{padding:30px 22px 24px;border-radius:22px}
  .login-story{display:none}
}

/* Google Sheets */
.google-query-check{display:flex;align-items:center;gap:8px;margin:0;font-size:12px;white-space:nowrap}
.google-query-check input{width:auto}
.google-guided{max-width:1080px}
.google-guided .panel-header{padding-bottom:20px}
.google-guided .form-body{padding-top:0}
.google-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:16px 24px;background:var(--soft-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.google-steps button{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:650;color:var(--muted);padding:8px 10px;border-radius:10px;width:100%}
.google-steps button span{width:26px;height:26px;display:grid;place-items:center;border:1px solid #ddd2ec;border-radius:50%;font-size:11.5px;flex-shrink:0;background:#fff}
.google-steps button.active{background:var(--purple-soft);color:var(--purple-text)}
.google-steps button.active span{background:var(--purple);border-color:var(--purple);color:#fff}
.google-steps button:disabled{cursor:default;opacity:.55}
.google-account-card{max-width:500px;margin:15px auto 30px;text-align:center;padding:30px 20px}
.google-account-icon{display:grid;place-items:center;margin:0 auto 20px;width:58px;height:58px;background:#f4f7ff;border:1px solid #e1e7f6;border-radius:18px;color:#4285f4;font-size:29px;font-weight:800}
.google-account-card h3{font-size:19px;line-height:1.45}
.google-account-card p{font-size:13.5px;line-height:1.75;color:var(--muted);margin-top:10px}
.google-account-card .google-actions{justify-content:center;margin-top:17px}
.google-account-card #google-login{padding:12px 22px}
.google-stage-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin:24px 0 14px}
.google-stage-heading h3{font-size:17px}
.google-stage-heading p{color:var(--muted);font-size:13px;line-height:1.65;margin-top:6px;overflow-wrap:anywhere}
.google-source-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:18px;max-height:440px;overflow-y:auto}
.google-file-row,.google-tab-row{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;text-align:left;background:#fff;border-bottom:1px solid var(--line-2)}
.google-file-row:last-child,.google-tab-row:last-child{border-bottom:0}
.google-file-row:hover,.google-tab-row:hover{background:var(--soft)}
.google-file-row.selected,.google-tab-row.selected{background:var(--purple-soft);box-shadow:inset 3px 0 var(--purple-bar)}
.google-source-icon{display:grid;place-items:center;flex-shrink:0;width:38px;height:40px;border-radius:10px;background:#e8f6ee;color:#1f8a52;font-size:22px}
.google-source-name{min-width:0;flex:1}
.google-source-name strong{display:block;font-weight:650;font-size:13.5px;overflow-wrap:anywhere;color:var(--ink)}
.google-source-name small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.google-source-arrow{color:var(--purple);font-size:18px}
.google-source-empty{padding:28px 18px;color:var(--muted);font-size:13px;text-align:center}
.google-advanced{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}
.google-advanced summary{cursor:pointer;color:var(--purple-text);font-size:12.5px;font-weight:650;line-height:1.7}
.google-fields-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:20px;border-top:1px solid var(--line)}
#google-columns td{min-width:0}
#google-open-settings{display:block;margin-top:7px;font-size:12.5px}
@media(max-width:650px){
  .google-steps{gap:2px;padding:12px 9px}
  .google-steps button{padding:6px 3px;font-size:10.5px;gap:5px;justify-content:center}
  .google-steps button span{width:20px;height:20px;font-size:10px}
  .google-account-card{margin:5px 0 15px;padding:23px 0}
  .google-account-card h3{font-size:17px}
  .google-stage-heading{flex-direction:column;gap:10px}
  .google-file-row,.google-tab-row{padding:14px 12px;gap:10px}
  .google-fields-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .google-guided .form-row>div{min-width:0}
  .google-guided #save-google-sheet{width:100%;font-size:13px;padding:12px}
  .panel-header:has(#smart-settings){align-items:flex-start;flex-direction:column}
  .topbar .breadcrumb{white-space:nowrap}
  .topbar{gap:5px}
  .google-guided .form-body{min-width:0}
}

/* Integração Smart */
#smart-generated-token{width:100%;font:13px ui-monospace,SFMono-Regular,Menlo,monospace;padding:14px;border:1px solid var(--field-line);border-radius:12px;resize:vertical;overflow-wrap:anywhere;color:var(--ink);background:var(--soft-2);margin-bottom:12px}
#smart-settings-panel code{overflow-wrap:anywhere;background:var(--soft);padding:1px 5px;border-radius:5px;color:var(--purple-text)}
#smart-settings-panel .form-note{overflow-wrap:anywhere}

.google-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.google-actions .primary{margin-top:0}
.google-wizard .panel-header h3{font-size:17px;margin-top:6px}
.google-wizard .panel-header p{font-size:13px;line-height:1.65;max-width:700px}
.google-wizard .form-body{padding-top:14px}
.google-warning{padding:14px 17px;border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:12px;color:#7d5a14;line-height:1.7;font-size:12.5px;margin:15px 0}
.google-warning a{margin-top:10px;text-decoration:none}
.google-divider{height:1px;background:var(--line);margin:22px 0}
.google-search{display:flex;align-items:end;gap:12px}
.google-search>div{flex:1}
.google-search button{height:42px}
.google-check{display:flex;gap:9px;align-items:center;line-height:1.7}
.google-check input{width:auto}
.google-help ol{padding-left:19px;font-size:13px;line-height:1.85;color:var(--text)}
.google-help li{padding-bottom:6px}
.google-help code{overflow-wrap:anywhere;background:#fff;padding:1px 5px;border-radius:5px}
.google-help a{color:var(--purple-text)}
#google-preview .table-wrap{max-height:360px;border:1px solid var(--line);border-radius:12px}
#google-preview th{position:sticky;top:0}
#google-preview td{white-space:normal;min-width:120px;max-width:360px;overflow-wrap:anywhere}
#google-preview summary{cursor:pointer;font-weight:650;padding:12px 0;color:var(--purple-text)}
.google-wizard input[type=number]{max-width:180px}
#connection-smart,#detail-smart{width:auto;margin-right:7px}
@media(max-width:650px){
  .google-wizard .panel-header,.panel-header:has(#google-settings){align-items:flex-start;flex-direction:column}
  .google-search{align-items:stretch;flex-direction:column}
  .google-search button{align-self:flex-start}
  .google-actions{gap:8px}
  .google-actions button{font-size:12.5px}
  .google-wizard .form-body{padding:10px 17px 22px}
}

/* Tipos de conexão */
.connection-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 22px 22px;margin:0}
.connection-type{border:1px solid var(--line);border-radius:16px;background:#fff;padding:20px;text-align:left;min-height:142px;display:flex;flex-direction:column;gap:8px;color:var(--ink);transition:border-color .15s,box-shadow .15s,transform .15s}
.connection-type:hover{border-color:#cdb9f0;box-shadow:0 10px 26px rgba(91,52,190,.09);transform:translateY(-1px)}
.connection-type strong{font-size:14.5px;color:var(--ink-strong)}
.connection-type span{font-size:12.5px;color:var(--muted);line-height:1.55}
.connection-type b{margin-top:auto;color:var(--purple-text);font-size:12.5px}
.connection-detail-fields{padding:0;margin-top:18px}
.connection-detail-fields h3{margin:20px 0 10px}
.connection-detail-fields .table-wrap{border:1px solid var(--line);border-radius:12px}
.connection-detail-fields table{white-space:normal}
.connection-detail-fields td,.connection-detail-fields th{padding:11px 12px}
@media(max-width:650px){.connection-type-grid{grid-template-columns:1fr;padding:0 16px 16px}.connection-type{min-height:112px}}

/* Atualizações */
.update-progress{margin-top:20px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--soft-2)}
.update-progress div{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.update-progress strong{color:var(--purple-text)}
.update-progress i{display:block;height:8px;background:#ede6f8;border-radius:8px;margin-top:10px;overflow:hidden}
.update-progress b{display:block;height:100%;width:0;background:var(--brand);transition:width .2s ease}

/* BigQuery */
#bigquery-wizard .bq-step{margin:26px 0;padding-top:22px;border-top:1px solid var(--line)}
#bigquery-wizard .bq-step h3{margin:0 0 14px}
#bigquery-wizard .bq-environment{min-height:44px;display:flex;align-items:center;gap:14px}
#bigquery-wizard .google-actions{margin:12px 0;flex-wrap:wrap}
#bigquery-wizard .bq-field-table{max-height:430px;overflow:auto;margin:16px 0;border:1px solid var(--line);border-radius:12px}
#bigquery-wizard .bq-field-table th{position:sticky;top:0;background:var(--soft-2);z-index:1}
#bigquery-wizard input[type=checkbox]{width:17px;height:17px;vertical-align:middle}
#bigquery-wizard .bq-publish{display:flex;align-items:center;gap:9px;margin:22px 0}
#bigquery-wizard #bq-status{min-height:24px;white-space:normal;overflow-wrap:anywhere}
#bigquery-wizard #bq-preview td{max-width:340px;overflow-wrap:anywhere;white-space:normal}
#bigquery-wizard [hidden]{display:none!important}
@media(max-width:760px){
  #bigquery-wizard .form-row{grid-template-columns:1fr}
  #bigquery-wizard .panel-header{align-items:flex-start;gap:12px}
  #bigquery-wizard .bq-environment{flex-wrap:wrap}
}

/* Orbital: ambiente */
.mode-choice{border:0;padding:0;margin:14px 0 0;display:grid;gap:10px}
.mode-choice legend{font-weight:600;font-size:12.5px;color:#5f5276;margin-bottom:8px;padding:0}
.choice{display:flex!important;align-items:flex-start;gap:12px;margin:0!important;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;font-weight:400!important;transition:border-color .15s,background .15s}
.choice:hover{border-color:#d6c6ee}
.choice input{width:auto;margin:3px 0 0}
.choice span{display:grid;gap:3px}
.choice strong{font-size:14px;color:var(--ink-strong)}
.choice small{color:var(--muted)}
.choice:has(input:checked){border-color:var(--purple-bar);background:#f6f2fd;box-shadow:inset 3px 0 var(--purple-bar)}
.choice:has(input:disabled){opacity:.55;cursor:not-allowed}
#base-url-form h3{margin-top:6px}

@media(prefers-reduced-motion:reduce){.login-aurora i{animation:none}*{transition:none!important}}

/* Auditoria: origem e IP; IPs permitidos por token */
.audit-origin{min-width:190px;max-width:280px;white-space:normal;overflow-wrap:anywhere;color:var(--text)}
.audit-ip{font-size:11.5px;background:var(--soft);padding:2px 6px;border-radius:6px;color:var(--purple-text)}
.smart-ips-cell{white-space:normal;max-width:280px}
.smart-ips-cell code{display:inline-block;margin:2px 2px 2px 0;font-size:11.5px;background:var(--soft);padding:2px 6px;border-radius:6px;color:var(--purple-text)}
.smart-ips-input{width:100%;min-height:64px;font:12.5px ui-monospace,SFMono-Regular,Menlo,monospace}
#smart-token-ips{font:12.5px ui-monospace,SFMono-Regular,Menlo,monospace}

/* 0.6.0 · Ações Orbital */
#orbital-actions-panel code{white-space:normal;word-break:break-all;font-size:12px}
#orbital-actions-panel td .operation-code{display:block;white-space:normal}
#orbital-actions-panel table th:nth-child(3),#orbital-actions-panel table td:nth-child(3){max-width:280px}
.action-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin:4px 0 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}
.action-toggle span{display:flex;flex-direction:column;gap:2px}
.action-toggle small{color:var(--muted);font-weight:400}
.action-toggle input{width:20px;height:20px;flex:none;accent-color:var(--purple)}
#orbital-actions-panel fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin:12px 0}
#orbital-actions-panel legend{font-weight:600;padding:0 6px}
#orbital-actions-panel textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}
#action-test-result{overflow-x:auto}
.action-diag{margin-top:12px;font-size:13px;color:var(--muted)}
.action-diag summary{cursor:pointer;font-weight:600;color:var(--ink)}
.action-diag ul{margin:8px 0 0 18px;padding:0}
