:root{
    --vaganet-orange:#ff5f36;
    --vaganet-orange-dark:#e84b24;
    --vaganet-orange-soft:#fff0ea;
    --vaganet-black:#0d0c0c;
    --vaganet-black-soft:#1d1817;
    --vaganet-charcoal:#292322;
    --vaganet-white:#ffffff;
    --vaganet-page:#f5f6f8;
    --vaganet-surface:#ffffff;
    --vaganet-text:#171717;
    --vaganet-muted:#667085;
    --vaganet-border:#dedfe3;
    --vaganet-shadow:0 12px 34px rgba(13,12,12,.08);
    --vaganet-radius:16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    min-height:100vh;
    font-family:Inter,Arial,sans-serif;
    background:var(--vaganet-page);
    color:var(--vaganet-text);
    -webkit-font-smoothing:antialiased;
}
a{color:var(--vaganet-orange-dark);text-decoration:none;font-weight:650}
a:hover{color:var(--vaganet-orange);text-decoration:none}
button,input,textarea,select{font:inherit}

.container{width:min(1120px,calc(100% - 32px));margin:0 auto}
.topbar{
    position:relative;
    z-index:30;
    background:var(--vaganet-black);
    color:var(--vaganet-white);
    padding:14px 0;
    border-bottom:3px solid var(--vaganet-orange);
    box-shadow:0 5px 22px rgba(0,0,0,.18);
}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{
    display:inline-flex;
    align-items:center;
    flex:0 0 auto;
    color:#fff;
    font-weight:900;
    font-size:20px;
    letter-spacing:.5px;
    line-height:1;
    border-radius:11px;
    overflow:hidden;
    background:#050505;
    box-shadow:0 0 0 1px rgba(255,255,255,.08);
}
.brand:hover{color:#fff;transform:translateY(-1px)}
.brand-vaga{padding:12px 12px 12px 15px}
.brand-divider{
    width:6px;
    align-self:stretch;
    background:repeating-linear-gradient(to bottom,var(--vaganet-orange) 0 4px,transparent 4px 7px);
}
.brand-net{padding:12px 15px 12px 11px;background:var(--vaganet-orange)}
.brand-suffix{
    margin-left:10px;
    padding-right:14px;
    font-size:11px;
    letter-spacing:1.3px;
    color:#d7d7d7;
}
.nav{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav a,.nav button{
    color:#f7f7f7;
    border-radius:9px;
    padding:9px 11px;
    font-weight:700;
    transition:background .18s ease,color .18s ease;
}
.nav a:hover,.nav button:hover{background:rgba(255,95,54,.16);color:#fff}
.nav form{margin:0}
.nav button{background:transparent;border:0;cursor:pointer}

.main{min-height:calc(100vh - 170px);padding:34px 0 60px}
.hero{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        radial-gradient(circle at 82% 18%,rgba(255,95,54,.22),transparent 28%),
        linear-gradient(118deg,var(--vaganet-black) 0 62%,var(--vaganet-orange) 62% 100%);
    color:#fff;
    border-radius:22px;
    padding:56px 50px;
    margin-bottom:25px;
    box-shadow:0 18px 45px rgba(13,12,12,.18);
}
.hero:after{
    content:"";
    position:absolute;
    z-index:-1;
    width:290px;
    height:290px;
    right:6%;
    top:50%;
    transform:translateY(-50%) rotate(12deg);
    border-radius:42px;
    border:1px solid rgba(255,255,255,.22);
    background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(13,12,12,.15));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.hero h1{position:relative;z-index:1;margin:0 0 14px;max-width:720px;font-size:clamp(34px,5vw,52px);line-height:1.04;letter-spacing:-1.7px}
.hero p{position:relative;z-index:1;max-width:680px;margin:0 0 25px;font-size:18px;line-height:1.65;color:#f2f2f2}
.hero .actions{position:relative;z-index:1}

.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{
    background:var(--vaganet-surface);
    border:1px solid var(--vaganet-border);
    border-radius:var(--vaganet-radius);
    padding:23px;
    box-shadow:var(--vaganet-shadow);
}
.card h1,.card h2,.card h3{color:var(--vaganet-black);margin-top:0}
.card h3:after{
    content:"";
    display:block;
    width:36px;
    height:3px;
    margin-top:10px;
    border-radius:99px;
    background:var(--vaganet-orange);
}
.card p{line-height:1.58}
.form-card{max-width:760px;margin:0 auto}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{margin-bottom:16px}
.field label{display:block;font-weight:750;margin-bottom:7px;color:#262120}
.field input,.field textarea,.field select{
    width:100%;
    padding:12px 13px;
    border:1px solid #cfd0d4;
    border-radius:10px;
    color:var(--vaganet-text);
    background:#fff;
    outline:none;
    transition:border-color .18s ease,box-shadow .18s ease;
}
.field input:focus,.field textarea:focus,.field select:focus,.compact-form input:focus,.compact-form select:focus{
    border-color:var(--vaganet-orange);
    box-shadow:0 0 0 4px rgba(255,95,54,.14);
}
.field textarea{min-height:170px;resize:vertical}
.field small{display:block;color:var(--vaganet-muted);margin-top:6px;line-height:1.4}
.error-text{color:#b42318;font-size:14px;margin-top:6px}

.alert{padding:14px 16px;border-radius:11px;margin-bottom:18px;line-height:1.5}
.alert-success{background:#e8f7ef;color:#156c3d;border:1px solid #bce8cf}
.alert-warning{background:#fff4e7;color:#8a4b16;border:1px solid #ffcda8}
.alert-error{background:#fff0ef;color:#9b1c1c;border:1px solid #f1c2be}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:0;
    border-radius:10px;
    padding:11px 17px;
    font-weight:800;
    cursor:pointer;
    text-align:center;
    transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease;
}
.btn:hover{transform:translateY(-1px);text-decoration:none}
.btn-primary{background:var(--vaganet-orange);color:#fff;box-shadow:0 8px 19px rgba(255,95,54,.24)}
.btn-primary:hover{background:var(--vaganet-orange-dark);color:#fff;box-shadow:0 10px 24px rgba(255,95,54,.31)}
.btn-secondary{background:var(--vaganet-black);color:#fff}
.btn-secondary:hover{background:#2a2422;color:#fff}
.btn-danger{background:#c63831;color:#fff}
.btn-success{background:#16784a;color:#fff}
.btn-small{padding:8px 11px;font-size:14px}
.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850;background:#ececee;color:#48484b}
.status-approved,.status-active,.status-paid,.status-published{background:#e4f5eb;color:#12613a}
.status-rejected,.status-blocked,.status-failed{background:#fde9e7;color:#9a211b}
.status-pending_review,.status-pending_payment,.status-queued_publish{background:var(--vaganet-orange-soft);color:#a63b18}

.table-wrap{overflow-x:auto}
.table{width:100%;border-collapse:separate;border-spacing:0}
.table th,.table td{padding:13px 11px;border-bottom:1px solid #e4e4e7;text-align:left;vertical-align:top}
.table th{font-size:12px;letter-spacing:.35px;text-transform:uppercase;color:#fff;background:var(--vaganet-black)}
.table th:first-child{border-radius:9px 0 0 0}
.table th:last-child{border-radius:0 9px 0 0}
.table tbody tr:hover td{background:#fff9f6}
.muted{color:var(--vaganet-muted)}
.kpi{font-size:34px;font-weight:900;margin-top:8px;color:var(--vaganet-black)}

.footer{padding:30px 0;background:var(--vaganet-black);color:#d7d7d7;border-top:4px solid var(--vaganet-orange)}
.footer a{color:#fff}
.inline-form{display:inline}
.code{font-family:Consolas,monospace;background:#f1efee;padding:2px 6px;border-radius:5px;color:#332825}
.list-clean{list-style:none;padding:0;margin:0}
.list-clean li{padding:11px 0;border-bottom:1px solid #e7e7e9}
.empty{padding:26px;text-align:center;color:#6b6b70;background:#fff;border:1px dashed #c9c9cd;border-radius:12px}
.admin-bar{background:linear-gradient(90deg,#050505,#201817)}
.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}
.section-title h1,.section-title h2{margin:0;color:var(--vaganet-black)}
.section-title h1:before,.section-title h2:before{content:"";display:inline-block;width:5px;height:24px;margin-right:10px;border-radius:99px;background:var(--vaganet-orange);vertical-align:-4px}
.note{background:var(--vaganet-orange-soft);border-left:4px solid var(--vaganet-orange);padding:14px 16px;border-radius:8px;line-height:1.5;color:#66301d}
.compact-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.compact-form input,.compact-form select{padding:8px 10px;border:1px solid #cfd0d4;border-radius:8px;outline:none}
.job-description{white-space:pre-wrap;line-height:1.68}
.split{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.pill{display:inline-block;border-radius:999px;padding:5px 9px;background:var(--vaganet-orange-soft);color:#9b3d20;font-size:12px;font-weight:800}
.login-box{max-width:480px;margin:30px auto;border-top:5px solid var(--vaganet-orange)}
.checkbox{display:flex;gap:10px;align-items:flex-start}
.checkbox input{width:auto;margin-top:4px;accent-color:var(--vaganet-orange)}

@media(max-width:800px){
    .grid-2,.grid-3,.form-grid{grid-template-columns:1fr}
    .hero{padding:38px 25px;background:linear-gradient(145deg,var(--vaganet-black) 0 77%,var(--vaganet-orange) 77% 100%)}
    .hero:after{display:none}
    .hero h1{font-size:34px;letter-spacing:-.8px}
    .hero p{font-size:16px}
    .topbar .container{align-items:flex-start;flex-direction:column}
    .nav{width:100%;justify-content:flex-start;gap:2px}
    .nav a,.nav button{padding:8px 9px}
    .split{flex-direction:column}
    .table th,.table td{min-width:130px}
    .brand-suffix{display:none}
}

@media(max-width:480px){
    .container{width:min(100% - 22px,1120px)}
    .main{padding-top:22px}
    .hero{border-radius:17px;padding:32px 21px}
    .hero h1{font-size:30px}
    .card{padding:19px;border-radius:14px}
    .actions .btn{width:100%}
}

/* v1.2.0 - cadastro empresarial e documentos legais */
.form-card-wide{max-width:920px}
.form-section-title{font-size:18px;margin:28px 0 16px;padding-bottom:9px;border-bottom:1px solid var(--vaganet-border)}
.form-section-title:before{content:"";display:inline-block;width:4px;height:18px;margin-right:9px;border-radius:99px;background:var(--vaganet-orange);vertical-align:-3px}
.field-span-2{grid-column:span 2}
.uppercase{text-transform:uppercase}
.verification-note{margin:18px 0 26px}
.legal-checkbox{padding:12px 14px;background:#fafafa;border:1px solid var(--vaganet-border);border-radius:10px}
.legal-checkbox label{font-weight:650;line-height:1.5}
.legal-page{max-width:920px;margin:0 auto;padding:34px}
.legal-page h1{font-size:36px;margin-bottom:8px}
.legal-page h2{font-size:21px;margin-top:32px;margin-bottom:10px;padding-left:12px;border-left:4px solid var(--vaganet-orange)}
.legal-page p,.legal-page li{line-height:1.72}
.legal-page ul{padding-left:24px}
.legal-heading{margin-bottom:24px}
.legal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid var(--vaganet-border)}
.footer-content{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
.footer-links a{font-size:14px}
.audit-details{margin-top:8px}
.audit-details summary{cursor:pointer;color:var(--vaganet-orange-dark);font-weight:700}
.status-verified{background:#e4f5eb;color:#12613a}
.status-not_started,.status-verification_pending{background:#f0f0f2;color:#555}
@media(max-width:800px){.field-span-2{grid-column:span 1}.legal-page{padding:24px}.legal-page h1{font-size:30px}.footer-content{align-items:flex-start;flex-direction:column}}
