/**
 * HelpAlong Maintenance Management
 * Developer: Aryal Suraj
 */
.hasp-maintenance{--maint-navy:#101b3a;--maint-blue:#38a5c1;--maint-red:#e60229;--maint-green:#237a4b;--maint-amber:#a86600;--maint-border:#dfe5ec;--maint-muted:#5f6b7c;color:var(--maint-navy)}
.hasp-maint-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:24px 26px;border-radius:9px;background:linear-gradient(135deg,#101b3a,#193565);color:#fff}.hasp-maint-head h2{margin:3px 0 8px;color:#fff;font-size:1.65rem}.hasp-maint-head p{max-width:780px;margin:0;color:#dce7f5}.hasp-maint-eyebrow,.hasp-maint-ref{display:block;color:var(--maint-blue);font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.hasp-maint-tabs{display:flex;gap:5px;margin:0 0 18px;padding:7px;overflow-x:auto;border:1px solid var(--maint-border);border-radius:8px;background:#fff;scrollbar-width:thin}.hasp-maint-tabs a{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:9px 11px;border-radius:6px;color:#475467;font-size:.75rem;font-weight:700;text-decoration:none;white-space:nowrap}.hasp-maint-tabs a:hover{background:#f0f6f8;color:var(--maint-navy)}.hasp-maint-tabs a.is-active{background:var(--maint-navy);color:#fff}.hasp-maint-tabs .dashicons{width:17px;height:17px;font-size:17px}
.hasp-maint-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.hasp-maint-kpis>a,.hasp-maint-kpis>article{position:relative;min-width:0;padding:18px;border:1px solid var(--maint-border);border-radius:8px;background:#fff;color:var(--maint-navy);text-decoration:none}.hasp-maint-kpis>a>.dashicons{position:absolute;top:17px;right:17px;color:var(--maint-blue)}.hasp-maint-kpis small,.hasp-maint-kpis em{display:block;color:var(--maint-muted);font-size:.73rem;font-style:normal}.hasp-maint-kpis strong{display:block;margin:8px 0 5px;font-size:1.85rem;line-height:1}.hasp-maint-kpis>a:hover{border-color:var(--maint-blue);box-shadow:0 5px 18px rgba(16,27,58,.07)}.hasp-maint-kpis--reports{margin-top:18px}.hasp-maint-kpis--reports>article strong{font-size:1.55rem}
.hasp-maint-health{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin-bottom:18px;border-left:4px solid var(--maint-green)}.hasp-maint-health.needs-attention{grid-template-columns:minmax(220px,.8fr) minmax(260px,1.2fr);border-left-color:var(--maint-amber)}.hasp-maint-health h3,.hasp-maint-health p{margin:0}.hasp-maint-health p{margin-top:5px;color:var(--maint-muted)}.hasp-maint-health ul{margin:0;padding-left:19px}.hasp-maint-health>span{color:var(--maint-green);font-size:32px}.hasp-maint-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.7fr);gap:18px}.hasp-maint-actions{display:grid;gap:9px}.hasp-maint-actions a{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--maint-border);border-radius:7px;color:var(--maint-navy);text-decoration:none}.hasp-maint-actions a:hover{border-color:var(--maint-blue);background:#f7fbfc}.hasp-maint-actions .dashicons{color:var(--maint-blue)}
.hasp-maintenance .hasp-table td small{display:block;margin-top:3px;color:var(--maint-muted)}.hasp-maintenance .hasp-table tr.is-overdue td{background:#fff9f5}.hasp-row-action{font-weight:700;white-space:nowrap}.hasp-maint-overdue{display:block;color:#b42318}.hasp-maint-badge,.hasp-maint-priority{display:inline-flex;align-items:center;padding:4px 8px;border-radius:99px;background:#eef2f6;color:#475467;font-size:.69rem;font-weight:800;line-height:1.2;white-space:nowrap}.hasp-maint-badge--open,.hasp-maint-badge--submitted,.hasp-maint-badge--requested{background:#e8f3ff;color:#175a9b}.hasp-maint-badge--in_progress,.hasp-maint-badge--approved,.hasp-maint-badge--active,.hasp-maint-badge--accepted{background:#e9f7ef;color:#17613c}.hasp-maint-badge--done,.hasp-maint-badge--complete,.hasp-maint-badge--fulfilled,.hasp-maint-badge--completed,.hasp-maint-badge--in{background:#e6f6ec;color:#17613c}.hasp-maint-badge--on_hold,.hasp-maint-badge--partially_fulfilled,.hasp-maint-badge--scheduled,.hasp-maint-badge--info_requested{background:#fff3df;color:#8a5300}.hasp-maint-badge--cancelled,.hasp-maint-badge--rejected,.hasp-maint-badge--declined,.hasp-maint-badge--unable,.hasp-maint-badge--offline,.hasp-maint-badge--out{background:#fdecec;color:#9a1b1b}.hasp-maint-badge--converted{background:#f1ecff;color:#5f3aa5}.hasp-maint-priority--low{background:#eef2f6;color:#475467}.hasp-maint-priority--medium{background:#e8f3ff;color:#175a9b}.hasp-maint-priority--high{background:#fff3df;color:#8a5300}.hasp-maint-priority--urgent{background:#fdecec;color:#9a1b1b}
.hasp-maint-filters{display:grid;grid-template-columns:minmax(160px,.65fr) minmax(220px,1fr) auto;align-items:end;gap:12px;margin:0 0 18px;padding:14px;border:1px solid var(--maint-border);border-radius:8px;background:#f8fafc}.hasp-maint-back{display:inline-block;margin:0 0 13px;font-weight:700;text-decoration:none}.hasp-maint-form label,.hasp-maint-public-form label,.hasp-maint-work-update label,.hasp-maint-decision-grid label,.hasp-maint-meter-entry label,.hasp-maint-receive label{display:block}.hasp-maint-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.hasp-maint-span-2{grid-column:1/-1}.hasp-maint-check{display:flex!important;align-items:center;gap:8px}.hasp-maint-check input{flex:0 0 auto;width:auto!important}.hasp-maint-form label small,.hasp-maint-public-form label small{display:block;margin-top:5px;color:var(--maint-muted);font-weight:400}.hasp-maint-form-actions{display:flex;gap:10px;margin-top:18px}
.hasp-maint-detail>.hasp-panel-head h3{margin-top:5px}.hasp-maint-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px}.hasp-maint-meta,.hasp-maint-public-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:16px 0 20px;overflow:hidden;border:1px solid var(--maint-border);border-radius:8px;background:var(--maint-border)}.hasp-maint-meta div,.hasp-maint-public-meta div{min-width:0;padding:13px;background:#fff}.hasp-maint-meta dt,.hasp-maint-public-meta dt{margin-bottom:5px;color:var(--maint-muted);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hasp-maint-meta dd,.hasp-maint-public-meta dd{margin:0;font-weight:700;overflow-wrap:anywhere}.hasp-maint-meta dd small{display:block;margin-top:3px;color:var(--maint-muted);font-weight:400}.hasp-maint-description{margin:18px 0;padding:17px;border-left:4px solid var(--maint-blue);background:#f7fafc}.hasp-maint-description h4,.hasp-maint-description p{margin:0}.hasp-maint-description p{margin-top:8px;line-height:1.6}.hasp-maint-attachments{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.hasp-maint-attachments h4{flex:0 0 100%;margin:0}.hasp-maint-attachments a{padding:7px 10px;border:1px solid var(--maint-border);border-radius:5px}.hasp-maint-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.hasp-maint-decision-grid>form,.hasp-maint-decision-grid>div{padding:17px;border:1px solid var(--maint-border);border-radius:8px;background:#f8fafc}.hasp-maint-decision-grid h4{margin:0 0 13px}.hasp-maint-decision-grid label+label{margin-top:11px}.hasp-maint-decision-grid .hasp-btn{margin-top:13px}
.hasp-maint-procedure{margin:20px 0;padding:18px;border:1px solid var(--maint-border);border-radius:8px}.hasp-maint-procedure h4,.hasp-maint-procedure>p{margin:0}.hasp-maint-procedure>p{margin-top:5px;color:var(--maint-muted)}.hasp-maint-procedure ol{margin:15px 0 0;padding:0;list-style:none}.hasp-maint-procedure li{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr);align-items:center;gap:12px;padding:12px 0;border-top:1px solid #edf0f3}.hasp-maint-procedure li>div small{display:block;color:var(--maint-red);font-size:.68rem}.hasp-maint-instruction{color:var(--maint-muted);font-size:.78rem;font-weight:700}.hasp-maint-subsection{margin-top:24px;padding-top:18px;border-top:1px solid var(--maint-border)}.hasp-maint-history{margin-top:24px;padding-top:18px;border-top:1px solid var(--maint-border)}.hasp-maint-history h4{margin:0 0 14px}.hasp-maint-history ol{margin:0;padding:0;list-style:none}.hasp-maint-history li{position:relative;margin-left:6px;padding:0 0 17px 23px;border-left:2px solid #dce4eb}.hasp-maint-history li:before{position:absolute;top:3px;left:-6px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:var(--maint-blue);box-shadow:0 0 0 1px var(--maint-blue);content:""}.hasp-maint-history li>strong,.hasp-maint-history li>span{display:block}.hasp-maint-history li>span{margin-top:2px;color:var(--maint-muted);font-size:.72rem}.hasp-maint-history li p{margin:6px 0 0}
.hasp-maint-calendar{overflow:auto}.hasp-maint-weekdays,.hasp-maint-days{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));min-width:910px}.hasp-maint-weekdays span{padding:9px;text-align:center;color:var(--maint-muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.hasp-maint-days>div{min-height:125px;padding:8px;border-top:1px solid var(--maint-border);border-left:1px solid var(--maint-border);background:#fff}.hasp-maint-days>div:nth-child(7n){border-right:1px solid var(--maint-border)}.hasp-maint-days>div.is-empty{background:#f8fafc}.hasp-maint-days>div>strong{display:block;margin-bottom:5px}.hasp-maint-days a{display:block;margin:4px 0;padding:5px 6px;border-left:3px solid var(--maint-blue);border-radius:3px;background:#eff7fa;color:var(--maint-navy);font-size:.67rem;text-decoration:none}.hasp-maint-days a.priority-urgent{border-color:var(--maint-red);background:#fff0f0}.hasp-maint-days a.priority-high{border-color:var(--maint-amber);background:#fff7e9}.hasp-maint-days a small{display:block;color:var(--maint-muted)}
.hasp-maint-qr-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(300px,1.2fr);gap:28px;align-items:start}.hasp-maint-qr{display:flex;align-items:center;justify-content:center;width:264px;min-height:264px;margin:14px 0;padding:12px;border:1px solid var(--maint-border);border-radius:8px;background:#fff}.hasp-maint-qr img,.hasp-maint-qr canvas{max-width:240px!important;height:auto!important}.hasp-maint-copy{width:100%;font-family:monospace;font-size:.72rem}.hasp-maint-step-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 12px}.hasp-maint-step-head h4,.hasp-maint-step-head p{margin:0}.hasp-maint-step-head p{margin-top:4px;color:var(--maint-muted)}.hasp-maint-step{display:grid;grid-template-columns:42px minmax(240px,1.4fr) minmax(180px,.7fr) 100px auto;align-items:end;gap:11px;margin-bottom:10px;padding:13px;border:1px solid var(--maint-border);border-radius:7px;background:#f8fafc}.hasp-maint-step-number{align-self:center;color:var(--maint-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.hasp-maint-remove-step,.hasp-maint-remove-po-item{border:0;background:transparent;color:#a51c30;font-weight:700;cursor:pointer}.hasp-maint-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hasp-maint-meter-card{padding:17px;border:1px solid var(--maint-border);border-radius:8px}.hasp-maint-meter-card>div{display:flex;gap:10px;align-items:flex-start}.hasp-maint-meter-card h4,.hasp-maint-meter-card p{margin:0}.hasp-maint-meter-card p{margin-top:3px;color:var(--maint-muted);font-size:.75rem}.hasp-maint-meter-card>strong,.hasp-maint-meter-card>small{display:block}.hasp-maint-meter-card>strong{margin:17px 0 3px;font-size:1.45rem}.hasp-maint-meter-card>small{color:var(--maint-muted)}.hasp-maint-meter-card>a{display:inline-block;margin-top:13px;font-weight:700}.hasp-maint-meter-entry{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);gap:18px;margin-top:20px;padding-top:20px;border-top:1px solid var(--maint-border)}.hasp-maint-meter-entry>form{padding:17px;border:1px solid var(--maint-border);border-radius:8px;background:#f8fafc}.hasp-maint-meter-entry label+label{margin-top:11px}.hasp-maint-meter-entry button{margin-top:12px}.hasp-maint-meter-entry ul{margin:0;padding:0;list-style:none}.hasp-maint-meter-entry li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--maint-border)}.hasp-maint-meter-entry li span{margin-right:auto;color:var(--maint-muted);font-size:.72rem}.hasp-maint-stock-hero{margin:18px 0;padding:22px;border-radius:8px;background:linear-gradient(135deg,#101b3a,#193565);color:#fff}.hasp-maint-stock-hero span,.hasp-maint-stock-hero strong,.hasp-maint-stock-hero small{display:block}.hasp-maint-stock-hero strong{margin:7px 0;font-size:2rem}.hasp-maint-po-item{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.3fr) 100px 120px auto;align-items:end;gap:10px;margin-bottom:10px;padding:13px;border:1px solid var(--maint-border);border-radius:7px;background:#f8fafc}.hasp-maint-receive{margin:20px 0;padding:17px;border:1px solid var(--maint-border);border-radius:8px}.hasp-maint-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}.hasp-maint-settings-grid fieldset{padding:17px;border:1px solid var(--maint-border);border-radius:8px}.hasp-maint-settings-grid legend{padding:0 7px;font-weight:800}.hasp-maint-settings-grid label+label{margin-top:11px}
.hasp-maint-public{min-height:70vh;padding:35px 18px;background:#f3f6f9;color:#101b3a}.hasp-maint-public-card{max-width:820px;margin:auto;padding:28px;border:1px solid #dfe5ec;border-radius:10px;background:#fff;box-shadow:0 12px 35px rgba(16,27,58,.08)}.hasp-maint-public-card h1{margin:5px 0 8px;color:#101b3a;font-size:1.8rem}.hasp-maint-public-card h2{color:#101b3a}.hasp-maint-lead{margin:0 0 20px;color:#5f6b7c}.hasp-maint-public-form{margin-top:20px}.hasp-maint-public-form .hasp-maint-form-grid{margin-bottom:16px}.hasp-maint-public-form .hasp-btn{margin-top:17px}.hasp-maint-public .hasp-alert{margin:14px 0;padding:13px;border-radius:6px}.hasp-maint-public .hasp-alert--info{border-left:4px solid #38a5c1;background:#eff8fa}.hasp-maint-public .hasp-alert--success{border-left:4px solid #237a4b;background:#edf8f1}
@media(max-width:1180px){.hasp-maint-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.hasp-maint-overview-grid{grid-template-columns:1fr}.hasp-maint-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hasp-maint-step{grid-template-columns:36px minmax(220px,1fr) minmax(160px,.7fr);}.hasp-maint-step .hasp-maint-check,.hasp-maint-step .hasp-maint-remove-step{grid-column:auto}.hasp-maint-po-item{grid-template-columns:repeat(2,minmax(0,1fr))}.hasp-maint-po-item button{justify-self:start}}
@media(max-width:820px){.hasp-maint-head{align-items:flex-start}.hasp-maint-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.hasp-maint-meta,.hasp-maint-public-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.hasp-maint-decision-grid,.hasp-maint-qr-layout,.hasp-maint-meter-entry,.hasp-maint-settings-grid{grid-template-columns:1fr}.hasp-maint-filters{grid-template-columns:1fr 1fr}.hasp-maint-filters .hasp-btn{grid-column:1/-1}.hasp-maint-card-grid{grid-template-columns:1fr}.hasp-maint-step{grid-template-columns:1fr}.hasp-maint-step-number{display:none}.hasp-maint-procedure li{grid-template-columns:1fr}.hasp-maint-public{padding:20px 10px}.hasp-maint-public-card{padding:20px}}
@media(max-width:560px){.hasp-maint-head{display:block}.hasp-maint-head .hasp-btn{margin-top:16px}.hasp-maint-kpis{grid-template-columns:1fr 1fr}.hasp-maint-kpis>a,.hasp-maint-kpis>article{padding:14px}.hasp-maint-form-grid,.hasp-maint-meta,.hasp-maint-public-meta,.hasp-maint-filters,.hasp-maint-po-item{grid-template-columns:1fr}.hasp-maint-span-2{grid-column:auto}.hasp-maint-health.needs-attention{grid-template-columns:1fr}.hasp-maint-toolbar{align-items:flex-start;flex-direction:column}.hasp-maint-procedure{padding:13px}.hasp-maint-qr{width:100%}.hasp-maint-step-head{align-items:flex-start;flex-direction:column}.hasp-maint-public-card h1{font-size:1.5rem}}
.hasp-maint-filters--wide{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}.hasp-maint-workflow{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin:18px 0}.hasp-maint-workflow>div{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--maint-border);border-radius:7px;color:var(--maint-muted);background:#f8fafc}.hasp-maint-workflow strong{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e4e9ef;color:#475467}.hasp-maint-workflow span{font-size:.73rem;font-weight:800}.hasp-maint-workflow .is-current{border-color:var(--maint-blue);background:#eff8fa;color:var(--maint-navy)}.hasp-maint-workflow .is-current strong{background:var(--maint-blue);color:#fff}.hasp-maint-workflow .is-complete{border-color:#b9ddc8;background:#edf8f1;color:#17613c}.hasp-maint-workflow .is-complete strong{background:var(--maint-green);color:#fff}.hasp-maint-vehicle-fields{margin:22px 0;padding:18px;border:1px solid var(--maint-border);border-radius:8px}.hasp-maint-vehicle-fields legend{padding:0 8px;font-weight:800}.hasp-maint-compliance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.hasp-maint-compliance-grid article{padding:16px;border:1px solid var(--maint-border);border-radius:8px;background:#f8fafc}.hasp-maint-compliance-grid small,.hasp-maint-compliance-grid strong,.hasp-maint-compliance-grid span{display:block}.hasp-maint-compliance-grid small{color:var(--maint-muted);font-weight:800}.hasp-maint-compliance-grid strong{margin:8px 0 4px;font-size:1.12rem}.hasp-maint-compliance-grid span{color:var(--maint-muted);font-size:.72rem}
@media(max-width:820px){.hasp-maint-filters--wide{grid-template-columns:1fr 1fr}.hasp-maint-workflow,.hasp-maint-compliance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.hasp-maint-filters--wide,.hasp-maint-workflow,.hasp-maint-compliance-grid{grid-template-columns:1fr}}


/* Public maintenance request portal — v2.31.2 */
body.hasp-maintenance-request-page .ha-generic-layout,
.ha-generic-page--maintenance-request .ha-generic-layout {
    display:block;
    max-width:1060px;
}
body.hasp-maintenance-request-page .ha-page-help,
.ha-generic-page--maintenance-request .ha-page-help {display:none!important}
body.hasp-maintenance-request-page .ha-reading-surface,
.ha-generic-page--maintenance-request .ha-reading-surface {
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.hasp-maintenance-request-page .ha-page-hero,
.ha-generic-page--maintenance-request .ha-page-hero {
    padding-block:clamp(3.5rem,7vw,5.75rem);
}
body.hasp-maintenance-request-page .ha-page-section,
.ha-generic-page--maintenance-request .ha-page-section {
    padding-block:clamp(2.5rem,5vw,4.5rem);
}
body.hasp-maintenance-request-page .ha-entry-content,
.ha-generic-page--maintenance-request .ha-entry-content {color:inherit}

.hasp-maint-public {
    --maint-navy:#102b3a;
    --maint-blue:#38a5c1;
    --maint-action:#a51b81;
    --maint-action-dark:#851365;
    --maint-green:#237a4b;
    --maint-border:#d9e5e9;
    --maint-muted:#5c707a;
    width:100%;
    max-width:1040px;
    min-height:0;
    margin:0 auto;
    padding:0;
    background:transparent;
    color:var(--maint-navy);
    font-size:16px;
    line-height:1.55;
}
.hasp-maint-public *,
.hasp-maint-public *::before,
.hasp-maint-public *::after {box-sizing:border-box}
.hasp-maint-public-card {
    max-width:none;
    margin:0;
    padding:0;
    overflow:hidden;
    border:1px solid rgba(16,43,58,.12);
    border-radius:20px;
    background:#fff;
    box-shadow:0 22px 58px rgba(16,43,58,.09);
}
.hasp-maint-public-head {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(230px,300px);
    align-items:center;
    gap:28px;
    padding:clamp(26px,4vw,42px);
    border-bottom:1px solid var(--maint-border);
    background:linear-gradient(135deg,#f4fafc 0%,#fff 58%,#fff6fb 100%);
}
.hasp-maint-public-heading {min-width:0}
.hasp-maint-public .hasp-maint-eyebrow {
    display:block;
    margin:0 0 9px;
    color:var(--maint-action);
    font-size:.72rem;
    font-weight:850;
    letter-spacing:.105em;
    text-transform:uppercase;
}
.hasp-maint-public-card h2 {
    margin:0;
    color:var(--maint-navy);
    font-size:clamp(1.75rem,3vw,2.35rem);
    line-height:1.13;
}
.hasp-maint-public .hasp-maint-lead {
    max-width:680px;
    margin:13px 0 0;
    color:#4e6671;
    font-size:1rem;
    line-height:1.7;
}
.hasp-maint-location {
    padding:18px 20px;
    border:1px solid #c9e1e7;
    border-radius:14px;
    background:rgba(255,255,255,.88);
    box-shadow:0 8px 24px rgba(16,43,58,.055);
}
.hasp-maint-location>span,
.hasp-maint-location>strong,
.hasp-maint-location>small {display:block}
.hasp-maint-location>span {
    margin-bottom:5px;
    color:var(--maint-muted);
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.hasp-maint-location>strong {
    color:var(--maint-navy);
    font-size:1.02rem;
    line-height:1.35;
}
.hasp-maint-location>small {
    margin-top:8px;
    color:var(--maint-green);
    font-size:.76rem;
    font-weight:750;
}
.hasp-maint-location>small span {margin-right:5px;font-size:.7rem}
.hasp-maint-public-body {padding:clamp(24px,4vw,42px)}
.hasp-maint-notice {
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:start;
    margin:0 0 24px;
    padding:16px 18px;
    border:1px solid #c9e2e8;
    border-radius:12px;
    background:#f1fafc;
}
.hasp-maint-notice__mark {
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:10px;
    background:var(--maint-navy);
    color:#fff;
    font-weight:900;
}
.hasp-maint-notice strong {display:block;margin:0 0 3px;color:var(--maint-navy)}
.hasp-maint-notice p {margin:0;color:#405d69;font-size:.91rem;line-height:1.6}
.hasp-maint-notice--success {border-color:#b9ddc8;background:#eff9f3}
.hasp-maint-notice--success .hasp-maint-notice__mark {background:var(--maint-green)}
.hasp-maint-notice--safety {border-color:#b9dce5;background:#f2fafc}
.hasp-maint-public-form {margin:0}
.hasp-maint-form-section {
    min-width:0;
    margin:0;
    padding:28px 0;
    border:0;
    border-top:1px solid var(--maint-border);
}
.hasp-maint-form-section:first-of-type {padding-top:4px;border-top:0}
.hasp-maint-section-head {
    display:flex;
    width:100%;
    align-items:flex-start;
    gap:13px;
    margin:0 0 19px;
    padding:0;
    color:inherit;
}
.hasp-maint-section-number {
    display:grid;
    place-items:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:10px;
    background:var(--maint-navy);
    color:#fff;
    font-size:.86rem;
    font-weight:850;
}
.hasp-maint-section-head>span:last-child {display:block;min-width:0}
.hasp-maint-section-head strong {
    display:block;
    color:var(--maint-navy);
    font-size:1.15rem;
    line-height:1.35;
}
.hasp-maint-section-head small {
    display:block;
    margin-top:4px;
    color:var(--maint-muted);
    font-size:.86rem;
    font-weight:400;
    line-height:1.55;
}
.hasp-maint-public-form .hasp-maint-form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px 20px;
    margin:0;
}
.hasp-maint-public-form label {display:block;min-width:0;margin:0;color:var(--maint-navy)}
.hasp-maint-public-form .hasp-maint-span-2 {grid-column:1/-1}
.hasp-maint-public-form .hasp-maint-field--half {max-width:calc(50% - 10px)}
.hasp-maint-field-label {
    display:flex;
    align-items:center;
    gap:7px;
    margin:0 0 7px;
    color:var(--maint-navy);
    font-size:.88rem;
    font-weight:780;
}
.hasp-maint-field-label em {color:var(--maint-action);font-style:normal}
.hasp-maint-field-label small {
    display:inline-flex!important;
    margin:0!important;
    padding:2px 7px;
    border-radius:999px;
    background:#eef4f6;
    color:var(--maint-muted)!important;
    font-size:.66rem!important;
    font-weight:750!important;
}
.hasp-maint-public-form input:not([type="checkbox"]):not([type="file"]),
.hasp-maint-public-form select,
.hasp-maint-public-form textarea {
    display:block;
    width:100%;
    min-width:0;
    min-height:50px;
    margin:0;
    padding:12px 14px;
    border:1px solid #aec4cc;
    border-radius:9px;
    outline:0;
    background:#fff;
    color:var(--maint-navy);
    font:inherit;
    font-size:.94rem;
    line-height:1.45;
    box-shadow:none;
    transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.hasp-maint-public-form select {padding-right:38px;cursor:pointer}
.hasp-maint-public-form textarea {min-height:158px;resize:vertical}
.hasp-maint-public-form input::placeholder,
.hasp-maint-public-form textarea::placeholder {color:#788d96;opacity:1}
.hasp-maint-public-form input:not([type="checkbox"]):not([type="file"]):hover,
.hasp-maint-public-form select:hover,
.hasp-maint-public-form textarea:hover {border-color:#7fa8b5}
.hasp-maint-public-form input:not([type="checkbox"]):not([type="file"]):focus,
.hasp-maint-public-form select:focus,
.hasp-maint-public-form textarea:focus,
.hasp-maint-public-form input[type="file"]:focus-visible {
    border-color:var(--maint-blue);
    box-shadow:0 0 0 4px rgba(56,165,193,.16);
}
.hasp-maint-upload {
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr);
    gap:13px;
    align-items:center;
    padding:18px;
    border:1px dashed #8fb7c3;
    border-radius:12px;
    background:#f7fbfc;
}
.hasp-maint-upload__icon {
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:11px;
    background:#e8f5f8;
    color:var(--maint-navy);
    font-size:1.25rem;
    font-weight:800;
}
.hasp-maint-upload__copy {display:block;min-width:0}
.hasp-maint-upload__copy strong {display:block;color:var(--maint-navy);font-size:.92rem}
.hasp-maint-upload__copy small {
    display:block;
    margin:4px 0 0!important;
    color:var(--maint-muted)!important;
    font-size:.78rem!important;
    font-weight:400!important;
}
.hasp-maint-upload input[type="file"] {
    grid-column:1/-1;
    display:block;
    width:100%;
    margin-top:4px;
    padding:8px;
    border:1px solid #c7d9de;
    border-radius:9px;
    background:#fff;
    color:#415d68;
    font:inherit;
    font-size:.83rem;
}
.hasp-maint-upload input[type="file"]::file-selector-button {
    margin-right:12px;
    padding:9px 13px;
    border:0;
    border-radius:7px;
    background:var(--maint-navy);
    color:#fff;
    font:inherit;
    font-size:.8rem;
    font-weight:800;
    cursor:pointer;
}
.hasp-maint-privacy-note {
    margin:12px 0 17px;
    color:var(--maint-muted);
    font-size:.79rem;
    line-height:1.55;
}
.hasp-maint-privacy-note strong {color:var(--maint-navy)}
.hasp-maint-public-form .hasp-maint-check.hasp-maint-declaration {
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr);
    align-items:start;
    gap:11px;
    margin:0;
    padding:15px 16px;
    border:1px solid #d3e1e5;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
}
.hasp-maint-declaration input[type="checkbox"] {
    width:20px!important;
    height:20px!important;
    margin:2px 0 0;
    accent-color:var(--maint-action);
    cursor:pointer;
}
.hasp-maint-declaration span {color:#365560;font-size:.86rem;line-height:1.55}
.hasp-maint-submit-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-top:2px;
    padding:22px;
    border-radius:13px;
    background:var(--maint-navy);
    color:#fff;
}
.hasp-maint-submit-row>div {min-width:0}
.hasp-maint-submit-row>div strong,
.hasp-maint-submit-row>div small {display:block}
.hasp-maint-submit-row>div strong {font-size:1rem}
.hasp-maint-submit-row>div small {margin-top:4px;color:#d4e4ea;font-size:.79rem;line-height:1.45}
.hasp-maint-submit {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    flex:0 0 auto;
    min-height:50px;
    margin:0!important;
    padding:12px 19px;
    border:0;
    border-radius:9px;
    background:var(--maint-action);
    color:#fff;
    font:inherit;
    font-size:.9rem;
    font-weight:850;
    line-height:1;
    text-decoration:none;
    cursor:pointer;
    box-shadow:0 9px 22px rgba(165,27,129,.23);
    transition:background .16s ease,transform .16s ease,box-shadow .16s ease;
}
.hasp-maint-submit:hover {background:var(--maint-action-dark);transform:translateY(-1px);box-shadow:0 12px 26px rgba(165,27,129,.28)}
.hasp-maint-submit:focus-visible {outline:3px solid #fff;outline-offset:3px}
.hasp-maint-public--message {max-width:760px}
.hasp-maint-public-message {padding:clamp(28px,5vw,48px)}
.hasp-maint-public-message p {margin:12px 0 0;color:var(--maint-muted);line-height:1.7}
.hasp-maint-public-meta {grid-template-columns:repeat(4,minmax(0,1fr))}
.hasp-maint-public-form>label+label {margin-top:18px}
.hasp-maint-public-form>.hasp-maint-submit {margin-top:20px!important}

@media(max-width:820px) {
    body.hasp-maintenance-request-page .ha-page-hero,
    .ha-generic-page--maintenance-request .ha-page-hero {padding-block:3.2rem}
    .hasp-maint-public-head {grid-template-columns:1fr;gap:20px}
    .hasp-maint-location {max-width:none}
    .hasp-maint-public-meta {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px) {
    body.hasp-maintenance-request-page .ha-page-section,
    .ha-generic-page--maintenance-request .ha-page-section {padding-block:1.75rem}
    .hasp-maint-public-card {border-radius:14px}
    .hasp-maint-public-head,.hasp-maint-public-body {padding:21px}
    .hasp-maint-public-form .hasp-maint-form-grid {grid-template-columns:1fr;gap:16px}
    .hasp-maint-public-form .hasp-maint-span-2 {grid-column:auto}
    .hasp-maint-public-form .hasp-maint-field--half {max-width:none}
    .hasp-maint-section-head {gap:10px}
    .hasp-maint-section-number {flex-basis:31px;width:31px;height:31px;border-radius:9px}
    .hasp-maint-notice {grid-template-columns:36px minmax(0,1fr);padding:14px}
    .hasp-maint-notice__mark {width:31px;height:31px;border-radius:9px}
    .hasp-maint-upload {grid-template-columns:40px minmax(0,1fr);padding:15px}
    .hasp-maint-upload__icon {width:38px;height:38px}
    .hasp-maint-submit-row {align-items:stretch;flex-direction:column;padding:18px}
    .hasp-maint-submit {width:100%}
    .hasp-maint-public-meta {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce) {
    .hasp-maint-public-form input,
    .hasp-maint-public-form select,
    .hasp-maint-public-form textarea,
    .hasp-maint-submit {transition:none}
}
@media(forced-colors:active) {
    .hasp-maint-public-card,
    .hasp-maint-notice,
    .hasp-maint-form-section,
    .hasp-maint-upload,
    .hasp-maint-declaration {border:1px solid CanvasText}
    .hasp-maint-submit {border:1px solid ButtonText}
}
.hasp-maint-vendor-scope {
    margin:24px 0;
    padding:22px;
    border:1px solid var(--maint-border);
    border-left:4px solid var(--maint-blue);
    border-radius:12px;
    background:#f8fbfc;
}
.hasp-maint-vendor-scope h3 {
    margin:5px 0 9px;
    color:var(--maint-navy);
    font-size:1.35rem;
    line-height:1.3;
}
.hasp-maint-vendor-scope p {margin:0;color:#405d69;line-height:1.7}


/* v2.31.3 automated asset attention queue */
.hasp-maint-badge--warning{background:#fff3df;color:#8a5300}.hasp-maint-badge--critical{background:#fdecec;color:#9a1b1b}.hasp-maint-badge--normal{background:#e9f7ef;color:#17613c}.hasp-maint-asset-attention-row td{background:#fffaf4}.hasp-maint-asset-attention-row:has(.hasp-maint-badge--critical) td{background:#fff5f5}.hasp-maint-attention-reason{display:block!important;max-width:360px;margin-top:6px!important;white-space:normal;color:#69410b!important;line-height:1.45}.hasp-maint-asset-alert-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px}.hasp-maint-asset-alert-summary a{font-weight:800}.hasp-maint-asset-attention small{display:block;margin-top:8px;color:inherit}.hasp-alert--danger{border-left-color:#d92d20;background:#fff4f3;color:#912018}


/* Maintenance record lifecycle and Trash — v2.31.9 */
.hasp-maint-inline-action{display:inline-flex;margin:0}
.hasp-maint-inline-action .dashicons{width:16px;height:16px;font-size:16px}
.hasp-btn--small{min-height:34px!important;padding:7px 10px!important;font-size:.72rem!important}
.hasp-maint-row-actions,.hasp-maint-trash-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.hasp-maint-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0 0;padding:16px 18px;border:1px solid #efc3c3;border-radius:8px;background:#fff7f7}
.hasp-maint-danger-zone strong,.hasp-maint-danger-zone small{display:block}
.hasp-maint-danger-zone strong{color:#86181d}
.hasp-maint-danger-zone small{margin-top:4px;color:var(--maint-muted)}
.hasp-maint-badge--archived{background:#f2f0f5;color:#5c486c}
@media(max-width:680px){.hasp-maint-danger-zone{align-items:flex-start;flex-direction:column}.hasp-maint-trash-actions{align-items:flex-start;flex-direction:column}}


/* Published SIL property sync controls — v2.31.10 */
.hasp-maint-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.hasp-maint-head-actions form{margin:0}
.hasp-maint-head-actions .dashicons{font-size:17px;width:17px;height:17px;line-height:17px;margin-right:5px}
@media(max-width:700px){.hasp-maint-head-actions{width:100%;justify-content:stretch}.hasp-maint-head-actions form,.hasp-maint-head-actions .hasp-btn{width:100%}.hasp-maint-head-actions .hasp-btn{justify-content:center}}
