.maintenance-module{display:grid;gap:22px}.maintenance-module>header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:26px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#10233f,#2357c6)}.maintenance-module h1{margin:7px 0}.maintenance-module p{opacity:.82}.maintenance-module button,.maintenance-module a{font:inherit}.maintenance-header-actions{display:flex;gap:8px;flex-wrap:wrap}.maintenance-header-actions a,.maintenance-header-actions button,.workspace-head button,.maintenance-modal footer button,.maintenance-link-button{border:1px solid #ffffff4d;background:#fff;color:#17366c;padding:9px 13px;border-radius:9px;text-decoration:none;cursor:pointer}.kpi-grid,.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi-grid article,.module-grid a,.workspace{background:#fff;padding:20px;border:1px solid #e4e9f2;border-radius:14px;text-decoration:none;color:#14213d}.kpi-grid span,.module-grid span{display:block;color:#748097}.kpi-grid strong{display:block;font-size:28px;margin-top:10px}.module-grid b{display:block;margin-bottom:8px}.maintenance-module-grid-extended{grid-template-columns:repeat(4,minmax(0,1fr))}.alert{padding:14px;border-radius:10px;background:#fff0f0;color:#a32b2b}.alert.success{background:#eafaf3;color:#126743}.workspace-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#fff;border:1px solid #e4e9f2;border-radius:14px}.workspace-head h2{margin:0}.workspace-head span{color:#748097}.workspace-head>div:last-child{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.workspace-head button{background:#2457c5;color:#fff;border-color:#2457c5}.workspace-head button.secondary,.maintenance-link-button{background:#fff;color:#2457c5;border-color:#c9d7ee}.maintenance-table-wrap{overflow:auto;background:#fff;border:1px solid #e3e8f0;border-radius:14px}.maintenance-table-wrap table{width:100%;border-collapse:collapse;min-width:850px}.maintenance-table-wrap th,.maintenance-table-wrap td{padding:13px 14px;text-align:right;border-bottom:1px solid #edf0f5}.maintenance-table-wrap th{background:#f6f8fb;color:#627087}.maintenance-table-wrap td small{display:block;color:#7e899a;margin-top:3px}.maintenance-status{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef2f7;color:#536176}.maintenance-status.active{background:#e9f8f1;color:#14724b}.maintenance-status.inactive{background:#f7eeee;color:#974151}.maintenance-icon-button,.maintenance-small-button{border:1px solid #d9e2ef;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer}.maintenance-icon-button.danger{color:#a32b2b}.maintenance-small-button{color:#1f58bc}

