:root{color:#14213d;background:#f4f7fb;font-family:Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:8px;padding:12px 18px;font-weight:600}button:hover{filter:brightness(.92)}button:disabled{opacity:.5;cursor:wait}button.link{color:#2459a7;background:0 0}input,select{color:#172742;background:#fff;border:1px solid #c8d1df;border-radius:8px;width:100%;min-width:0;padding:12px}label{color:#465670;gap:7px;font-size:14px;display:grid}form{gap:16px;display:grid}header{background:#fff;border-bottom:1px solid #dce3ed;justify-content:space-between;align-items:center;gap:20px;padding:20px 4%;display:flex}.brand{color:#173c70;align-items:center;gap:12px;font-size:26px;font-weight:700;text-decoration:none;display:flex}.brand b{color:#fff;background:#2563eb;border-radius:8px;place-items:center;width:46px;height:50px;font-size:34px;display:grid}.brand small{letter-spacing:.1em;margin-top:5px;font-size:10px;display:block}.account{font-size:14px}.wrap{max-width:1450px;margin:auto;padding:24px}.toolbar{align-items:end;gap:22px;margin-bottom:24px;display:flex}.toolbar label{min-width:220px}nav{flex-wrap:wrap;gap:4px;display:flex}.card{background:#fff;border:1px solid #dce3ed;border-radius:12px;min-width:0;margin-bottom:20px;padding:24px}.grid{grid-template-columns:340px minmax(0,1fr);gap:20px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.section-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}h1{font-size:28px}h2{font-size:20px}h1,h2{margin:0 0 18px}p{line-height:1.6}.hint{color:#56647a;font-size:14px}.feedback:empty{display:none}.feedback{border-radius:8px;margin:16px 0;padding:15px}.success{color:#166534;background:#f0fdf4}.error{color:#991b1b;background:#fef2f2}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:16px 10px}th{color:#57657a}td small{overflow-wrap:anywhere;margin-top:6px;display:block}.badge{color:#2459a7;background:#e7eeff;border-radius:8px;padding:4px 9px}.total{margin:20px 0;font-size:36px;display:block}.metrics{grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0;display:grid}.metrics article{color:#53647e;background:#fff;border:1px solid #dce3ed;border-radius:12px;padding:24px;font-size:14px}.metrics strong{color:#183765;margin-top:12px;font-size:28px;display:block}.login{background:linear-gradient(140deg,#0c2249,#194782);place-items:center;min-height:100vh;padding:24px;display:grid}.login .card{width:min(460px,100%);padding:32px}.login h1{margin-top:32px}.auth-links{justify-content:space-between;margin-top:18px;display:flex}.auth-links button{padding:8px;font-size:14px}label:has(input[type=hidden]){display:none}:focus-visible{outline-offset:3px;outline:3px solid #60a5fa}@media (width<=900px){.grid{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.metrics{grid-template-columns:1fr 1fr}header{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}}@media (width<=500px){.wrap{padding:16px}.card{padding:18px}.section-title{flex-direction:column;align-items:flex-start}.metrics article{padding:16px}.metrics strong{font-size:23px}.brand{font-size:22px}}.check-field{align-items:center;gap:10px;font-size:16px;display:flex}.check-field input[type=checkbox]{flex:none;width:20px;height:20px}.contract-card{max-width:1100px}.contract-tier{background:#f6f8fb;border-radius:8px;grid-template-columns:minmax(200px,1fr) minmax(170px,1fr) auto;align-items:end;gap:16px;margin:12px 0;padding:16px;display:grid}.duration-field{border:0;gap:12px;min-width:0;margin:0;padding:0;display:flex}.duration-field legend{color:#465670;margin-bottom:7px;font-size:14px}.duration-field label{flex:1}.contract-actions{gap:12px;display:flex}.contract-card [hidden]{display:none!important}#contract-error{border-radius:8px;padding:12px}@media (width<=600px){.contract-tier{grid-template-columns:1fr}.contract-actions{flex-wrap:wrap}}[hidden]{display:none!important}.app-header{min-height:88px;padding:18px 24px}.app-layout{grid-template-columns:245px minmax(0,1fr);align-items:start;min-height:calc(100vh - 88px);display:grid}.side-menu{color:#fff;background:#17324f;min-height:calc(100vh - 88px);padding:24px 16px;position:sticky;top:0}.side-menu>label{color:#d8e6f5;margin:0 0 26px}.side-menu select{margin-top:3px}.side-menu nav{flex-direction:column;gap:7px;display:flex}.side-menu nav button{text-align:left;border-radius:8px;width:100%;padding:14px 16px}.side-menu nav button.link{color:#dbe8f6;background:0 0}.side-menu nav button.link:hover{filter:none;background:#284866}.side-menu nav button.active{color:#fff;background:#2563eb}.app-main{width:100%;min-width:0;max-width:none;margin:0;padding:28px}.menu-toggle{display:none}.app-header .account{overflow-wrap:anywhere;margin-left:auto}@media (width<=1100px){.app-layout{grid-template-columns:215px minmax(0,1fr)}.app-main{padding:20px}.app-main .grid{grid-template-columns:1fr}}@media (width<=760px){.app-header{gap:12px;padding:14px 16px}.menu-toggle{align-items:center;display:inline-flex;padding:10px!important}.app-header .brand{font-size:21px}.app-header .brand small{font-size:8px}.app-header .brand b{width:36px;height:40px;font-size:27px}.app-header .account{text-align:right;width:100%;font-size:13px}.app-layout{min-height:0;display:block}.side-menu{min-height:0;padding:20px 16px;display:none;position:static}.side-menu.is-open{display:block}.side-menu nav{gap:4px}.side-menu>label{margin-bottom:16px}.app-main{padding:16px}.app-main .form-grid{grid-template-columns:1fr}}

button.danger{color:#b42318;border-color:#f0b4ad}.danger:hover{background:#fff1f0}


/* ParkControl Modern UI v3 */
:root{
  color:#172033;
  background:#f3f6fb;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --pc-primary:#2563eb;
  --pc-primary-dark:#1d4ed8;
  --pc-navy:#102a43;
  --pc-border:#e4e9f2;
  --pc-muted:#64748b;
  --pc-surface:#ffffff;
  --pc-shadow:0 12px 32px rgba(15,23,42,.07);
}
body{background:linear-gradient(180deg,#f8faff 0,#f3f6fb 45%,#eef3f9 100%);color:#172033}
.app-header{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(226,232,240,.9);box-shadow:0 4px 18px rgba(15,23,42,.035);position:relative;z-index:4}
.brand{letter-spacing:-.02em;color:#102a43}.brand b{background:linear-gradient(145deg,#2563eb,#1d4ed8);border-radius:14px;box-shadow:0 8px 20px rgba(37,99,235,.28)}
.app-layout{grid-template-columns:255px minmax(0,1fr)}
.side-menu{background:linear-gradient(180deg,#123252 0%,#0f2944 55%,#0b2239 100%);border-right:1px solid rgba(255,255,255,.05);box-shadow:12px 0 30px rgba(15,23,42,.05);padding:28px 18px}
.side-menu>label{font-weight:700;color:#dbeafe}.side-menu select{border-color:rgba(255,255,255,.16);background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.08);font-weight:600}
.side-menu nav{gap:8px}.side-menu nav button{border-radius:12px;font-weight:700;padding:14px 16px;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.side-menu nav button.link{color:#dce9f7}.side-menu nav button.link:hover{background:rgba(255,255,255,.09);transform:translateX(2px)}.side-menu nav button.active{background:linear-gradient(135deg,#3478f6,#2563eb);box-shadow:0 10px 24px rgba(37,99,235,.30)}
.app-main{padding:30px 32px 42px}.card{border:1px solid rgba(226,232,240,.92);border-radius:18px;box-shadow:var(--pc-shadow);padding:26px;background:rgba(255,255,255,.98)}
h1{font-size:30px;letter-spacing:-.03em;color:#102a43}h2{font-size:21px;letter-spacing:-.02em;color:#12263f}.section-title{margin-bottom:20px}
button{border-radius:11px;padding:12px 18px;background:linear-gradient(135deg,#2f72ee,#2563eb);box-shadow:0 7px 16px rgba(37,99,235,.18);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}button:hover{filter:none;transform:translateY(-1px);box-shadow:0 10px 22px rgba(37,99,235,.24)}button.link{box-shadow:none;background:transparent;color:#1f5fc4;padding:10px 12px}button.link:hover{background:#eff6ff;transform:none}.danger:hover{background:#fff1f0!important}
input,select{border:1px solid #d7dfeb;border-radius:11px;padding:13px 14px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.02);transition:border-color .16s ease,box-shadow .16s ease}input:focus,select:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(59,130,246,.11);outline:none}label{color:#40516a;font-weight:600}
fieldset{border:1px solid #dbe4f0;border-radius:14px;padding:16px;background:#f9fbfe}fieldset legend{padding:0 7px;color:#173d6f;font-weight:800}
.scroll{border:1px solid #e8edf5;border-radius:14px;background:#fff}table{border-collapse:separate;border-spacing:0}th{background:#f8fafc;color:#56657a;font-size:12px;text-transform:uppercase;letter-spacing:.045em;font-weight:800}th,td{border-bottom:1px solid #edf1f6;padding:17px 12px}tbody tr{transition:background .14s ease}tbody tr:hover{background:#f8fbff}tbody tr:last-child td{border-bottom:0}td:first-child{font-size:15px;font-weight:750;color:#162a44}
.badge{background:#e8f0ff;color:#1d5cc5;border-radius:999px;font-weight:800;padding:5px 10px}
.feedback{border-radius:13px;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.metrics{gap:20px}.metrics article{border-radius:17px;box-shadow:0 10px 26px rgba(15,23,42,.055);border-color:#e6ebf3}.metrics strong{letter-spacing:-.03em}
.ticket-code{display:inline-flex!important;width:max-content;align-items:center;gap:5px;margin-top:8px!important;padding:5px 9px;border-radius:999px;background:#eef4ff;color:#1f5fc4!important;font-size:12px!important;font-weight:800!important;letter-spacing:.06em}
.guest-name,.guest-apartment{display:block;margin-top:6px;color:#172033;line-height:1.3}.guest-name{font-size:15px;font-weight:800}.guest-apartment{font-size:14px;font-weight:800;color:#244365}.guest-name strong,.guest-apartment strong{font-weight:900}.guest-name::before{content:""}.guest-apartment::before{content:""}
#hotel-fields .guest-name,#hotel-fields .guest-apartment{font-size:inherit}
.account{color:#52657b}.account button{font-weight:700}
dialog.card{border:0;box-shadow:0 30px 90px rgba(15,23,42,.23)}dialog::backdrop{background:rgba(15,23,42,.48);backdrop-filter:blur(3px)}
.login{background:radial-gradient(circle at 15% 20%,#245cad 0,transparent 30%),linear-gradient(145deg,#0b203d,#153f70)}.login .card{border:1px solid rgba(255,255,255,.3);box-shadow:0 30px 80px rgba(2,12,27,.28)}
@media (width<=1100px){.app-layout{grid-template-columns:220px minmax(0,1fr)}.app-main{padding:22px}.guest-name{font-size:15px}.guest-apartment{font-size:14px}}
@media (width<=760px){.app-header{position:sticky;top:0}.app-main{padding:16px}.side-menu{box-shadow:none}.card{border-radius:15px;padding:19px}.scroll{border-radius:12px}th,td{padding:14px 10px}.guest-name{font-size:15px}.guest-apartment{font-size:14px}}


/* ParkControl — Opção 1: moderno e profissional (azul) */
:root{
  --pc-primary:#2563eb;
  --pc-primary-2:#3b82f6;
  --pc-primary-dark:#1d4ed8;
  --pc-navy:#081d36;
  --pc-navy-2:#0b2848;
  --pc-navy-3:#12365d;
  --pc-surface:#ffffff;
  --pc-page:#eef4fb;
  --pc-border:#dbe6f3;
  --pc-text:#10233f;
  --pc-muted:#64748b;
  --pc-shadow:0 12px 30px rgba(15,35,70,.08);
}
body{background:#eef4fb;color:var(--pc-text)}
.app-header{
  min-height:74px;
  padding:12px 24px;
  background:linear-gradient(90deg,#071a31 0%,#0b2747 58%,#0a2340 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 24px rgba(7,26,49,.18);
  color:#fff;
}
.app-header .brand{color:#fff;font-size:24px}
.app-header .brand b{width:42px;height:46px;border-radius:12px;background:linear-gradient(145deg,#2f7bff,#1557d6);box-shadow:0 8px 22px rgba(37,99,235,.4)}
.app-header .brand small{color:#b8cee7;font-size:9px}
.app-header .account{color:#dbeafe;font-weight:600}
.app-header .account .link{color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);margin-left:8px}
.app-header .account .link:hover{background:rgba(255,255,255,.15)}
.app-layout{grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 74px)}
.side-menu{
  min-height:calc(100vh - 74px);
  background:linear-gradient(180deg,#071b33 0%,#0b2949 52%,#071d35 100%);
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:12px 0 30px rgba(8,29,54,.07);
  padding:24px 14px;
}
.side-menu>label{color:#d7e6f6;font-size:13px;font-weight:800;margin-bottom:22px}
.side-menu select{border:1px solid rgba(255,255,255,.18);border-radius:11px;padding:12px;background:#fff;font-weight:700;color:#17324f;box-shadow:0 7px 18px rgba(0,0,0,.12)}
.side-menu nav{gap:7px}
.side-menu nav button{position:relative;border-radius:11px;padding:13px 14px;font-size:14px;font-weight:750;box-shadow:none}
.side-menu nav button::before{display:inline-block;width:22px;margin-right:8px;text-align:center;font-size:15px;opacity:.95}
.side-menu nav button[data-view="yard"]::before{content:"▣"}
.side-menu nav button[data-view="cash"]::before{content:"▤"}
.side-menu nav button[data-view="monthly"]::before{content:"◉"}
.side-menu nav button[data-view="contracts"]::before{content:"▧"}
.side-menu nav button[data-view="dashboard"]::before{content:"⌂"}
.side-menu nav button[data-view="members"]::before{content:"◎"}
.side-menu nav button[data-view="settings"]::before{content:"▦"}
.side-menu nav button[data-view="companies"]::before{content:"◇"}
.side-menu nav button.link{color:#dceafb}
.side-menu nav button.link:hover{background:rgba(255,255,255,.08);transform:translateX(2px)}
.side-menu nav button.active{background:linear-gradient(135deg,#2f78f3,#2563eb);box-shadow:0 10px 24px rgba(37,99,235,.3)}
.app-main{padding:24px 24px 38px;background:linear-gradient(180deg,#f6f9fd 0,#eef4fb 100%)}
#feedback.feedback{margin-top:0}
.grid{grid-template-columns:330px minmax(0,1fr);gap:16px;align-items:start}
.card{background:#fff;border:1px solid #dfe8f3;border-radius:15px;box-shadow:0 10px 28px rgba(15,35,70,.07);padding:22px}
h1{font-size:28px;color:#102a43;letter-spacing:-.035em}h2{font-size:20px;color:#122a47;letter-spacing:-.025em}
#content>.grid>.card:first-child{position:sticky;top:18px}
input,select{border:1px solid #d5e0ed;border-radius:9px;padding:12px 13px;background:#fff;box-shadow:none}
input:focus,select:focus{border-color:#5b95f5;box-shadow:0 0 0 4px rgba(37,99,235,.10)}
fieldset{background:#f8fbff;border:1px solid #dbe7f4;border-radius:12px;padding:14px}
fieldset legend{color:#173d6f;font-size:14px;font-weight:800}
button{border-radius:9px;padding:11px 16px;background:linear-gradient(135deg,#2d73ee,#2563eb);box-shadow:0 6px 14px rgba(37,99,235,.18);font-size:14px}
button.link{border:0;background:transparent;box-shadow:none;color:#1558bd;padding:8px 9px}
button.link:hover{background:#edf5ff;color:#0f4eab}
.scroll{border:1px solid #e2eaf4;border-radius:12px;overflow:auto;background:#fff}
table{font-size:13px}
th{background:#f4f8fc;color:#3f5874;font-size:11px;letter-spacing:.055em;padding:13px 12px;white-space:nowrap}
td{padding:14px 12px;vertical-align:middle;color:#233852}
tbody tr:hover{background:#f7fbff}
td:first-child{font-size:14px;font-weight:800;min-width:145px}
td:nth-child(2){min-width:130px}
td:nth-child(4){min-width:150px}
td:last-child{min-width:270px}
.ticket-code{margin-top:6px!important;padding:4px 8px;background:#e9f1ff;color:#1558bd!important;font-size:11px!important;letter-spacing:.04em}
.guest-name,.guest-apartment{margin-top:2px;line-height:1.25;font-weight:700}.guest-name{font-size:13px}.guest-apartment{font-size:12px;color:#405b7a}
.guest-name strong,.guest-apartment strong{font-weight:800}.guest-empty{color:#94a3b8}
.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:5px;max-width:360px}
.row-actions>button{white-space:nowrap;margin:0}
.row-actions .email-action{background:#edf5ff;color:#1558bd;border:1px solid #d7e8ff;padding:8px 10px}
.row-actions .email-action:hover{background:#dfeeff}
.section-title{margin-bottom:14px}.section-title h2{margin-bottom:0}
.badge{background:#e9f1ff;color:#1558bd;border-radius:999px;padding:4px 9px}
.metrics{gap:14px;margin:18px 0}.metrics article{border-radius:14px;padding:18px;box-shadow:0 8px 22px rgba(15,35,70,.06)}.metrics strong{font-size:25px}
.feedback{border-radius:12px;border:1px solid transparent;box-shadow:0 7px 22px rgba(15,35,70,.05)}.feedback.error{border-color:#fecaca}.feedback.success{border-color:#bbf7d0}
@media (max-width:1180px){.grid{grid-template-columns:300px minmax(0,1fr)}.app-layout{grid-template-columns:210px minmax(0,1fr)}td:last-child{min-width:235px}.row-actions{max-width:290px}}
@media (max-width:980px){.app-main .grid{grid-template-columns:1fr}#content>.grid>.card:first-child{position:static}.app-layout{grid-template-columns:200px minmax(0,1fr)}}
@media (max-width:760px){.app-header{background:linear-gradient(90deg,#071a31,#0b2747)}.app-header .account{color:#dbeafe}.app-layout{display:block}.side-menu{min-height:0}.app-main{padding:14px}.card{padding:17px}.row-actions{max-width:none}.scroll{border-radius:10px}}


/* User requested: exact opção 1 feel with collapsed menu, yard KPIs and car photos */
body:not(.menu-expanded) .app-layout{grid-template-columns:76px minmax(0,1fr)}
body.menu-expanded .app-layout{grid-template-columns:230px minmax(0,1fr)}
.menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;color:#fff!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.14)!important;padding:10px 13px!important;border-radius:12px!important}
body:not(.menu-expanded) .side-menu{padding:18px 10px}
body:not(.menu-expanded) .side-menu>label{display:none}
body:not(.menu-expanded) .side-menu nav button{padding:14px 10px;text-align:center}
body:not(.menu-expanded) .side-menu nav button::before{width:auto;margin-right:0;font-size:18px}
body:not(.menu-expanded) .side-menu nav button span{display:none}
body.menu-expanded .side-menu nav button span{display:inline}
body.menu-expanded .side-menu nav button{text-align:left;padding:13px 14px}
body.menu-expanded .side-menu nav button::before{margin-right:8px}
body:not(.menu-expanded) .app-main{padding-left:18px}
.option1-grid{grid-template-columns:330px minmax(0,1fr)!important}
.yard-main{display:grid;gap:16px}
.yard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0;margin-bottom:0}
.yard-metrics article{display:flex;flex-direction:column;justify-content:center;min-height:116px}
.yard-metrics article span{color:#173b6f;font-size:14px;font-weight:700}
.yard-metrics article strong{font-size:42px;line-height:1.05;margin-top:8px}
.plate-ticket-cell{display:flex;align-items:center;gap:12px;min-width:0}
.vehicle-thumb{width:58px;height:44px;object-fit:cover;border-radius:10px;border:1px solid #dbe6f3;background:linear-gradient(135deg,#eef4ff,#f8fbff);box-shadow:0 4px 10px rgba(15,35,70,.08);flex:0 0 auto}
.plate-ticket-info{min-width:0}
#yard-latest-exits table td:first-child{min-width:auto}
#yard-latest-exits .section-title{margin-bottom:10px}
.app-header .brand{min-width:240px}
.app-header .account{display:flex;align-items:center;gap:10px;white-space:nowrap}
.side-menu nav button{overflow:hidden}
@media (max-width:980px){
  body:not(.menu-expanded) .app-layout,body.menu-expanded .app-layout,.option1-grid{grid-template-columns:1fr!important}
  body:not(.menu-expanded) .side-menu>label{display:block}
  body:not(.menu-expanded) .side-menu nav button span{display:inline}
  body:not(.menu-expanded) .side-menu nav button::before{margin-right:8px}
  .yard-metrics{grid-template-columns:1fr}
}

.reprint-action{background:#f3f7ff!important;color:#174fa3!important;border:1px solid #dbe8fb!important}
.reprint-action:hover{background:#e8f1ff!important}

.fiscal-action{background:#f5f3ff!important;color:#6d28d9!important;border:1px solid #ddd6fe!important}.fiscal-action:hover{background:#ede9fe!important}
