:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f5f7fb;line-height:1.45}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}.public-shell{min-height:100vh;overflow:hidden;background:#f8faff}.public-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,92px);background:#fff;border-bottom:1px solid #edf0f6}.brand-link img{display:block;width:155px;height:auto}.public-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.public-nav a{color:#506078;text-decoration:none}.public-nav a:hover{color:#ff6a27}.public-nav .nav-login{padding:11px 17px;border-radius:10px;background:#ff6a27;color:#fff;box-shadow:0 8px 20px #ff6a2733}.hero-section{min-height:630px;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,1fr);gap:40px;align-items:center;padding:75px clamp(24px,8vw,130px) 90px;background:radial-gradient(circle at 77% 40%,#dce9ff 0,transparent 29%),linear-gradient(135deg,#fff 0%,#f5f8ff 100%)}.hero-copy{max-width:620px}.hero-copy h1{font-size:clamp(42px,5.2vw,72px);letter-spacing:-.055em;line-height:1.02;margin:12px 0 23px;color:#0c2251}.hero-lead{max-width:550px;color:#66748b;font-size:19px;line-height:1.6}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:34px 0 25px}.action-link{display:inline-flex;align-items:center;gap:14px;text-decoration:none;border-radius:11px;padding:14px 20px;font-weight:800}.action-link span{font-size:19px}.secondary{background:#fff;color:#193a75;border:1px solid #dce4f2}.hero-proof{display:flex;gap:9px;align-items:center;color:#64728a;font-size:13px;font-weight:700}.proof-dot{width:8px;height:8px;border-radius:50%;background:#30ba78;box-shadow:0 0 0 5px #30ba781c}.hero-art{position:relative;min-height:420px;display:grid;place-items:center}.glow{position:absolute;border-radius:50%;filter:blur(1px)}.glow-one{width:320px;height:320px;background:#ffb18766;right:5%;top:5%}.glow-two{width:210px;height:210px;background:#5489e955;left:5%;bottom:2%}.dashboard-preview{position:relative;width:min(480px,100%);padding:24px;border:1px solid #ffffffaa;border-radius:22px;background:#ffffffd9;box-shadow:0 28px 70px #19387124;backdrop-filter:blur(12px);transform:rotate(2deg)}.preview-top,.preview-list span{display:flex;justify-content:space-between;align-items:center}.preview-brand{color:#15366f;font-size:14px;font-weight:900}.preview-mark{color:#ff6a27;font-size:20px}.preview-status{font-size:10px;color:#2baf71;font-weight:900}.preview-title{font-size:26px;font-weight:850;color:#0e2b60;margin:27px 0 17px}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.preview-grid div{padding:17px;border-radius:13px;background:#f5f8ff}.preview-grid small{display:block;color:#74829a;font-size:11px}.preview-grid strong{display:block;color:#153e82;font-size:27px;margin-top:7px}.preview-chart{height:105px;display:flex;align-items:end;gap:9px;padding:18px 7px 0}.preview-chart span{display:block;flex:1;border-radius:6px 6px 2px 2px;background:linear-gradient(#ff8b55,#ff6a27)}.preview-chart span:nth-child(2n){background:linear-gradient(#7aa8f2,#285ba7)}.preview-list{display:grid;gap:11px;padding-top:15px;color:#42536e;font-size:12px}.preview-list b{color:#2aaa70;font-size:10px}.preview-icon{width:9px;height:9px;border-radius:50%;margin-right:8px;display:inline-block}.preview-icon.orange{background:#ff6a27}.preview-icon.blue{background:#477ed0}.public-section{padding:100px clamp(24px,8vw,130px)}.about-section{background:#fff}.section-heading{max-width:690px}.section-heading h2,.workflow-copy h2,.contact-section h2{font-size:clamp(30px,4vw,49px);line-height:1.08;letter-spacing:-.04em;color:#0d285b;margin:9px 0 16px}.section-heading>p:last-child,.workflow-copy>p:last-child{color:#718098;font-size:17px;line-height:1.65}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}.feature-card{padding:29px;border:1px solid #e8edf5;border-radius:18px;background:#fbfcff}.feature-card h3{font-size:19px;color:#16356f;margin:18px 0 9px}.feature-card p{color:#718098;line-height:1.6;margin:0}.feature-number{font-size:12px;font-weight:900;color:#ff6a27;letter-spacing:.12em}.workflow-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#f0f5ff}.workflow-steps{display:grid;gap:16px}.workflow-steps>div{display:grid;grid-template-columns:42px 1fr;column-gap:14px;align-items:center;padding:17px 20px;background:#fff;border-radius:14px;box-shadow:0 8px 28px #17386d0b}.workflow-steps span{grid-row:span 2;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#ff6a27;color:#fff;font-weight:900}.workflow-steps strong{color:#173870}.workflow-steps small{color:#7b8799}.contact-section{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:65px clamp(24px,8vw,130px);background:#0b2254;color:#fff}.contact-section h2{color:#fff;max-width:650px}.contact-section p:last-child{max-width:630px;color:#b9c8e3;font-size:16px}.contact-button{display:inline-flex;gap:16px;white-space:nowrap;padding:15px 20px;border-radius:11px;background:#ff6a27;color:#fff;text-decoration:none;font-weight:850;box-shadow:0 10px 25px #0002}.public-footer{display:flex;align-items:center;gap:20px;padding:28px clamp(24px,8vw,130px);color:#8190a9;font-size:12px;background:#071a42}.public-footer img{width:120px;filter:brightness(0) invert(1);opacity:.9}.public-footer a{margin-left:auto;color:#c9d5ec;text-decoration:none}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:70px 24px 24px;background:radial-gradient(circle at 15% 10%,#ffeadb,transparent 35%),linear-gradient(135deg,#071c4e,#173b83);position:relative}.back-home{position:absolute;top:25px;left:clamp(24px,6vw,80px);color:#dce7ff;text-decoration:none;font-size:14px;font-weight:700}.auth-card{width:min(460px,100%);background:#fff;border-radius:28px;padding:40px;box-shadow:0 24px 70px #00143d55}.auth-logo{width:min(270px,80%);height:auto;display:block;margin:0 0 24px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:#ff6a27;margin:10px 0}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.1;margin-bottom:12px}h2{font-size:25px;margin-bottom:6px}h3{font-size:16px;margin:0 0 8px}.muted{color:#6f7b90}.stack{display:grid;gap:15px;margin-top:26px}label{display:grid;gap:6px;font-size:13px;font-weight:700}input,textarea,select{width:100%;border:1px solid #d8deea;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:#172033}textarea{min-height:360px;resize:vertical;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px}button{border:0;border-radius:10px;padding:11px 15px;font:inherit;font-weight:750;cursor:pointer}.primary{background:#ff6a27;color:#fff}.ghost{background:#eef1f7;color:#30405f}.small{padding:8px 10px;font-size:12px}.error{color:#bd263e;min-height:18px;font-size:13px}.topbar{height:76px;background:#fff;border-bottom:1px solid #e5e9f1;padding:0 30px;display:flex;align-items:center;justify-content:space-between}.top-brand img{display:block;width:155px;height:auto}.top-actions{display:flex;gap:14px;align-items:center;font-size:13px}.workspace{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 76px)}.sidebar{padding:24px 14px;background:#0b2154}.nav{width:100%;text-align:left;background:transparent;color:#cbd5ec;margin-bottom:7px}.nav:hover,.nav.active{background:#173c82;color:#fff}.content{padding:34px;max-width:1280px;width:100%}.panel{animation:show .2s ease}.notice{padding:12px 15px;border-radius:10px;background:#e5f6ed;color:#146c3c;margin-bottom:20px}.notice.bad{background:#ffe9ed;color:#9d1e38}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:15px;margin:24px 0}.metric,.card{background:#fff;border:1px solid #e5e9f1;border-radius:16px;padding:20px;box-shadow:0 6px 22px #12244a08}.metric strong{display:block;font-size:28px;color:#0e3477}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.card{margin-bottom:16px}.card p{margin-bottom:8px}.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:22px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.list{display:grid;gap:10px}.list-item{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 0;border-bottom:1px solid #edf0f5}.pill{display:inline-flex;padding:4px 9px;border-radius:99px;background:#e8eefb;color:#234b91;font-size:11px;font-weight:800}@keyframes show{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media(max-width:900px){.hero-section{grid-template-columns:1fr;padding-top:58px}.hero-art{min-height:350px}.feature-grid{grid-template-columns:1fr}.workflow-section{grid-template-columns:1fr;gap:35px}.contact-section{display:block}.contact-button{margin-top:22px}}@media(max-width:760px){.public-header{height:auto;padding-top:18px;padding-bottom:18px;align-items:flex-start}.public-nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.public-nav a:not(.nav-login){display:none}.brand-link img{width:135px}.hero-section{padding-left:22px;padding-right:22px}.hero-copy h1{font-size:43px}.hero-lead{font-size:17px}.public-section{padding:70px 22px}.dashboard-preview{transform:none;padding:18px}.contact-section{padding-left:22px;padding-right:22px}.public-footer{flex-wrap:wrap;padding-left:22px;padding-right:22px}.public-footer a{margin-left:0}.workspace{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;padding:10px}.nav{white-space:nowrap;width:auto;margin:0 4px}.content{padding:20px}.topbar{padding:0 18px}.split{grid-template-columns:1fr}.auth-card{padding:28px}}
:root{--login-logo-width:min(340px,94%)}.back-home{top:24px;display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #ffffff55;border-radius:9px;background:#ffffff14;color:#fff;text-decoration:none;font-size:13px;font-weight:750;box-shadow:0 5px 18px #00143d18;transition:background .2s ease,border-color .2s ease,transform .2s ease}.back-home span{font-size:17px;line-height:1}.back-home:hover{background:#ffffff28;border-color:#ffffff99;transform:translateY(-1px)}.auth-logo{width:var(--login-logo-width);margin:0 auto 28px}.top-brand img{width:200px}
:root{--login-logo-width:min(390px,100%)}.auth-logo{width:var(--login-logo-width)}.brand-link img{width:185px}.top-brand img{width:220px}@media(max-width:760px){.brand-link img{width:155px}.top-brand img{width:185px}.auth-logo{width:min(360px,100%)}}
:where([hidden]){display:none!important}
:where([hidden]){display:none!important}.home-highlight{display:flex;align-items:end;justify-content:space-between;gap:30px;background:#fff}.text-link{display:inline-flex;align-items:center;gap:12px;color:#ff6a27;text-decoration:none;font-weight:850;white-space:nowrap}.text-link span{font-size:20px}.simple-page{min-height:calc(100vh - 164px)}.page-hero{padding:100px clamp(24px,8vw,130px);background:linear-gradient(135deg,#f5f8ff,#fff)}.page-hero h1{max-width:800px;color:#0c2251;font-size:clamp(42px,6vw,70px);letter-spacing:-.055em;line-height:1.03;margin:12px 0 20px}.page-hero p:last-child{max-width:680px;color:#718098;font-size:19px;line-height:1.6}.page-cta{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:65px clamp(24px,8vw,130px);background:#0b2254;color:#fff}.page-cta h2{color:#fff;margin:0}.contact-page-section{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:80px clamp(24px,8vw,130px);background:#fff}.contact-panel,.contact-info{padding:38px;border-radius:20px}.contact-panel{background:#0b2254;color:#fff;box-shadow:0 20px 45px #0b225422}.contact-panel h2{font-size:35px;margin:17px 0 10px}.contact-panel p{color:#bdcce5;line-height:1.6}.contact-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#ff6a27;font-size:24px}.contact-info{border:1px solid #e4eaf4}.contact-info h2{color:#0d285b;font-size:35px;line-height:1.1}.contact-info p:not(.eyebrow){color:#718098;line-height:1.65}.contact-button{margin-top:18px}@media(max-width:900px){.home-highlight,.page-cta{display:block}.home-highlight .text-link{margin-top:24px}.contact-page-section{grid-template-columns:1fr}.page-cta .action-link{display:inline-flex;margin-top:22px}}@media(max-width:760px){.page-hero{padding:70px 22px}.page-hero h1{font-size:44px}.page-hero p:last-child{font-size:17px}.contact-page-section{padding:55px 22px}.contact-panel,.contact-info{padding:27px}.page-cta{padding:50px 22px}}
:root{--live-green:#20aa69}.live-status{display:inline-flex;align-items:center;gap:8px;margin:16px 0 2px;color:#58708c;font-size:12px;font-weight:700}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--live-green);box-shadow:0 0 0 4px #20aa6920}
:root{--nav-login-hover:#ff7a3d}.public-nav .nav-login:hover{color:#fff;background:var(--nav-login-hover);box-shadow:0 10px 24px #ff6a2744}
:root{--public-logo-width:240px}.public-header .brand-link{display:inline-flex;align-items:center}.public-header .brand-link img{width:var(--public-logo-width);height:auto}.public-header{min-height:96px}@media(max-width:760px){:root{--public-logo-width:190px}.public-header{min-height:76px}}
.public-footer .onda-footer-logo{width:120px}.public-footer .footer-credit{display:flex;align-items:center;gap:9px;margin-left:auto;color:#9eacc3}.public-footer .footer-credit .sms-logo{width:150px;height:auto;filter:none;opacity:1}.public-footer .footer-credit a{display:inline-flex;align-items:center;margin:0}.auth-footer,.admin-footer{justify-content:center;min-height:78px}.auth-footer .sms-logo,.admin-footer .sms-logo{width:150px;height:auto;filter:none;opacity:1}.auth-footer a,.admin-footer a{display:inline-flex;margin:0}.auth-footer{padding:18px 24px;background:#071a42}.admin-footer{padding:18px 30px}
@media(max-width:900px){.public-footer .footer-credit{margin-left:0}}
@media(max-width:760px){.public-footer .footer-credit{width:100%;justify-content:flex-start;flex-wrap:wrap}.public-footer .footer-credit .sms-logo{width:135px}.auth-footer,.admin-footer{flex-wrap:wrap;gap:10px}}
.public-footer .footer-credit a{gap:8px;color:#c9d5ec;text-decoration:none}.admin-footer a{gap:8px;color:#c9d5ec;text-decoration:none}
.auth-help-link{color:#0e3477;text-align:center;font-size:13px;font-weight:750;text-decoration:none}.auth-help-link:hover{text-decoration:underline}.auth-card .notice{margin:0;font-size:13px;text-align:center}
.activation-result{margin-top:16px;padding:16px;border:1px solid #ffb27f;border-radius:16px;background:#fff8f0;line-height:1.6;overflow-wrap:anywhere}.activation-result code{display:inline-block;margin:8px 0;font-size:1.35rem;letter-spacing:.16em;font-weight:800;color:#06245e}
.layout-table{display:grid;gap:6px}.layout-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;border:1px solid #edf0f5}.layout-row.highlight{border-color:#ffb27f;background:#fff8f0}.layout-order{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#6f7b90}.layout-order input{width:64px}
.time-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.days{border:1px solid #e5e9f1;border-radius:12px;padding:12px}.days legend{font-weight:700;padding:0 6px}.day-chips{display:flex;flex-wrap:wrap;gap:8px}.day-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:99px;background:#eef1f7;font-size:13px;font-weight:700;cursor:pointer}.inline-check{display:flex;align-items:center;gap:8px}.small-text{font-size:12px;margin:0}
#schedule-description,#poll-question,#poll-options,#campaign-description{min-height:90px;height:90px;font-family:inherit;font-size:14px}
.pill.bad{background:#ffe9ed;color:#9d1e38}.bad-text{color:#9d1e38}.brand-asset{display:grid;place-items:center;width:112px;height:112px;border:1px dashed #d8deea;border-radius:16px;background:repeating-conic-gradient(#f2f4f8 0 25%,#fff 0 50%) 50%/16px 16px;font-size:11px;text-align:center;padding:6px}.brand-asset img{max-width:100%;max-height:100%}.file-button{display:inline-flex;align-items:center;border-radius:10px;cursor:pointer;font-weight:750}.build-log{margin:14px 0 0;max-height:420px;overflow:auto;padding:14px;border-radius:12px;background:#0b1630;color:#d7e2f7;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.list-item .card-actions{margin-top:0;justify-content:flex-end}
.whatsapp-inline{display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,2fr) auto;gap:8px;margin-top:10px}@media(max-width:760px){.whatsapp-inline{grid-template-columns:1fr}}
.hour-chart{display:grid;grid-template-columns:repeat(24,1fr);gap:4px;align-items:end;height:180px;padding-top:8px}.hour-col{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.hour-col span{position:absolute;bottom:18px;width:72%;border-radius:4px 4px 1px 1px}.hour-peak{background:#ffd3bc}.hour-avg{background:#ff6a27}.hour-col small{font-size:10px;color:#6f7b90;height:16px}.legend{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:middle}.legend.avg{background:#ff6a27}.legend.peak{background:#ffd3bc}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;color:#6f7b90;font-weight:700;padding:8px 10px;border-bottom:1px solid #e5e9f1;white-space:nowrap}.data-table td{padding:9px 10px;border-bottom:1px solid #f0f2f7;vertical-align:top}.data-table td:not(:first-child):not(:nth-child(2)):not(:nth-child(3)){font-variant-numeric:tabular-nums}.on-air-card{display:grid;gap:6px}.on-air-card.live{border-color:#ffb27f;background:#fff8f0}.button-link{display:inline-flex;align-items:center;text-decoration:none;border-radius:10px}
.report-content{margin:0 auto}.report-content h1{color:#0d285b}.metric small{display:block;margin-top:4px;font-size:12px}@media print{.top-actions button{display:none}.report-page .card,.report-page .metric{box-shadow:none;break-inside:avoid}}
.voice-item>span:first-child{flex:1;min-width:0}.voice-player audio{width:100%;max-width:420px;margin-top:10px}
.voucher{font-family:ui-monospace,SFMono-Regular,monospace;letter-spacing:2px}.qr-output{margin-top:16px;border-top:1px solid #edf0f5;padding-top:16px;text-align:center}.qr-image svg{width:240px;height:240px}
.link-button{background:none;padding:0 0 0 4px;color:#9d1e38;font-weight:900}
.logo-preview img{max-height:36px;max-width:120px;object-fit:contain;vertical-align:middle}
.tab-custom{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 8px 34px}.tab-custom label{font-size:12px}.color-form{margin-top:0}.color-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.color-input{display:inline-flex;align-items:center;gap:8px}.color-input input[type=checkbox]{width:auto}.color-input input[type=color]{width:56px;height:34px;padding:2px}.color-input input[type=color]:disabled{opacity:.35}.app-preview{width:220px;margin:14px auto;border:8px solid #172033;border-radius:24px;overflow:hidden;font-size:11px}.pv-weather{padding:4px 10px}.pv-title{display:flex;justify-content:space-between;padding:10px}.pv-body{height:150px;padding:12px}.pv-card{border-radius:12px;padding:16px 12px;font-weight:800}.pv-tabs{display:flex;justify-content:space-around;padding:10px 4px}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.theme-card{display:grid;gap:8px;padding:12px;border:1px solid #e5e9f1;border-radius:14px;background:#fff}.theme-card.active{border-color:#ff6a27;box-shadow:0 0 0 2px #ff6a2733}.theme-card .card-actions{margin-top:0}.theme-thumb{display:grid;grid-template-rows:8px 18px 64px 16px;border-radius:10px;overflow:hidden;border:1px solid #e5e9f1}.theme-thumb i{display:block;position:relative}.theme-thumb b{display:grid;align-content:center;gap:5px;padding:0 10px}.theme-thumb s{display:block;height:12px;border-radius:5px;text-decoration:none}.theme-thumb u{position:absolute;left:14%;top:5px;width:18%;height:6px;border-radius:3px}.theme-edit input{padding:7px 9px;font-size:12px}

/* Imagem do alerta: prévia no formulário e miniatura na lista. */
.alert-image-preview { display: flex; align-items: center; gap: 12px; }
.alert-image-preview img { max-width: 160px; max-height: 110px; border-radius: 10px; object-fit: cover; border: 1px solid var(--line, #ddd); }
.alert-thumb { width: 64px; height: 64px; border-radius: 10px; object-fit: cover; flex: none; margin-right: 12px; }

/* Caixa de marcação ou opção ao lado do texto (o estilo geral de input ocupa a linha inteira). */
.inline-check{justify-content:flex-start;font-weight:600}
.inline-check input[type=checkbox],.inline-check input[type=radio]{width:auto;min-height:0;flex:none;margin:0}
/* Quadros lado a lado: o conteúdo fica no topo, sem espalhar quando o vizinho é mais alto. */
.split > .card.stack{align-content:start}

/* Carrossel de banners: controles e prévia no tamanho de um celular. */
.carousel-settings .split { align-items: start; }
.carousel-phone { width: 300px; max-width: 100%; padding: 14px 0; border-radius: 26px; background: #f4f6fb; border: 1px solid #e5e9f1; }
.carousel-preview { position: relative; margin: 0 auto; width: 92%; border-radius: 18px; overflow: hidden; display: grid; place-items: center; }
.carousel-preview.full { width: 100%; }
.carousel-preview img { width: 100%; height: 100%; display: block; }
.carousel-dots { display: flex; justify-content: center; gap: 5px; margin-top: 10px; min-height: 7px; }
.carousel-dots i { width: 7px; height: 7px; border-radius: 99px; background: #ff7a1840; }
.carousel-dots i.on { width: 18px; background: #ff7a18; }
.carousel-settings input[type=color]{width:88px;height:44px;padding:4px;cursor:pointer}
/* Componentes e posições: nome à esquerda; Posição e Altura juntas, descendo para a linha de baixo em cartões estreitos. */
.grid>.card{min-width:0}.layout-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.layout-row input[type=checkbox]{width:auto;flex:none;margin:0}.layout-row>span:not(.layout-order){flex:1 1 calc(100% - 32px);min-width:0;overflow-wrap:anywhere}.layout-row .layout-order{flex:1 1 100%;justify-content:flex-end}.layout-order input{width:62px;padding:6px 8px}.tab-custom{padding:0 10px 8px 10px}
.feature-form{display:grid;gap:10px;margin-top:10px}.feature-form fieldset{border:1px solid #edf0f5;border-radius:12px;padding:8px 10px;display:grid;gap:6px}.feature-form legend{font-size:12px;font-weight:800;color:#234b91;padding:0 4px}.pill.off{background:#ffe9ed;color:#9d1e38}
.live-queue{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.live-item{margin:0;border-left:5px solid #ff6a27}.live-item.voice{border-left-color:#2f6fd1}.live-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.live-text{font-size:18px;font-weight:700;margin:10px 0 6px;overflow-wrap:anywhere}.live-item audio{width:100%;margin-top:8px}
.error-stack{white-space:pre-wrap;font-size:11px;max-height:260px;overflow:auto;background:#f5f7fb;padding:10px;border-radius:8px}
.st-thumb{position:relative;width:74px;height:132px;border:5px solid #172033;border-radius:14px;background:#fff8f0;padding:6px 5px 16px;display:flex;flex-direction:column;gap:3px;overflow:hidden;flex:none}.st-bar{display:block;border-radius:3px;background:#d8deea;flex:none}.st-player{background:#ff7a18}.st-dock{height:10px!important;border-radius:2px}.st-bottom{position:absolute;left:5px;right:5px;bottom:13px}.st-tabs{position:absolute;left:0;right:0;bottom:0;height:9px;background:#172033;opacity:.15}
/* Modelos prontos: prévia do app no celular com os dados da emissora (model-preview.js). */
.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.model-card{display:flex;flex-direction:column;align-items:center;gap:10px;margin:0;text-align:center}.model-card.active{border-color:#ff6a27;box-shadow:0 0 0 2px #ff6a2755}.model-card .card-actions{justify-content:center;margin-top:0}
.mp-phone{position:relative;width:210px;height:400px;border:7px solid #172033;border-radius:28px;overflow:hidden;font-size:9px;line-height:1.3;text-align:left;box-shadow:0 10px 26px #12244a26}.mp-screen{position:absolute;inset:0 0 34px 0;overflow:hidden;display:flex;flex-direction:column;gap:5px;padding-bottom:6px}.mp-screen>*{flex:none}
.mp-title{display:flex;justify-content:space-between;align-items:center;padding:7px 8px;min-height:34px}.mp-weather{padding:3px 8px;font-size:8px}.mp-social{display:flex;justify-content:flex-end;gap:8px;padding:0 10px;font-weight:800}
.mp-card{margin:0 7px;padding:6px 7px;border:1px solid #0000001a;border-radius:9px;background:#ffffffd9}.mp-row{display:flex;gap:5px;margin-top:3px}.mp-banner{margin:0 7px;border-radius:9px;background-size:cover;background-position:center;display:grid;place-items:center;color:#fff}
.mp-player{position:relative;margin:0 7px;border-radius:12px;display:flex;flex-direction:column;gap:3px}.mp-player i{position:absolute;right:9px;bottom:8px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#ff6a27;font-style:normal;font-size:9px}
.mp-actions{display:flex;gap:5px;margin:0 7px}.mp-actions span{flex:1;padding:5px;border:1px solid #0000001a;border-radius:8px;background:#ffffffd9;text-align:center}.mp-video{margin:0 7px;height:44px;border-radius:9px;background:#111;color:#fff;display:grid;place-items:center}
.mp-dock{position:absolute;left:0;right:0;bottom:0}.mp-tabs{display:flex;justify-content:space-around;padding:6px 2px 8px;font-size:8px;border-top:1px solid #0000000f}
.mp-mini{display:flex;align-items:center;gap:6px;padding:5px 7px;border-top:1px solid #0000001a;box-shadow:0 -3px 8px #0000000f}.mp-mini img{width:22px;height:22px;object-fit:contain}.mp-mini-text{flex:1;display:flex;flex-direction:column;min-width:0}.mp-mini-text b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-mini i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-style:normal}.mp-screen .mp-mini{border-top:0;border-bottom:1px solid #0000001a}

/* Prévia da abertura (splash) */
.splash-title{display:block;margin-top:14px}.splash-preview{position:relative;width:220px;height:300px;margin:10px auto;border:8px solid #172033;border-radius:24px;overflow:hidden}
.sp-center{position:absolute;inset:0 0 70px;display:grid;place-items:center}.sp-center img{width:130px;max-height:90px;object-fit:contain;position:relative}.sp-center b{position:relative;font-size:18px}
.sp-center i{position:absolute;width:90px;height:90px;border:3px solid;border-radius:50%;opacity:0;animation:sp-ring 1.8s ease-out .3s 2}.sp-center i+i{animation-delay:.9s}
.sp-waves img,.sp-waves b{animation:sp-fade .7s ease-out both}.sp-zoom img,.sp-zoom b{animation:sp-zoom .9s cubic-bezier(.34,1.56,.64,1) both}
.sp-rise img,.sp-rise b{animation:sp-rise .9s ease-out both}.sp-pulse img,.sp-pulse b{animation:sp-fade .5s ease-out both,sp-pulse 1s ease-in-out .5s 2}
.sp-footer{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;align-items:center;gap:8px;font-size:11px}
.sp-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;animation:sp-build 1.1s cubic-bezier(.34,1.56,.64,1) .5s both}.sp-mark.sp-dark{background:#fff}.sp-mark img{width:30px;height:30px}
.sp-word{display:flex;flex-direction:column;line-height:1.1;animation:sp-rise .6s ease-out 1.2s both}.sp-word small{opacity:.7;font-size:9px}.sp-word em{font-style:normal;color:#FF7A18}
@keyframes sp-fade{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}@keyframes sp-zoom{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
@keyframes sp-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes sp-pulse{50%{transform:scale(1.07)}}
@keyframes sp-ring{from{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes sp-build{from{opacity:0;transform:rotate(-200deg) scale(.2)}to{opacity:1;transform:none}}
.build-download{display:flex;gap:16px;align-items:center;margin-top:14px;padding:14px;border:1px solid #e4e8f0;border-radius:14px;background:#f8fafc}.build-download[hidden]{display:none}.build-qr{width:150px;flex:0 0 150px;background:#fff;border-radius:10px}.build-qr svg{width:100%;height:auto;display:block}
.location-row{display:grid;grid-template-columns:1fr 90px;gap:10px}
.ghost.danger{color:#B42318}.ghost.danger:hover{background:#FEE4E2}
.tenant-item{flex-direction:column;align-items:stretch;gap:10px}.tenant-item .card-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px}
.nav-search{position:relative;margin:0 0 14px}.nav-search input{background:#17306a;border-color:#2a4a8f;color:#fff;font-size:13px;padding:10px 12px}.nav-search input::placeholder{color:#9fb2d9}.nav-search-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);background:#fff;border-radius:12px;box-shadow:0 16px 40px #0b215440;padding:6px;max-height:70vh;overflow:auto}.nav-search-results[hidden]{display:none}.nav-search-results button{display:block;width:100%;text-align:left;background:transparent;color:#172033;padding:9px 10px;border-radius:8px}.nav-search-results button small{display:block;color:#6f7b90;font-weight:600;font-size:11px}.nav-search-results button.active,.nav-search-results button:hover{background:#eef3ff}.nav-search-results p{margin:8px 10px;color:#6f7b90;font-size:13px}.search-hit{animation:search-hit 2.2s ease}@keyframes search-hit{0%,60%{box-shadow:0 0 0 4px #ff6a2766;border-radius:10px}100%{box-shadow:0 0 0 0 transparent}}@media(max-width:760px){.nav-search{min-width:220px;margin:0 6px 0 0}}
.upload-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-weight:600}.upload-bar small{font-size:11px}.upload-library{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-height:260px;overflow:auto;padding:8px;border:1px solid #e4e8f0;border-radius:10px;background:#f8fafc}.upload-library[hidden]{display:none}.upload-library button{width:96px;padding:6px;background:#fff;border:1px solid #e4e8f0;display:grid;gap:4px;justify-items:center}.upload-library img{width:80px;height:60px;object-fit:contain}.upload-library small{font-size:10px;max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-icon{font-size:30px;line-height:60px}.whatsapp-inline .upload-bar{width:100%}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.file-card{border:1px solid #e4e8f0;border-radius:12px;padding:10px;display:grid;gap:4px}.file-card strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-thumb{display:grid;place-items:center;height:100px;background:#f5f7fb;border-radius:8px;overflow:hidden;text-decoration:none}.file-thumb img{max-width:100%;max-height:100px;object-fit:contain}.file-card .card-actions{margin-top:4px}
.tenant-users{display:grid;gap:8px;margin-top:10px;padding:10px;border:1px solid #e4e8f0;border-radius:10px;background:#f8fafc}.tenant-users[hidden]{display:none}
.build-progress{height:8px;margin:8px 0 4px;border-radius:99px;background:#e9edf4;overflow:hidden;max-width:420px}.build-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#ff7a18,#ff4d4d);transition:width .8s ease}.build-cleanup{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:6px 0 12px;padding:10px 12px;border:1px solid #f1dfc9;border-radius:12px;background:#fff8f0;font-size:13px}.build-cleanup[hidden]{display:none}

/* Conferência da imagem do carrossel no formulário da galeria */
.media-check { display: grid; gap: 6px; padding: 10px; border: 1px solid var(--line, #dbe3ef); border-radius: 12px; }
.media-check canvas { width: 100%; height: auto; display: block; }
.media-check small { line-height: 1.4; }
.media-check.ok { border-color: #22a06b; }
.media-check.warn { border-color: #e2a400; background: #fff8e6; }
.media-check.error { border-color: #d64545; background: #fdecec; color: #8a1c1c; }

/* Meu plano (console do cliente) */
.plan-offer { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--line, #dbe3ef); border-radius: 12px; cursor: pointer; }
.plan-offer input { width: auto; margin: 3px 0 0; flex: none; }
.plan-offer:has(input:checked) { border-color: #ff6a27; background: #fff6f0; }
.pay-button { display: block; text-align: center; padding: 12px 16px; border-radius: 10px; background: #ff6a27; color: #fff; font-weight: 800; text-decoration: none; }
.pay-button:hover { filter: brightness(.95); }

/* Biblioteca musical */
.music-drop { border: 2px dashed #c7d2e3; border-radius: 14px; padding: 22px; text-align: center; background: #f8fafc; }
.music-drop.over { border-color: #ff6a27; background: #fff6f0; }
.link-like { color: #ff6a27; font-weight: 800; cursor: pointer; text-decoration: underline; }