/* Modal scroll is kept inside the rounded surface, with a gutter so the scrollbar never covers the left corner. */
.maintenance-modal-backdrop{position:fixed;inset:0;background:#07132699;display:grid;place-items:center;padding:28px 38px;z-index:1000;overflow:hidden}.maintenance-modal{width:min(850px,100%);max-height:calc(100vh - 56px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 24px 80px #06112655}.maintenance-modal-large{width:min(1080px,100%)}.maintenance-modal>header,.maintenance-modal>footer{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;padding:17px 20px;border-bottom:1px solid #e5eaf2}.maintenance-modal>header h2{margin:0}.maintenance-modal-close,.maintenance-modal>header button{display:inline-grid;place-items:center;flex:0 0 38px;width:38px;min-width:38px;height:38px;min-height:38px;aspect-ratio:1;border:0;background:#eff2f6;border-radius:999px;line-height:1;padding:0;cursor:pointer}.maintenance-modal-body{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;padding-inline:8px 12px}.maintenance-modal>footer{border-top:1px solid #e5eaf2;border-bottom:0;justify-content:flex-end;gap:8px}.maintenance-modal footer button{background:#2457c5;color:#fff;border-color:#2457c5}.maintenance-modal footer button.secondary{background:#fff;color:#35445d;border-color:#d8e0ec}.maintenance-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px}.maintenance-form-grid.compact-grid{padding:14px 20px}.maintenance-form-grid label{display:grid;gap:6px}.maintenance-form-grid input,.maintenance-form-grid select,.maintenance-form-grid textarea,.report-filter input,.report-filter select{width:100%;box-sizing:border-box;border:1px solid #ccd6e5;border-radius:9px;padding:10px;background:#fff}.maintenance-form-grid .wide{grid-column:1/-1}.maintenance-check{display:flex!important;align-items:center;gap:8px}.maintenance-check input{width:auto}.maintenance-form-grid em{color:#c52d2d}.maintenance-form-grid label small{color:#778399}.maintenance-inline-note,.maintenance-empty{padding:18px;margin:10px 20px 20px;border:1px dashed #c7d2e3;border-radius:12px;background:#f8fafc;color:#68758a;text-align:center}

.attribute-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px 8px}.attribute-editor-head h3,.attribute-editor-head p{margin:0}.attribute-editor-head p{color:#788499;font-size:13px}.attribute-editor-head button,.failure-actions button{border:1px solid #cad7ea;background:#fff;color:#2457c5;border-radius:9px;padding:8px 12px;cursor:pointer}.equipment-attribute-list{display:grid;gap:12px;padding:10px 20px 22px}.equipment-attribute-card{border:1px solid #dde4ef;border-radius:13px;background:#fbfcfe}.attribute-card-title{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e8edf4}.attribute-card-title>div{display:flex;gap:5px}.attribute-card-title button{width:30px;height:30px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;cursor:pointer}.dynamic-equipment-properties{margin:0 12px 20px;border:1px solid #dfe7f3;border-radius:14px;background:#fbfdff}.equipment-selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 20px 18px;padding:12px;border:1px solid #dfe6f0;border-radius:12px;max-height:220px;overflow:auto}.equipment-selection-grid label{display:flex;align-items:center;gap:7px;padding:8px;border-radius:8px;background:#f7f9fc}.schedule-mode-panel{margin:0 20px 22px;padding:16px;border:1px solid #dfe6f0;border-radius:13px;background:#fafcff}.schedule-mode-panel>label{display:flex;gap:8px;align-items:center}.schedule-rule-list{display:grid;gap:9px}.schedule-rule{display:grid;grid-template-columns:repeat(5,minmax(80px,1fr)) auto auto;align-items:end;gap:8px;padding:10px;border:1px solid #e0e6ef;border-radius:10px;background:#fff}.schedule-rule label{display:grid;gap:5px}.schedule-rule select{width:100%;border:1px solid #ccd6e5;border-radius:8px;padding:8px}.schedule-rule code{direction:ltr;white-space:nowrap;padding:8px;background:#f0f4fa;border-radius:7px}

.failure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.failure-card{background:#fff;border:1px solid #dfe5ee;border-top:4px solid #8290a4;border-radius:14px;padding:17px;display:grid;gap:12px}.failure-card.severity-high{border-top-color:#ef8a23}.failure-card.severity-critical{border-top-color:#d62d45}.failure-card.severity-low{border-top-color:#2b9a6f}.failure-card-head{display:flex;justify-content:space-between;gap:10px}.failure-card-head strong,.failure-card-head span{display:block}.failure-card-head>div>span{color:#758196;font-size:13px;margin-top:4px}.failure-card p{margin:0;color:#4f5b6c;line-height:1.8}.failure-meta,.failure-actions{display:flex;gap:10px;flex-wrap:wrap}.failure-meta span{font-size:12px;color:#788498}.failure-actions button:last-child{background:#2457c5;color:#fff;border-color:#2457c5}.maintenance-upload-box{padding:14px;border:1px dashed #b9c8dc;border-radius:12px;background:#f8fbff}.attachment-chip-list{display:flex;gap:7px;flex-wrap:wrap;padding:0 20px 20px}.attachment-chip-list>span{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#eef3fa;color:#47576f}.attachment-chip-list button{border:0;background:transparent;cursor:pointer}.repair-timeline{padding:20px}.repair-timeline article{position:relative;margin-right:16px;padding:0 20px 20px;border-right:2px solid #d7e0ed}.repair-timeline article:before{content:"";position:absolute;right:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#2457c5}.repair-timeline article>div{display:flex;justify-content:space-between;gap:10px}.repair-timeline time,.repair-timeline small{color:#788498}.repair-timeline p{line-height:1.8}

.report-filter input,.report-filter select{min-width:130px}.report-two-column{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.embedded-table{border:0;border-radius:0;margin-top:12px}.daily-failure-list{display:grid;gap:8px;margin-top:12px}.daily-failure-list>div{display:grid;gap:4px;padding:12px;border:1px solid #e1e7f0;border-radius:10px}.daily-failure-list span,.daily-failure-list small{color:#738095}.monthly-performance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px}.monthly-performance-calendar article{min-height:125px;padding:11px;border:1px solid #dfe6ef;border-radius:12px;background:#fff;display:grid;align-content:start;gap:5px}.monthly-performance-calendar article.excellent{border-top:4px solid #21956a;background:#f0fbf6}.monthly-performance-calendar article.good{border-top:4px solid #4c79d8;background:#f4f7ff}.monthly-performance-calendar article.warning{border-top:4px solid #e39a28;background:#fff9ef}.monthly-performance-calendar article.critical{border-top:4px solid #d94555;background:#fff3f4}.monthly-performance-calendar article strong{font-size:18px}.monthly-performance-calendar article span{font-weight:700}.monthly-performance-calendar article small{color:#6f7b8e}.monthly-performance-calendar article button{margin-top:auto;border:0;background:transparent;color:#2457c5;text-align:right;cursor:pointer}.pm-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.pm-calendar-grid article{min-height:76px;border:1px solid #e2e7ef;border-radius:9px;padding:8px;display:grid}.pm-calendar-grid article.has-plan{background:#eef5ff;border-color:#bed2f6}.pm-calendar-grid span,.pm-calendar-grid small{color:#718096;font-size:11px}

@media(max-width:1100px){.maintenance-module-grid-extended,.failure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.equipment-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-rule{grid-template-columns:repeat(3,minmax(80px,1fr))}.monthly-performance-calendar{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:900px){.kpi-grid,.module-grid{grid-template-columns:repeat(2,1fr)}.pm-calendar-grid{grid-template-columns:repeat(4,1fr)}.report-two-column{grid-template-columns:1fr}.monthly-performance-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}.maintenance-modal-backdrop{padding:18px 22px}}
@media(max-width:600px){.maintenance-module>header,.workspace-head{align-items:flex-start;flex-direction:column}.maintenance-form-grid{grid-template-columns:1fr}.maintenance-form-grid .wide{grid-column:auto}.pm-calendar-grid{grid-template-columns:repeat(2,1fr)}.failure-grid,.maintenance-module-grid-extended,.equipment-selection-grid{grid-template-columns:1fr}.schedule-rule{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-performance-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-modal-backdrop{padding:10px 14px}.maintenance-modal{max-height:calc(100vh - 20px)}}

/* 6.15.0 data-list, history and QR surfaces */
.maintenance-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:6px;background:#eef3f9;border:1px solid #dce5f1;border-radius:12px}.maintenance-tabs button{border:0;background:transparent;color:#536279;padding:9px 14px;border-radius:8px;cursor:pointer}.maintenance-tabs button.active{background:#fff;color:#184d9e;box-shadow:0 1px 5px #1e3a5f1a}.maintenance-tabs button:disabled{opacity:.45;cursor:not-allowed}.maintenance-modal-tabs{margin:16px 20px 2px}.maintenance-list-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:14px 16px;background:#fff;border:1px solid #e3e8f0;border-radius:14px}.maintenance-list-toolbar label{display:grid;gap:6px;color:#5d6a7d;font-size:13px}.maintenance-list-toolbar input,.maintenance-list-toolbar select{min-width:180px;border:1px solid #ccd6e5;border-radius:9px;padding:10px;background:#fff;font:inherit}.maintenance-list-toolbar .maintenance-search-field{flex:1;min-width:260px}.maintenance-list-toolbar .maintenance-search-field input{width:100%;box-sizing:border-box}.maintenance-actions-cell{display:flex;align-items:center;gap:6px;white-space:nowrap}.maintenance-small-button.secondary{background:#fff;color:#3e536f}.maintenance-pagination{display:flex;justify-content:center;align-items:center;gap:10px;padding:10px}.maintenance-pagination button{border:1px solid #cbd7e7;background:#fff;color:#2457c5;border-radius:8px;padding:7px 13px;cursor:pointer}.maintenance-pagination button:disabled{opacity:.45;cursor:not-allowed}.maintenance-pagination span{color:#66758b}.maintenance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.maintenance-summary-grid article{display:grid;gap:7px;padding:16px;background:#fff;border:1px solid #e1e7f0;border-radius:13px}.maintenance-summary-grid span{color:#728096}.maintenance-summary-grid strong{font-size:26px;color:#18385f}.maintenance-history-list{display:grid;gap:10px;padding:20px}.maintenance-history-list article{padding:13px 15px;border:1px solid #e0e6ef;border-radius:11px;background:#fbfcfe}.maintenance-history-list article>div{display:flex;justify-content:space-between;gap:12px}.maintenance-history-list time,.maintenance-history-list small{color:#748197;font-size:12px}.maintenance-qr-panel{display:grid;justify-items:center;gap:10px;padding:26px;text-align:center}.maintenance-qr-panel svg{width:min(320px,80vw);height:auto;max-height:320px}.maintenance-qr-panel strong{font-size:18px}.maintenance-qr-panel small{color:#728096}.maintenance-confirm-modal{width:min(560px,100%)}.maintenance-confirm-text{padding:12px 4px;line-height:1.9;color:#435168}.maintenance-modal footer .danger-button{background:#b42334;border-color:#b42334;color:#fff}.maintenance-severity{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef2f7;color:#536176}.maintenance-severity.severity-high{background:#fff2df;color:#9a5a08}.maintenance-severity.severity-critical{background:#fde9ec;color:#a82238}.maintenance-severity.severity-low{background:#e9f8f1;color:#14724b}
@media(max-width:800px){.maintenance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-list-toolbar-multi{align-items:stretch}.maintenance-list-toolbar-multi label{flex:1;min-width:150px}}
@media(max-width:520px){.maintenance-summary-grid{grid-template-columns:1fr}.maintenance-list-toolbar .maintenance-search-field{min-width:100%}.maintenance-tabs button{flex:1}.maintenance-actions-cell{white-space:normal;flex-wrap:wrap}}

/* 6.16.0 professional maintenance surfaces */
.maintenance-module > header { min-height: auto; padding-block: 1rem; gap: 1rem; }
.maintenance-module > header h1 { margin-block: .2rem; }
.maintenance-header-actions, .maintenance-equal-actions { display: flex; flex-wrap: wrap; gap: .55rem; align-items: stretch; }
.maintenance-header-actions > *, .maintenance-equal-actions > * { min-height: 2.5rem; display: inline-flex; align-items: center; justify-content: center; }
.maintenance-equal-actions > * { min-width: 8.75rem; }
.maintenance-actions-cell { white-space: nowrap; }
.maintenance-actions-cell > button, .maintenance-actions-cell > a { min-width: 5.5rem; justify-content: center; }
.maintenance-actions-cell > .maintenance-icon-button { min-width: 2.65rem; width: 2.65rem; }
.maintenance-sort-button { appearance: none; border: 0; background: transparent; color: inherit; font: inherit; font-weight: 700; width: 100%; min-width: max-content; padding: .25rem .15rem; display: inline-flex; align-items: center; justify-content: space-between; gap: .5rem; cursor: pointer; text-align: start; }
.maintenance-sort-button:hover, .maintenance-sort-button.active { opacity: 1; }
.maintenance-sort-indicator { font-size: .82em; opacity: .72; }
.maintenance-section-tabs, .maintenance-editor-tabs { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 1rem; padding: .45rem; border: 1px solid var(--border, #d9e0ea); border-radius: .9rem; background: var(--surface-muted, #f6f8fb); }
.maintenance-section-tabs button, .maintenance-editor-tabs button { border: 1px solid transparent; background: transparent; border-radius: .7rem; padding: .7rem 1rem; min-height: 2.75rem; }
.maintenance-section-tabs button.active, .maintenance-editor-tabs button.active { background: var(--surface, #fff); border-color: var(--border, #d9e0ea); box-shadow: 0 2px 10px rgba(15,23,42,.07); }
.maintenance-editor-tabs button { min-width: 9.5rem; display: grid; gap: .15rem; text-align: start; }
.maintenance-editor-tabs button span { font-weight: 800; }
.maintenance-editor-tabs button small { opacity: .7; font-weight: 500; }
.maintenance-scope-badge { display: inline-flex; align-items: center; padding: .25rem .55rem; border-radius: 999px; background: var(--surface-muted, #eef2f7); font-size: .82rem; }
.maintenance-history-timeline { position: relative; display: grid; gap: .85rem; padding: .4rem; }
.maintenance-history-entry { display: grid; grid-template-columns: 1rem 1fr; gap: .75rem; align-items: start; }
.maintenance-history-dot { width: .75rem; height: .75rem; border-radius: 50%; background: currentColor; margin-top: .4rem; opacity: .55; }
.maintenance-history-content { border: 1px solid var(--border, #d9e0ea); border-radius: .8rem; padding: .85rem 1rem; background: var(--surface, #fff); }
.maintenance-history-title { display: flex; justify-content: space-between; gap: .75rem; align-items: center; }
.maintenance-history-content details { margin-top: .7rem; }
.maintenance-history-content pre { max-height: 14rem; overflow: auto; white-space: pre-wrap; direction: ltr; text-align: left; padding: .65rem; border-radius: .55rem; background: var(--surface-muted, #f4f6f9); }
.maintenance-code-designer { display: grid; gap: 1rem; }
.maintenance-code-toolbar { display: flex; justify-content: space-between; gap: 1rem; align-items: center; flex-wrap: wrap; }
.maintenance-code-toolbar > div:first-child { display: grid; gap: .2rem; }
.maintenance-code-kind { display: flex; gap: .4rem; padding: .3rem; border: 1px solid var(--border, #d9e0ea); border-radius: .75rem; }
.maintenance-code-kind button { border: 0; background: transparent; border-radius: .55rem; padding: .55rem .85rem; }
.maintenance-code-kind button.active { background: var(--surface-muted, #eef2f7); font-weight: 800; }
.maintenance-code-preview { min-height: 18rem; display: grid; place-items: center; gap: .8rem; border: 1px dashed var(--border, #cbd5e1); border-radius: 1rem; padding: 1.2rem; background: var(--surface, #fff); text-align: center; }
.maintenance-code-preview svg { width: min(100%, 25rem); max-height: 16rem; color: #111827; }
.maintenance-code-preview > div { display: grid; gap: .15rem; }
.maintenance-failures-page .maintenance-summary-grid { margin-top: .75rem; }
@media (max-width: 760px) {
  .maintenance-editor-tabs { display: grid; grid-template-columns: 1fr; }
  .maintenance-editor-tabs button { width: 100%; }
  .maintenance-equal-actions > * { flex: 1 1 8rem; min-width: 0; }
  .maintenance-code-toolbar { align-items: stretch; }
  .maintenance-code-kind { width: 100%; }
  .maintenance-code-kind button { flex: 1; }
}


/* Dedicated Maintenance PM form designer */
.maintenance-modal-xlarge{width:min(1500px,calc(100vw - 76px))}
.pm-form-designer-modal .maintenance-modal-body{padding:16px 18px 22px}
.pm-form-editor-tabs{margin-bottom:14px}
.pm-form-general-grid,.pm-form-guide-grid{padding:6px 2px 16px}
.pm-form-general-grid .maintenance-wide-field,.pm-form-guide-grid .maintenance-wide-field{grid-column:1/-1}
.maintenance-muted{color:#7a8799;font-size:12px}
.maintenance-version-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:4px 8px;border-radius:999px;background:#eef4ff;color:#2457c5;font-weight:700}
.pm-form-field-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px 12px}
.pm-form-field-toolbar>div{display:grid;gap:3px}.pm-form-field-toolbar small{color:#748197}
.pm-form-field-toolbar button{border:1px solid #2457c5;background:#2457c5;color:#fff;border-radius:9px;padding:9px 13px;cursor:pointer}
.pm-form-builder-table{border-radius:12px}
.pm-form-builder-table table{min-width:1320px}
.pm-form-builder-table th:nth-child(1){width:72px}
.pm-form-builder-table th:nth-child(2){width:190px}
.pm-form-builder-table th:nth-child(3){width:150px}
.pm-form-builder-table th:nth-child(4){width:320px}
.pm-form-builder-table th:nth-child(5){width:240px}
.pm-form-builder-table th:nth-child(6){width:76px}
.pm-form-builder-table th:nth-child(7){width:130px}
.pm-form-builder-table input,.pm-form-builder-table select,.pm-form-builder-table textarea{width:100%;box-sizing:border-box;border:1px solid #ccd6e5;border-radius:8px;padding:8px;background:#fff;font:inherit}
.pm-form-field-settings-cell{display:grid;gap:7px;min-width:280px}
.pm-form-inline-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pm-form-required-cell{text-align:center!important}.pm-form-required-cell input{width:18px;height:18px}
.pm-form-row-actions{justify-content:center}
.pm-form-version-history{display:grid;gap:12px;padding:4px 2px 18px}
.pm-form-version-history article{border:1px solid #e0e6ef;border-radius:12px;background:#fbfcfe;padding:14px 16px}
.pm-form-version-history article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0;border:0;background:transparent;color:inherit}
.pm-form-version-history article>header>div{display:grid;gap:4px}.pm-form-version-history article span{color:#61718a}
.pm-form-version-history article time,.pm-form-version-history article small{font-size:12px;color:#77849a}
.pm-form-version-history ul{margin:12px 0 0;padding-right:20px;color:#44536a;line-height:1.9}
@media(max-width:900px){.maintenance-modal-xlarge{width:100%}.pm-form-inline-settings{grid-template-columns:1fr}.pm-form-field-toolbar{align-items:stretch;flex-direction:column}.pm-form-version-history article>header{flex-direction:column}}
