:root{--ink:#15292f;--muted:#61747a;--subtle:#8a999d;--line:#dde6e7;--line-strong:#cbd8da;--canvas:#f4f7f7;--surface:#fff;--nav:#102d33;--nav-hover:#1a4148;--teal:#087080;--teal-dark:#075b67;--teal-pale:#e5f3f3;--blue:#276f9d;--blue-pale:#e9f2f8;--green:#15744f;--green-pale:#e7f6ee;--amber:#a55b05;--amber-pale:#fff4e4;--red:#ba4242;--red-pale:#fdeced;--purple:#7258aa;--radius:12px;--shadow:0 3px 16px rgba(21,41,47,.06);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--canvas);font-size:14px;line-height:1.45}button,input,select,textarea{font:inherit}button,a{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(8,112,128,.35)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh}.sidebar{width:252px;background:var(--nav);color:#dce7e8;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:10}.brand{height:76px;display:flex;align-items:center;gap:11px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#27aab1;color:#fff;font-size:18px;font-weight:800}.brand strong{display:block;color:#fff;font-size:15px;letter-spacing:-.01em}.brand span{display:block;color:#90aeb2;font-size:12px;margin-top:-2px}.sidebar nav{padding:18px 12px;overflow:auto}.nav-link{height:42px;display:flex;align-items:center;gap:12px;padding:0 12px;margin:2px 0;border-radius:8px;color:#b8cccf;text-decoration:none;font-size:14px;font-weight:520}.nav-link .icon{color:#8eaaae}.nav-link small{margin-left:auto;font-size:10px;font-weight:650;color:#79969a}.nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.nav-link.active{background:var(--nav-hover);color:#fff;font-weight:650}.nav-link.active .icon{color:#72d1d3}.sidebar-bottom{margin-top:auto;padding:16px 12px;border-top:1px solid rgba(255,255,255,.08)}.tenant{display:flex;align-items:center;gap:9px;padding:7px}.tenant-logo{width:30px;height:30px;border-radius:8px;background:#244b51;display:grid;place-items:center;font-size:11px;font-weight:700;color:#cde7e8}.tenant div:nth-child(2){min-width:0;flex:1}.tenant strong,.tenant span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant strong{font-size:12px;color:#f5fafa}.tenant span{font-size:10px;color:#89a4a7}.tenant>.icon{color:#89a4a7}.main{margin-left:252px;min-height:100vh}.topbar{height:76px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.breadcrumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:13px}.breadcrumb b{font-weight:400;color:#b0bfc1}.breadcrumb strong{color:var(--ink);font-weight:650}.topbar-actions{display:flex;align-items:center;gap:14px}.icon-button{display:inline-grid;place-items:center;border:0;background:transparent;color:var(--muted);width:36px;height:36px;border-radius:8px}.icon-button:hover{background:#edf3f3;color:var(--ink)}.notification{position:relative}.dot{position:absolute;width:7px;height:7px;top:7px;right:8px;background:#df5f52;border:2px solid #fff;border-radius:50%}.profile{display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:3px;border-radius:8px;text-align:left}.profile:hover{background:#f1f5f5}.avatar,.entity-avatar{display:grid;place-items:center;flex:none;border-radius:50%;background:#d9eeed;color:var(--teal-dark);font-size:11px;font-weight:750}.avatar{width:34px;height:34px}.profile-name strong,.profile-name small{display:block}.profile-name strong{font-size:12px}.profile-name small{font-size:11px;color:var(--muted)}.mobile-menu{display:none}.content{max-width:1580px;padding:30px 34px 46px;margin:auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.eyebrow{margin:0 0 4px;text-transform:uppercase;letter-spacing:.09em;font-size:10px;color:var(--teal);font-weight:750}.page-header h1{margin:0;font-size:26px;line-height:1.2;letter-spacing:-.035em}.page-description{margin:7px 0 0;color:var(--muted);font-size:14px}.button{min-height:38px;border-radius:8px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;font-weight:650;font-size:13px;text-decoration:none;white-space:nowrap}.button-primary{background:var(--teal);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.08)}.button-primary:hover{background:var(--teal-dark)}.button-secondary{background:#fff;border-color:var(--line-strong);color:#29444a}.button-secondary:hover{background:#f3f7f7;border-color:#b4c8cb}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:22px}.summary-card{min-height:132px;position:relative;display:flex;gap:11px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.summary-card:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:0 3px 3px 0;background:#b3c1c3}.summary-card.positive:before{background:var(--green)}.summary-card.info:before{background:var(--blue)}.summary-card.warning:before{background:#d38a24}.summary-card.danger:before{background:var(--red)}.summary-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#eff4f4;color:#547278;flex:none}.positive .summary-icon{background:var(--green-pale);color:var(--green)}.info .summary-icon{background:var(--blue-pale);color:var(--blue)}.warning .summary-icon{background:var(--amber-pale);color:var(--amber)}.danger .summary-icon{background:var(--red-pale);color:var(--red)}.summary-card p{margin:0;color:var(--muted);font-size:11px;min-height:31px}.summary-card strong{display:block;margin:2px 0 1px;font-size:20px;letter-spacing:-.035em}.summary-card small{color:var(--subtle);font-size:10px;line-height:1.25;display:block}.dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.panel-wide{grid-column:span 1}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:19px 20px 16px}.panel-heading h2{margin:0;font-size:16px;letter-spacing:-.02em}.panel-heading p{margin:3px 0 0;color:var(--muted);font-size:12px}.text-link,.table-link{display:inline-flex;align-items:center;gap:2px;color:var(--teal);font-size:12px;font-weight:650;text-decoration:none}.text-link:hover,.table-link:hover{text-decoration:underline}.table-wrap{width:100%;overflow:auto;border-top:1px solid var(--line)}table{border-collapse:collapse;width:100%;min-width:630px;text-align:left}th{height:37px;padding:0 20px;background:#fafcfc;border-bottom:1px solid var(--line);color:#708286;font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;white-space:nowrap}td{height:58px;padding:9px 20px;border-bottom:1px solid #edf1f1;color:#465c61;font-size:12px;vertical-align:middle;white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f9fbfb}td strong{color:#263f45;font-size:12px}.badge{height:22px;display:inline-flex;align-items:center;gap:5px;padding:0 8px;border-radius:99px;font-size:10px;font-weight:700;white-space:nowrap;background:#eff3f3;color:#52666b}.badge span{width:5px;height:5px;border-radius:50%;background:currentColor}.badge-disponivel,.badge-ativo,.badge-aprovado,.badge-confirmada,.badge-em-andamento,.badge-operacional,.badge-no-prazo{color:var(--green);background:var(--green-pale)}.badge-locado,.badge-enviado,.badge-em-preparacao{color:var(--blue);background:var(--blue-pale)}.badge-reservado,.badge-rascunho,.badge-atencao{color:var(--amber);background:var(--amber-pale)}.badge-manutencao,.badge-atrasada,.badge-rec-usado{color:var(--red);background:var(--red-pale)}.badge-inativo,.badge-expirado{color:#63767a;background:#eef2f2}.badge-pf{color:var(--purple);background:#f0ecf8}.badge-pj{color:#516d77;background:#eaf1f3}.badge-recusado{color:var(--red);background:var(--red-pale)}.alert-list{padding:0 14px 9px}.alert-item{display:grid;grid-template-columns:28px 1fr 22px;align-items:start;gap:8px;padding:12px 6px;border-bottom:1px solid #edf1f1}.alert-item:last-child{border-bottom:0}.alert-item>.icon{margin-top:2px;padding:5px;border-radius:7px;box-sizing:content-box}.alert-item.warning>.icon{color:var(--amber);background:var(--amber-pale)}.alert-item.danger>.icon{color:var(--red);background:var(--red-pale)}.alert-item.info>.icon{color:var(--blue);background:var(--blue-pale)}.alert-item strong{font-size:12px}.alert-item p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.35}.alert-item button{border:0;background:transparent;color:#93a2a5;padding:0;margin-top:5px}.filter-bar{display:flex;align-items:flex-end;gap:10px;padding:18px 20px;border-bottom:1px solid var(--line);background:#fcfdfd}.search-field{height:38px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:#789094;min-width:260px;flex:1}.search-field input{border:0;outline:0;width:100%;font-size:12px;color:var(--ink);background:transparent}.select-field{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:10px;font-weight:650}.select-field select{height:38px;min-width:120px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;padding:0 28px 0 10px;color:#365056;font-size:12px}.filter-reset{min-height:38px}.results-line{display:flex;justify-content:space-between;padding:12px 20px;color:var(--muted);font-size:11px}.results-line span:last-child{color:#87999c}.entity-cell{display:flex;align-items:center;gap:9px}.entity-avatar{width:29px;height:29px;font-size:9px}.entity-cell strong,.entity-cell small{display:block}.entity-cell small{font-size:10px;color:var(--muted);margin-top:1px}.row-action{margin-left:auto}.equipment-cell{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.equipment-cell strong,.equipment-cell small{display:block}.equipment-cell small{font-size:10px;color:var(--muted);margin-top:2px}.equipment-thumb{display:grid;place-items:center;width:35px;height:35px;border:1px solid #dce6e6;border-radius:8px;font-size:10px;font-weight:800;letter-spacing:.03em;color:#37595e;background:#edf4f4}.thumb-pa{background:#edf2fa;color:#395f8b}.thumb-me{background:#f6eee3;color:#8b6332}.thumb-cs{background:#f4f3e9;color:#6e6b37}.thumb-ge{background:#eff0f5;color:#5c6386}.unit-counts{display:flex;gap:5px;font-size:10px}.unit-counts .available,.available{color:var(--green)}.unit-counts .maintenance,.maintenance{color:var(--red)}.equipment-filters .search-field{max-width:330px}.empty-state{padding:64px 20px;text-align:center}.empty-state .state-icon,.simple-state .state-icon{margin:0 auto 13px}.state-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--teal-pale);color:var(--teal)}.empty-state h2,.simple-state h2{margin:0;font-size:16px}.empty-state p,.simple-state p{max-width:440px;margin:7px auto 16px;color:var(--muted);font-size:13px}.back-link{display:inline-flex;align-items:center;gap:5px;margin-bottom:17px;color:var(--teal);font-weight:650;text-decoration:none;font-size:12px}.equipment-hero{display:flex;align-items:center;gap:13px;margin-bottom:17px}.equipment-thumb.large{width:56px;height:56px;border-radius:12px;font-size:15px}.equipment-hero h1{margin:0;font-size:24px;letter-spacing:-.035em}.equipment-hero p:not(.eyebrow){margin:3px 0 0;color:var(--muted);font-size:13px}.hero-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.equipment-summary{display:flex;gap:26px;padding:13px 20px;background:#eaf4f4;border:1px solid #d2e5e5;border-radius:10px;margin-bottom:19px;color:#587176;font-size:12px}.equipment-summary strong{color:#25484e}.tabs{display:flex;gap:3px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow:auto}.tabs button{height:40px;padding:0 14px;flex:none;background:transparent;border:0;border-bottom:2px solid transparent;color:#73868a;font-size:12px;font-weight:650}.tabs button:hover{color:var(--ink)}.tabs button.active{color:var(--teal);border-bottom-color:var(--teal)}.detail-columns{display:grid;grid-template-columns:1.25fr .9fr;gap:18px}.details-list{display:grid;grid-template-columns:repeat(2,1fr);margin:0;padding:0 20px 18px;gap:0 20px}.details-list div,.spec-list div{padding:11px 0;border-bottom:1px solid #edf1f1}.details-list dt,.spec-list dt{color:var(--muted);font-size:11px}.details-list dd,.spec-list dd{margin:3px 0 0;font-weight:650;color:#2d474d;font-size:13px}.description-box{margin:0 20px 20px;padding:14px;background:#f6f9f9;border-radius:8px}.description-box h3{font-size:12px;margin:0 0 5px}.description-box p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.spec-list{margin:0;padding:0 20px 10px}.section-note{margin:6px 20px 20px;padding:10px 12px;background:#fbf5e9;border-radius:7px;color:#826427;font-size:11px}.simple-state{padding:56px 24px;text-align:center}.simple-state p{line-height:1.5}.modal-layer{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:20px;background:rgba(13,35,40,.45);backdrop-filter:blur(2px)}.modal{width:min(700px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 60px rgba(14,36,41,.26)}.modal-header{padding:20px 24px 17px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line)}.modal-header h2{font-size:19px;margin:0}.modal-header .icon-button{margin:-5px}.form-section{padding:19px 24px;border-bottom:1px solid var(--line)}.form-section h3{margin:0 0 15px;font-size:13px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px 16px}.form-grid label,.period-grid label,.quote-item label,.service-list label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#536b70;font-weight:650}.form-grid input,.form-grid select,.form-grid textarea,.period-grid input,.quote-item input,.service-list input,.service-list select{width:100%;height:38px;border:1px solid var(--line-strong);border-radius:7px;padding:0 9px;color:var(--ink);background:#fff;font-weight:400}.form-grid textarea{height:auto;padding:9px;resize:vertical}.span-2{grid-column:span 2}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px}.muted-callout{margin:20px 24px;padding:13px;display:flex;gap:10px;align-items:flex-start;border-radius:8px;background:#f1f7f7;color:#527177}.muted-callout .icon{color:var(--teal);margin-top:2px}.muted-callout strong{font-size:12px;color:#32575c}.muted-callout p{font-size:11px;margin:2px 0 0}.wizard-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;align-items:start}.wizard-steps{padding:8px;border-radius:12px;background:#edf3f3}.wizard-steps button{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;padding:10px 9px;border-radius:8px;text-align:left;color:#6c8084;font-size:12px}.wizard-steps button>span{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#d5e2e3;color:#537277;font-size:10px;font-weight:750}.wizard-steps button.active{background:#fff;color:#234b51;box-shadow:0 1px 4px rgba(20,58,63,.08)}.wizard-steps button.active>span{background:var(--teal);color:#fff}.wizard-steps button.done{color:#47736a}.wizard-steps button.done>span{background:var(--green);color:#fff}.wizard-content{min-width:0}.wizard-panel{padding:25px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);min-height:390px}.wizard-panel.compact{min-height:300px}.wizard-panel h2{margin:0;font-size:19px;letter-spacing:-.025em}.wizard-panel>div>p:not(.eyebrow){margin:5px 0 20px;color:var(--muted);font-size:13px}.customer-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:18px 0}.customer-option{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.customer-option:hover{border-color:#a9c6c9;background:#fbfdfd}.customer-option.selected{border-color:var(--teal);background:var(--teal-pale);box-shadow:inset 0 0 0 1px var(--teal)}.customer-option input{position:absolute;opacity:0}.customer-option strong,.customer-option small{display:block}.customer-option strong{font-size:12px}.customer-option small{color:var(--muted);font-size:10px;margin-top:2px}.customer-option .badge{margin-left:auto}.period-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:620px;margin:25px 0}.info-banner{display:flex;align-items:center;gap:8px;padding:12px;background:#edf7f7;border:1px solid #d5eaea;color:#39656a;border-radius:8px;font-size:12px}.info-banner .icon{color:var(--teal)}.split-heading{display:flex;justify-content:space-between;gap:12px}.quote-items{border:1px solid var(--line);border-radius:9px;overflow:hidden;margin-top:20px}.quote-item{display:grid;grid-template-columns:minmax(180px,1.4fr) 70px 112px 76px 112px 30px;gap:10px;align-items:end;padding:13px;border-bottom:1px solid var(--line);background:#fff}.quote-item:last-child{border-bottom:0}.item-main{display:flex;align-items:center;gap:9px;align-self:center}.item-main strong,.item-main small{display:block}.item-main strong{font-size:12px}.item-main small{font-size:10px;color:var(--muted);margin:1px 0 4px}.availability{font-size:10px;font-weight:700}.availability.good{color:var(--green)}.availability.limited{color:var(--amber)}.availability.none{color:var(--red)}.item-subtotal{padding-bottom:6px;text-align:right}.item-subtotal small,.item-subtotal strong{display:block}.item-subtotal small{font-size:10px;color:var(--muted)}.item-subtotal strong{font-size:12px}.quote-item>.icon-button{align-self:center}.service-list{margin-top:23px;border:1px solid var(--line);border-radius:9px}.service-list article{display:grid;grid-template-columns:minmax(160px,1fr) 150px 38px;gap:12px;align-items:end;padding:13px;border-bottom:1px solid var(--line)}.service-list article:last-child{border-bottom:0}.empty-inline{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px 0;color:var(--muted);font-size:13px}.empty-inline .icon{color:var(--teal)}.quote-summary{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px;margin-top:23px}.summary-customer{display:flex;align-items:flex-start;gap:10px;padding:15px;border-radius:9px;background:#f3f7f7}.summary-customer .entity-avatar{width:36px;height:36px}.summary-customer small,.summary-customer strong,.summary-customer span:not(.entity-avatar){display:block}.summary-customer small{font-size:10px;color:var(--muted)}.summary-customer strong{font-size:13px;margin:2px 0}.summary-customer span:not(.entity-avatar){font-size:11px;color:#567177}.summary-lines{padding:0 3px}.summary-lines h3{margin:0 0 7px;font-size:12px}.summary-lines h3:not(:first-child){margin-top:18px}.summary-lines>div{display:flex;justify-content:space-between;gap:15px;padding:6px 0;border-bottom:1px solid #edf1f1;font-size:12px}.summary-lines p{color:var(--muted);font-size:12px}.summary-lines small{color:var(--muted)}.summary-lines .total-line{margin-top:8px;padding:12px 0;border-bottom:0;font-weight:750;font-size:14px}.total-line strong{font-size:18px;color:var(--teal-dark)}.summary-lines .disclaimer{display:block;font-size:10px;line-height:1.35}.wizard-footer{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.wizard-footer>div{display:flex;gap:8px}.toast{position:fixed;right:24px;bottom:24px;z-index:40;max-width:390px;padding:12px 10px 12px 13px;display:flex;align-items:center;gap:9px;background:#18383e;color:#fff;border-radius:9px;box-shadow:0 12px 30px rgba(9,35,39,.24);font-size:12px}.toast-success>.icon{color:#72dbad}.toast-info>.icon{color:#8fcce8}.toast button{display:grid;place-items:center;border:0;background:transparent;color:#c2d5d7;margin-left:4px}.mobile-backdrop{display:none}
@media(max-width:1300px){.summary-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.panel-wide{grid-column:auto}.equipment-filters{flex-wrap:wrap}.equipment-filters .search-field{flex:1 1 45%}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:transform .2s ease}.nav-open .sidebar{transform:translateX(0)}.nav-open .mobile-backdrop{display:block;position:fixed;z-index:9;inset:0;background:rgba(8,29,34,.34)}.main{margin-left:0}.topbar{height:66px;padding:0 20px}.mobile-menu{display:grid}.breadcrumb span,.profile-name,.profile>.icon{display:none}.content{padding:23px 20px 38px}.page-header{align-items:flex-start}.summary-grid{grid-template-columns:repeat(2,1fr)}.detail-columns,.quote-summary{grid-template-columns:1fr}.wizard-layout{grid-template-columns:1fr}.wizard-steps{display:flex;gap:3px;overflow:auto;padding:6px}.wizard-steps button{width:auto;flex:none}.wizard-steps button strong{display:none}.customer-picker{grid-template-columns:1fr}.quote-item{grid-template-columns:minmax(170px,1fr) 80px 100px 70px}.quote-item .item-subtotal{display:none}.equipment-summary{flex-wrap:wrap;gap:9px 22px}.hero-actions{margin-left:auto}.filter-bar{flex-wrap:wrap}.search-field{flex:1 1 100%}.select-field{flex:1}.select-field select{min-width:0;width:100%}.filter-reset{margin-left:auto}}
@media(max-width:620px){.topbar{padding:0 13px}.content{padding:19px 13px 32px}.page-header{display:block;margin-bottom:19px}.page-header .button{margin-top:14px}.page-header h1{font-size:23px}.summary-grid{grid-template-columns:1fr 1fr;gap:9px}.summary-card{min-height:117px;padding:13px 9px;gap:7px}.summary-card p{font-size:10px}.summary-card strong{font-size:18px}.summary-icon{width:29px;height:29px}.panel-heading{padding:16px}.panel-heading .text-link{display:none}.filter-bar{padding:13px}.results-line{padding:10px 13px}.results-line span:last-child{display:none}.table-wrap{border-radius:0 0 var(--radius) var(--radius)}.responsive-table table{min-width:700px}.equipment-hero{align-items:flex-start;flex-wrap:wrap}.equipment-hero h1{font-size:21px}.hero-actions{width:100%;margin-left:0;justify-content:space-between}.equipment-summary{padding:12px;font-size:11px}.tabs button{padding:0 11px}.details-list{grid-template-columns:1fr;padding:0 16px 15px}.description-box{margin:0 16px 16px}.spec-list{padding:0 16px 10px}.section-note{margin:6px 16px 16px}.modal-layer{padding:0;align-items:end}.modal{max-height:93vh;border-radius:15px 15px 0 0}.modal-header,.form-section,.modal-footer{padding-left:17px;padding-right:17px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section{padding-top:15px;padding-bottom:15px}.muted-callout{margin:14px 17px}.wizard-panel{padding:18px;min-height:350px}.wizard-panel h2{font-size:17px}.period-grid{grid-template-columns:1fr;margin:18px 0}.quote-item{grid-template-columns:1fr 1fr 1fr 30px;gap:9px}.item-main{grid-column:span 3}.quote-item>.icon-button{grid-column:4;grid-row:1;align-self:start}.quote-item label{font-size:10px}.quote-item input{height:35px;padding:0 6px}.service-list article{grid-template-columns:1fr 105px 31px;gap:8px}.quote-summary{gap:14px}.wizard-footer{position:sticky;bottom:0;padding:10px 0 0;background:linear-gradient(to bottom,rgba(244,247,247,0),var(--canvas) 24%)}.wizard-footer .button{padding:0 9px}.toast{left:13px;right:13px;bottom:13px;max-width:none}.topbar-actions{gap:5px}.notification{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.equipment-thumb img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.image-upload-field{display:flex;flex-direction:column;gap:7px;color:var(--ink);font-size:12px;font-weight:650}.image-upload-field input[type=file]{width:100%;padding:10px;border:1px dashed var(--line-strong);border-radius:8px;background:#fbfdfd;color:var(--muted);font-weight:450}.image-upload-field small{color:var(--muted);font-size:11px;font-weight:450}.image-upload-preview{min-height:88px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#f7fafa}.image-upload-preview img{display:block;max-width:100%;max-height:190px;object-fit:contain}.image-upload-placeholder{padding:22px;color:var(--subtle);font-size:12px;font-weight:450}
/* Customers local-auth and persistence states */
.customer-access{max-width:620px;margin:24px auto;padding:30px;display:grid;gap:14px}.customer-access h2{margin:0;font-size:19px}.customer-access p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.customer-access code{padding:11px;border-radius:7px;background:#f2f6f6;color:#31555a;font-size:11px;overflow-wrap:anywhere}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:5px;color:#536b70;font-size:12px;font-weight:650}.auth-form input{height:40px;border:1px solid var(--line-strong);border-radius:7px;padding:0 10px;color:var(--ink)}.auth-form button{justify-self:start}.form-error,.customer-error{color:#9a3434;background:#fff5f4;border:1px solid #f0d4d1;border-radius:8px;padding:12px;font-size:12px}.customer-error{margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.form-success{color:#17664e;background:#edfaf3;border-radius:7px;padding:10px;font-size:12px}.text-button{border:0;padding:5px 0;background:transparent;color:var(--teal);font-size:12px;font-weight:650;text-align:left}.customer-actions{display:flex;gap:5px}.button-small{min-height:30px;padding:0 8px;font-size:11px}.customer-session{display:block;margin:14px 0 0 auto}

/* Detalhe, ações e documento de impressão do orçamento */
.quote-row-actions{display:flex;flex-wrap:wrap;gap:5px;min-width:190px}.button-small{min-height:30px;padding:0 8px;font-size:10px;white-space:nowrap}.button-quiet{background:transparent;border:1px solid var(--line);color:#456166}.quote-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.quote-status-panel{display:flex;flex-wrap:wrap;gap:22px 38px;padding:17px 20px;margin-bottom:16px}.quote-status-panel>div{min-width:100px}.quote-status-panel .eyebrow{margin-bottom:5px}.quote-status-panel strong{font-size:12px}.quote-detail-panel{margin-bottom:16px}.quote-detail-panel .details-list{padding-top:0}.quote-detail-table table{min-width:780px}.quote-description{display:block;margin-top:4px;color:var(--muted);font-size:10px;max-width:340px;white-space:normal}.quote-totals-panel{width:min(100%,520px);margin:0 0 16px auto;padding:20px}.quote-totals-panel h2{margin:0 0 10px;font-size:15px}.quote-totals-panel>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}.quote-totals-panel .detail-grand-total{margin-top:6px;border:0;font-size:15px;font-weight:750}.detail-grand-total strong{color:var(--teal-dark);font-size:19px}.quote-note{padding:0 20px 18px;margin:0;color:#38545a;font-size:13px;line-height:1.55;white-space:pre-wrap}.quote-disclaimer{margin:12px 0;color:var(--muted);font-size:11px}.quote-terms{max-width:none;grid-template-columns:1fr 1fr;margin-top:22px}.quote-terms label:last-child{grid-column:1/-1}.quote-terms textarea{width:100%;min-height:74px;border:1px solid var(--line-strong);border-radius:7px;padding:9px;color:var(--ink);font:inherit;resize:vertical}.quote-print-only{display:none}
@media(max-width:900px){.quote-status-panel{gap:16px 24px}.quote-detail-actions{margin-top:12px}}
@media(max-width:620px){.quote-row-actions{min-width:200px}.quote-detail-actions{width:100%}.quote-detail-actions .button{flex:1;justify-content:center}.quote-status-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-totals-panel{width:100%;padding:16px}.quote-terms{grid-template-columns:1fr}.quote-terms label:last-child{grid-column:auto}}
@page{size:A4;margin:14mm}
@media print{
  html,body{background:#fff!important;width:auto!important;min-width:0!important}
  body *{visibility:hidden!important}
  .quote-print-only,.quote-print-only *{visibility:visible!important}
  .quote-print-only{display:block!important;position:absolute!important;inset:0 auto auto 0!important;width:100%!important;color:#182b30!important;background:#fff!important;font:10pt/1.4 Arial,Helvetica,sans-serif!important}
  .quote-print-document{width:100%;max-width:none;margin:0 auto;padding:0}
  .print-heading{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #254e53;padding:0 0 12px;margin-bottom:16px}
  .print-heading .eyebrow{margin:0 0 5px;color:#426b70;font-size:9pt;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
  .print-heading h1{margin:0;font-size:20pt;letter-spacing:-.02em}.print-heading p:last-child{margin:5px 0 0;color:#687b7f;font-size:9pt}
  .print-status{padding:5px 9px;border:1px solid #cbd9d9;border-radius:4px;font-weight:700;font-size:9pt}
  .print-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 20px;padding:0 0 12px;border-bottom:1px solid #d9e1e1}
  .print-meta dt{font-size:8pt;color:#65777a}.print-meta dd{margin:3px 0 0;font-weight:700;font-size:9pt}
  .quote-print-document section{margin:0 0 17px;break-inside:avoid}.quote-print-document section h2{margin:0 0 7px;font-size:11pt;color:#284b50}.quote-print-document section p{margin:3px 0;font-size:9pt}
  .quote-print-document table{width:100%;border-collapse:collapse;font-size:8pt}.quote-print-document th{text-align:left;background:#f0f4f4;font-weight:700}.quote-print-document th,.quote-print-document td{padding:7px 6px;border:1px solid #d7e0e0;vertical-align:top}.quote-print-document td:first-child{width:37%}.quote-print-document .quote-description{font-size:8pt;color:#5f7074}
  .print-totals{width:60%;margin-left:auto!important}.print-totals>div{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #e0e6e6;font-size:9pt}.print-totals .print-grand-total{margin-top:4px;border:0;border-top:2px solid #284b50;font-size:13pt;font-weight:700}.print-grand-total strong{font-size:14pt}
  .quote-print-document footer{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:36px;padding-top:12px;border-top:1px solid #d7e0e0;color:#66777a;font-size:8pt;break-inside:avoid}.acceptance-line{width:190px;padding-top:27px;border-top:1px solid #87979a;text-align:center;color:#364e52}
}

/* Availability and reservation module */
.availability-period{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr)) auto;align-items:end;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}
.availability-period label,.reservation-form-panel .form-grid label{display:flex;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}
.availability-period input,.reservation-form-panel select,.reservation-form-panel input,.reservation-form-panel textarea,.reservation-filters input,.reservation-filters select,.availability-filters select{min-height:38px;border:1px solid var(--line-strong);border-radius:7px;padding:7px 9px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
.availability-explainer{align-self:center;max-width:240px;color:var(--muted);font-size:10px;line-height:1.35}
.availability-unit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;padding:4px}
.availability-unit{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}
.availability-unit small,.availability-unit em{font-size:10px;color:var(--muted);font-style:normal}
.availability-unit em{color:var(--red)}.availability-unit.is-available em{color:var(--green)}
.reservation-subline{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.reservation-filters{flex-wrap:wrap}.reservation-filters .search-field{min-width:220px}.reservation-filters input[type=date]{min-width:130px}
.reservation-wizard-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:start}
.reservation-form-panel{overflow:hidden}.reservation-form-panel .form-section{padding:20px;border-bottom:1px solid var(--line)}
.reservation-form-panel .form-section>h2,.reservation-section-heading h2{margin:0;font-size:15px}
.reservation-form-panel .form-grid{margin-top:16px}.reservation-section-heading{padding:0 0 14px;align-items:center}
.reservation-item-editor{padding:15px;margin:10px 0;border:1px solid var(--line);border-radius:9px;background:#fcfdfd}
.reservation-item-fields{display:grid;grid-template-columns:minmax(200px,1fr) 120px auto;gap:10px;align-items:end}
.reservation-item-fields label{display:flex;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}
.unit-selection-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:16px 0 9px}
.unit-selection-heading strong,.unit-selection-heading small{display:block}.unit-selection-heading strong{font-size:12px}.unit-selection-heading small{color:var(--muted);font-size:10px;margin-top:2px}
.unit-selection-heading>span{padding:4px 8px;border-radius:20px;background:var(--teal-pale);color:var(--teal-dark);font-weight:700;font-size:11px}
.unit-choice-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:8px}
.unit-choice{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
.unit-choice:has(input:checked){border-color:var(--teal);background:var(--teal-pale)}
.unit-choice input{accent-color:var(--teal);width:17px;height:17px;flex:none}
.unit-choice span{min-width:0;flex:1}.unit-choice strong,.unit-choice small{display:block}.unit-choice strong{font-size:11px}.unit-choice small{color:var(--muted);font-size:9px;margin-top:2px}
.unit-choice em{font-size:9px;color:var(--green);font-style:normal;white-space:nowrap}.unit-choice-disabled{opacity:.65;cursor:not-allowed}.unit-choice-disabled em{color:var(--red)}
.reservation-form-footer{display:flex;justify-content:space-between;gap:10px;padding:16px 20px}.reservation-form-footer>div{display:flex;gap:8px}
.reservation-guidance{padding:20px;position:sticky;top:94px}.reservation-guidance h2{font-size:16px;margin:4px 0 8px}.reservation-guidance p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.55}.reservation-quote-origin{padding:10px;border-radius:7px;background:#f2f6f6;color:#36575c;font-size:11px;font-weight:650}
.reservation-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.reservation-detail-card{padding:18px;min-width:0}.reservation-detail-card h2{font-size:15px;margin:4px 0}.reservation-detail-card>p{color:var(--muted);font-size:12px}.reservation-detail-wide{grid-column:1/-1;padding:0 0 12px}.reservation-detail-wide>.panel-heading{padding-bottom:12px}.reservation-eyebrow{margin-top:18px}.allocated-unit{display:inline-block;margin:2px 4px 2px 0;padding:5px 7px;border-radius:6px;background:var(--green-pale);color:var(--green);font-size:10px;font-weight:650}
@media(max-width:1000px){.reservation-wizard-grid{grid-template-columns:1fr}.reservation-guidance{position:static}.reservation-filters .search-field{max-width:none}}
@media(max-width:700px){.availability-period{grid-template-columns:1fr}.availability-period .button{width:100%}.availability-filters{align-items:stretch;flex-direction:column}.availability-filters .search-field{min-width:0;width:100%}.availability-explainer{max-width:none}.reservation-item-fields{grid-template-columns:1fr 100px}.reservation-item-fields button{grid-column:1/-1;justify-self:start}.reservation-form-panel .form-grid{grid-template-columns:1fr}.reservation-form-panel .span-2{grid-column:auto}.reservation-section-heading{align-items:flex-start;flex-direction:column}.reservation-form-footer{align-items:stretch;flex-direction:column-reverse}.reservation-form-footer>div{display:grid;grid-template-columns:1fr}.reservation-detail-grid{grid-template-columns:1fr}.reservation-detail-wide{grid-column:auto}.unit-choice-list{grid-template-columns:1fr}.reservation-filters{display:grid;grid-template-columns:1fr}.reservation-filters .search-field{min-width:0}.reservation-filters input[type=date]{width:100%}}

/* Contracts and Rentals */
.lifecycle-panel{margin:0 0 16px;padding:18px 20px;min-width:0}.lifecycle-panel>.panel-heading{padding:0 0 14px}.lifecycle-panel>h2{font-size:15px;margin:0 0 10px}.lifecycle-panel>p{color:var(--muted);font-size:12px;line-height:1.55}.lifecycle-note{background:#f8fbfb;border-style:dashed}.lifecycle-note>strong{font-size:12px}.lifecycle-note>p{margin:5px 0 0;color:var(--muted);font-size:11px}.lifecycle-form .form-grid{padding:0 20px 20px}.lifecycle-form .form-grid label,.lifecycle-services label{display:flex;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}.lifecycle-form input,.lifecycle-form select,.lifecycle-form textarea,.lifecycle-services input{min-height:37px;border:1px solid var(--line-strong);border-radius:7px;padding:7px 9px;background:#fff;color:var(--ink);font:inherit;font-weight:400}.lifecycle-form textarea{resize:vertical}.lifecycle-form table select,.lifecycle-form table input{min-width:90px;width:100%}.lifecycle-services{display:grid;gap:10px;padding:0 20px 18px}.lifecycle-services>div{display:grid;grid-template-columns:minmax(180px,1fr) 160px auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:8px}.contract-print-only{display:none}
@media(max-width:650px){.lifecycle-panel{padding:15px}.lifecycle-form .form-grid{padding:0 15px 16px}.lifecycle-services{padding:0 15px 15px}.lifecycle-services>div{grid-template-columns:1fr 110px}.lifecycle-services>div button{grid-column:1/-1;justify-self:start}}
@page{size:A4;margin:14mm}
@media print{.contract-print-only,.contract-print-only *{visibility:visible!important}.contract-print-only{display:block!important;position:absolute!important;inset:0 auto auto 0!important;width:100%!important;color:#182b30!important;background:#fff!important;font:10pt/1.4 Arial,Helvetica,sans-serif!important}.contract-print-document section{margin:0 0 16px;break-inside:avoid}.contract-print-document section h2{margin:0 0 7px;color:#284b50;font-size:11pt}.contract-print-document table{width:100%;border-collapse:collapse;font-size:8pt}.contract-print-document th,.contract-print-document td{padding:7px 6px;border:1px solid #d7e0e0;vertical-align:top}.contract-print-document th{background:#f0f4f4;text-align:left}.contract-print-document footer{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:32px;padding-top:12px;border-top:1px solid #d7e0e0;font-size:8pt;break-inside:avoid}}

.button-danger{border:1px solid #e7bcbc;background:#fff;color:#9b3030}.button-danger:hover{background:#fff3f2;border-color:#d99999}

.contract-clause-options,.contract-template-list{display:grid;gap:10px;padding:0 20px 18px}.contract-clause-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.contract-clause-option input,.checkbox-label input{width:18px;height:18px;min-height:18px;margin:1px 0 0;accent-color:var(--teal);flex:0 0 auto}.contract-clause-option span{display:grid;gap:4px;min-width:0}.contract-clause-option small{color:var(--muted);line-height:1.5;white-space:pre-wrap}.contract-clause-option em{margin-left:auto;color:var(--muted);font-size:11px;font-style:normal}.contract-clause{padding:10px 0;border-top:1px solid var(--line)}.contract-clause h3{font-size:13px;margin:0 0 5px}.contract-clause p{white-space:pre-wrap;line-height:1.6}.contract-template-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:16px;border:1px solid var(--line);border-radius:9px;background:#fff}.contract-template-card h3{margin:0;font-size:14px}.contract-template-card p{margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.65;white-space:pre-wrap}.template-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.template-title-line>small{color:var(--muted);font-size:11px}.contract-template-actions{display:flex;align-items:flex-start;gap:7px}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important}
@media(max-width:650px){.contract-template-card{grid-template-columns:1fr}.contract-template-actions{flex-wrap:wrap}.contract-clause-options,.contract-template-list{padding:0 15px 15px}}

/* Returns and unit inspections */
.return-context{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px 20px;margin-bottom:16px}
.return-context>div{min-width:0}.return-context>div strong{display:block;font-size:12px;overflow-wrap:anywhere}
.return-hint{grid-column:1/-1;margin:0;padding:10px 12px;border-radius:7px;background:#f2f7f7;color:#536d72;font-size:11px;line-height:1.5}
.return-form{display:grid;gap:14px}.return-unit-card{overflow:hidden}.return-unit-card>.panel-heading{padding-bottom:14px}.return-unit-card .panel-heading h2{margin:0;font-size:15px}.return-unit-card .panel-heading p:not(.eyebrow){margin:4px 0 0;color:var(--muted);font-size:11px}
.return-unit-card>.form-grid{padding:0 20px 20px}.return-field-help{align-self:end;padding-bottom:10px;color:var(--muted);font-size:10px}.return-general-notes{display:flex;flex-direction:column;gap:6px;color:#536b70;font-size:12px;font-weight:650}.return-general-notes textarea{width:100%;min-height:90px;border:1px solid var(--line-strong);border-radius:7px;padding:9px;color:var(--ink);font:inherit;font-weight:400;resize:vertical}
.return-confirmation{padding:18px 20px}.return-confirmation p{max-width:800px}.return-confirmation button{margin-top:12px}.return-print-only{display:none}.return-print-document section{margin:0 0 16px;break-inside:avoid}.return-print-document section h2{margin:0 0 7px;color:#284b50;font-size:11pt}.return-print-document .table-wrap{overflow:visible;border:0}.return-print-document table{width:100%;min-width:0;border-collapse:collapse;font-size:7pt}.return-print-document th,.return-print-document td{height:auto;padding:6px 5px;border:1px solid #d7e0e0;white-space:normal}.return-print-document th{background:#f0f4f4;text-align:left}.return-print-document footer{margin-top:30px;padding-top:12px;border-top:1px solid #d7e0e0;font-size:8pt;break-inside:avoid}
@media(max-width:800px){.return-context{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.return-context{padding:15px;gap:11px}.return-unit-card>.form-grid{grid-template-columns:1fr;padding:0 15px 16px}.return-unit-card .span-2{grid-column:auto}.return-field-help{padding:0}.return-confirmation .button{width:100%}.return-print-document .table-wrap{overflow:visible}.return-print-document table{font-size:6.5pt}}
@media print{.return-print-only,.return-print-only *{visibility:visible!important}.return-print-only{display:block!important;position:absolute!important;inset:0 auto auto 0!important;width:100%!important;color:#182b30!important;background:#fff!important;font:9pt/1.4 Arial,Helvetica,sans-serif!important}.return-print-document .print-meta{grid-template-columns:repeat(2,1fr)}.return-print-document .table-wrap{overflow:visible!important}.return-print-document table{min-width:0!important}}

.alert-list a.alert-item{color:inherit;text-decoration:none;border-radius:7px}.alert-list a.alert-item:hover{background:#f6f9f9}.alert-item.neutral>.icon{color:var(--teal);background:var(--teal-pale)}

/* Maintenance orders */
.maintenance-list-panel,.maintenance-waiting-panel{margin-bottom:16px}.maintenance-cost-editor{display:grid;gap:10px}.maintenance-cost-row{display:grid;grid-template-columns:140px minmax(180px,1fr) 110px 140px auto;align-items:end;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px}.maintenance-cost-row legend{padding:0 5px;color:var(--muted);font-size:10px;font-weight:700}.maintenance-cost-row label,.maintenance-form .form-grid label,.maintenance-form>section>label{display:flex;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}.maintenance-cost-row input,.maintenance-cost-row select,.maintenance-form input,.maintenance-form select,.maintenance-form textarea,.maintenance-completion input,.maintenance-completion select,.maintenance-completion textarea{min-height:37px;border:1px solid var(--line-strong);border-radius:7px;padding:7px 9px;background:#fff;color:var(--ink);font:inherit;font-weight:400}.maintenance-cost-row textarea,.maintenance-form textarea,.maintenance-completion textarea{resize:vertical}.maintenance-form{display:grid;gap:14px}.maintenance-form-actions{display:flex;justify-content:flex-end;gap:8px}.maintenance-source-note{display:grid;gap:3px;margin:0 0 14px;padding:11px;border-radius:8px;background:#f2f7f7;color:#35565b;font-size:12px}.maintenance-source-note span{font-size:11px;color:var(--muted)}.maintenance-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.maintenance-detail-grid>.panel{min-width:0}.maintenance-status-panel{align-items:center}.maintenance-status-panel>div{display:grid;gap:4px}.maintenance-status-panel small{color:var(--muted);font-size:10px}.maintenance-completion{margin-top:16px;padding:18px 20px}.maintenance-completion h2{margin:0 0 6px;font-size:15px}.maintenance-completion>p{font-size:11px;color:var(--muted);line-height:1.5}.maintenance-completion .form-grid{margin:14px 0}.badge-maintenance-open{background:#fff6df;color:#80600c}.badge-maintenance-in-progress{background:#e7f2ff;color:#315f93}.badge-maintenance-completed{background:#e6f4ed;color:#28724b}.badge-maintenance-cancelled{background:#f1f3f3;color:#657174}.badge-priority-low{background:#eef3f3;color:#586d70}.badge-priority-normal{background:#eaf3f4;color:#27636a}.badge-priority-high{background:#fff0dd;color:#935519}.badge-priority-urgent{background:#ffebea;color:#a2342e}
@media(max-width:1000px){.maintenance-cost-row{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-cost-row button{justify-self:start}.maintenance-detail-grid{grid-template-columns:1fr}}
@media(max-width:650px){.maintenance-cost-row{grid-template-columns:1fr}.maintenance-form-actions{display:grid;grid-template-columns:1fr}.maintenance-status-panel{display:grid;grid-template-columns:1fr 1fr}.maintenance-list-panel .filter-bar{display:grid;grid-template-columns:1fr}.maintenance-list-panel .search-field{min-width:0;width:100%}.maintenance-completion{padding:15px}.maintenance-completion .form-grid{grid-template-columns:1fr}.maintenance-completion .span-2{grid-column:auto}}

/* Financial operations */
.financial-shortcuts{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}.financial-detail-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:15px;align-items:start}.financial-detail-grid>.panel{min-width:0;padding:18px}.financial-detail-grid h2,.financial-settlement-form h3{margin:0 0 12px;font-size:15px}.financial-detail-grid .details-list{padding:0;grid-template-columns:1fr 1fr}.financial-inline-form{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.financial-inline-form label{display:flex;flex-direction:column;gap:5px;font-size:11px}.financial-inline-form input,.financial-settlement-form input,.financial-settlement-form select,.financial-detail-grid input,.financial-detail-grid select{min-height:36px;border:1px solid var(--line-strong);border-radius:7px;padding:6px 8px;background:#fff;color:var(--ink);font:inherit}.financial-settlement-form{margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}.financial-settlement-form .form-grid{padding:0}.financial-settlement-form label,.financial-source-row label,.financial-detail-grid>form label{display:flex;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}.financial-source-row{margin:0 0 12px}.financial-source-row legend{padding:0 5px;color:var(--muted);font-size:11px;font-weight:700}.financial-inline-summary{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:10px}.financial-inline-summary span{display:grid;gap:4px;color:var(--muted);font-size:11px}.financial-inline-summary strong{color:var(--ink);font-size:15px}.financial-total{display:block;margin:12px 0 18px;font-size:25px}.financial-detail-grid small{display:block;color:var(--muted)}.badge-open{background:#eaf3f4;color:#27636a}.badge-partial{background:#fff6df;color:#80600c}.badge-paid{background:#e6f4ed;color:#28724b}.badge-overdue{background:#ffebea;color:#a2342e}.badge-cancelled{background:#eef0f0;color:#657174}
@media(max-width:800px){.financial-detail-grid{grid-template-columns:1fr}}
@media(max-width:650px){.financial-shortcuts{display:grid;grid-template-columns:1fr}.financial-shortcuts .button{width:100%;justify-content:center}.financial-detail-grid .details-list{grid-template-columns:1fr}.financial-list .filter-bar{display:grid;grid-template-columns:1fr}.financial-source-row .form-grid{grid-template-columns:1fr}.financial-source-row .span-2{grid-column:auto}}

/* Responsive safeguards shared by operational modules. */
html,body{max-width:100%;min-width:0}
body{overflow-x:clip}
.app-shell,.main,.content,.page-header,.panel,.panel-heading,.dashboard-grid,.detail-columns,.quote-summary,.financial-detail-grid,.maintenance-detail-grid,.reservation-detail-grid,.form-grid,.filter-bar{min-width:0;max-width:100%}
.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
.detail-columns{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)}
.quote-summary{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.form-grid,.details-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.dashboard-grid>*,.detail-columns>*,.quote-summary>*,.financial-detail-grid>*,.maintenance-detail-grid>*,.reservation-detail-grid>*,.form-grid>*,.details-list>div{min-width:0}
input,select,textarea{min-width:0;max-width:100%}
.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}

/* Use the mobile navigation drawer before the desktop content becomes cramped. */
@media(max-width:1100px){
  .sidebar{transform:translateX(-100%);transition:transform .2s ease}
  .nav-open .sidebar{transform:translateX(0)}
  .nav-open .mobile-backdrop{display:block;position:fixed;z-index:9;inset:0;background:rgba(8,29,34,.34)}
  .main{margin-left:0}
  .topbar{height:66px;padding:0 20px}
  .mobile-menu{display:grid}
  .breadcrumb span,.profile-name,.profile>.icon{display:none}
  .content{padding:23px 20px 38px}
  .summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dashboard-grid{grid-template-columns:minmax(0,1fr)}
  .panel-wide{grid-column:auto}
  .detail-columns,.quote-summary{grid-template-columns:minmax(0,1fr)}
  .wizard-layout{grid-template-columns:minmax(0,1fr)}
  .wizard-steps{display:flex;gap:3px;overflow-x:auto;padding:6px}
  .wizard-steps button{width:auto;flex:none}
  .wizard-steps button strong{display:none}
  .filter-bar{flex-wrap:wrap}
  .search-field{flex:1 1 100%;min-width:0}
  .select-field{flex:1;min-width:0}
  .select-field select{min-width:0;width:100%}
}

/* Small, scoped usability corrections from the Fase 14 review. */
.sidebar .nav-group + .nav-group{margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.1)}
.nav-group-label{margin:0 12px 5px;color:#86a3a7;font-size:9px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.maintenance-list-panel .filter-bar{flex-wrap:wrap}
.maintenance-list-panel .filter-bar .search-field{flex:1 1 240px;min-width:min(260px,100%)}
.workflow-confirmation-fields{display:grid;gap:12px;margin-top:14px}
.workflow-confirmation-fields label{display:grid;gap:5px;color:#536b70;font-size:11px;font-weight:650}
.workflow-confirmation-fields select,.workflow-confirmation-fields textarea{width:100%;border:1px solid var(--line-strong);border-radius:7px;padding:9px;background:#fff;color:var(--ink);font:inherit;font-weight:400}
.workflow-confirmation-fields select{height:38px;padding:0 9px}
.workflow-confirmation-fields textarea{resize:vertical;min-height:84px}
.workflow-confirmation-fields small{color:var(--muted);font-size:10px;font-weight:400}
@media(max-width:560px){
  .summary-card{min-width:0;flex-direction:column;align-items:flex-start;gap:4px;padding:12px}
  .summary-card .summary-icon{width:30px;height:30px}
  .summary-card>div{min-width:0;flex:1}
  .summary-card p,.summary-card strong,.summary-card small,.summary-card>span{max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:900px){
  .equipment-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
  .equipment-filters .search-field{grid-column:1/-1;width:100%;min-width:0;max-width:none}
  .equipment-filters .select-field{min-width:0}
  .equipment-filters .select-field select{width:100%;min-width:0}
}

@media(max-width:620px){
  .quote-list-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
  .quote-list-filters .search-field{grid-column:1/-1;width:100%;min-width:0}
  .quote-list-filters .select-field{min-width:0}
  .quote-list-filters .select-field select{width:100%;min-width:0}
  .quote-list-filters .checkbox-label{grid-column:1;min-height:38px;font-size:11px}
  .quote-list-filters .filter-reset{grid-column:2;width:100%;margin-left:0}
}

@media(max-width:620px){
  .content{padding:19px 13px 32px}
  .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-header{align-items:flex-start;flex-wrap:wrap}
  .page-header>.button,.page-header>.button-group{max-width:100%}
  .panel-heading,.split-heading{flex-wrap:wrap}
  .form-grid,.details-list{grid-template-columns:minmax(0,1fr)}
  .quote-summary,.detail-columns{gap:14px}
  .modal,.wizard-panel{min-width:0;max-width:100%}
  .modal-footer,.wizard-footer{flex-wrap:wrap;gap:8px}
  .wizard-footer>div{flex-wrap:wrap}
}

/* Administration and organization context */
.admin-banner,.admin-context-strip{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:0 0 16px;border:1px solid #b8dada;border-radius:9px;background:#e7f4f4;color:#315c61;font-size:12px}
.platform-sidebar{background:#17253a}
.platform-sidebar .brand-mark{background:#6f82d8}
.platform-nav-label{margin:20px 20px 0;color:#9eafd0;font-size:9px;font-weight:750;letter-spacing:.12em}
.platform-sidebar .nav-link.active{background:#2a3c5d}
.platform-sidebar .nav-link.active .icon{color:#bac7ff}
.platform-identity{display:flex;align-items:center;gap:10px;padding:8px}
.platform-identity-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#2b3e60;color:#c2ceff}
.platform-identity strong,.platform-identity span{display:block}
.platform-identity strong{color:#fff;font-size:12px}
.platform-identity span{margin-top:2px;color:#a9b6cc;font-size:10px}
.platform-shell .eyebrow{color:#596fbe}
.platform-shell .button-primary{background:#596fbe}
.platform-shell .button-primary:hover{background:#465ba6}
.admin-banner strong,.admin-context-strip strong{color:#075b67;letter-spacing:.04em}
.admin-context-strip{border-radius:0;margin:0;padding:9px 28px;background:#fff4e4;border-color:#ecd4ad;color:#79531b}
.admin-context-strip a{margin-left:auto;color:#075b67;font-weight:700}
.organization-switcher{display:block;margin:12px 7px 0}
.organization-switcher select{width:100%;min-width:0;height:36px;border:1px solid rgba(255,255,255,.2);border-radius:7px;background:#173b42;color:#fff;padding:0 8px;font-size:11px}
.topbar-actions .organization-switcher{margin:0;max-width:190px}
.topbar-actions .organization-switcher select{height:34px;border-color:var(--line-strong);background:#fff;color:var(--ink)}
.platform-context-link{font-size:10px;font-weight:750;color:#8a5800;text-decoration:none;white-space:nowrap}
.admin-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0 20px 20px}
.admin-details>div{padding:12px;background:#f6f9f9;border-radius:8px;min-width:0}
.admin-details dt{font-size:10px;color:var(--muted)}
.admin-details dd{margin:4px 0 0;font-size:12px;font-weight:700;overflow-wrap:anywhere}
.table-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.table-actions select{height:32px;max-width:125px;border:1px solid var(--line-strong);border-radius:6px;background:white;color:var(--ink);padding:0 6px;font-size:11px}
.invitation-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin:14px 20px;padding:14px;background:#f6f9f9;border-radius:8px}
.invitation-link label,.invitation-link p{grid-column:1/-1}
.invitation-link label{font-size:11px;font-weight:700}
.invitation-link input{min-width:0;width:100%;height:38px;padding:0 9px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;font-size:11px}
.invitation-link p{margin:0;color:var(--muted);font-size:10px}
.platform-summary{margin-bottom:16px}
.platform-shortcuts .panel{display:block;color:inherit;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.platform-shortcuts .panel:hover,.platform-shortcuts .panel:focus-visible{transform:translateY(-2px);box-shadow:0 8px 22px rgba(18,38,48,.1);outline:2px solid #9faee7;outline-offset:2px}
.platform-shortcuts .panel h2{margin:0 0 7px;font-size:16px}
.platform-shortcuts .panel p{min-height:38px;color:var(--muted);font-size:12px;line-height:1.5}
.platform-shortcuts .panel strong{color:#465ba6;font-size:11px}
.platform-shell .summary-card strong{font-size:21px}
.platform-inline-action{margin-bottom:5px;min-width:190px}
.platform-inline-action summary{cursor:pointer;color:#465ba6;font-size:11px;font-weight:700}
.platform-settlement-form{display:grid;gap:6px;min-width:210px;padding:8px;background:#f6f8fc;border:1px solid var(--line);border-radius:8px}
.platform-settlement-form label{display:grid;gap:3px;font-size:10px;font-weight:650}
.platform-settlement-form input,.platform-settlement-form select{width:100%;height:30px;border:1px solid var(--line-strong);border-radius:6px;padding:0 7px;background:white}

/* Organization settings */
.settings-panel{margin-bottom:14px;padding:18px 20px}
.settings-panel .panel-heading{align-items:flex-start;margin-bottom:15px}
.settings-panel .panel-heading h2{margin:0 0 5px;font-size:15px}
.settings-panel .panel-heading p,.settings-static-note,.settings-warning{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.settings-version{flex:none;padding:5px 8px;border-radius:20px;background:#eff4f4;color:#536b70;font-size:10px;font-weight:700}
.organization-settings-form .form-grid{padding:0}
.organization-settings-form .form-grid>label,.settings-reason{display:flex;min-width:0;flex-direction:column;gap:5px;color:#536b70;font-size:11px;font-weight:650}
.organization-settings-form input,.organization-settings-form textarea,.settings-reason textarea{width:100%;min-height:38px;border:1px solid var(--line-strong);border-radius:7px;padding:8px 10px;background:#fff;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.organization-settings-form textarea,.settings-reason textarea{resize:vertical}
.organization-settings-form input:disabled{background:#f2f5f5;color:#738184}
.settings-warning{margin-top:12px;padding:10px 12px;border-radius:7px;background:#fff8e9;color:#76571b}
.settings-static-note{margin:0 0 9px}
.text-link{font-size:11px;font-weight:700;color:var(--teal-dark)}
.settings-save-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:4px 0 15px}
.settings-dirty-state{margin:0 auto 0 0;color:var(--muted);font-size:11px}
.form-error,.form-success{padding:10px 12px;border-radius:7px;font-size:12px}
.form-error{background:#fff0ef;color:#9c332e}.form-success{background:#e9f6ee;color:#276843}
.settings-reason{margin-top:12px}
.settings-event-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.settings-event-list li{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--line)}
.settings-event-list li>div{display:grid;gap:3px;min-width:0}.settings-event-list li strong{font-size:12px}.settings-event-list li span,.settings-event-list li small,.settings-event-list li time{color:var(--muted);font-size:10px}.settings-event-list li time{flex:none;text-align:right}
.settings-platform-strip{align-items:flex-start}
@media(max-width:620px){.settings-panel{padding:15px}.settings-save-row{display:grid;grid-template-columns:1fr 1fr}.settings-dirty-state{grid-column:1/-1}.settings-save-row .button{width:100%;justify-content:center}.settings-event-list li{flex-direction:column;gap:5px}.settings-event-list li time{text-align:left}}
@media(max-width:900px){.platform-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.platform-shortcuts{grid-template-columns:minmax(0,1fr)}.platform-shortcuts .panel p{min-height:0}.platform-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.admin-details{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-context-strip{padding-left:18px;padding-right:18px}}
@media(max-width:600px){.admin-banner{align-items:flex-start;flex-direction:column;gap:4px}.admin-details{grid-template-columns:1fr 1fr;padding-left:14px;padding-right:14px}.invitation-link{grid-template-columns:1fr;margin-left:14px;margin-right:14px}.invitation-link label,.invitation-link p{grid-column:auto}.admin-context-strip{align-items:flex-start;flex-direction:column}.admin-context-strip a{margin-left:0}.topbar-actions .organization-switcher{max-width:118px}.topbar-actions .organization-switcher select{font-size:10px}}
.reports-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.reports-filter-panel{padding:16px;margin-bottom:14px}
.reports-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr)) auto auto;align-items:end;gap:12px}
.reports-filter-grid>label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:700}
.reports-filter-grid input,.reports-pagination select{min-width:0;height:38px;padding:0 10px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:var(--ink)}
.reports-period-presets{display:flex;gap:4px;flex-wrap:wrap}
.reports-tabs{display:flex;gap:5px;overflow-x:auto;margin:0 0 16px;padding:0 0 5px;border-bottom:1px solid var(--line)}
.reports-tab{flex:none;border:0;border-radius:7px;padding:10px 13px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.reports-tab:hover,.reports-tab:focus-visible{background:#e9f3f3;color:var(--ink);outline:2px solid #7aa7ac;outline-offset:1px}
.reports-tab.active{background:#dff0f0;color:#087f8c}
.reports-block{margin-bottom:16px;min-width:0}
.reports-block .panel-heading{align-items:flex-start;flex-wrap:wrap}
.reports-block .panel-heading h2{margin:0 0 5px;font-size:16px}
.reports-block .panel-heading p,.reports-block .section-note{color:var(--muted);font-size:11px;line-height:1.5}
.reports-block .filter-bar{margin:14px 0}
.reports-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:14px 0;color:var(--muted);font-size:11px}
.reports-pagination label{display:flex;align-items:center;gap:6px}
.reports-pagination select{height:32px}
.reports-print-heading{display:none}
@media(max-width:860px){.reports-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-period-presets{grid-column:1/-1}.reports-filter-grid>button{justify-self:start}}
@media(max-width:560px){.reports-actions{width:100%}.reports-actions .button{flex:1}.reports-filter-grid{grid-template-columns:1fr}.reports-period-presets{grid-column:auto}.reports-pagination{justify-content:flex-start}.reports-block .panel-heading .button-group{width:100%;flex-wrap:wrap}.reports-block .panel-heading .button-group .button{flex:1}}
@media print{
  @page{size:A4 landscape;margin:12mm}
  body.printing-reports,body.printing-reports #app{background:#fff!important;color:#17272b!important}
  body.printing-reports #app *{visibility:hidden!important}
  body.printing-reports .reports-print-root,body.printing-reports .reports-print-root *{visibility:visible!important}
  body.printing-reports .reports-print-root{position:absolute!important;inset:0!important;width:100%!important;padding:0!important;background:#fff!important;color:#17272b!important;font:9pt/1.35 Arial,Helvetica,sans-serif!important}
  body.printing-reports .reports-print-heading{display:block!important;margin:0 0 12px;padding:0 0 8px;border-bottom:1px solid #b8c5c7}
  body.printing-reports .reports-print-heading h1{margin:0;font-size:18pt}
  body.printing-reports .reports-print-heading p{margin:4px 0 0;color:#526367}
  body.printing-reports .reports-block{break-inside:avoid;margin:0 0 12px}
  body.printing-reports .summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  body.printing-reports .summary-card,body.printing-reports .panel{box-shadow:none!important;border:1px solid #d5dddf!important;padding:8px!important}
  body.printing-reports .table-wrap{overflow:visible!important}
  body.printing-reports table{min-width:0!important;width:100%!important;font-size:7pt!important}
  body.printing-reports th,body.printing-reports td{padding:4px!important}
  body.printing-reports .reports-pagination,.reports-filter-panel,.reports-tabs,.reports-actions,.filter-bar,.button-group{display:none!important}
}
