/*
Theme Name: TopLine OpenBus Unificado
Theme URI: https://vaoborauai.com.br/
Author: Vão Bora Uai Tecnologia
Description: Tema operacional unificado do TopLine OpenBus, compatível com os dados, tabelas, usuários e shortcodes legados.
Version: 1.1.5
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: topline-openbus
*/

:root {
    --topline-bg: #043f2e;
    --topline-surface: #086b3a;
    --topline-text: #ffffff;
    --topline-muted: #d5f5df;
    --topline-border: rgba(255, 255, 255, .16);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background:
        radial-gradient(circle at 12% 8%, rgba(38, 184, 94, .26), transparent 32%),
        radial-gradient(circle at 90% 90%, rgba(3, 57, 146, .18), transparent 34%),
        linear-gradient(145deg, #032f25 0%, #065d36 52%, #07842f 100%);
    background-attachment: fixed;
    color: var(--topline-text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; }
a { color: inherit; }
.topline-site-main { min-height: 100vh; }
.topline-content-shell {
    width: min(1180px, calc(100% - 32px));
    margin: 32px auto;
    padding: clamp(20px, 3vw, 40px);
    background:
        linear-gradient(145deg, rgba(7, 132, 47, .94) 0%, rgba(4, 82, 52, .96) 100%);
    border: 1px solid var(--topline-border);
    border-radius: 24px;
    box-shadow: 0 22px 58px rgba(1, 31, 22, .28);
}
.topline-content-shell:has(.nr-grid-menu),
.topline-content-shell:has(.nr-painel),
.topline-content-shell:has([class*="openbus"]) {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.topline-entry-title {
    margin: 0 0 24px;
    color: #ffffff;
    font-size: clamp(28px, 4vw, 48px);
}
.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
@media (max-width: 720px) {
    .topline-content-shell { width: min(100% - 20px, 1180px); margin: 10px auto; padding: 18px; border-radius: 18px; }
}

/* Home proprietária TopLine OpenBus */
.home .topline-site-main{min-height:100vh}.tl-home{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(125deg,#031c2c 0%,#053b3c 48%,#075d36 100%);color:#fff;isolation:isolate}.tl-home:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 44%,rgba(20,190,91,.24),transparent 27%),radial-gradient(circle at 8% 90%,rgba(9,92,202,.18),transparent 32%);z-index:-2}.tl-home__mesh{position:absolute;inset:0;opacity:.15;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to right,transparent 2%,#000 55%,transparent)}
.tl-home__header,.tl-home__footer,.tl-hero{width:min(1240px,calc(100% - 48px));margin:auto}.tl-home__header{height:106px;display:flex;align-items:center;justify-content:space-between}.tl-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.tl-brand img{width:58px;height:58px;border-radius:16px;object-fit:cover;box-shadow:0 8px 24px rgba(0,0,0,.2)}.tl-brand span{display:flex;flex-direction:column;line-height:1}.tl-brand strong{font-size:20px;letter-spacing:.02em}.tl-brand small{margin-top:5px;color:#80e9a5;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.tl-home__status{display:flex;align-items:center;gap:9px;padding:10px 15px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);color:#d9f7e3;font-size:12px;font-weight:700}.tl-home__status i{width:8px;height:8px;border-radius:50%;background:#35e778;box-shadow:0 0 0 6px rgba(53,231,120,.12);animation:tlPulse 2s infinite}
.tl-hero{min-height:calc(100vh - 176px);display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:70px;padding:38px 0 82px}.tl-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#8ff0af;text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:900}.tl-eyebrow span{font-size:8px}.tl-hero h1{margin:24px 0 23px;color:#fff;font-size:clamp(48px,5.3vw,78px);line-height:1.01;letter-spacing:-.055em;max-width:760px}.tl-hero h1 em{color:#6de799;font-style:normal}.tl-hero__content>p{max-width:650px;margin:0;color:#c9ddd5;font-size:clamp(16px,1.45vw,19px);line-height:1.75;font-weight:400}
.tl-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.tl-button{min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:0 23px;border-radius:13px;text-decoration:none;font-size:14px;font-weight:900;transition:.25s ease}.tl-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tl-button--primary{background:linear-gradient(135deg,#1bc75e,#07842f);box-shadow:0 14px 32px rgba(5,174,75,.27)}.tl-button--primary:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(5,174,75,.38)}.tl-button--ghost{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07)}.tl-button--ghost:hover{background:rgba(255,255,255,.13);transform:translateY(-3px)}.tl-trust{display:flex;gap:36px;margin-top:48px}.tl-trust div{display:flex;flex-direction:column;padding-right:34px;border-right:1px solid rgba(255,255,255,.13)}.tl-trust div:last-child{border:0}.tl-trust strong{font-size:22px;color:#fff}.tl-trust span{margin-top:4px;color:#9ebbb0;font-size:11px}
.tl-hero__visual{position:relative;min-height:560px;display:flex;align-items:center;justify-content:center}.tl-orbit{position:absolute;border:1px solid rgba(89,232,143,.15);border-radius:50%}.tl-orbit--one{width:530px;height:530px}.tl-orbit--two{width:420px;height:420px;border-style:dashed;animation:tlSpin 45s linear infinite}.tl-command-card{position:relative;width:min(460px,86%);padding:23px;border:1px solid rgba(255,255,255,.16);border-radius:26px;background:linear-gradient(145deg,rgba(13,54,62,.92),rgba(3,36,42,.92));box-shadow:0 40px 90px rgba(0,0,0,.4);backdrop-filter:blur(18px);transform:perspective(1000px) rotateY(-5deg) rotateX(2deg);animation:tlFloat 6s ease-in-out infinite}.tl-command-card__top{display:flex;align-items:center;justify-content:space-between;font-weight:900;font-size:14px}.tl-command-card__top i{font-style:normal;font-size:9px;letter-spacing:.12em;color:#72eca0;background:rgba(26,202,94,.12);padding:7px 9px;border-radius:7px}.tl-command-card__score{margin-top:20px;padding:19px;border-radius:17px;background:rgba(255,255,255,.055)}.tl-command-card__score>span{display:block;color:#9fbdb2;font-size:11px}.tl-command-card__score strong{display:block;margin:7px 0 12px;font-size:40px;letter-spacing:-.05em}.tl-command-card__score strong small{font-size:18px;color:#64e993}.tl-command-card__score>div{height:7px;background:rgba(255,255,255,.09);border-radius:10px;overflow:hidden}.tl-command-card__score>div i{display:block;width:96%;height:100%;background:linear-gradient(90deg,#07842f,#54e58b);border-radius:10px}.tl-command-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.tl-command-card__grid article{padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.035)}.tl-command-card__grid span,.tl-command-card__grid small{display:block;color:#8fac9f;font-size:10px}.tl-command-card__grid strong{display:block;margin:7px 0 4px;font-size:20px}
.tl-float{position:absolute;display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(7,39,45,.9);box-shadow:0 18px 45px rgba(0,0,0,.32);backdrop-filter:blur(14px);animation:tlFloat 5s ease-in-out infinite}.tl-float span{display:flex;flex-direction:column;color:#91ada2;font-size:9px}.tl-float strong{margin-bottom:3px;color:#fff;font-size:11px}.tl-float--route{left:0;top:25%}.tl-float--route i{width:11px;height:11px;border-radius:50%;background:#27df70;box-shadow:0 0 0 6px rgba(39,223,112,.12)}.tl-float--safe{right:-5px;bottom:21%;animation-delay:-2s}.tl-float--safe svg{width:28px;height:28px;padding:5px;border-radius:9px;background:rgba(41,220,109,.14);fill:none;stroke:#5ee990;stroke-width:2.5}.tl-home__footer{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;justify-content:space-between;color:#7fa194;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.tl-home__footer span{color:#b6d1c7;font-weight:800}
@keyframes tlPulse{50%{box-shadow:0 0 0 10px rgba(53,231,120,0)}}@keyframes tlSpin{to{transform:rotate(360deg)}}@keyframes tlFloat{50%{transform:translateY(-9px) perspective(1000px) rotateY(-3deg)}}
@media(max-width:900px){.tl-home__header,.tl-home__footer,.tl-hero{width:min(100% - 30px,1240px)}.tl-hero{grid-template-columns:1fr;padding-top:52px;text-align:center}.tl-hero__content>p{margin-inline:auto}.tl-hero__actions,.tl-trust{justify-content:center}.tl-hero__visual{min-height:480px}.tl-home__footer{position:relative;bottom:auto;padding:25px 0}.tl-home__status{display:none}}@media(max-width:560px){.tl-home__header{height:86px}.tl-brand img{width:48px;height:48px}.tl-hero{padding:34px 0 45px;gap:28px}.tl-hero h1{font-size:44px}.tl-hero__actions{display:grid}.tl-button{width:100%}.tl-trust{gap:14px;margin-top:35px}.tl-trust div{padding-right:14px}.tl-trust strong{font-size:18px}.tl-hero__visual{min-height:410px}.tl-command-card{width:94%;padding:16px;transform:none}.tl-orbit--one{width:390px;height:390px}.tl-orbit--two{width:320px;height:320px}.tl-float--route{left:-4px;top:6%}.tl-float--safe{right:-3px;bottom:3%}.tl-home__footer{flex-direction:column;gap:7px;text-align:center}}

/* Home 1.1.1 — mesma linguagem visual do Menu Gestão */
.tl-home{background:linear-gradient(145deg,#0a3f3b 0%,#0e6659 48%,#1b8870 100%)}
.tl-home:before{background:radial-gradient(circle at 92% 2%,rgba(255,201,40,.28),transparent 29%),radial-gradient(circle at 1% 100%,rgba(31,95,209,.29),transparent 31%),radial-gradient(circle at 50% 45%,rgba(255,247,232,.07),transparent 38%)}
.tl-home__mesh{background-size:56px 56px;opacity:.13}.tl-home__header{height:116px;border-bottom:1px solid rgba(255,247,232,.12)}
.tl-brand img{background:#fff7e8;border:1px solid rgba(255,247,232,.25);border-radius:19px}.tl-brand small{color:#ffc928}.tl-home__status{background:rgba(255,247,232,.09);border-color:rgba(255,247,232,.18);color:#fff7e8}.tl-home__status i{background:#2bd37e}
.tl-hero{grid-template-columns:minmax(0,1fr) minmax(360px,470px);gap:clamp(55px,8vw,120px);padding-top:35px}.tl-eyebrow{color:#2bd37e}.tl-hero h1{font-size:clamp(47px,5.2vw,72px);letter-spacing:-.045em}.tl-hero h1 em{color:#ffc928}.tl-hero__content>p{max-width:620px;color:rgba(255,247,232,.78);font-size:18px;line-height:1.7}
.tl-home-notice{width:max-content;max-width:100%;display:flex;align-items:center;gap:13px;margin-top:34px;padding:15px 18px;border-left:5px solid #ffc928;border-radius:14px;background:rgba(255,247,232,.09);text-align:left}.tl-home-notice>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:rgba(43,211,126,.17);color:#2bd37e;font-weight:900}.tl-home-notice div{display:flex;flex-direction:column}.tl-home-notice strong{font-size:13px;color:#fff7e8}.tl-home-notice small{margin-top:4px;color:rgba(255,247,232,.68);font-size:11px}
.tl-access-card{position:relative;padding:42px 38px 30px;border-top:5px solid #1f5fd1;border-radius:22px;background:linear-gradient(145deg,#fff7e8 0%,#f4ead8 100%);color:#18384f;box-shadow:0 26px 65px rgba(4,33,31,.3);text-align:center;overflow:hidden}.tl-access-card:after{content:"";position:absolute;width:180px;height:180px;right:-100px;top:-100px;border-radius:50%;background:rgba(255,201,40,.17)}.tl-access-card__icon{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 20px;border:1px solid rgba(31,95,209,.16);border-radius:18px;background:#e8f0ff;color:#1f5fd1}.tl-access-card__icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tl-access-card__kicker{color:#0d9b61;font-size:10px;font-weight:900;letter-spacing:.17em}.tl-access-card h2{margin:10px 0 9px;color:#18384f;font-size:29px;letter-spacing:-.025em}.tl-access-card>p{max-width:310px;margin:0 auto 25px;color:#61727a;font-size:14px;line-height:1.6}.tl-access-card .tl-button{width:100%;background:linear-gradient(135deg,#1f5fd1,#173f7a);box-shadow:0 12px 24px rgba(31,95,209,.2);color:#fff7e8}.tl-access-card .tl-button:hover{box-shadow:0 16px 30px rgba(31,95,209,.28)}
.tl-install-link{display:inline-flex;align-items:center;gap:7px;margin-top:17px;padding:4px;border:0;background:none;color:#087647;font:800 12px/1 Inter,system-ui,sans-serif;cursor:pointer}.tl-install-link:hover{color:#0d9b61}.tl-install-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tl-access-card__safe{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px -38px -30px;padding:15px;border-top:1px solid #d6ccb8;background:rgba(255,255,255,.35);color:#61727a;font-size:10px;font-weight:700}.tl-access-card__safe i{width:7px;height:7px;border-radius:50%;background:#0d9b61}.tl-home__footer{color:rgba(255,247,232,.5)}.tl-home__footer span{color:rgba(255,247,232,.78)}
@media(max-width:900px){.tl-home__header{height:94px}.tl-hero{grid-template-columns:1fr;gap:42px;padding:62px 0 80px}.tl-home-notice{margin-inline:auto}.tl-access-card{width:min(100%,470px);margin:auto}.tl-home__footer{border-top:1px solid rgba(255,247,232,.1)}}
@media(max-width:560px){.tl-hero{padding-top:42px}.tl-hero h1{font-size:42px}.tl-hero__content>p{font-size:16px}.tl-home-notice{align-items:flex-start}.tl-access-card{padding:35px 23px 25px}.tl-access-card__safe{margin:25px -23px -25px}.tl-access-card h2{font-size:25px}}
