#belair-defibrillator-root{position:fixed;inset:0;z-index:10020;background:#f5f7f6;color:#17231f;display:none;overflow:auto;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}#belair-defibrillator-root.active{display:block}.aed-shell{max-width:1440px;margin:0 auto;padding:24px 28px 60px}.aed-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#173f34,#275f50);color:#fff;padding:26px 28px;border-radius:20px;box-shadow:0 12px 30px rgba(23,63,52,.16)}.aed-head h1{font-size:32px;line-height:1.1;margin:4px 0 6px}.aed-head p{margin:0;color:#d9ebe5}.aed-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#bfe3d6}.aed-head-actions{display:flex;gap:10px;flex-wrap:wrap}.aed-btn{appearance:none;border:1px solid #cbd8d2;background:#fff;color:#173f34;border-radius:10px;padding:10px 14px;font-weight:750;cursor:pointer;min-height:42px}.aed-head .aed-btn{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff}.aed-btn.primary{background:#d59a36;color:#1f271f;border-color:#d59a36}.aed-btn:disabled{opacity:.55;cursor:wait}.aed-tabs{display:flex;gap:8px;padding:18px 2px 12px;position:sticky;top:0;z-index:4;background:#f5f7f6}.aed-tabs button{border:0;background:#e5ece9;color:#315047;border-radius:999px;padding:10px 17px;font-weight:800;cursor:pointer}.aed-tabs button.active{background:#173f34;color:#fff}.aed-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 16px}.aed-summary>div{background:#fff;border:1px solid #dae4df;border-radius:15px;padding:15px 17px;box-shadow:0 4px 14px rgba(36,65,55,.05)}.aed-summary span{display:block;font-size:12px;color:#5d7069;font-weight:750}.aed-summary strong{display:block;font-size:27px;margin-top:4px;color:#173f34}.aed-summary .danger{border-color:#ef9a9a;background:#fff6f6}.aed-summary .danger strong{color:#b42318}.aed-summary .warn{border-color:#e8bd63;background:#fffaf0}.aed-summary .warn strong{color:#9a5b00}.aed-notice,.aed-check-instruction{background:#eef6f3;border:1px solid #bdd8ce;border-left:5px solid #2a7562;border-radius:12px;padding:13px 15px;margin-bottom:16px;color:#2a4b40}.aed-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.aed-unit-card{background:#fff;border:1px solid #d8e2de;border-radius:18px;padding:18px;box-shadow:0 7px 20px rgba(26,60,49,.06)}.aed-unit-card.attention{border-color:#e47777;box-shadow:0 7px 22px rgba(180,35,24,.1)}.aed-unit-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid #e7eeeb;padding-bottom:13px}.aed-unit-card header span{font-size:11px;font-weight:900;letter-spacing:.08em;color:#698079;text-transform:uppercase}.aed-unit-card h2{font-size:22px;margin:3px 0}.aed-unit-card p{margin:0;color:#63736e;font-size:13px}.aed-status{font-size:11px;padding:7px 10px;border-radius:999px;background:#e7efeC;color:#275348;white-space:nowrap}.aed-status.attention-required,.aed-status.overdue,.aed-status.check-due{background:#fee2e2;color:#991b1b}.aed-status.due-soon{background:#fff2cc;color:#7c4a00}.aed-check-types{display:grid;gap:9px;margin:14px 0}.aed-type-card{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f7faf9;border:1px solid #dfe8e4;border-radius:12px;padding:11px 12px}.aed-type-card>div{min-width:0}.aed-type-card span,.aed-type-card small{display:block}.aed-type-card span{font-size:11px;font-weight:850;text-transform:uppercase;color:#6b8078}.aed-type-card strong{font-size:14px}.aed-type-card small{font-size:11px;color:#71817b;margin-top:2px}.aed-type-card.overdue,.aed-type-card.due{background:#fff5f5;border-color:#f1b1b1}.aed-type-card.soon{background:#fffaf0;border-color:#ebca7e}.aed-unit-card>footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #e7eeeb;padding-top:12px;font-size:13px;color:#64756f}.aed-link-btn{border:0;background:transparent;color:#166957;font-weight:850;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:5px}.aed-history-actions{display:flex;justify-content:flex-end;gap:8px;margin:0 0 12px}.aed-table-wrap{overflow:auto;background:#fff;border:1px solid #d8e2de;border-radius:15px;box-shadow:0 5px 16px rgba(26,60,49,.05)}.aed-table{width:100%;border-collapse:collapse;min-width:850px}.aed-table th,.aed-table td{padding:11px 12px;border-bottom:1px solid #e6edea;text-align:left;vertical-align:top;font-size:13px}.aed-table th{background:#173f34;color:#fff;font-size:12px;position:sticky;top:0}.aed-table td small{display:block;color:#71817b;margin-top:3px}.aed-table tr.failed td{background:#fff2f2}.aed-empty,.aed-error{background:#fff;border:1px solid #d8e2de;border-radius:14px;padding:30px;text-align:center}.aed-error{color:#9f1c16;border-color:#efb0ad}.aed-modal-layer{position:fixed;inset:0;z-index:10060;background:rgba(12,28,23,.62);display:flex;align-items:center;justify-content:center;padding:20px}.aed-modal-layer.wide .aed-modal{max-width:1050px}.aed-modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:19px;box-shadow:0 26px 70px rgba(0,0,0,.28);padding:22px}.aed-modal>header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;border-bottom:1px solid #e4ebe8;padding-bottom:13px;margin-bottom:15px}.aed-modal h2{font-size:24px;margin:3px 0 4px}.aed-modal header p{margin:0;color:#64756f}.aed-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.aed-form-grid label,.aed-pad-expiry,.aed-overall-note,.aed-failure-comment{display:block}.aed-form-grid .wide{grid-column:1/-1}.aed-form-grid label>span,.aed-pad-expiry>span,.aed-overall-note>span,.aed-failure-comment>span{display:block;font-size:12px;font-weight:800;color:#405a51;margin-bottom:5px}.aed-form-grid input,.aed-form-grid select,.aed-form-grid textarea,.aed-pad-expiry input,.aed-overall-note textarea,.aed-failure-comment textarea{width:100%;box-sizing:border-box;border:1px solid #cbd8d2;border-radius:10px;padding:10px 11px;font:inherit;background:#fff;color:#17231f}.aed-form-grid input:focus,.aed-form-grid select:focus,.aed-form-grid textarea:focus,.aed-failure-comment textarea:focus{outline:3px solid rgba(35,116,94,.14);border-color:#28765f}.aed-checkbox-line{display:flex!important;align-items:center;gap:9px;padding-top:26px}.aed-checkbox-line input{width:20px!important;height:20px}.aed-modal form>footer{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #e4ebe8;margin-top:17px;padding-top:15px}.aed-check-list{display:grid;gap:12px}.aed-check-row{border:1px solid #dce5e1;border-radius:14px;padding:14px;background:#f9fbfa;transition:.15s}.aed-check-row.failed{border-color:#e99d99;background:#fff5f5}.aed-check-box{display:flex;align-items:center;gap:11px;cursor:pointer}.aed-check-box input{position:absolute;opacity:0;pointer-events:none}.aed-check-box>span{width:30px;height:30px;border-radius:8px;border:2px solid #9fb5ad;background:#fff;display:grid;place-items:center;color:transparent;font-weight:900;flex:0 0 30px}.aed-check-box input:checked+span{background:#23735d;border-color:#23735d;color:#fff}.aed-check-box b{font-size:15px}.aed-failure-comment{display:none;margin-top:12px;padding-left:41px}.aed-check-row.failed .aed-failure-comment{display:block}.aed-check-row.failed .aed-failure-comment textarea{border-color:#d7635c}.aed-pad-expiry,.aed-overall-note{margin-top:14px;background:#f4f8f6;border-radius:12px;padding:13px}.aed-pad-expiry input{max-width:260px}.aed-pad-expiry small{display:block;color:#6e7d78;margin-top:5px}.aed-check-footer{position:sticky;bottom:-22px;background:#fff;z-index:2}.aed-record-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:13px}.aed-record-summary>div{padding:12px;background:#eef6f3;border-radius:10px}.aed-record-summary.attention>div{background:#fff1f1}.aed-record-summary span{display:block;font-size:11px;color:#687a74}.aed-record-summary strong{display:block;margin-top:3px}.aed-record-note{background:#f6f8f7;padding:11px;border-radius:10px}.aed-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:13px;color:#315047;font-weight:800}.aed-spinner{width:35px;height:35px;border:4px solid #cfe0d9;border-top-color:#1f7059;border-radius:50%;animation:aed-spin .8s linear infinite}@keyframes aed-spin{to{transform:rotate(360deg)}}.aed-toast{position:fixed;z-index:10100;right:20px;bottom:20px;background:#173f34;color:#fff;border-radius:12px;padding:13px 17px;box-shadow:0 12px 30px rgba(0,0,0,.24);max-width:430px;font-weight:750}.aed-toast.error{background:#9f201a}.aed-nav-icon{font-size:18px;color:#d83d3d}#belair-defibrillator-dashboard-card{width:calc(100% - 48px);margin:12px 24px;border:1px solid #cbd9d3;border-radius:15px;background:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;color:#173f34}#belair-defibrillator-dashboard-card span,#belair-defibrillator-dashboard-card small{display:block}#belair-defibrillator-dashboard-card span{font-size:11px;text-transform:uppercase;font-weight:900;color:#667b73}#belair-defibrillator-dashboard-card strong{display:block;font-size:16px;margin:3px 0}#belair-defibrillator-dashboard-card small{color:#6f7f79}#belair-defibrillator-dashboard-card.danger{border-color:#eb9d99;background:#fff5f5}
@media(max-width:900px){.aed-shell{padding:12px 12px 95px}.aed-head{padding:20px 17px;border-radius:15px;display:block}.aed-head h1{font-size:26px}.aed-head-actions{margin-top:14px}.aed-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.aed-unit-grid{grid-template-columns:1fr}.aed-tabs{overflow:auto;top:0;padding-top:10px}.aed-tabs button{white-space:nowrap}.aed-modal-layer{padding:0;align-items:flex-end}.aed-modal-layer .aed-modal,.aed-modal-layer.wide .aed-modal{width:100%;max-width:none;max-height:96vh;border-radius:20px 20px 0 0;padding:17px}.aed-form-grid{grid-template-columns:1fr}.aed-form-grid .wide{grid-column:auto}.aed-type-card{align-items:flex-start}.aed-type-card .aed-btn{min-width:105px}.aed-check-footer{display:grid!important;grid-template-columns:1fr 1fr;bottom:-17px}.aed-check-footer button[type=submit]{grid-column:1/-1;order:-1}.aed-record-summary{grid-template-columns:1fr}.aed-toast{left:12px;right:12px;bottom:88px;max-width:none}#belair-defibrillator-dashboard-card{width:calc(100% - 24px);margin:10px 12px}.aed-check-box b{font-size:14px}.aed-failure-comment{padding-left:0}.aed-history-actions{justify-content:stretch}.aed-history-actions .aed-btn{flex:1}}
@media(max-width:480px){.aed-summary{grid-template-columns:1fr 1fr}.aed-summary strong{font-size:23px}.aed-unit-card{padding:14px}.aed-unit-card>header{display:block}.aed-status{display:inline-block;margin-top:8px}.aed-type-card{display:block}.aed-type-card .aed-btn{width:100%;margin-top:9px}.aed-modal>header{display:block}.aed-modal>header .aed-btn{margin-top:9px}.aed-check-footer{grid-template-columns:1fr}.aed-check-footer button[type=submit]{grid-column:auto}.aed-form-grid input,.aed-form-grid select,.aed-form-grid textarea{font-size:16px}}
.aed-awaiting{display:inline-block;padding:5px 8px;border-radius:999px;background:#fff2cc;color:#7c4a00;font-size:11px;font-weight:800}.aed-manager-review{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff8e7;border:1px solid #e7c56f;border-radius:12px;padding:13px 14px;margin:0 0 14px}.aed-manager-review.complete{background:#eef7f3;border-color:#a9d1c1}.aed-manager-review span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#6c7d77}.aed-manager-review strong{display:block;margin-top:3px}.aed-manager-review p{margin:5px 0 0;color:#586b64;font-size:13px}@media(max-width:650px){.aed-manager-review{display:block}.aed-manager-review .aed-btn{width:100%;margin-top:11px}}
