:root{--ios-bg:#f5f5f7;--ios-card:#fff;--ios-blue:#007aff;--ios-blue2:#0a84ff;--ios-text:#1c1c1e;--ios-muted:#8e8e93;--ios-separator:rgba(60,60,67,.16);--ios-green:#34c759;--ios-red:#ff3b30;--ios-orange:#ff9f0a;--radius:24px}
*{box-sizing:border-box}html{background:var(--ios-bg)}body{margin:0;background:var(--ios-bg);color:var(--ios-text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}.ios-body{min-height:100vh}.app-shell{max-width:1180px;margin:auto}.mobile-page-width{max-width:760px}.min-width-0{min-width:0}.glass-nav,.ios-topbar{background:rgba(250,250,252,.82);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid var(--ios-separator)}.ios-topbar{position:sticky;top:0;z-index:1030;padding:calc(env(safe-area-inset-top,0px) + 9px) 0 9px}.ios-top-caption,.eyebrow{font-size:.68rem;letter-spacing:.13em;font-weight:800;color:var(--ios-muted)}.ios-card{background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.8);border-radius:var(--radius);box-shadow:0 12px 35px rgba(0,0,0,.055)}.metric{padding:20px}.metric-icon,.ios-list-icon,.location-orb,.action-icon,.camera-picker-icon{display:grid;place-items:center}.metric-icon{width:48px;height:48px;border-radius:15px;background:#eef6ff;color:var(--ios-blue);font-size:1.25rem}.ios-app-icon{width:82px;height:82px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(145deg,#0a84ff,#0056d6);color:#fff;font-size:2.3rem;box-shadow:0 18px 35px rgba(0,122,255,.28)}.mini-app-icon{display:inline-grid;width:32px;height:32px;place-items:center;border-radius:9px;background:var(--ios-blue);color:#fff;margin-right:5px}.ios-field{display:flex;align-items:center;gap:10px;background:#f2f2f7;border-radius:16px;padding:0 14px;border:1px solid transparent}.ios-field:focus-within{border-color:rgba(0,122,255,.35);box-shadow:0 0 0 4px rgba(0,122,255,.08)}.ios-field i{color:var(--ios-muted)}.ios-field input{border:0;outline:0;background:transparent;width:100%;padding:14px 0}.ios-primary{background:var(--ios-blue);color:white;border:0;border-radius:16px;padding:.82rem 1rem;font-weight:700;box-shadow:0 8px 20px rgba(0,122,255,.18)}.ios-primary:hover,.ios-primary:focus{background:#006ee6;color:white}.form-control,.form-select{border-radius:14px;padding:.8rem 1rem;border-color:var(--ios-separator);background:#fff}.form-control:focus,.form-select:focus{border-color:rgba(0,122,255,.55);box-shadow:0 0 0 .2rem rgba(0,122,255,.1)}.square-btn{width:42px;height:42px;display:grid;place-items:center}.avatar-circle,.top-avatar{display:grid;place-items:center;border-radius:50%;background:#e9e9ee;color:#3a3a3c;font-weight:800}.avatar-circle{width:50px;height:50px}.top-avatar{width:38px;height:38px;text-decoration:none;font-size:1.1rem}.visit-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--ios-separator)}.visit-row:first-of-type{border-top:0}.status-pill{display:inline-flex;align-items:center;font-size:.72rem;border-radius:999px;padding:.35rem .65rem;font-weight:800}.status-success{background:rgba(52,199,89,.13);color:#20843c}.status-warning{background:rgba(255,159,10,.14);color:#a45e00}.status-danger{background:rgba(255,59,48,.12);color:#bf2b24}.history-note{padding:14px 16px;border-radius:16px;background:#f5f5f7;color:#3a3a3c}.gallery-image{width:100%;aspect-ratio:4/3;object-fit:cover}.technician-app{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}.mobile-page{padding-bottom:24px}.ios-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:1040;background:rgba(249,249,251,.88);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-top:1px solid var(--ios-separator);padding:7px 0 calc(7px + env(safe-area-inset-bottom,0px))}.tab-item{width:25%;text-align:center;text-decoration:none;color:#8e8e93;font-size:.68rem;font-weight:600}.tab-item>i{display:block;font-size:1.3rem;line-height:1.3}.tab-item span{display:block}.tab-item.active{color:var(--ios-blue)}.tab-new{width:33px;height:33px;border-radius:50%;background:var(--ios-blue);color:#fff;display:grid!important;place-items:center!important;margin:-5px auto 2px;font-size:1.2rem;box-shadow:0 5px 14px rgba(0,122,255,.25)}.ios-hero{position:relative;overflow:hidden;background:linear-gradient(145deg,#0a84ff,#0060d4 70%);color:#fff;border-radius:30px;padding:28px 24px;box-shadow:0 20px 40px rgba(0,94,210,.23)}.hero-glow{position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.15);right:-55px;top:-70px;filter:blur(2px)}.hero-button{background:#fff;color:#006fe8;border:0;border-radius:16px;font-weight:800;padding:.8rem 1.2rem}.section-title{display:flex;justify-content:space-between;align-items:center;margin:22px 2px 12px}.section-title h2{font-size:1rem;font-weight:800;margin:0}.section-title a,.section-title span{font-size:.82rem;text-decoration:none;color:var(--ios-blue)}.ios-list-link{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;text-decoration:none;color:var(--ios-text);border-bottom:1px solid var(--ios-separator)}.ios-list-link:first-of-type{border-radius:20px 20px 0 0}.ios-list-link:last-of-type{border-radius:0 0 20px 20px;border-bottom:0}.ios-list-link:only-of-type{border-radius:20px}.ios-list-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;background:#eef6ff;color:var(--ios-blue);font-size:1.15rem}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%}.status-dot.done{background:var(--ios-green)}.status-dot.open{background:var(--ios-orange)}.ios-empty{padding:34px 20px;text-align:center;color:var(--ios-muted);background:#fff;border-radius:22px}.ios-empty i{font-size:2rem;display:block;margin-bottom:8px}.ios-empty p{margin:0}.ios-page-heading{display:flex;align-items:center;gap:8px;margin:5px 0 22px}.ios-page-heading h1{font-size:2rem;font-weight:800;margin:0}.ios-back{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:var(--ios-blue);background:#fff;font-size:1.2rem;box-shadow:0 4px 14px rgba(0,0,0,.06)}.ios-label{font-size:.78rem;color:#6e6e73;font-weight:700}.ios-select{background-color:#f7f7fa}.location-orb{width:50px;height:50px;flex:0 0 50px;border-radius:16px;background:#eaf3ff;color:var(--ios-blue);font-size:1.25rem}.location-orb.success{background:#eaf8ee;color:var(--ios-green)}.location-orb.error{background:#fff1f0;color:var(--ios-red)}.ios-action-row{display:flex;align-items:center;gap:12px;background:#fff;border-radius:20px;padding:14px;text-decoration:none;color:var(--ios-text)}.ios-action-row small{display:block;color:var(--ios-muted)}.action-icon{width:46px;height:46px;border-radius:14px;background:#eaf3ff;color:var(--ios-blue);font-size:1.35rem}.capture-card{padding:12px}.camera-picker{display:flex;align-items:center;gap:12px;padding:8px;cursor:pointer}.camera-picker strong,.camera-picker small{display:block}.camera-picker small{color:var(--ios-muted);margin-top:2px}.camera-picker-icon{width:54px;height:54px;border-radius:17px;background:linear-gradient(145deg,#0a84ff,#0066d6);color:#fff;font-size:1.45rem}.photo-preview-wrap{padding:8px}.photo-preview-wrap img{width:100%;max-height:420px;object-fit:cover;border-radius:18px}.note-compose{padding:12px 8px 2px}.ios-textarea{resize:none;background:#f5f5f7;border:0}.voice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.voice-button{border:0;border-radius:999px;background:#eaf3ff;color:var(--ios-blue);font-weight:800;padding:9px 13px}.voice-button.listening{background:#ffeceb;color:var(--ios-red);animation:pulseMic 1.1s infinite}.voice-status{font-size:.72rem;color:var(--ios-muted);text-align:right}.inspection-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evidence-card{overflow:hidden;border-radius:20px;background:#fff}.evidence-card img{width:100%;aspect-ratio:1/1;object-fit:cover}.evidence-time{font-size:.7rem;color:var(--ios-muted)}.ios-finish{border:0;border-radius:17px;background:#eaf8ee;color:#20843c;font-weight:800}.ios-finish:hover{background:#dff4e5;color:#176b30}@keyframes pulseMic{0%,100%{box-shadow:0 0 0 0 rgba(255,59,48,.18)}50%{box-shadow:0 0 0 8px rgba(255,59,48,0)}}
@media(min-width:700px){.inspection-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.technician-app .mobile-page-width{max-width:760px}}
@media(max-width:575px){.app-shell{padding-left:14px;padding-right:14px}.ios-card{border-radius:21px}.ios-hero{border-radius:26px}.inspection-gallery{grid-template-columns:1fr 1fr}}

/* Navegação até a empresa - nova inspeção */
.company-route-card{overflow:hidden;position:relative}.company-route-card:before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-70px;top:-80px;background:rgba(0,122,255,.07);pointer-events:none}.company-pin{width:52px;height:52px;flex:0 0 52px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#0a84ff,#005fd1);color:#fff;font-size:1.35rem;box-shadow:0 10px 24px rgba(0,122,255,.22)}.company-route-name{font-size:1.15rem;font-weight:800;line-height:1.25}.company-route-address{font-size:.87rem;color:#636366;line-height:1.45}.route-source{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:700;padding:6px 9px;border-radius:999px}.route-source-success{background:rgba(52,199,89,.12);color:#20843c}.route-source-warning{background:rgba(255,159,10,.13);color:#9a5a00}.navigation-title{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:800;color:#3a3a3c}.navigation-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.navigation-app{min-width:0;position:relative;display:flex;align-items:center;gap:10px;padding:13px;border-radius:18px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.navigation-app:active{transform:scale(.98)}.navigation-app-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;font-size:1.2rem}.navigation-app strong,.navigation-app small{display:block}.navigation-app strong{font-size:.86rem;line-height:1.15}.navigation-app small{font-size:.68rem;line-height:1.25;margin-top:3px;opacity:.76}.navigation-arrow{margin-left:auto;font-size:.75rem;opacity:.62}.navigation-waze{background:linear-gradient(145deg,#e9fbff,#dff7ff);color:#087a99;border:1px solid rgba(31,183,220,.2)}.navigation-waze .navigation-app-icon{background:#fff;color:#08a6cf;box-shadow:0 6px 16px rgba(0,157,196,.12)}.navigation-maps{background:linear-gradient(145deg,#eef7ee,#e4f5e7);color:#237a3a;border:1px solid rgba(52,168,83,.18)}.navigation-maps .navigation-app-icon{background:#fff;color:#34a853;box-shadow:0 6px 16px rgba(52,168,83,.12)}
@media(max-width:575px){.navigation-grid{grid-template-columns:1fr}.navigation-app{padding:14px}.navigation-app-icon{width:46px;height:46px;flex-basis:46px}}


/* Identidade visual e componentes modernos */
:root{--brand-primary:#0d6efd;--brand-secondary:#0758c7;--brand-soft:color-mix(in srgb,var(--brand-primary) 9%,white);--brand-shadow:color-mix(in srgb,var(--brand-primary) 25%,transparent)}
.app-navbar{min-height:78px}.brand-link{display:flex;align-items:center;gap:10px;font-size:1.18rem;font-weight:850;letter-spacing:-.025em;color:#171719!important}.brand-logo-wrap{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(0,0,0,.08);overflow:hidden;flex:0 0 auto}.brand-logo{width:100%;height:100%;object-fit:contain;padding:4px}.login-logo{width:110px;height:110px;border-radius:28px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.1);display:grid;place-items:center;overflow:hidden}.login-logo img{width:100%;height:100%;object-fit:contain;padding:9px}.admin-nav-actions{padding:5px;background:rgba(255,255,255,.72);border:1px solid rgba(60,60,67,.09);border-radius:16px}.nav-action{height:40px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border-radius:11px;color:#45454a;text-decoration:none;font-size:.84rem;font-weight:750;transition:.2s}.nav-action:hover,.nav-action.active{background:var(--brand-soft);color:var(--brand-primary);transform:translateY(-1px)}.nav-action.logout{border:1px solid rgba(60,60,67,.15);background:#fff}.modern-menu-button{width:44px;height:44px;border:0;border-radius:14px;background:var(--brand-soft);color:var(--brand-primary);font-size:1.5rem;display:grid;place-items:center}.modern-offcanvas{border:0;border-radius:28px 0 0 28px}.mobile-nav-list{display:grid;gap:8px}.mobile-nav-list a{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:15px;text-decoration:none;color:#303034;font-weight:750;background:#f7f7fa}.mobile-nav-list i{width:26px;color:var(--brand-primary);font-size:1.1rem}
.voice-btn-modern{width:54px!important;min-width:54px;border:1px solid var(--ios-separator)!important;background:linear-gradient(145deg,#fff,#f3f6fb)!important;color:var(--brand-primary)!important;font-size:1.15rem;position:relative;overflow:hidden}.voice-btn-modern:before{content:"";position:absolute;inset:8px;border-radius:12px;background:var(--brand-soft);z-index:0}.voice-btn-modern i{position:relative;z-index:1}.voice-btn-modern.btn-danger{background:#fff0ef!important;color:#e4322b!important}.voice-btn-modern.btn-danger:before{background:#ffe0de}.btn-consult-modern{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 20px;border:1px solid color-mix(in srgb,var(--brand-primary) 50%,transparent);color:var(--brand-primary);background:#fff;font-weight:800;letter-spacing:.01em}.btn-consult-modern:hover{background:var(--brand-primary);color:#fff}.btn-save-company,.btn-modern-save{min-height:56px;display:flex;align-items:center;justify-content:center;gap:11px;font-size:.98rem;letter-spacing:.005em;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));box-shadow:0 12px 25px var(--brand-shadow)}.btn-save-company .button-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.18);font-size:1.05rem}.btn-save-company .button-arrow{font-size:1.35rem;margin-left:auto}.btn-save-company{padding:9px 12px 9px 10px}
.company-list-card{transition:transform .2s,box-shadow .2s;border:1px solid rgba(60,60,67,.08)}.company-list-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(0,0,0,.08)}.company-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border-radius:15px!important;padding:0 16px;font-size:.88rem;font-weight:800;white-space:nowrap;transition:.2s}.company-action i{font-size:1rem}.company-action-location{background:#f6f7f9;border:1px solid #eceef1;color:#222}.company-action-edit{background:#eef5ff;border:1px solid color-mix(in srgb,var(--brand-primary) 28%,white);color:var(--brand-primary)}.company-action-history{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));border:0;color:#fff;box-shadow:0 8px 18px var(--brand-shadow)}.company-action:hover{transform:translateY(-2px)}.company-action-history:hover{color:#fff}
.page-heading-modern{display:flex;justify-content:space-between;align-items:center;gap:20px}.page-heading-modern h1{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:850;letter-spacing:-.04em;margin:3px 0 7px}.page-heading-modern p{color:#73737a;margin:0}.heading-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary));color:#fff;font-size:1.6rem;box-shadow:0 13px 28px var(--brand-shadow)}.section-heading-icon{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.section-heading-icon>span{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-primary);font-size:1.1rem}.section-heading-icon h2{font-size:1.03rem;font-weight:850;margin:0 0 3px}.section-heading-icon p{font-size:.79rem;color:#7b7b82;margin:0}.color-field{display:flex;align-items:center;gap:12px;border:1px solid var(--ios-separator);border-radius:16px;padding:12px;cursor:pointer;background:#fbfbfd}.color-field input{width:48px;height:48px;border:0;background:none;padding:0}.color-field strong,.color-field small{display:block}.color-field small{color:#85858b;font-size:.72rem;margin-top:2px}.brand-upload-preview{height:150px;border:1px dashed rgba(60,60,67,.24);border-radius:20px;background:#f8f8fb;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94949a;gap:8px;overflow:hidden}.brand-upload-preview img{width:100%;height:100%;object-fit:contain;padding:14px}.brand-upload-preview i{font-size:2rem}.favicon-preview{height:62px;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;background:#f4f5f7;color:#4d4d52;font-weight:700}.favicon-preview img{width:32px;height:32px;object-fit:contain}.favicon-preview i{font-size:1.4rem;color:var(--brand-primary)}
@media(max-width:991px){.app-navbar{min-height:68px}.page-heading-modern{align-items:flex-start}.heading-icon{width:54px;height:54px;border-radius:17px}.company-list-card .d-flex{align-items:flex-start!important}.company-list-card .company-action{flex:1}}
@media(max-width:575px){.brand-link{font-size:1rem}.brand-logo-wrap{width:38px;height:38px}.btn-consult-modern{padding:0 13px}.btn-consult-modern span{display:none}.company-list-card{padding:20px!important}.company-list-card .d-flex.gap-2{width:100%;display:grid!important;grid-template-columns:1fr 1fr}.company-action-history{grid-column:1/-1}.page-heading-modern .heading-icon{display:none}}

/* Gestão moderna de usuários */
.users-summary{display:flex;gap:10px;flex-wrap:wrap}.users-summary span{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:999px;padding:9px 14px;font-size:.86rem;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.section-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;font-size:1.35rem}.user-create-card{overflow:hidden}.user-main-button{min-height:52px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:750;border-radius:16px}
.input-icon{position:relative}.input-icon>i{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2;color:#7b8491}.input-icon>.form-control{padding-left:43px}
.users-toolbar{display:flex;flex-direction:column;gap:14px}.filter-pills{display:flex;gap:8px;overflow:auto;padding-bottom:2px}.filter-pills button{border:0;background:#f1f3f7;color:#536070;border-radius:999px;padding:8px 14px;white-space:nowrap;font-size:.84rem;font-weight:700}.filter-pills button.active{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--brand-primary) 25%,transparent)}
.user-card{padding:20px;transition:.2s ease;border:1px solid rgba(15,23,42,.05)}.user-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(15,23,42,.09)}.user-card.is-inactive{opacity:.72;background:#fafafa}.user-card-main{display:flex;align-items:center;gap:15px}.user-avatar{width:52px;height:52px;flex:0 0 52px;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff;font-weight:800;box-shadow:0 8px 18px color-mix(in srgb,var(--brand-primary) 22%,transparent)}
.user-contact{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:5px;color:#707987;font-size:.84rem}.user-contact span{display:flex;gap:6px;align-items:center}.role-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;background:#eef4ff;color:var(--brand-primary);font-size:.72rem;font-weight:800}
.user-stats{display:flex;gap:10px;flex-wrap:wrap;margin:17px 0 14px;padding:13px 0;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.user-stats>div{display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center;min-width:120px}.user-stats i{grid-row:1/3;color:var(--brand-primary);font-size:1.1rem}.user-stats strong{font-size:.84rem}.user-stats span{font-size:.72rem;color:#8a929d}
.user-actions{display:flex;gap:8px;flex-wrap:wrap}.user-actions form{margin:0}.btn-action{border:0;border-radius:12px;min-height:39px;padding:8px 12px;display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:750;transition:.2s ease}.btn-action:hover{transform:translateY(-1px)}.btn-action.edit{background:#edf4ff;color:#0969da}.btn-action.approve,.btn-action.activate{background:#eafaf1;color:#16834b}.btn-action.disable{background:#fff5df;color:#a86300}.btn-action.delete{background:#fff0f1;color:#d9363e}
.modern-modal{border:0;border-radius:24px;box-shadow:0 28px 80px rgba(15,23,42,.2);overflow:hidden}.modern-modal .modal-header,.modern-modal .modal-footer{border-color:#edf0f4;padding:20px 24px}.modern-modal .modal-body{padding:22px 24px}.delete-icon{width:64px;height:64px;border-radius:22px;background:#fff0f1;color:#dc3545;display:grid;place-items:center;margin:auto;font-size:1.65rem}
@media(max-width:575.98px){.users-summary{width:100%}.users-summary span{flex:1;text-align:center;padding:8px}.user-card{padding:16px}.user-card-main{align-items:flex-start}.user-contact{display:grid}.user-actions{display:grid;grid-template-columns:repeat(2,1fr)}.user-actions form{display:contents}.btn-action{justify-content:center;width:100%}.user-stats>div{min-width:calc(50% - 5px)}.filter-pills{margin-right:-16px}.users-toolbar{padding-right:0!important}.users-toolbar>.input-icon{margin-right:16px}}

/* Agenda moderna e operação offline */
.filter-pills a{border:0;background:#f1f3f7;color:#536070;border-radius:999px;padding:9px 15px;white-space:nowrap;font-size:.84rem;font-weight:750;text-decoration:none}.filter-pills a.active{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff}.agenda-list{display:grid;gap:14px}.agenda-card{display:flex;gap:18px;padding:20px;border-left:5px solid #8e8e93}.agenda-card.priority-alta{border-left-color:#ff9f0a}.agenda-card.priority-urgente{border-left-color:#ff3b30}.agenda-card.priority-baixa{border-left-color:#34c759}.agenda-date{width:62px;min-width:62px;height:72px;border-radius:19px;background:linear-gradient(145deg,#eef5ff,#fff);display:grid;place-items:center;align-content:center;color:var(--brand-primary)}.agenda-date strong{font-size:1.65rem;line-height:1}.agenda-date span{font-size:.68rem;font-weight:850;letter-spacing:.08em}.agenda-card h3{font-size:1.1rem;margin:10px 0 7px}.agenda-meta{display:flex;gap:8px 16px;flex-wrap:wrap;color:#6e7682;font-size:.8rem}.agenda-meta span{display:flex;gap:6px;align-items:center}.agenda-note{background:#f7f8fa;border-radius:13px;padding:10px 12px;margin:12px 0 0;color:#606873;font-size:.84rem}.agenda-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.priority-label{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:850;color:#737b87}.agenda-status-agendada{background:#eaf2ff;color:#0969da}.agenda-status-em_andamento{background:#fff4d8;color:#9a5a00}.agenda-status-concluida{background:#e8f9ef;color:#137b47}.agenda-status-cancelada{background:#f0f1f3;color:#747b85}.agenda-day-title{display:flex;justify-content:space-between;align-items:center;margin:22px 3px 10px}.agenda-day-title span{font-size:1rem;font-weight:850}.agenda-day-title small{font-size:.65rem;letter-spacing:.09em;color:#858b94;font-weight:850}.tech-agenda-card{padding:18px;display:flex;gap:15px;margin-bottom:13px;border-left:5px solid var(--brand-primary)}.tech-agenda-card.priority-urgente{border-left-color:#ff3b30}.tech-agenda-card.priority-alta{border-left-color:#ff9f0a}.tech-time{width:58px;min-width:58px;display:flex;flex-direction:column;align-items:center;color:var(--brand-primary);padding-top:4px}.tech-time i{font-size:1.25rem}.tech-time strong{font-size:1.05rem;margin-top:4px}.tech-time span{font-size:.65rem;color:#858b94}.tech-agenda-card h2{font-size:1.18rem;font-weight:850;margin:10px 0 6px}.company-line,.address-line{margin:0;color:#5f6874;font-size:.84rem}.company-line{font-weight:750;display:flex;gap:7px}.address-line{margin-top:3px}.tech-instruction{display:flex;gap:9px;background:#f6f7f9;border-radius:14px;padding:11px;margin-top:12px;font-size:.82rem;color:#5d6672}.tech-instruction i{color:var(--brand-primary)}.tech-agenda-actions{display:grid;grid-template-columns:auto auto 1fr;gap:8px;margin-top:14px}.route-mini,.start-schedule{min-height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-size:.78rem;font-weight:800}.route-mini.waze{background:#e9fbff;color:#087b91}.route-mini.maps{background:#eef4ff;color:#2563c7}.start-schedule{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff}.offline-indicator{display:flex;align-items:center;gap:6px;border-radius:999px;background:#eaf9ef;color:#198754;padding:7px 11px;font-size:.72rem;font-weight:800}.offline-indicator.offline{background:#fff1e6;color:#bd5b00}.offline-queue-banner{display:flex;align-items:center;gap:10px;background:#fff7df;color:#8b5a00;border:1px solid #ffe09b;border-radius:16px;padding:12px 14px;margin-bottom:16px;font-size:.84rem}.offline-queue-banner i{font-size:1.2rem}.offline-big-icon{font-size:4rem}.agenda-form{position:sticky;top:90px}
@media(max-width:575px){.agenda-card{padding:15px;gap:12px}.agenda-date{width:54px;min-width:54px;height:64px}.agenda-meta{display:grid}.tech-agenda-card{padding:15px;gap:10px}.tech-agenda-actions{grid-template-columns:1fr 1fr}.start-schedule{grid-column:1/-1}.agenda-form{position:static}}

/* Empresa vinculada diretamente a um agendamento */
.scheduled-company-banner{
    border:1px solid color-mix(in srgb,var(--primary,#0d6efd) 22%,transparent);
    background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#0d6efd) 10%,#fff),#fff);
}
.scheduled-company-icon{
    width:50px;height:50px;border-radius:16px;display:grid;place-items:center;flex:0 0 50px;
    color:#fff;font-size:1.25rem;background:linear-gradient(135deg,var(--primary,#0d6efd),var(--secondary,#6f42c1));
    box-shadow:0 10px 24px color-mix(in srgb,var(--primary,#0d6efd) 24%,transparent);
}

/* =========================================================
   CAMADA RESPONSIVA GLOBAL — experiência de aplicativo mobile
   ========================================================= */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden;min-width:320px}
img,svg,video,canvas{max-width:100%;height:auto}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn,a[role="button"]{touch-action:manipulation}
.app-main{min-width:0}
.table-responsive{border-radius:18px;-webkit-overflow-scrolling:touch}
.table{min-width:680px}
.modal-dialog{margin:clamp(.65rem,3vw,1.75rem) auto}
.btn,.form-control,.form-select{font-size:max(16px,1rem)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;line-height:1.15;white-space:normal;text-align:center}
.btn i{line-height:1;flex:0 0 auto}
.form-label,.ios-label{line-height:1.35}
.input-group>.form-control,.input-group>.form-select{min-width:0}
.offcanvas{max-width:min(88vw,390px)}

/* Topo mobile com aparência nativa */
@media(max-width:991.98px){
  :root{--mobile-header:69px;--mobile-tabbar:76px}
  .admin-app,.viewer-app{padding-bottom:calc(var(--mobile-tabbar) + env(safe-area-inset-bottom,0px))}
  .app-navbar{position:sticky;top:0;z-index:1030;min-height:var(--mobile-header);padding-top:env(safe-area-inset-top,0px);background:rgba(250,250,252,.92)}
  .app-navbar .container{padding-left:16px;padding-right:16px}
  .brand-link{min-width:0;max-width:calc(100% - 58px);gap:10px}
  .brand-link>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}
  .brand-logo-wrap{flex:0 0 auto;box-shadow:0 8px 22px rgba(15,23,42,.12)}
  .modern-menu-button{width:45px;height:45px;min-width:45px;padding:0;border:0;border-radius:15px;background:#fff;box-shadow:0 7px 22px rgba(15,23,42,.09);color:var(--brand-primary);font-size:1.45rem}
  .modern-menu-button:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-primary) 15%,transparent)}
  .app-main{padding-left:14px!important;padding-right:14px!important;padding-top:20px!important}
  .modern-offcanvas{border:0;border-radius:28px 0 0 28px;background:#f7f8fb}
  .modern-offcanvas .offcanvas-header{padding:calc(18px + env(safe-area-inset-top,0px)) 20px 18px;background:#fff;border-bottom:1px solid rgba(15,23,42,.06)}
  .modern-offcanvas .offcanvas-body{padding:18px}
  .mobile-nav-list{display:grid;gap:9px}
  .mobile-nav-list a{display:flex;align-items:center;gap:13px;min-height:54px;padding:10px 14px;border-radius:17px;background:#fff;color:#263142;text-decoration:none;font-weight:750;box-shadow:0 6px 18px rgba(15,23,42,.045)}
  .mobile-nav-list a i{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand-primary) 10%,#fff);color:var(--brand-primary);font-size:1rem}
  .mobile-nav-list a.text-danger i{background:#fff0f1;color:#d9363e}
}

/* Barra inferior administrativa/consulta */
.mobile-app-tabbar{position:fixed;z-index:1045;left:0;right:0;bottom:0;min-height:76px;padding:7px max(8px,env(safe-area-inset-right,0px)) calc(7px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));display:flex;align-items:flex-end;justify-content:space-around;background:rgba(250,250,252,.94);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-top:1px solid rgba(60,60,67,.14);box-shadow:0 -8px 30px rgba(15,23,42,.07)}
.mobile-tab{position:relative;min-width:55px;min-height:57px;padding:5px 4px 2px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;color:#858b96;text-decoration:none;font-size:.65rem;font-weight:750}
.mobile-tab>i{font-size:1.27rem;line-height:1.1}
.mobile-tab.active{color:var(--brand-primary)}
.mobile-tab-main{width:44px;height:44px;margin-top:-21px;margin-bottom:1px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));box-shadow:0 10px 24px color-mix(in srgb,var(--brand-primary) 34%,transparent);font-size:1.25rem;border:4px solid rgba(250,250,252,.96)}
.viewer-mobile-tabbar{justify-content:space-evenly}
.viewer-mobile-tabbar .mobile-tab{min-width:82px}

/* Conteúdo e cards fluidos */
@media(max-width:767.98px){
  .ios-card{border-radius:21px;box-shadow:0 9px 26px rgba(15,23,42,.065)}
  .ios-card.p-4{padding:18px!important}
  .page-heading-modern,.d-flex.flex-wrap.justify-content-between.align-items-center{gap:12px!important}
  h1,.h1{font-size:clamp(1.55rem,7vw,2rem)}
  h2,.h2{font-size:clamp(1.35rem,6vw,1.75rem)}
  .eyebrow{font-size:.64rem;letter-spacing:.12em}
  .metric{padding:16px}
  .metric-icon{width:43px;height:43px;border-radius:14px}
  .metric .fs-2{font-size:1.65rem!important}
  .row{--bs-gutter-x:.75rem}
  .form-control,.form-select{min-height:50px;border-radius:15px;padding:.75rem .9rem}
  textarea.form-control{min-height:110px}
  .input-group{flex-wrap:nowrap}
  .input-group .btn{min-width:48px;padding-left:12px;padding-right:12px}
  .ios-primary,.btn-save-company,.user-main-button{min-height:52px;border-radius:16px;font-size:.94rem}
  .alert{border-radius:17px}
  .section-title{margin-top:20px}
  .section-title h2{font-size:1rem}
  .ios-page-heading{margin-bottom:17px}
  .ios-page-heading h1{font-size:1.55rem}
  .ios-back{width:42px;height:42px;min-width:42px}
  .inspection-gallery{grid-template-columns:1fr 1fr;gap:9px}
  .evidence-card{border-radius:17px}
  .evidence-card .p-3{padding:12px!important;font-size:.84rem}
  .photo-preview-wrap img{max-height:50vh}
  .voice-toolbar{align-items:flex-start;flex-direction:column}
  .voice-button{width:100%;min-height:46px;justify-content:center}
  .voice-status{text-align:left;width:100%}
  .offline-indicator{padding:6px 9px}
  .scheduled-company-banner{padding:16px!important}
  .scheduled-company-banner>.d-flex{align-items:flex-start!important}
  .scheduled-company-icon{width:46px;height:46px;flex-basis:46px}
}

/* Formulários: colunas quebram sem apertar os campos */
@media(max-width:575.98px){
  .row>.col-4,.row>.col-5,.row>.col-7,.row>.col-8,.row>.col-6:not(.keep-half){width:100%}
  .row>.col-6:has(.metric),.row>.col-6:has(.ios-card>.fs-2){width:50%}
  .modal-dialog{width:auto;margin:8px}
  .modal-content{max-height:calc(100dvh - 16px);border-radius:22px!important}
  .modal-body{overflow-y:auto}
  .modern-modal .modal-header,.modern-modal .modal-footer,.modern-modal .modal-body{padding:17px}
  .modern-modal .modal-footer{display:grid;grid-template-columns:1fr;gap:8px}
  .modern-modal .modal-footer .btn{width:100%;min-height:48px;margin:0}
  .btn.rounded-pill{border-radius:15px!important}
  .d-flex.gap-2:not(.filter-pills):not(.user-actions):not(.agenda-actions){flex-wrap:wrap}
  .d-flex.gap-2:not(.filter-pills)>.btn,.d-flex.gap-2:not(.filter-pills)>a.btn{flex:1 1 140px}
  .company-list-card .d-flex.gap-2{display:grid!important;grid-template-columns:1fr 1fr}
  .company-list-card .company-action{min-width:0;width:100%;min-height:47px}
  .company-list-card .company-action span{font-size:.78rem}
  .company-list-card .company-action-history{grid-column:1/-1}
  .user-card-main{min-width:0}
  .user-card-main>div:nth-child(2){min-width:0}
  .user-card-main h3{white-space:normal!important;overflow-wrap:anywhere}
  .user-actions{grid-template-columns:1fr 1fr}
  .btn-action{min-height:44px;padding:9px 8px;font-size:.76rem}
  .agenda-card{align-items:flex-start}
  .agenda-card>div:last-child,.tech-agenda-card>div:last-child{min-width:0;width:100%}
  .agenda-card h3,.tech-agenda-card h2{overflow-wrap:anywhere}
  .agenda-actions{display:grid;grid-template-columns:1fr 1fr}
  .agenda-actions form{display:contents}
  .agenda-actions .btn,.agenda-actions a{width:100%;min-height:44px}
  .filter-pills{scrollbar-width:none;margin-right:-14px;padding-right:14px}
  .filter-pills::-webkit-scrollbar{display:none}
  .ios-hero{border-radius:24px;padding:23px 19px}
  .ios-hero h1{font-size:1.75rem}
  .hero-button{width:100%;min-height:50px}
  .camera-picker{min-height:72px}
  .camera-picker-icon{width:50px;height:50px;flex:0 0 50px}
}

/* Tabelas administrativas legíveis no celular */
@media(max-width:767.98px){
  .table-responsive{margin-left:-4px;margin-right:-4px;border-radius:16px;border:1px solid rgba(15,23,42,.06);background:#fff}
  .table{font-size:.82rem;margin:0}
  .table>:not(caption)>*>*{padding:.78rem .7rem;white-space:nowrap}
  .table thead{background:#f6f7f9}
  .table .btn{min-height:38px;padding:.45rem .75rem;font-size:.76rem}
}

/* Técnico: aplicação ocupa corretamente telas pequenas e grandes */
.technician-app .ios-topbar .container{padding-left:15px;padding-right:15px}
.technician-app .ios-topbar strong{display:block;max-width:55vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:699px){
  .technician-app{padding-bottom:calc(83px + env(safe-area-inset-bottom,0px))}
  .ios-topbar{padding-top:calc(env(safe-area-inset-top,0px) + 7px)}
  .ios-tabbar{min-height:76px;padding-left:max(5px,env(safe-area-inset-left));padding-right:max(5px,env(safe-area-inset-right))}
  .tab-item{min-width:0;font-size:.62rem}
  .tab-item>i{font-size:1.2rem}
  .tab-new{width:39px;height:39px;margin-top:-11px;border:3px solid rgba(249,249,251,.95)}
}
@media(min-width:700px){
  .mobile-page-width{max-width:860px}
  .technician-app .ios-tabbar>div{max-width:760px}
}

/* Paisagem e telas muito estreitas */
@media(max-width:374px){
  .app-main{padding-left:10px!important;padding-right:10px!important}
  .mobile-tab{min-width:48px;font-size:.58rem}
  .mobile-tab-main{width:40px;height:40px}
  .brand-link>span{font-size:.9rem}
  .inspection-gallery{grid-template-columns:1fr}
  .company-list-card .d-flex.gap-2,.user-actions,.agenda-actions{grid-template-columns:1fr}
  .company-list-card .company-action-history{grid-column:auto}
}
@media(max-height:500px) and (orientation:landscape){
  .mobile-app-tabbar,.ios-tabbar{min-height:60px;padding-top:3px;padding-bottom:calc(3px + env(safe-area-inset-bottom,0px))}
  .mobile-tab,.tab-item{min-height:48px}
  .mobile-tab-main{margin-top:-10px;width:38px;height:38px}
  .admin-app,.viewer-app,.technician-app{padding-bottom:68px}
}
