:root{
    --app-bg:#f4f6fb;
    --app-surface:#fff;
    --app-surface-soft:#f8f9fc;
    --app-text:#151b2b;
    --app-muted:#697386;
    --app-line:#e4e8f0;
    --app-line-strong:#d5dae5;
    --app-primary:#5b5ce2;
    --app-primary-dark:#4849c7;
    --app-primary-soft:#eeeeff;
    --app-success:#11845b;
    --app-success-soft:#e9f8f1;
    --app-danger:#d14343;
    --app-danger-soft:#fff0f0;
    --app-warning:#b66a12;
    --app-warning-soft:#fff6e9;
    --app-info:#2467d6;
    --app-sidebar:#111827;
    --app-sidebar-soft:#1b2436;
    --app-shadow:0 18px 50px rgba(24,31,50,.07);
    --app-shadow-soft:0 8px 24px rgba(24,31,50,.055);
    --sidebar-width:276px;
}
*{box-sizing:border-box}
html{background:var(--app-bg);scroll-behavior:smooth}
body.app-v2{margin:0;min-width:320px;min-height:100vh;background:var(--app-bg);color:var(--app-text);font-family:"Segoe UI Variable Text","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}
.app-v2 a,.app-v2 button,.app-v2 input,.app-v2 select,.app-v2 textarea{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.app-v2 a{text-underline-offset:3px}
.app-v2 h1,.app-v2 h2,.app-v2 h3,.app-v2 h4,.app-v2 h5,.app-v2 h6{color:var(--app-text);font-family:"Segoe UI Variable Display","Segoe UI",Inter,ui-sans-serif,system-ui,sans-serif;font-weight:720}
.muted{color:var(--app-muted)!important}.min-w-0{min-width:0}.stack{display:grid;gap:1.15rem}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-grid{gap:.8rem}

/* Estrutura autenticada */
.app-shell{display:flex;min-height:100vh}
.app-sidebar{position:sticky;top:0;flex:0 0 var(--sidebar-width);width:var(--sidebar-width);height:100vh;overflow-y:auto;flex-direction:column;padding:24px 18px 18px;background:linear-gradient(180deg,#101728 0%,#111827 58%,#0d1423 100%);color:#fff;border-right:1px solid rgba(255,255,255,.04);z-index:1040}
.sidebar-brand{display:flex;align-items:center;gap:12px;min-width:0;padding:0 8px 24px;color:#fff!important;text-decoration:none}
.brand-mark{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#7475f5,#5152d7);color:#fff;font-size:15px;font-weight:800;letter-spacing:-.03em;box-shadow:0 12px 25px rgba(70,71,199,.3)}
.brand-copy{display:grid;min-width:0;line-height:1.12}.brand-copy strong{overflow:hidden;color:inherit;font-size:15px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.brand-copy small{margin-top:4px;color:#8f9bb3;font-size:11px;font-weight:550;letter-spacing:.01em}
.sidebar-nav{display:flex;flex-direction:column;gap:5px;min-width:0}
.nav-section-label{display:block;padding:0 12px 8px;color:#6f7c96;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.nav-section-spaced{margin-top:20px}
.sidebar-link{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:12px;color:#aeb8cb;text-decoration:none;font-size:14px;font-weight:620}
.sidebar-link i{display:grid;place-items:center;width:20px;color:#8491aa;font-size:17px}.sidebar-link:hover{background:rgba(255,255,255,.055);color:#fff}.sidebar-link:hover i{color:#c6c7ff}
.sidebar-link.active{border-color:rgba(137,139,255,.17);background:linear-gradient(90deg,rgba(91,92,226,.24),rgba(91,92,226,.08));color:#fff;box-shadow:inset 3px 0 #8586ff}.sidebar-link.active i{color:#aeb0ff}
.sidebar-account{display:flex;align-items:center;gap:8px;margin-top:auto;padding:16px 6px 0;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-user{display:flex;align-items:center;gap:10px;min-width:0;flex:1;color:#fff!important;text-decoration:none}.sidebar-user-copy{display:grid;min-width:0;line-height:1.15}.sidebar-user-copy strong{overflow:hidden;color:#eef1f7;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-copy small{overflow:hidden;margin-top:4px;color:#7f8ba2;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.user-avatar{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:var(--app-primary-soft);color:var(--app-primary);font-size:11px;font-weight:850;letter-spacing:.02em}
.sidebar-account .user-avatar{background:rgba(110,112,241,.17);color:#c8c9ff}.sidebar-account form{flex:0 0 auto;margin:0}.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:7px;min-width:68px;height:36px;padding:0 9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:transparent;color:var(--app-sidebar-text);font-size:15px;font-weight:700;opacity:.68}.sidebar-logout span{font-size:12px}.sidebar-logout:hover,.sidebar-logout:focus-visible{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:var(--app-sidebar-text);opacity:1}.sidebar-logout:focus-visible{outline:2px solid var(--app-secondary);outline-offset:2px}
.app-workspace{min-width:0;flex:1}
.workspace-topbar{position:sticky;top:0;z-index:1020;display:flex;align-items:center;gap:14px;height:74px;padding:0 clamp(20px,3vw,42px);border-bottom:1px solid rgba(228,232,240,.9);background:rgba(255,255,255,.9);backdrop-filter:blur(18px)}
.topbar-title{display:grid;line-height:1.15}.topbar-title>span{color:var(--app-muted);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.topbar-title>strong{margin-top:5px;font-size:14px;font-weight:720}.topbar-account{display:flex;align-items:center;gap:10px;margin-left:auto;color:var(--app-text)!important;text-decoration:none}.topbar-account>span:last-child{line-height:1.12}.topbar-account strong{font-size:12px}.topbar-account small{margin-top:3px;color:var(--app-muted);font-size:10px}
.mobile-menu-button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--app-line);border-radius:12px;background:#fff;color:var(--app-text);font-size:23px}.mobile-brand{display:flex;align-items:center;gap:9px;min-width:0;color:var(--app-text)!important;text-decoration:none}.mobile-brand .brand-mark{width:36px;height:36px;flex-basis:36px;border-radius:11px;font-size:12px}.mobile-brand strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.workspace-main{min-height:calc(100vh - 74px);padding:clamp(24px,3.4vw,48px)}
.content-frame{width:min(100%,1480px);margin:0 auto}
.app-offcanvas{width:min(88vw,326px)!important;padding:8px;background:var(--app-sidebar);color:#fff}.app-offcanvas .offcanvas-header{border:0;padding:18px 14px 12px}.app-offcanvas .offcanvas-body{padding:10px}.app-offcanvas .sidebar-brand{padding:0}.app-offcanvas .sidebar-account{margin-top:auto}

/* Cabeçalhos e blocos */
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px}.page-heading>div{min-width:0}.page-heading h1{margin:7px 0 7px;font-size:clamp(32px,3.8vw,48px);font-weight:760;letter-spacing:-.045em;line-height:1.02}.page-heading p{max-width:740px;margin:0;color:var(--app-muted);font-size:15px;line-height:1.6}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--app-primary);font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.card{border:1px solid var(--app-line);border-radius:18px;background:var(--app-surface);box-shadow:var(--app-shadow-soft)}
.form-card{padding:clamp(20px,2.3vw,30px);background:#fff}.form-card>div:first-child h2{font-size:20px;letter-spacing:-.02em}.form-card hr{margin:4px 0;border-color:var(--app-line);opacity:1}.form-narrow{max-width:940px;margin-inline:auto}
.content-section{display:grid;gap:14px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.section-heading h2{font-size:20px;letter-spacing:-.02em}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:29px;padding:0 10px;border:1px solid #dedfff;border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:11px;font-weight:800;white-space:nowrap}
.empty{padding:44px 24px;text-align:center;color:var(--app-muted)}.compact-empty{padding:30px}.error-card{max-width:680px;margin:auto}.error-card h1{letter-spacing:-.03em}

/* Formulários */
.form-label,label{color:#323a4c;font-size:12px;font-weight:700}label{display:grid;gap:7px;align-content:start}.field-help,label small{color:#7a8496;font-size:10px;font-weight:500;line-height:1.45}.field-help{display:block;min-height:15px}.field-help-placeholder{visibility:hidden}
.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea{min-height:45px;border-color:var(--app-line-strong)!important;border-radius:11px!important;background:#fff!important;color:var(--app-text)!important;font-size:13px!important;padding:10px 13px!important}.form-control::placeholder,textarea::placeholder{color:#a1a9b7}.form-control:hover,.form-select:hover,input:not([type="checkbox"]):not([type="radio"]):hover,select:hover,textarea:hover{border-color:#bec5d2!important}.form-control:focus,.form-select:focus,input:not([type="checkbox"]):not([type="radio"]):focus,select:focus,textarea:focus{border-color:#8b8cf0!important;box-shadow:0 0 0 4px rgba(91,92,226,.1)!important}textarea.form-control{min-height:104px;resize:vertical}
.btn{min-height:40px;border-radius:10px;font-size:12px;font-weight:720;padding:9px 15px}.btn-primary{border-color:var(--app-primary);background:var(--app-primary);box-shadow:0 8px 18px rgba(91,92,226,.18)}.btn-primary:hover,.btn-primary:focus{border-color:var(--app-primary-dark);background:var(--app-primary-dark);transform:translateY(-1px)}.btn-outline-primary{border-color:#cfd0ff;color:var(--app-primary)}.btn-outline-primary:hover{border-color:var(--app-primary);background:var(--app-primary-soft);color:var(--app-primary)}.btn-outline-danger{border-color:#f1c4c4;color:var(--app-danger)}.btn-outline-danger:hover{border-color:var(--app-danger);background:var(--app-danger-soft);color:var(--app-danger)}.btn-light{border-color:var(--app-line);background:#fff;color:var(--app-text)}.form-submit{min-height:44px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border:1px solid var(--app-line);border-radius:10px;background:#fff;color:var(--app-text);font-size:12px;font-weight:750;text-decoration:none}.button.primary{border-color:var(--app-primary);background:var(--app-primary);color:#fff}.button.danger{border-color:#f2c7c7;background:var(--app-danger-soft);color:var(--app-danger)}
.check-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-group .check,.check{display:flex;grid-template-columns:none;align-items:center;gap:10px}.check-group .check{min-height:54px;padding:12px 14px;border:1px solid var(--app-line);border-radius:12px;background:var(--app-surface-soft)}.form-check-input{flex:0 0 18px;width:18px!important;height:18px!important;min-height:0!important;margin:0;padding:0!important;border:1.5px solid #aeb7c7!important;background-color:#fff!important;box-shadow:none!important;cursor:pointer}.form-check-input[type="checkbox"]{border-radius:5px!important}.form-check-input[type="radio"]{border-radius:50%!important}.form-check-input[type="checkbox"]:checked{border-color:var(--app-primary)!important;background-color:var(--app-primary)!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.3' d='m3.5 8 2.8 2.8 6.2-6.2'/%3e%3c/svg%3e")!important}.form-check-input[type="radio"]:checked{border-color:var(--app-primary)!important;background-color:#fff!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3ccircle cx='8' cy='8' r='4' fill='%235b5ce2'/%3e%3c/svg%3e")!important}.form-check-input:focus-visible{border-color:var(--app-primary)!important;box-shadow:0 0 0 4px rgba(91,92,226,.14)!important}.form-check-input:disabled{cursor:not-allowed;opacity:.55}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.admin-split-grid{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.55fr);gap:20px;align-items:start}.search-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:14px}.search-bar .form-control{min-height:44px}

/* Indicadores e status */
.dashboard-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:26px;min-height:230px;margin-bottom:16px;padding:clamp(28px,4vw,48px);overflow:hidden;border-radius:22px;background:radial-gradient(circle at 87% 8%,rgba(143,145,255,.48),transparent 27%),radial-gradient(circle at 5% 120%,rgba(35,188,168,.2),transparent 35%),linear-gradient(135deg,#111827,#1c2343 72%,#282956);box-shadow:0 24px 55px rgba(25,30,61,.16)}.dashboard-hero::after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.08);border-radius:16px;pointer-events:none}.dashboard-hero-copy,.dashboard-hero-action{position:relative;z-index:1}.dashboard-hero .eyebrow{color:#bfc2ff}.dashboard-hero h1{margin:10px 0 10px;color:#fff;font-size:clamp(38px,5vw,60px);letter-spacing:-.055em;line-height:1}.dashboard-hero p{max-width:620px;margin:0;color:#b9c2d4;font-size:15px}.dashboard-hero-action{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;border:1px solid rgba(255,255,255,.2);background:#fff;color:#262751;box-shadow:0 12px 30px rgba(0,0,0,.12)}.dashboard-hero-action:hover{border-color:#fff;background:#f3f3ff;color:var(--app-primary);transform:translateY(-2px)}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:14px}.stat{position:relative;min-height:136px;overflow:hidden;padding:22px}.stat::after{content:"";position:absolute;right:-24px;bottom:-38px;width:104px;height:104px;border-radius:50%;background:var(--app-primary-soft)}.stat:nth-child(2n)::after{background:#e9f8f1}.stat:nth-child(3n)::after{background:#edf4ff}.stat span{position:relative;z-index:1;display:block;color:var(--app-muted);font-size:11px;font-weight:700}.stat strong{position:relative;z-index:1;display:block;margin-top:17px;font-size:clamp(25px,3vw,34px);font-weight:780;letter-spacing:-.045em;line-height:1;overflow-wrap:anywhere}
.status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0 0 28px;border:0;background:transparent;overflow:visible}.status-strip>div{min-height:100px;padding:19px 20px;border:1px solid var(--app-line);border-radius:16px;background:#fff;box-shadow:var(--app-shadow-soft)}.status-strip .label{display:block;margin:0 0 10px;color:var(--app-muted);font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.status-strip strong{font-size:15px;font-weight:740}
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.015em}.badge.success{background:var(--app-success-soft);color:var(--app-success)}.badge.danger{background:var(--app-danger-soft);color:var(--app-danger)}.badge.warning{background:var(--app-warning-soft);color:var(--app-warning)}

/* Cards de produto */
.module-grid,.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.module-card{display:flex;align-items:center;gap:14px;min-height:94px;padding:17px;border:1px solid var(--app-line);border-radius:16px;background:#fff;color:var(--app-text);text-decoration:none;box-shadow:var(--app-shadow-soft)}.module-card:hover{border-color:#c9caff;color:var(--app-text);box-shadow:0 16px 36px rgba(24,31,50,.09);transform:translateY(-2px)}.module-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:13px;background:var(--app-primary-soft);color:var(--app-primary);font-size:12px;font-weight:850}.module-card strong{font-size:14px}.module-card small,.list-card small,td small{display:block;margin-top:4px;color:var(--app-muted);font-size:10px}.arrow{margin-left:auto;color:#9aa3b4;font-size:18px}
.plan-card{position:relative;display:flex;min-height:275px;flex-direction:column;padding:24px;overflow:hidden}.plan-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--app-primary),#898af4)}.plan-card h2{font-size:20px}.plan-card form{margin-top:auto}.price{margin:14px 0 12px;font-size:31px;font-weight:800;letter-spacing:-.045em}.sync-form{margin-top:20px}
.catalog-list-grid,.systems-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.list-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px}.list-card-content{min-width:0}.list-card-actions,.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.small-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border:1px solid var(--app-line-strong);border-radius:9px;background:#fff;color:#3d4658;font-size:10px;font-weight:750;text-decoration:none;white-space:nowrap}.small-button:hover{border-color:#c6c7ff;background:var(--app-primary-soft);color:var(--app-primary)}.action-delete{border-color:#f1cece!important;color:var(--app-danger)!important}.action-delete:hover{background:var(--app-danger-soft)!important}

/* Tabelas */
.table-card{overflow:hidden;border-radius:17px}.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.table{min-width:760px;margin:0}.table>:not(caption)>*>*{padding:15px 16px;border-color:#edf0f5;vertical-align:middle}.table thead th{border-bottom:1px solid var(--app-line);background:#fafbfc;color:#7a8496;font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.table tbody tr:last-child td{border-bottom:0}.table-hover>tbody>tr:hover>*{background:#fafaff}.empty-table-row td{height:120px;color:var(--app-muted);font-size:13px;text-align:center!important}code{padding:2px 5px;border-radius:5px;background:#f2f4f8;color:#4b5568;font-size:.78em;overflow-wrap:anywhere;word-break:break-word}pre{padding:16px;border-radius:12px;background:#111827;color:#eef1f7;white-space:pre-wrap}
.pagination{display:flex;gap:7px;margin-top:18px;flex-wrap:wrap}.pagination a{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--app-line);border-radius:9px;background:#fff;color:var(--app-text);font-size:11px;text-decoration:none}.pagination a.active{border-color:var(--app-primary);background:var(--app-primary);color:#fff}

/* Registros e formulários administrativos */
.registry-card,.system-registry-card{display:flex;min-width:0;flex-direction:column;gap:15px;padding:19px;box-shadow:var(--app-shadow-soft)}.registry-header,.system-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.registry-title,.system-card-title{display:block;font-size:14px;font-weight:760}.registry-subtitle,.system-card-code{display:block;margin-top:4px;color:var(--app-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.registry-meta-grid,.system-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.registry-meta-grid.three-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.registry-meta-item,.system-meta-item{display:grid;gap:5px;min-width:0;padding:11px 12px;border:1px solid var(--app-line);border-radius:11px;background:var(--app-surface-soft)}.registry-meta-wide,.system-meta-wide{grid-column:1/-1}.registry-meta-label,.system-meta-label{color:var(--app-muted);font-size:8px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.registry-meta-value,.system-meta-value{font-size:11px;font-weight:680;overflow-wrap:anywhere}.registry-actions,.system-card-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:14px;border-top:1px solid var(--app-line)}.registry-actions form,.system-card-actions form{margin:0}.selected-plan-card,.editing-card,.system-registry-card.is-editing{border-color:#a8a9f3;box-shadow:0 0 0 3px rgba(91,92,226,.08),var(--app-shadow-soft)}
.systems-admin-grid{display:grid;grid-template-columns:minmax(440px,.95fr) minmax(0,1.25fr);gap:24px;align-items:start}.system-form-card{position:sticky;top:96px}.system-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.system-form-grid{display:grid;gap:10px}.system-form-grid-code{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.system-form-grid-path{grid-template-columns:minmax(0,1.4fr) minmax(110px,.6fr)}.system-path-info{font-size:11px;line-height:1.55}
.settings-form,.configuracoes-form{width:min(100%,1060px);margin-inline:auto}.settings-save-bar,.configuracoes-save-bar{display:flex;justify-content:flex-end;margin-top:4px;padding:13px;border:1px solid var(--app-line);border-radius:14px;background:#fff;box-shadow:var(--app-shadow-soft)}.settings-conditional[hidden],.configuracoes-conditional[hidden]{display:none!important}.settings-info,.configuracoes-info{line-height:1.65}
.environment-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.environment-option{display:flex;grid-template-columns:none;align-items:center;gap:11px;min-height:70px;padding:13px 15px;border:1px solid var(--app-line);border-radius:13px;background:var(--app-surface-soft);cursor:pointer}.environment-option span{display:grid}.environment-option small{margin-top:3px}.environment-option.is-selected{border-color:#a8a9f3;background:var(--app-primary-soft);box-shadow:0 0 0 3px rgba(91,92,226,.07)}.payment-credentials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.payment-environment-card{height:100%}.payment-environment-card.active-environment{border-color:#a8a9f3}.credential-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.payment-signature-check{padding:14px;border:1px solid var(--app-line);border-radius:12px;background:var(--app-surface-soft)}

/* Alertas */
.app-alert{display:flex;align-items:flex-start;gap:11px;margin:0 0 22px;padding:13px 44px 13px 15px;border-width:1px;border-radius:13px;box-shadow:none;font-size:12px;line-height:1.5}.app-alert>i{margin-top:1px}.alert-info{border-color:#cedeff;background:#f0f5ff;color:#28569f}.alert-success{border-color:#bee8d6;background:#edf9f4;color:#126b4b}.alert-warning{border-color:#f2d6ac;background:#fff8ec;color:#8c5517}.alert-danger{border-color:#f0c4c4;background:#fff2f2;color:#9f3535}

/* Páginas públicas e autenticação */
.public-layout{min-height:100vh;background:#f5f6fa}.public-header{position:relative;z-index:10;height:76px;border-bottom:1px solid rgba(228,232,240,.9);background:rgba(255,255,255,.9);backdrop-filter:blur(18px)}.public-header-inner{display:flex;align-items:center;justify-content:space-between;width:min(100% - 36px,1240px);height:100%;margin:auto}.public-brand{display:flex;align-items:center;gap:11px;color:var(--app-text)!important;text-decoration:none}.public-brand strong{font-size:14px}.public-actions{display:flex;gap:8px}.public-main{min-height:calc(100vh - 76px)}.public-flash{position:relative;z-index:5;width:min(100% - 36px,760px);margin:18px auto -8px}
.auth-stage{display:grid;grid-template-columns:minmax(380px,.95fr) minmax(460px,1.05fr);width:min(100% - 40px,1180px);min-height:calc(100vh - 116px);margin:20px auto;overflow:hidden;border:1px solid var(--app-line);border-radius:26px;background:#fff;box-shadow:0 28px 80px rgba(22,29,48,.1)}
.auth-showcase{position:relative;display:flex;min-height:620px;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(36px,5vw,66px);background:radial-gradient(circle at 85% 12%,rgba(126,128,255,.32),transparent 28%),radial-gradient(circle at 5% 95%,rgba(30,184,165,.17),transparent 34%),linear-gradient(145deg,#111827,#1b2340 72%,#242552);color:#fff}.auth-showcase::after{content:"";position:absolute;inset:24px;border:1px solid rgba(255,255,255,.08);border-radius:20px;pointer-events:none}.auth-showcase-copy,.showcase-points{position:relative;z-index:1}.showcase-kicker{display:inline-flex;align-items:center;gap:8px;color:#bfc2ff;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.auth-showcase h1{max-width:520px;margin:22px 0 18px;color:#fff;font-size:clamp(37px,4.4vw,61px);font-weight:760;letter-spacing:-.055em;line-height:1.02}.auth-showcase p{max-width:510px;margin:0;color:#b7c0d2;font-size:16px;line-height:1.7}.showcase-points{display:grid;gap:12px}.showcase-points span{display:flex;align-items:center;gap:10px;color:#d7dcea;font-size:12px}.showcase-points i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.08);color:#aeb0ff}
.auth-view{display:grid;place-items:center;padding:clamp(26px,5vw,64px)}.auth-shell{display:grid;width:100%;min-height:0;place-items:center}.auth-card{width:min(100%,480px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.auth-shell.wide .auth-card{width:min(100%,680px)}.auth-card h1{margin:8px 0 9px;font-size:clamp(34px,4vw,45px);font-weight:760;letter-spacing:-.045em}.auth-card>p{font-size:13px;line-height:1.55}.auth-links{display:flex;justify-content:space-between;gap:14px;margin-top:17px;font-size:12px}.auth-links a{color:var(--app-primary);font-weight:700;text-decoration:none}

/* Landing */
.public-landing{display:grid;min-height:calc(100vh - 76px);place-items:center;padding:40px 20px}.landing-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(30px,6vw,80px);width:min(100%,1180px);padding:clamp(34px,6vw,72px);overflow:hidden;border:1px solid var(--app-line);border-radius:28px;background:#fff;box-shadow:var(--app-shadow)}.landing-copy h1{margin:11px 0 18px;font-size:clamp(43px,6vw,72px);font-weight:770;letter-spacing:-.06em;line-height:.98}.landing-subtitle{max-width:650px;margin-bottom:25px;color:var(--app-muted);font-size:17px;line-height:1.65}.landing-actions{display:flex;gap:10px;flex-wrap:wrap}.landing-visual{position:relative;min-height:360px;overflow:hidden;border-radius:24px;background:radial-gradient(circle at 80% 15%,#9293ff,transparent 28%),linear-gradient(145deg,#4e4fd1,#171b37);box-shadow:0 28px 60px rgba(64,65,184,.24)}.landing-orb{position:absolute;border-radius:50%;background:rgba(255,255,255,.12)}.landing-orb-one{width:220px;height:220px;right:-45px;top:-55px}.landing-orb-two{width:170px;height:170px;left:-40px;bottom:-45px}.landing-badge{position:absolute;inset:50% auto auto 50%;display:grid;width:150px;height:150px;place-items:center;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.5);border-radius:36px;background:rgba(255,255,255,.94);color:var(--app-primary);font-size:19px;font-weight:850;box-shadow:0 24px 55px rgba(9,13,31,.25)}

@media(max-width:1199.98px){
    :root{--sidebar-width:248px}.module-grid,.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.systems-admin-grid{grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr)}.systems-list-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:991.98px){
    .workspace-topbar{height:66px;padding:0 18px}.workspace-main{min-height:calc(100vh - 66px);padding:25px 20px 40px}.page-heading{align-items:flex-start}.admin-split-grid,.systems-admin-grid{grid-template-columns:1fr}.system-form-card{position:static}.systems-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-stage{grid-template-columns:minmax(300px,.8fr) minmax(430px,1.2fr);width:min(100% - 28px,980px)}.auth-showcase{min-height:570px;padding:42px 34px}.auth-showcase h1{font-size:42px}.landing-hero{grid-template-columns:1fr}.landing-visual{min-height:260px}.payment-credentials-grid{grid-template-columns:1fr}
}
@media(max-width:767.98px){
    .workspace-main{padding:22px 15px 36px}.topbar-account .user-avatar{width:34px;height:34px;flex-basis:34px}.page-heading{flex-direction:column;gap:15px;margin-bottom:22px}.page-heading h1{font-size:34px}.page-heading>div+*{width:100%}.page-heading>.admin-links{display:grid}.page-heading>.btn,.page-heading>.button{width:100%}.dashboard-hero{align-items:flex-start;flex-direction:column;min-height:250px;padding:28px 24px}.dashboard-hero-action{width:100%}.status-strip{grid-template-columns:1fr;gap:9px}.status-strip>div{min-height:82px;padding:16px}.stat-grid,.module-grid,.plan-grid,.catalog-list-grid,.systems-list-grid,.admin-form-grid{grid-template-columns:1fr}.stat{min-height:112px}.grid.two,.system-form-grid-code,.system-form-grid-path,.registry-meta-grid.three-cols{grid-template-columns:1fr}.section-heading{align-items:flex-start}.list-card{align-items:stretch;flex-direction:column}.list-card-actions{justify-content:flex-start;padding-top:12px;border-top:1px solid var(--app-line)}.search-bar{grid-template-columns:1fr}.search-bar .btn{width:100%}.check-group,.environment-selector{grid-template-columns:1fr}.settings-save-bar,.configuracoes-save-bar{bottom:8px}.settings-save-bar .btn,.configuracoes-save-bar .btn{width:100%}.auth-stage{display:block;width:100%;min-height:calc(100vh - 76px);margin:0;border:0;border-radius:0;box-shadow:none}.auth-showcase{display:none}.auth-view{min-height:calc(100vh - 76px);padding:34px 20px}.auth-card{max-width:500px}.auth-links{flex-direction:column;text-align:center}.public-header-inner{width:calc(100% - 28px)}.public-brand strong{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-actions .btn:first-child{display:none}.landing-hero{padding:30px 22px}.landing-copy h1{font-size:42px}.landing-visual{min-height:210px}
    .table-card{overflow:visible;border:0;background:transparent;box-shadow:none}.table-wrap{overflow:visible}.responsive-table{min-width:0!important;background:transparent}.responsive-table thead{display:none}.responsive-table tbody{display:grid;gap:11px}.responsive-table tr{display:block;overflow:hidden;border:1px solid var(--app-line);border-radius:14px;background:#fff;box-shadow:var(--app-shadow-soft)}.responsive-table td{display:grid;grid-template-columns:minmax(105px,36%) minmax(0,1fr);align-items:start;gap:12px;width:100%;padding:12px 14px!important;border-bottom:1px solid var(--app-line)!important;text-align:right;overflow-wrap:anywhere}.responsive-table td:last-child{border-bottom:0!important}.responsive-table td::before{content:attr(data-label);color:var(--app-muted);font-size:8px;font-weight:850;letter-spacing:.09em;text-align:left;text-transform:uppercase}.responsive-table td>*{justify-self:end}.responsive-table td strong,.responsive-table td small,.responsive-table td code{justify-self:end;text-align:right}.responsive-table .row-actions{justify-content:flex-end}.responsive-table .empty-table-row{box-shadow:none}.responsive-table .empty-table-row td{display:block;text-align:center!important}.responsive-table .empty-table-row td::before{display:none}
}
@media(max-width:480px){
    .workspace-topbar{padding:0 12px}.mobile-brand strong{max-width:132px}.page-heading h1{font-size:31px}.form-card,.plan-card{padding:19px}.registry-meta-grid,.system-meta-grid{grid-template-columns:1fr}.responsive-table td{grid-template-columns:1fr;text-align:left}.responsive-table td::before{margin-bottom:2px}.responsive-table td>*,.responsive-table td strong,.responsive-table td small,.responsive-table td code{justify-self:start;text-align:left}.responsive-table .row-actions{justify-content:flex-start}.registry-actions,.system-card-actions,.row-actions{display:grid;grid-template-columns:1fr}.registry-actions a,.registry-actions form,.registry-actions button,.system-card-actions a,.system-card-actions form,.system-card-actions button,.row-actions form,.row-actions button{width:100%}.copy-field{grid-template-columns:1fr}.public-actions .btn{padding-inline:11px}.landing-copy h1{font-size:36px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.landing-badge{place-content:center;gap:9px;text-align:center}.landing-badge i{font-size:31px}.landing-badge span{font-size:11px;letter-spacing:.05em;text-transform:uppercase}.public-main>.auth-shell{min-height:calc(100vh - 76px);padding:28px 18px}
.systems-list-grid{grid-template-columns:1fr}.stat::after{display:none}

/* Escala de leitura e largura interna dos cards */
body.app-v2{font-size:16px}.eyebrow{font-size:11px}.form-label,label{font-size:13px}.field-help,label small{font-size:11px;line-height:1.5}.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:14px!important}.btn{font-size:13px}.count-badge{font-size:12px}.stat span{font-size:13px}.status-strip .label{font-size:11px}.badge{font-size:11px}.list-card,.registry-card,.system-registry-card{align-items:stretch}.registry-card,.system-registry-card{justify-content:flex-start;padding:22px}.registry-main{width:100%}.registry-title,.system-card-title{font-size:16px;line-height:1.35}.registry-subtitle,.system-card-code{font-size:12px;line-height:1.5}.registry-meta-label,.system-meta-label{font-size:10px}.registry-meta-value,.system-meta-value{font-size:13px;line-height:1.45}.small-button{min-height:38px;padding:8px 13px;font-size:12px}.table{font-size:14px}.table thead th{font-size:11px}.app-alert{font-size:13px}.responsive-table td::before{font-size:10px}

/* Marca configurável */
.brand-logo-shell{display:grid;place-items:center;flex:0 0 72px;width:72px;height:44px;overflow:hidden;border-radius:10px;background:#fff}.brand-logo-shell img{display:block;width:100%;height:100%;object-fit:contain}.sidebar-brand .brand-logo-shell{flex-basis:44px;width:44px;height:44px;padding:0;border:0;border-radius:5px;background:transparent;box-shadow:none}.sidebar-brand .brand-logo-shell img{border-radius:5px;object-fit:cover;object-position:center}.mobile-brand .brand-logo-shell{flex-basis:36px;width:36px;height:36px;padding:0;border:0;border-radius:5px;background:transparent}.mobile-brand .brand-logo-shell img{border-radius:5px;object-fit:cover;object-position:center}.public-brand .brand-logo-shell{width:68px;height:42px;padding:2px;border:1px solid var(--app-line)}

/* Login, cadastro e recuperação */
.auth-public-layout{min-height:100vh}.auth-public-main{display:grid;min-height:100vh;padding:30px 18px;place-items:center}.auth-page-shell{display:grid;width:min(100%,540px);gap:18px}.auth-stage{display:block;width:100%;min-height:0;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.35);border-radius:26px;background:rgba(255,255,255,.985);box-shadow:0 30px 80px rgba(17,24,39,.24)}.auth-view{display:block;min-height:0;padding:clamp(30px,5vw,48px)}.auth-brand-lockup{display:grid;justify-items:center;gap:10px;margin-bottom:18px;text-align:center}.auth-brand-lockup>strong{max-width:100%;color:var(--app-muted);font-size:13px;font-weight:700;overflow-wrap:anywhere}.auth-brand-symbol.brand-logo-shell{width:78px;height:78px;flex-basis:78px;padding:0;border-radius:12px;background:transparent}.auth-brand-symbol.brand-logo-shell img{object-fit:cover;object-position:center}.brand-mark.auth-brand-symbol{width:64px;height:64px;flex-basis:64px;border-radius:18px;font-size:20px}.auth-shell,.auth-shell.wide{display:block;width:100%;min-height:0}.auth-card{width:100%;max-width:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.auth-heading{text-align:center}.auth-heading .eyebrow{justify-content:center}.auth-card h1{margin:8px 0 8px;font-size:clamp(32px,6vw,42px);letter-spacing:-.045em}.auth-heading>p{margin:0 0 25px;font-size:14px;line-height:1.55}.auth-form{gap:16px}.auth-input-control{position:relative;display:block}.auth-input-control>i{position:absolute;top:50%;left:15px;z-index:2;color:var(--app-primary);font-size:17px;line-height:1;transform:translateY(-50%);pointer-events:none}.auth-input-control .form-control{min-height:50px;padding-left:46px!important;background:#f8f9fc!important}.auth-input-control .form-control:focus{background:#fff!important}.auth-forgot-link{margin-top:-5px;text-align:right}.auth-forgot-link a,.auth-links a{color:var(--app-primary);font-size:12px;font-weight:750;text-decoration:none}.auth-submit{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;margin-top:1px}.auth-submit i{font-size:17px}.auth-links{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:22px;padding-top:20px;border-top:1px solid var(--app-line);color:var(--app-muted);font-size:12px}.auth-alert{margin-bottom:22px}.auth-footer{color:rgba(255,255,255,.76);font-size:12px;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.12)}.auth-trial-badge{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:14px auto 24px;padding:8px 13px;border:1px solid rgba(var(--app-primary-rgb),.18);border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.password-strength{display:block;height:5px;overflow:hidden;border-radius:999px;background:#e8ebf1}.password-strength-bar{display:block;width:0;height:100%;border-radius:inherit;background:#d14343;transition:width .2s ease,background-color .2s ease}.password-strength-bar.strength-1{width:25%;background:#d14343}.password-strength-bar.strength-2{width:50%;background:#d98222}.password-strength-bar.strength-3{width:75%;background:#2b8bbd}.password-strength-bar.strength-4{width:100%;background:#11845b}.password-match-message.is-error{color:var(--app-danger)}.password-match-message.is-valid{color:var(--app-success)}

/* Configuração da identidade */
.branding-settings-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:22px;align-items:start}.branding-identity-panel,.branding-colors-panel{min-width:0;padding:20px;border:1px solid var(--app-line);border-radius:15px;background:var(--app-surface-soft)}.branding-identity-panel{align-content:start;gap:18px}.branding-logo-field{display:grid;gap:12px}.branding-logo-preview{display:flex;align-items:center;gap:13px;min-height:78px;padding:12px;border:1px dashed var(--app-line-strong);border-radius:13px;background:#fff}.branding-logo-preview>img,.branding-logo-fallback{display:block;flex:0 0 58px;width:58px;height:52px;object-fit:contain}.branding-logo-fallback{display:grid;place-items:center;text-align:center;line-height:1}.branding-logo-preview>span:last-child{display:grid;min-width:0;gap:4px}.branding-logo-preview strong{font-size:13px}.branding-logo-preview small{color:var(--app-muted);font-size:11px;line-height:1.45}.branding-logo-url-field{display:grid;gap:7px}.branding-logo-url-field .form-control{width:100%;padding-left:13px!important}.branding-remove-logo{min-height:42px;padding:9px 11px;border:1px solid var(--app-line);border-radius:11px;background:#fff}.branding-colors-heading{display:grid;gap:4px;margin-bottom:14px}.branding-colors-heading strong{font-size:14px}.branding-colors-heading span{color:var(--app-muted);font-size:12px}.branding-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.branding-color-field{gap:6px}.branding-color-control{display:flex;align-items:center;gap:10px;min-height:48px;padding:6px 10px;border:1px solid var(--app-line);border-radius:11px;background:#fff}.branding-color-control input[type="color"]{flex:0 0 38px;width:38px!important;height:34px!important;min-height:0;padding:2px!important;border:1px solid var(--app-line-strong)!important;border-radius:8px!important;background:#fff!important;cursor:pointer}.branding-color-control output{color:#4c5668;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700}

@media(max-width:900px){.branding-settings-grid{grid-template-columns:1fr}}
@media(max-width:520px){.auth-public-main{padding:14px}.auth-page-shell{gap:13px}.auth-stage{border-radius:21px}.auth-view{padding:27px 22px}.auth-brand-symbol.brand-logo-shell{width:78px;height:78px;flex-basis:78px}.auth-card h1{font-size:32px}.branding-color-grid{grid-template-columns:1fr}.branding-identity-panel,.branding-colors-panel{padding:15px}.branding-logo-preview{align-items:flex-start}.branding-logo-preview>img,.branding-logo-fallback{flex-basis:52px;width:52px;height:48px}}

.branding-presets{display:grid;gap:13px;margin-top:20px;padding-top:18px;border-top:1px solid var(--app-line)}.branding-presets-heading{display:grid;gap:4px}.branding-presets-heading strong{font-size:14px}.branding-presets-heading span,.branding-preset-footer>span{color:var(--app-muted);font-size:11px;line-height:1.5}.branding-preset-list{display:flex;gap:8px;flex-wrap:wrap}.branding-preset-button{min-height:38px;padding:8px 13px;border:1px solid var(--app-line-strong);border-radius:999px;background:#fff;color:var(--app-text);font-size:12px;font-weight:720;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease}.branding-preset-button:hover{border-color:var(--app-primary);color:var(--app-primary)}.branding-preset-button.is-active{border-color:var(--app-primary);background:var(--app-primary-soft);color:var(--app-primary);box-shadow:0 0 0 3px rgba(var(--app-primary-rgb),.08)}.branding-preset-footer{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.branding-reset-button{display:inline-flex;align-items:center;gap:7px;min-height:38px}
@media(max-width:520px){.branding-preset-footer{align-items:stretch;flex-direction:column}.branding-reset-button{justify-content:center;width:100%}}

/* Escala compacta das telas de acesso, equivalente à versão anterior */
.auth-page-shell{width:min(100%,420px);gap:16px}.auth-stage{border-radius:24px}.auth-view{padding:32px}.auth-brand-lockup{gap:7px;margin-bottom:13px}.auth-card h1{font-size:30px}.auth-heading>p{margin-bottom:22px;font-size:13px}.auth-form{gap:14px}.auth-submit{min-height:52px}.auth-links{margin-top:18px;padding-top:16px}
.auth-form .auth-input-control input.form-control{padding:10px 14px 10px 48px!important}
@media(max-width:520px){.auth-public-main{padding:18px 14px}.auth-stage{border-radius:22px}.auth-view{padding:27px 24px}.auth-card h1{font-size:28px}.auth-heading>p{margin-bottom:20px}.auth-links{margin-top:16px;padding-top:15px}}
