/* CARÔMETRO COMERCIAL — Painel do Proprietário */
body.platform-workspace-open { overflow:hidden; }
.public-plans-login-button { margin-top:12px; }
.login-legal-links { margin-top:13px; display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }.login-legal-links a { color:#667085; font-size:10px; font-weight:700; text-decoration:none; }.login-legal-links a:hover { color:#356ae6; text-decoration:underline; }
.brand-rights { display:block; margin-top:28px; color:#aebedb; font-size:10px; letter-spacing:.02em; }
.login-mobile-rights { display:none; margin:12px auto 0; max-width:280px; color:#98a2b3; font-size:9px; line-height:1.45; text-align:center; }
.public-plans-modal { position:fixed; inset:0; z-index:45; overflow:auto; color:#fff; background:radial-gradient(circle at 75% 15%,#17377d 0,transparent 34%),linear-gradient(145deg,#06152f,#09255c 65%,#0c2d68); }
.public-plans-header { max-width:1420px; margin:0 auto; padding:24px clamp(20px,4vw,55px); display:flex; justify-content:space-between; align-items:center; }
.public-plans-brand { display:flex; align-items:center; gap:10px; }.public-plans-brand span { width:37px; height:37px; border-radius:12px; display:grid; place-items:center; background:linear-gradient(145deg,#fff 0 45%,#516cff 46%); color:#07172f; font-weight:900; }.public-plans-brand b { letter-spacing:.03em; }
.public-plans-close { width:43px; height:43px; border-radius:10px; color:#fff; background:#ffffff18; font-size:25px; }
.public-plans-content { max-width:1420px; margin:0 auto; padding:20px clamp(18px,4vw,55px) 45px; }
.public-plans-hero { max-width:720px; margin:15px auto 38px; text-align:center; }.public-plans-eyebrow { color:#8ea9ff; font-size:11px; font-weight:900; letter-spacing:.14em; }.public-plans-hero h1 { margin:10px 0 12px; font-size:clamp(36px,5vw,59px); line-height:1.02; letter-spacing:-2px; }.public-plans-hero p { max-width:610px; margin:auto; color:#ced9ee; line-height:1.6; }
.public-plans-grid { display:grid; grid-template-columns:repeat(4,minmax(220px,1fr)); gap:12px; align-items:stretch; }
.public-plan-card { position:relative; display:flex; flex-direction:column; padding:24px 20px 20px; border:1px solid #ffffff25; border-radius:15px; background:#fff; color:#101828; box-shadow:0 18px 50px #0003; }.public-plan-card.highlighted { border:2px solid #7468f5; transform:translateY(-8px); }.public-plan-highlight { position:absolute; top:-12px; left:50%; transform:translateX(-50%); padding:5px 16px; border-radius:99px; background:linear-gradient(90deg,#665ce8,#8a53ef); color:#fff; font-size:9px; font-weight:900; white-space:nowrap; letter-spacing:.05em; }
.public-plan-icon { width:48px; height:48px; border-radius:50%; display:grid; place-items:center; margin:0 auto 14px; background:#edf1ff; color:#4962ec; font-size:22px; }.public-plan-card h2 { margin:0; text-align:center; font-size:21px; }.public-plan-description { min-height:43px; margin:8px 0 13px; text-align:center; color:#667085; font-size:12px; line-height:1.45; }.public-plan-price { display:block; min-height:36px; margin-bottom:15px; text-align:center; font-size:24px; }.public-plan-price small { font-size:11px; font-weight:650; }.public-plan-card .btn { flex:none; }.public-plan-card ul { display:grid; gap:9px; margin:20px 0 0; padding:18px 0 0; border-top:1px solid #edf0f4; list-style:none; color:#475467; font-size:11px; }.public-plan-card li::first-letter { color:#15945d; }
.public-plans-trust { margin-top:28px; padding:20px; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; border:1px solid #ffffff20; border-radius:13px; background:#ffffff0d; color:#dbe4f5; font-size:12px; text-align:center; }.public-plans-legal { margin-top:18px; display:flex; justify-content:center; gap:15px; flex-wrap:wrap; }.public-plans-legal a { color:#cdd9f0; font-size:11px; text-decoration:none; }.public-plans-legal a:hover { color:#fff; text-decoration:underline; }.public-plans-rights { margin-top:13px; color:#9fb0cf; font-size:10px; text-align:center; }
.school-application-bg{z-index:55}.school-application-modal{width:min(720px,100%)}.school-application-modal .modal-head>div{min-width:0}.school-application-modal .modal-head p{margin:5px 0 0}.school-application-legal{align-items:flex-start;margin:4px 0 16px;line-height:1.45}.school-application-legal a{color:#315fea;text-decoration:underline}.application-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.platform-workspace-bg { z-index:40; padding:0; background:#eef2f8; }
.platform-workspace {
  width:100%; height:100dvh; max-height:none; border-radius:0; overflow:hidden;
  display:grid; grid-template-columns:256px minmax(0,1fr); background:#f5f7fb;
  box-shadow:none;
}
.platform-sidebar { background:linear-gradient(180deg,#081a38 0%,#07162f 100%); color:#fff; padding:25px 18px max(30px,env(safe-area-inset-bottom)); display:flex; flex-direction:column; min-height:0; }
.platform-brand { display:flex; align-items:center; gap:11px; padding:0 10px 28px; }
.platform-brand-mark { width:37px; height:37px; border-radius:12px; display:grid; place-items:center; background:linear-gradient(145deg,#fff 0 45%,#4f6cff 46% 100%); color:#0b1c3c; font-weight:900; }
.platform-brand strong { display:block; font-size:15px; letter-spacing:.02em; }
.platform-brand small { display:block; margin-top:2px; color:#9fb0cf; font-size:11px; }
.platform-nav { display:grid; gap:6px; overflow:auto; }
.platform-nav button { width:100%; min-height:44px; display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:9px; text-align:left; color:#c9d3e8; background:transparent; font-size:13px; font-weight:700; }
.platform-nav button:hover,.platform-nav button.active { color:#fff; background:linear-gradient(135deg,#345eea,#4d66f4); box-shadow:0 8px 22px #193ba966; }
.platform-nav-icon { width:20px; text-align:center; font-size:15px; }
.platform-sidebar-foot { margin-top:auto; flex:none; min-height:66px; border-top:1px solid #ffffff17; padding:16px 8px 4px; }
.platform-owner-chip { min-height:38px; display:flex; align-items:center; gap:10px; color:#fff; }
.platform-owner-avatar { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:#4659bb; font-weight:800; }
.platform-owner-chip strong { display:block; font-size:12px; line-height:1.25; }.platform-owner-chip small { display:block; margin-top:2px; color:#9fb0cf; font-size:10px; line-height:1.25; }
.platform-shell { min-width:0; min-height:0; display:flex; flex-direction:column; }
.platform-topbar { height:83px; flex:none; padding:18px clamp(20px,3vw,42px); display:flex; align-items:center; justify-content:space-between; gap:20px; background:#fff; border-bottom:1px solid #e8ebf1; }
.platform-topbar h2 { margin:0; font-size:22px; letter-spacing:-.5px; }.platform-topbar p { margin:4px 0 0; color:var(--muted); font-size:13px; }
.platform-top-actions { display:flex; align-items:center; gap:10px; }.platform-date { color:#667085; font-size:12px; }
.platform-menu-toggle { display:none; width:42px; height:42px; border-radius:9px; background:#eef2ff; color:#244bc2; font-size:19px; }
.platform-close { width:42px; height:42px; border-radius:9px; background:#f2f4f7; color:#475467; font-size:23px; }
.platform-content { overflow:auto; padding:26px clamp(20px,3vw,42px) 45px; }
.platform-page { display:none; max-width:1440px; margin:0 auto; }.platform-page.active { display:block; }
.platform-page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:20px; }
.platform-page-heading h3 { margin:0; font-size:22px; letter-spacing:-.4px; }.platform-page-heading p { margin:5px 0 0; color:var(--muted); font-size:13px; }
.platform-applications-list{display:grid;gap:12px}.platform-application-card{padding:17px;border:1px solid #e1e6ef;border-radius:12px;background:#fff}.platform-application-card h4{margin:0 0 6px}.platform-application-card p{margin:4px 0;color:#667085;font-size:12px;line-height:1.45}.platform-application-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.platform-badge.pending{background:#fff4dc;color:#8a5a00}.platform-badge.approved{background:#e7f8ef;color:#08784b}.platform-badge.rejected{background:#feeceb;color:#b42318}
.platform-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.platform-stat { min-height:132px; padding:19px; border:1px solid #e4e9f2; border-radius:13px; background:#fff; box-shadow:0 5px 18px #14213d08; }
.platform-stat-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.platform-stat-icon { width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:#edf1ff; color:#365bea; font-size:18px; }
.platform-stat:nth-child(2) .platform-stat-icon { background:#e9f8f0; color:#15945d; }.platform-stat:nth-child(3) .platform-stat-icon { background:#fff4df; color:#d88917; }.platform-stat:nth-child(4) .platform-stat-icon { background:#f2eaff; color:#7548d8; }
.platform-stat span { color:#667085; font-size:12px; font-weight:700; }.platform-stat strong { display:block; margin-top:10px; font-size:29px; line-height:1; color:#101828; }.platform-stat small { display:block; margin-top:8px; color:#98a2b3; font-size:11px; }
.platform-grid-2 { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr); gap:18px; }
.platform-panel { background:#fff; border:1px solid #e4e9f2; border-radius:13px; overflow:hidden; box-shadow:0 5px 18px #14213d08; }
.platform-panel + .platform-panel { margin-top:18px; }.platform-panel-head { min-height:62px; padding:16px 19px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid #edf0f5; }
.platform-panel-head h4 { margin:0; font-size:15px; }.platform-panel-body { padding:18px; }
.platform-plan-distribution { display:grid; gap:12px; }.platform-plan-row { display:grid; grid-template-columns:110px 1fr 34px; align-items:center; gap:10px; font-size:12px; }
.platform-plan-bar { height:8px; border-radius:99px; background:#eef1f6; overflow:hidden; }.platform-plan-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#355fe8,#7659ef); }
.platform-table-wrap { width:100%; overflow:auto; }.platform-table { width:100%; border-collapse:collapse; }.platform-schools-table { min-width:1020px; }.platform-audit-table { min-width:720px; }
.platform-table th,.platform-table td { text-align:left; padding:13px 12px; border-bottom:1px solid #edf0f4; font-size:12px; vertical-align:top; }.platform-table th { color:#667085; background:#fafbfc; font-size:10px; text-transform:uppercase; letter-spacing:.05em; font-weight:800; }
.platform-table tbody tr:hover { background:#fafbff; }.platform-table tbody tr:last-child td { border-bottom:0; }
.platform-badge { font-size:10px; font-weight:800; border-radius:99px; padding:5px 8px; display:inline-flex; white-space:nowrap; }.platform-badge.active { background:#e8f8ef; color:#08784b; }.platform-badge.suspended,.platform-badge.expired,.platform-badge.missing { background:#feeceb; color:#b42318; }.platform-badge.archived { background:#eef0f4; color:#5b6472; }.platform-badge.free { background:#f1f4f8; color:#40516f; }.platform-badge.basic,.platform-badge.professional,.platform-badge.enterprise { background:#eaf0ff; color:#315dbb; }
.platform-school-admin,.platform-billing-contact { display:block; margin-top:4px; color:#667085; font-size:10px; line-height:1.35; }.platform-school-admin.pending { color:#b7791f; }.platform-school-admin.none,.platform-billing-contact.none { font-style:italic; }.platform-billing-contact { color:#315dbb; }.platform-billing-contact .label,.platform-school-admin .label { font-weight:800; }
.platform-school-actions { display:flex; gap:6px; flex-wrap:wrap; min-width:250px; }.platform-school-actions .btn { min-height:30px; padding:6px 8px; font-size:10px; }
.platform-school-form { display:grid; grid-template-columns:1.4fr 1.4fr .8fr .7fr auto; gap:10px; align-items:end; padding:18px; }.platform-school-form .field,.platform-account-form .field { margin:0; }
.platform-account-form { display:grid; grid-template-columns:minmax(240px,1fr) auto; gap:10px; align-items:end; padding:18px; }.platform-account-result { margin:0 18px 18px; padding:14px; border:1px solid #e4e9f2; border-radius:10px; background:#f8faff; }.platform-account-result .actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:12px; }
.platform-plans-list { display:grid; grid-template-columns:repeat(4,minmax(210px,1fr)); gap:14px; }.platform-plan-card { position:relative; display:grid; align-content:start; gap:10px; padding:18px; border:1px solid #e1e6ef; border-radius:14px; background:#fff; }.platform-plan-card[data-highlighted="true"] { border-color:#6171ef; box-shadow:0 10px 28px #4b5fe329; }.platform-plan-card[data-highlighted="true"]:before { content:'DESTAQUE'; position:absolute; top:-10px; left:50%; transform:translateX(-50%); padding:4px 13px; border-radius:99px; background:#5f5de8; color:#fff; font-size:9px; font-weight:900; letter-spacing:.06em; }.platform-plan-card-head { padding:5px 0 10px; border-bottom:1px solid #edf0f4; }.platform-plan-card-head b { font-size:18px; }.platform-plan-price { display:block; margin-top:8px; font-size:23px; font-weight:850; }.platform-plan-limits { padding:10px 0; display:grid; gap:6px; color:#475467; font-size:11px; }
.platform-contacts-grid,.platform-subscription-grid { display:grid; grid-template-columns:repeat(3,minmax(240px,1fr)); gap:14px; }.platform-contact-card,.platform-subscription-card { padding:17px; border:1px solid #e4e9f2; border-radius:12px; background:#fff; }.platform-contact-card h4,.platform-subscription-card h4 { margin:0 0 10px; font-size:14px; }.platform-contact-card p,.platform-subscription-card p { margin:5px 0; color:#667085; font-size:12px; line-height:1.45; }.platform-contact-card .btn { margin-top:10px; }
.platform-settings-row { padding:18px; display:flex; justify-content:space-between; align-items:center; gap:18px; }.platform-settings-row h4 { margin:0 0 5px; font-size:14px; }.platform-settings-row p { margin:0; color:#667085; font-size:12px; }.platform-switch { position:relative; width:46px; height:26px; flex:none; }.platform-switch input { opacity:0; position:absolute; }.platform-switch span { position:absolute; inset:0; border-radius:99px; background:#cbd2df; transition:.2s; }.platform-switch span:after { content:''; position:absolute; width:20px; height:20px; left:3px; top:3px; border-radius:50%; background:#fff; box-shadow:0 2px 5px #0002; transition:.2s; }.platform-switch input:checked + span { background:#4165eb; }.platform-switch input:checked + span:after { transform:translateX(20px); }
.platform-archived-section { padding:18px; border-top:1px solid #edf0f4; }.platform-archived-section h4 { margin:0 0 12px; }.platform-archived-item { display:flex; justify-content:space-between; gap:14px; padding:13px; border:1px solid #e4e9f2; border-radius:10px; margin-top:9px; flex-wrap:wrap; }.platform-job-note { color:#b42318; font-size:11px; font-weight:700; }
.platform-plan-modal { width:min(540px,100%); }.platform-billing-modal,.platform-archive-modal { width:min(480px,100%); }.platform-plan-context,.platform-archive-modal .warning { padding:13px; margin-bottom:15px; border:1px solid #e1e6ef; border-radius:9px; background:#f8faff; font-size:12px; }.platform-archive-modal .warning { background:#fff2f1; border-color:#fecdca; color:#7a271a; }.platform-plan-context p { margin:5px 0; }.platform-plan-context .label { font-weight:800; }
@media(max-width:1180px){.platform-stats{grid-template-columns:repeat(2,1fr)}.platform-plans-list{grid-template-columns:repeat(2,1fr)}.platform-contacts-grid,.platform-subscription-grid{grid-template-columns:repeat(2,1fr)}.platform-school-form{grid-template-columns:1fr 1fr}.platform-school-form .btn{grid-column:span 2}}
@media(max-width:1180px){.public-plans-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}.public-plan-card.highlighted{transform:none}.public-plans-trust{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){
  .platform-workspace-bg{padding:0!important;align-items:stretch!important}.platform-workspace{grid-template-columns:1fr;width:100%!important;height:100dvh!important;max-height:none!important;border-radius:0!important}.platform-sidebar{position:fixed; z-index:3; inset:0 auto 0 0; width:min(280px,86vw); transform:translateX(-102%); transition:transform .2s; box-shadow:20px 0 50px #06132955}.platform-workspace.menu-open .platform-sidebar{transform:none}.platform-menu-toggle{display:grid;place-items:center}.platform-date{display:none}.platform-topbar{height:auto;min-height:76px;padding:15px 14px}.platform-topbar h2{font-size:18px}.platform-content{padding:18px 13px 35px}.platform-page-heading{align-items:flex-start;flex-direction:column}.platform-stats{grid-template-columns:1fr 1fr;gap:9px}.platform-stat{min-height:115px;padding:14px}.platform-stat strong{font-size:24px}.platform-grid-2{grid-template-columns:1fr}.platform-plans-list,.platform-contacts-grid,.platform-subscription-grid{grid-template-columns:1fr}.platform-school-form,.platform-account-form{grid-template-columns:1fr}.platform-school-form .btn{grid-column:auto}.platform-settings-row{align-items:flex-start}.platform-modal{width:100%;max-height:94vh}.platform-plan-card{padding:16px}
}
@media(max-width:800px){.login-mobile-rights{display:block}}
@media(max-width:430px){.platform-stats{grid-template-columns:1fr}.platform-topbar p{display:none}.platform-stat{min-height:100px}.platform-page-heading .btn{width:100%}}
@media(max-width:620px){.public-plans-header{padding:16px}.public-plans-content{padding:12px 13px 30px}.public-plans-hero{margin:12px auto 27px}.public-plans-hero h1{font-size:35px}.public-plans-grid,.public-plans-trust{grid-template-columns:1fr}.public-plan-card{padding:22px 18px}.public-plans-trust{text-align:left}}
