/* Batizora shared design system 1.0 */
:root{--hm-ink:#173d49;--hm-navy:#12323d;--hm-gold:#b88236;--hm-ground:#f3f6f8;--hm-border:#dce5e9;--hm-muted:#657c86;--hm-font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--ink:var(--hm-ink);--navy:var(--hm-navy);--deep:var(--hm-navy);--gold:var(--hm-gold);--muted:var(--hm-muted);--line:var(--hm-border);--ground:var(--hm-ground);--green:#237360;--radius:16px;font-family:var(--hm-font);color:var(--hm-ink);background:var(--hm-ground)}
body.hm-app{font-family:var(--hm-font);color:var(--hm-ink);background:var(--hm-ground);line-height:1.55;font-synthesis:none}body.hm-app [hidden]{display:none!important}
.hm-app h1,.hm-app h2,.hm-app h3,.hm-app h4{font-family:var(--hm-font);line-height:1.25;overflow-wrap:anywhere}.hm-app h1{font-size:clamp(27px,3vw,36px);letter-spacing:-.9px;font-weight:720}.hm-app h2{font-size:21px;letter-spacing:-.35px}.hm-app h3{font-size:17px}.hm-app p{line-height:1.65}.hm-app .muted{color:var(--hm-muted)}
.hm-app :is(button,input,select,textarea){font-family:var(--hm-font);border-radius:9px}.hm-app button,.hm-app .button{min-height:44px;font-size:13px;font-weight:650;transition:background .16s,border-color .16s;touch-action:manipulation}.hm-app button:not(:disabled):hover{filter:brightness(.98)}.hm-app button:disabled{cursor:not-allowed}.hm-app :is(input,select,textarea){color:var(--hm-ink);border-color:#bfced5;font-size:14px;max-width:100%}.hm-app :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){min-height:44px}.hm-app textarea{line-height:1.6;resize:vertical}.hm-app input::placeholder,.hm-app textarea::placeholder{color:#788e98}.hm-app input[type=checkbox],.hm-app input[type=radio]{accent-color:var(--hm-ink)}
.hm-app :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--hm-gold);outline-offset:3px}.hm-app a{text-underline-offset:4px}.hm-app :is(.primary,button.primary){background:var(--hm-ink);color:#fff;border-color:var(--hm-ink)}
.hm-app :is(.card,.panel,.kpi-card,.kpi,.equipment,.module-card){border-color:var(--hm-border);border-radius:16px;box-shadow:0 2px 8px #173d4905}.hm-app .eyebrow,.hm-app .kicker{font-size:10px;font-weight:750;letter-spacing:1.7px;color:#936627}.hm-app :is(.hero,.welcome-banner,.fault-hero) .eyebrow{color:#deb879}.hm-app :is(.hero,.welcome-banner){border-radius:18px}.hm-app :is(.notice,.warning){border-radius:10px;line-height:1.65}.hm-app :is(dialog){border:1px solid var(--hm-border);border-radius:18px;box-shadow:0 22px 80px #12323d33;max-width:calc(100vw - 24px);max-height:90dvh;color:var(--hm-ink)}.hm-app dialog::backdrop{background:#102b3577}.hm-app :is(th){font-size:11px;letter-spacing:.05em;color:var(--hm-muted)}.hm-app :is(td,th){border-color:var(--hm-border)}
/* Core navigation */
.hm-core #sidebar{background:var(--hm-navy)}.hm-core #sidebar nav a.hm-domotics-nav{display:flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;padding:12px 13px;color:#bed0d5;font-size:13px;font-weight:500;border-radius:9px}.hm-core #sidebar nav a.hm-domotics-nav:hover{background:#254750;color:white}
/* Module headers: one brand and one return path */
.hm-module>header{height:auto;min-height:78px;background:#fff;color:var(--hm-ink);border-bottom:1px solid var(--hm-border);padding:15px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.hm-module>header a{color:var(--hm-ink)}.hm-module>header .hm-home{display:flex;align-items:center;gap:14px;text-decoration:none;font-weight:700}.hm-module>header .hm-home img{display:block;width:190px;max-width:46vw;height:auto}.hm-module>header .hm-home span{font-size:12px;color:var(--hm-muted);white-space:nowrap}.hm-app-switcher{display:flex!important;flex-direction:row!important;align-items:center;gap:6px!important;flex-wrap:wrap;padding:0!important;margin:0!important;width:auto}.hm-app-switcher a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;font-size:12px;font-weight:650;text-decoration:none;border:1px solid transparent;border-radius:8px;color:var(--hm-ink)}.hm-app-switcher a:hover{background:#edf3f5}.hm-app-switcher a[aria-current=page]{background:#e6eff2;border-color:#cbdce2;box-shadow:inset 0 -2px var(--hm-gold)}
.hm-module>main{max-width:1400px;padding:30px 32px;margin:auto}.hm-suite .layout>aside{background:var(--hm-navy)}.hm-suite .layout>main{padding:32px;min-width:0}.hm-suite nav button.active{background:#294d59;color:white;box-shadow:inset 3px 0 var(--hm-gold)}
.hm-faults .fault-hero{background:var(--hm-navy);color:white;padding:28px 32px;border-radius:18px;margin-bottom:24px}.hm-faults .fault-hero p:last-child{color:#d0dfe4}.hm-faults .fault-tabs [aria-pressed=true]{background:var(--hm-ink);color:white;border-color:var(--hm-ink)}.hm-faults .code{color:var(--hm-ink)}.hm-faults .badge{background:#edf3f5}.hm-faults .danger{background:#ffebe6;color:#a52f22}.hm-faults .card{border-color:var(--hm-border)}.hm-domotics .hero{background:var(--hm-navy)}
/* Client portal retains its private navigation and readable reports */
.hm-portal .hero{background:var(--hm-navy);background-image:radial-gradient(ellipse at 98% 5%,#69879544,transparent 57%)}.hm-portal .hero h1 span{color:#d4e3e8}.hm-portal .hero-description{color:#c2d6de}.hm-portal .equipment-type,.hm-portal .note-label{color:#866127}.hm-portal .brand-bat,.hm-portal .site-footer strong span{color:var(--hm-gold)}.hm-portal .brand-symbol{background:var(--hm-navy)}.hm-portal .equipment-header{border-color:var(--hm-border)}.hm-portal .section-nav .nav-button[aria-current=true]{background:var(--hm-ink);color:white}.hm-portal .download-button,.hm-portal .signature-submit{background:var(--hm-ink);color:#fff;border-color:var(--hm-ink)}.hm-portal .preview-banner{background:#fff6e7;color:#7b571e;border-color:#e4c99d}.hm-portal .header-label{color:var(--hm-muted)}
@media(max-width:900px){.hm-module>header{padding:14px 20px;gap:12px}.hm-app-switcher{width:100%;border-top:1px solid var(--hm-border);padding-top:10px!important}.hm-module>header .top-actions{margin-left:auto}.hm-module>main,.hm-suite .layout>main{padding:24px 20px}}
@media(max-width:580px){.hm-app :is(input,select,textarea){font-size:16px}.hm-module>header{padding:12px 16px}.hm-module>header .hm-home span{display:none}.hm-module>header .hm-home img{width:175px}.hm-app-switcher{display:flex!important;flex-wrap:nowrap;overflow:auto;width:100%;max-width:100%;scrollbar-width:thin}.hm-app-switcher a{flex:none;font-size:12px;min-height:44px;padding:8px 10px}.hm-module>main,.hm-suite .layout>main{padding:20px 16px}.hm-faults .fault-hero{padding:24px}.hm-app .dialog-head{gap:12px}.hm-portal main{padding:20px 16px}.hm-portal .header-inner{padding:18px 20px}.hm-app .card{padding:20px}.hm-app .section-nav{scrollbar-width:thin}.hm-app table{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hm-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{body.hm-app{background:white;color:#111}.hm-app .hm-app-switcher{display:none!important}.hm-app :is(.card,.panel,.equipment){box-shadow:none}.hm-module>header{display:none}.hm-app h1{font-size:25px}}
.hm-suite .top-actions a[href="/"]{display:none}.hm-domotics>header>span:not([id]){display:none}.hm-suite .layout>aside .eyebrow{color:#dfbb80}.hm-core #sidebar nav a:is(.hm-suite-nav,.hm-fault-nav,.hm-domotics-nav){display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:44px!important;padding:12px 13px!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#bed0d5!important;border-radius:9px!important;font-size:13px!important;font-weight:500!important;line-height:1.4!important;text-decoration:none!important;gap:12px!important}.hm-core #sidebar nav a:is(.hm-suite-nav,.hm-fault-nav,.hm-domotics-nav):hover{background:#254750!important;color:white!important}.hm-core #sidebar nav a.hm-domotics-nav:before{content:'⌂';font-size:20px;width:19px;flex:none;text-align:center}
/* Grouped, keyboard-accessible navigation. */
.hm-grouped-nav{gap:5px!important;padding-top:8px!important}
.hm-nav-group{border:0;margin:0;min-width:0}
.hm-nav-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;font-size:13px;font-weight:700;border-radius:9px;padding:11px 13px;user-select:none}
.hm-nav-group>summary::-webkit-details-marker{display:none}
.hm-nav-group>summary:after{content:'›';font-size:21px;line-height:1;transform:rotate(0);transition:transform .16s}
.hm-nav-group[open]>summary:after{transform:rotate(90deg)}
.hm-core #sidebar .hm-nav-group>summary,.hm-suite .layout>aside .hm-nav-group>summary{color:#d6e4e7;background:#ffffff06}
.hm-core #sidebar .hm-nav-group>summary:hover,.hm-core #sidebar .hm-nav-current>summary,.hm-suite .layout>aside .hm-nav-current>summary{background:#254750;color:#fff}
.hm-nav-items{display:grid;gap:3px;padding:5px 0 8px 9px;margin:0 0 4px 12px;border-left:1px solid #7898a533}
.hm-nav-group:not([open])>.hm-nav-items{display:none}
.hm-core #sidebar nav .hm-nav-items>:is([hidden],.hm-module-hidden){display:none!important}
.hm-core #sidebar nav .hm-nav-items :is(button,a),.hm-suite .layout>aside nav .hm-nav-items button{min-height:39px!important;padding:9px 10px!important;font-size:12px!important;line-height:1.35!important;width:100%;text-align:left}
.hm-core #sidebar nav .hm-nav-items a{display:flex;align-items:center;gap:9px;text-decoration:none;border-radius:8px;color:#bed0d5}
.hm-core #sidebar nav .hm-nav-items a:hover{background:#254750;color:#fff}
.hm-core #sidebar nav .hm-nav-items .icon{width:17px;height:17px;flex:none}
.hm-core #sidebar .hm-urgent-nav{justify-content:flex-start!important;margin:0!important;text-align:left!important;max-width:100%}
.hm-app-switcher.hm-grouped-switcher{overflow:visible;gap:3px!important;border:0!important}
.hm-header-group{position:relative}
.hm-header-group>summary{font-size:12px;min-height:40px;padding:8px 10px;white-space:nowrap;color:var(--hm-ink)}
.hm-header-group>summary:after{font-size:17px}
.hm-header-group[open]>summary,.hm-header-group.hm-nav-current>summary{background:#e6eff2;box-shadow:inset 0 -2px #b88236}
.hm-header-group>.hm-nav-items{position:absolute;top:100%;right:0;z-index:120;display:grid;min-width:245px;max-width:calc(100vw - 32px);background:white;border:1px solid #dce5e9;border-radius:12px;padding:7px;margin:7px 0 0;box-shadow:0 14px 40px #12323d24}
.hm-header-group:not([open])>.hm-nav-items{display:none}
.hm-app-switcher .hm-header-group .hm-nav-items a{display:flex;min-height:41px;white-space:normal;padding:10px 12px;font-size:13px;color:#173d49}
.hm-module>header{position:relative;z-index:20}
.hm-suite #navigation .hm-nav-items{padding-top:4px}
.hm-suite #navigation .hm-nav-group>summary{color:#d6e4e7}
.hm-suite #navigation .hm-nav-current>summary{background:#254750}
@media(max-width:900px){.hm-grouped-switcher{width:100%;flex-wrap:wrap!important;overflow:visible!important}.hm-header-group{flex:1 0 29%}.hm-header-group>summary{justify-content:space-between}.hm-header-group>.hm-nav-items{left:0;right:auto}.hm-header-group:nth-child(3n)>.hm-nav-items{left:auto;right:0}}
@media(max-width:580px){.hm-header-group{flex-basis:45%}.hm-header-group:nth-child(3n)>.hm-nav-items{left:0;right:auto}.hm-header-group:nth-child(2n)>.hm-nav-items{left:auto;right:0}.hm-header-group>summary{min-height:44px;font-size:12px}.hm-nav-group>summary{min-height:44px}.hm-suite #navigation{grid-template-columns:1fr!important}.hm-suite .layout>aside .hm-nav-items button{min-height:44px!important}}
@media(prefers-reduced-motion:reduce){.hm-nav-group>summary:after{transition:none}}
