/* A Locadora — aplicação da identidade fornecida pelo cliente.
   Cores aproximadas das amostras rasterizadas do material de branding. */
:root{--brand-blue:#0000fe;--brand-yellow:#ffd600;--brand-navy:#010171;--brand-ink:#09333f;--ink:#182244;--muted:#5e687e;--blue:var(--brand-blue);--line:#e2e5f0;--surface:#f5f6fb}
body{background:var(--surface);color:var(--ink)}
aside{width:250px;background:var(--brand-navy);color:#d1d3f4;padding:30px 20px 24px;border-right:0}
aside::after{content:'';position:absolute;bottom:0;left:0;right:0;height:5px;background:var(--brand-yellow)}
.brand{letter-spacing:0;line-height:1;white-space:normal}
.brand img{display:block;width:100%;height:auto;object-fit:contain}
aside>.brand{width:210px;margin:0 0 36px;flex-shrink:0}
aside>small{color:#d3d5ff;font-size:10px;letter-spacing:1.5px;margin-bottom:15px}
nav{gap:6px}
nav button{color:#e0e1ff;font-size:13px;font-weight:500;border-radius:7px;padding:14px 15px;transition:background .15s,color .15s}
nav button:hover{background:#242496;color:#fff}
nav button.active{background:var(--brand-yellow);color:var(--brand-navy);font-weight:700;box-shadow:0 3px 12px #00002519}
.side-bottom{color:#c0c3e8;font-size:11px;padding:16px 10px 4px;line-height:1.8}
.side-bottom p:first-child{color:#f7f7ff}.side-bottom hr{border-color:#ffffff30;margin:20px 0}
.workspace{margin-left:250px}
header{height:76px;padding:0 36px;color:#52617b;border-bottom-color:var(--line)}
.tag{color:var(--brand-navy);background:#eeeeff;font-size:9px;letter-spacing:.8px;font-weight:600}
main{max-width:1600px;padding:36px}
.heading{position:relative;padding-top:16px}
.heading::before{content:'';position:absolute;top:0;left:0;width:48px;height:5px;border-radius:2px;background:var(--brand-yellow)}
.eyebrow{color:#414da1;font-size:10px;letter-spacing:1.7px}
h1{font-size:29px;line-height:1.3;letter-spacing:-.9px;color:#121447}
h2,h3{color:#17184d}.subtitle{font-size:13px;color:#5e687e;line-height:1.7}
.primary{background:var(--brand-blue);color:white;font-size:13px;font-weight:700;padding:13px 20px;box-shadow:0 3px 8px #0000fe10}
.primary:hover{background:#0000c5}.secondary{border-color:#d8ddef;color:#313c70;font-size:12px}
.secondary:hover{background:#f0f1ff;border-color:#b3b8ee}
.link-button{color:#2929ba;font-size:11px}.notice{border-left:3px solid var(--brand-yellow);color:#5f6b81;font-size:11px;background:#fff;padding:11px 14px;border-radius:0 6px 6px 0;margin:23px 0 26px}
.stats{gap:16px}.stat{border-color:var(--line);border-top:3px solid #c2c2ff;padding:21px;border-radius:9px}
.stat.blue{border-top-color:var(--brand-blue)}.stat.warn{border-top-color:var(--brand-yellow)}
.stat small{color:#5e687e;font-size:12px}.stat strong{color:var(--brand-navy);font-size:32px}.stat.blue strong{color:var(--brand-blue)}.stat.warn strong{color:#94520b}.stat em{color:#687389;font-size:11px;line-height:1.6}
.panel{box-shadow:0 2px 7px #0c124503;border-color:var(--line)}
.panel-head h3{font-size:14px}.panel-head p{color:#657188;font-size:12px;line-height:1.6}
.tabs button{color:#616e85;font-size:11px}.tabs button.active{color:var(--brand-blue);border-color:var(--brand-blue)}
.task{padding-top:21px;padding-bottom:21px}.task-title b{font-size:13px;color:#1b2346}.avatar{background:#eeeeff;color:#2424a1}
.task p,.deal p,.client-row p{color:#606d84;font-size:12px}.task .owner-label,.deal .owner-label{color:#3d4692!important;font-size:11px!important}
.task-bottom{color:#647087;font-size:11px}.task-bottom strong{color:#374986}.task:hover,.deal:hover{background:#f7f8ff}
.badge{background:#eeeeff;color:#3e4395;font-size:10px}.badge.late{background:#fff1d4;color:#875012}.badge.won{background:#e9f6ee;color:#25623e}
.section-note{color:#68768c;font-size:11px;background:#fafbff}.pipe-label{color:#58667e;font-size:12px}.bar{background:#ececfc}.bar i{background:var(--brand-blue)!important;opacity:.56}
.insight{position:relative;background:#fff9d9;border-color:#f2dfa0;border-left:4px solid var(--brand-yellow)}
.insight h3{color:var(--brand-navy)}.insight p{color:#625c3b;font-size:12px}.insight button{color:#30308d;font-weight:600}
.column{background:#eeeff8;border:1px solid #e3e5f0}.column h3{color:#515d7c}.deal{border-color:#dce0ef}.board-hint{color:#637089;font-size:12px}
.rules p{color:#5c6981;font-size:13px}.rules h2{color:var(--brand-navy)}.rules table{font-size:13px}.report-table th{color:#242452;line-height:1.5}.report-table td{color:#263456}.report-table tbody tr:nth-child(even){background:#f8f9ff}
.report-controls{gap:14px}.pending-items{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 22px}
label{font-size:12px;color:#56617a;line-height:1.5}input,textarea,select{font-size:13px;color:#24314c;border-color:#d7ddec;padding:12px;border-radius:6px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#7777ff;border-color:var(--brand-blue)}
input[type=checkbox]{accent-color:var(--brand-blue)}button:focus-visible{outline:3px solid #9292ff;outline-offset:3px}
dialog{border-top:5px solid var(--brand-yellow);box-shadow:0 22px 90px #07073844}dialog::backdrop{background:#08083b88}
.modal-head h2{color:var(--brand-navy)}.modal-head button{background:#eeeefe;color:#484b8e}
.totals{background:#f1f1ff;color:#202060}.hint{font-size:11px;color:#64728b}.history-panel{background:#f8f8ff;border-color:#e0e2f4}.history-item{font-size:12px}.history-item small{color:#68758d;font-size:11px}
.item-editor{background:#fcfcff;border-color:#dde0f2}.equipment-line{gap:10px}.equipment-line .secondary{padding:12px 10px}
footer{color:#606d86;border-top-color:#dfe3ef;font-size:11px}footer>span{color:#6b7690}#toast{background:var(--brand-navy);border-left:4px solid var(--brand-yellow);font-size:13px}
/* Login: a marca ganha espaço sem competir com os campos de acesso. */
.login-screen{position:relative;grid-template-columns:minmax(300px,540px) minmax(340px,460px);gap:80px;padding:60px;background:var(--brand-navy);overflow:hidden;align-content:center}
.login-screen::after{content:'';position:absolute;left:0;right:0;bottom:0;height:9px;background:var(--brand-yellow)}
.login-brand-panel{position:relative;color:#fff;padding:15px;z-index:1}
.login-brand-panel .brand{width:min(390px,100%);margin:0 0 48px}
.login-brand-panel .eyebrow{color:var(--brand-yellow);margin-bottom:18px}
.login-brand-panel h2{color:#fff;font:800 clamp(32px,3.2vw,45px)/1.22 Manrope,sans-serif;letter-spacing:-1.5px;max-width:480px}
.login-brand-panel>p:last-child{font-size:15px;line-height:1.9;color:#d4d6f3;max-width:400px;margin:24px 0 0}
.login-card{position:relative;z-index:1;width:100%;padding:36px;border-radius:12px;border:1px solid #fff;border-top:5px solid var(--brand-yellow);box-shadow:0 24px 70px #00003840}
.login-card .brand{width:min(300px,100%);margin:0 0 24px}.login-card h1{font-size:26px;color:var(--brand-navy)}
.login-card .subtitle{font-size:13px}.login-card .hint{font-size:11px;color:#68758b}.login-card label{margin-top:19px}.login-card .primary{font-size:14px;padding:15px}
#recovery-screen{grid-template-columns:minmax(0,460px);gap:0}.recovery-logo{height:auto;width:260px;max-width:100%;margin:0 0 24px}
@media(max-width:1100px){aside{width:215px;padding:26px 14px}aside>.brand{width:187px}.workspace{margin-left:215px}main{padding:30px 24px}header{padding:0 24px}.login-screen{gap:35px;padding:40px}.login-brand-panel h2{font-size:34px}.login-card{padding:29px}}
@media(max-width:700px){aside{width:100%;padding:13px 16px 10px;border-bottom:3px solid var(--brand-yellow)}aside::after{display:none}aside>.brand{width:170px;margin:0 0 12px}nav{gap:4px}nav button{font-size:11px;padding:10px 12px}.workspace{margin-left:0}header{height:56px;padding:0 16px}.tag{font-size:8px;padding:6px}.heading{gap:16px}main{padding:25px 16px}.heading h1{font-size:25px}.stat{padding:16px}.stat small{font-size:11px}.stat strong{font-size:28px}.notice{font-size:11px}.login-screen{display:grid;grid-template-columns:minmax(0,460px);padding:30px 20px;gap:24px;overflow:visible}.login-brand-panel{padding:0}.login-brand-panel .brand{width:215px;margin:0 auto}.login-brand-panel h2,.login-brand-panel>p{display:none}.login-card{padding:26px}.login-card .brand{display:none}.login-card h1{font-size:24px}.report-controls{align-items:stretch}.report-controls>button{white-space:normal}.modal-footer .primary{font-size:12px}dialog{max-height:92vh}.task-title b{font-size:12px}.subtitle{font-size:13px}}
