.mhsp-portal{max-width:1180px;margin:40px auto;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#14243a}.mhsp-card,.mhsp-hero,.mhsp-top,.mhsp-modal-box{background:#fff;border:1px solid #e8edf3;border-radius:24px;box-shadow:0 18px 45px rgba(20,36,58,.08)}.mhsp-card{max-width:460px;margin:40px auto;padding:30px}.mhsp-card h2{margin-top:0}.mhsp-card label{display:block;margin:14px 0;font-weight:650}.mhsp-card input,.mhsp-card textarea{width:100%;padding:13px;border:1px solid #d7e0ea;border-radius:14px;margin-top:6px}.mhsp-card button,.mhsp-top button,.mhsp-grid-cards button,.mhsp-reply button{background:#14243a;color:#fff;border:0;border-radius:14px;padding:13px 18px;cursor:pointer}.mhsp-alert{background:#fff4e5;border:1px solid #ffd9a3;border-radius:14px;padding:12px;margin:10px 0}.mhsp-top{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;margin-bottom:20px}.mhsp-hero{padding:30px;margin-bottom:20px;background:linear-gradient(135deg,#fff,#f6f9fc)}.mhsp-bell{float:right;background:#d91e18;color:#fff;border-radius:999px;padding:9px 12px;position:relative}.mhsp-bell em{font-style:normal;font-weight:800}.mhsp-bell.active{box-shadow:0 0 0 4px rgba(217,30,24,.12)}.mhsp-alert-red{background:#fff1f1;border-color:#ffc4c4;color:#8d1612}.mhsp-mini-badge{float:right;background:#d91e18;color:#fff;border-radius:999px;padding:2px 8px;font-size:12px}.mhsp-grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mhsp-grid-cards button{text-align:left;min-height:95px;font-size:17px;background:#fff;color:#14243a;border:1px solid #e8edf3;box-shadow:0 12px 30px rgba(20,36,58,.06)}.mhsp-modal{display:none;position:fixed;inset:0;z-index:99999;background:rgba(8,18,30,.55);padding:30px}.mhsp-modal.open{display:block}.mhsp-modal-box{max-width:1100px;height:86vh;margin:0 auto;padding:24px;position:relative;overflow:auto}.mhsp-close{position:absolute;right:20px;top:18px;border:0;background:#f0f4f8;border-radius:50%;width:36px;height:36px;font-size:22px}.mhsp-work{display:grid;grid-template-columns:280px 1fr;gap:18px;min-height:560px}.mhsp-work aside{border-right:1px solid #e8edf3;padding-right:12px}.mhsp-work aside button{display:block;width:100%;padding:14px;margin-bottom:8px;text-align:left;border:1px solid #e8edf3;border-radius:14px;background:#fff}.mhsp-work aside button.active{background:#14243a;color:#fff}.pane{display:none}.pane.active{display:block}.pane iframe{width:100%;height:620px;border:1px solid #e8edf3;border-radius:14px}.pane img{max-width:100%;border-radius:14px}.mhsp-reply{margin-top:20px}.mhsp-reply textarea{width:100%;min-height:100px;border:1px solid #d7e0ea;border-radius:14px;padding:12px}.mhsp-admin .mhsp-box{background:#fff;border:1px solid #ccd0d4;padding:16px;border-radius:10px;margin:12px 0}.mhsp-admin .mhsp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:800px){.mhsp-grid-cards,.mhsp-work,.mhsp-admin .mhsp-grid{grid-template-columns:1fr}.mhsp-modal{padding:8px}.mhsp-modal-box{height:92vh}.mhsp-work aside{border-right:0;border-bottom:1px solid #e8edf3}.mhsp-top{display:block}}

/* v1.0.19 photo zoom + compact activity log */
.mhsp-photo-zoom{border:0;background:transparent;padding:0;cursor:zoom-in;display:block;width:100%;text-align:left}.mhsp-photo-zoom img{max-width:100%;border-radius:14px;box-shadow:0 12px 28px rgba(20,36,58,.12)}.mhsp-lightbox{position:fixed;inset:0;background:rgba(5,12,22,.88);z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.mhsp-lightbox-stage{max-width:96vw;max-height:86vh;overflow:auto;text-align:center}.mhsp-lightbox-stage img{max-width:92vw;max-height:82vh;transform-origin:center center;transition:transform .15s ease;border-radius:14px}.mhsp-lightbox-bar{position:absolute;top:18px;right:18px;display:flex;gap:8px}.mhsp-lightbox-bar button{background:#fff;color:#14243a;border:0;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.mhsp-admin-log-modal{display:none;position:fixed;inset:0;background:rgba(8,18,30,.55);z-index:99999;padding:30px}.mhsp-admin-log-modal.open{display:block}.mhsp-admin-log-box{background:#fff;border-radius:16px;max-width:1100px;max-height:85vh;overflow:auto;margin:30px auto;padding:24px;position:relative;box-shadow:0 18px 50px rgba(0,0,0,.25)}.mhsp-admin-log-close{position:absolute;right:18px;top:16px;border:0;background:#f0f4f8;border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer}.mhsp-log-card{text-align:left}

/* v1.0.22 photo arrows */
.mhsp-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:74px;border:0;border-radius:16px;background:rgba(255,255,255,.92);color:#14243a;font-size:52px;line-height:1;cursor:pointer;font-weight:300;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.mhsp-lightbox-prev{left:22px}.mhsp-lightbox-next{right:22px}
@media(max-width:700px){.mhsp-lightbox-nav{width:44px;height:58px;font-size:38px}.mhsp-lightbox-prev{left:8px}.mhsp-lightbox-next{right:8px}}

/* v1.0.26 frontend staff workspace */
.mhsp-staff .mhsp-staff-card{background:#fff;border:1px solid #e8edf3;border-radius:24px;box-shadow:0 18px 45px rgba(20,36,58,.08);padding:22px;margin:18px 0}.mhsp-staff .mhsp-task-list{display:grid;gap:10px}.mhsp-staff .mhsp-task-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #e3e9f0;background:#f8fbff;border-radius:14px;padding:14px}.mhsp-staff .mhsp-task-item strong{display:block}.mhsp-staff .mhsp-task-item em{display:block;font-style:normal;color:#607086;margin-top:3px}.mhsp-staff .mhsp-task-item a,.mhsp-staff button{background:#14243a;color:#fff;border:0;border-radius:14px;padding:11px 16px;text-decoration:none;cursor:pointer}.mhsp-staff input[type=search]{width:100%;max-width:720px;padding:13px;border:1px solid #d7e0ea;border-radius:14px}.mhsp-client-results{display:grid;gap:8px;max-height:320px;overflow:auto;margin-top:12px}.mhsp-client-row{display:flex;justify-content:space-between;gap:18px;text-decoration:none;color:#14243a;border:1px solid #e8edf3;background:#f8fbff;border-radius:14px;padding:12px 14px}.mhsp-client-row span{color:#607086}.mhsp-staff .mhsp-message-list{display:grid;gap:10px;margin-top:12px}.mhsp-message-preview{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #e8edf3;border-radius:14px;background:#f8fbff;padding:12px}.mhsp-message-preview em{display:block;color:#607086;font-style:normal}.mhsp-message-preview p{margin:.35rem 0 0}.mhsp-message-full{display:block}.mhsp-table{width:100%;border-collapse:collapse}.mhsp-table td{border-bottom:1px solid #e8edf3;padding:10px;text-align:left}.mhsp-link-delete{background:transparent!important;color:#b42318!important;padding:0!important;border-radius:0!important;text-decoration:underline}.mhsp-staff .mhsp-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:150px;border:2px dashed #8db7f0;border-radius:16px;background:#f8fbff;cursor:pointer;text-align:center;padding:18px;margin-bottom:18px}.mhsp-staff .mhsp-dropzone input[type=file]{display:none}.mhsp-staff .mhsp-photo-drop{border-color:#72d6a9;background:#f8fffb}.mhsp-staff .mhsp-title{width:100%;max-width:520px;margin:0 0 12px 0;padding:12px;border:1px solid #d7e0ea;border-radius:14px}
@media(max-width:760px){.mhsp-staff .mhsp-task-item,.mhsp-message-preview,.mhsp-client-row{grid-template-columns:1fr;display:grid}.mhsp-client-row{justify-content:start}}

.mhsp-inline-task{display:grid;grid-template-columns:2fr 1fr auto auto;gap:8px;margin:10px 0 14px}.mhsp-inline-task input{padding:10px;border:1px solid #d5dde7;border-radius:10px}.mhsp-task-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.mhsp-task-actions a,.mhsp-task-actions button{border:0;border-radius:10px;background:#14243a;color:#fff;padding:9px 12px;text-decoration:none;font-weight:800}.mhsp-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mhsp-message-full{white-space:pre-wrap;background:#f7f9fc;border-radius:14px;padding:14px;line-height:1.55}.mhsp-client-results{display:grid;gap:8px;margin-top:10px}.mhsp-active-client{margin-top:16px}.mhsp-admin-log-box-inline{max-height:62vh;overflow:auto}.mhsp-dash button{cursor:pointer}@media(max-width:800px){.mhsp-inline-task,.mhsp-profile-grid{grid-template-columns:1fr}.mhsp-task-item{grid-template-columns:1fr!important}}


/* v1.0.30 visible staff workspace / finance / reader fixes */
.mhsp-version-pill{font-size:12px;background:#edf6ff;color:#0b5cab;border:1px solid #b8d9ff;border-radius:999px;padding:3px 8px;vertical-align:middle}.mhsp-reader aside button,.mhsp-doc-item{background:#f8fbff!important;color:#14243a!important;border:1px solid #dfe8f1!important;display:grid!important;grid-template-columns:auto 1fr;gap:4px 8px;align-items:start}.mhsp-reader aside button.active{background:#eaf3ff!important;color:#14243a!important;border-color:#7eb6ff!important;box-shadow:0 0 0 3px rgba(126,182,255,.18)}.mhsp-reader aside button strong{display:block;white-space:normal;line-height:1.25}.mhsp-reader aside button em{grid-column:2;color:#607086;font-size:12px;font-style:normal}.mhsp-mini-search{width:100%;padding:12px;border:1px solid #d7e0ea;border-radius:14px;margin:0 0 12px}.mhsp-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.mhsp-photo-card{background:#fff;border:1px solid #e8edf3;border-radius:16px;padding:12px;box-shadow:0 8px 24px rgba(20,36,58,.05)}.mhsp-photo-card h4{margin:10px 0 6px}.mhsp-photo-card img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:12px}.mhsp-client-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mhsp-client-edit label{font-weight:700}.mhsp-client-edit input{width:100%;padding:10px;border:1px solid #d7e0ea;border-radius:12px;margin-top:5px}.mhsp-client-edit button{grid-column:1/-1}.mhsp-invoice-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.mhsp-invoice-form input,.mhsp-invoice-form select{padding:10px;border:1px solid #d7e0ea;border-radius:12px}.mhsp-invoice-form button{grid-column:1/-1}.mhsp-log-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.mhsp-log-filter button{background:#f0f4f8!important;color:#14243a!important;border:1px solid #d7e0ea!important;border-radius:999px!important;padding:8px 12px!important}.mhsp-message-list{display:grid;gap:10px}.mhsp-message-preview{background:#f8fbff;border:1px solid #e8edf3;border-radius:14px;padding:12px}@media(max-width:820px){.mhsp-client-edit,.mhsp-invoice-form{grid-template-columns:1fr}.mhsp-reader{grid-template-columns:1fr}}

.mhsp-contact-message dl{display:grid;grid-template-columns:180px 1fr;gap:8px 14px;background:#f7f9fc;border:1px solid #e8edf3;border-radius:14px;padding:14px}.mhsp-contact-message dt{font-weight:800;color:#14243a}.mhsp-contact-message dd{margin:0;color:#26384f}.mhsp-contact-message h3{margin:18px 0 10px}

/* v1.0.33 live cam test */
.mhsp-cam-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.mhsp-cam-form label{font-weight:800}.mhsp-cam-form input{width:100%;padding:10px;border:1px solid #d7e0ea;border-radius:12px;margin-top:5px}.mhsp-cam-form button{grid-column:1/-1}.mhsp-cam-check{display:flex!important;align-items:center;gap:8px}.mhsp-cam-check input{width:auto!important;margin:0!important}.mhsp-cam-card{background:#f8fbff;border:1px solid #e8edf3;border-radius:18px;padding:16px}.mhsp-cam-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.mhsp-cam-head h3{margin:0 0 4px}.mhsp-cam-head p{margin:0;color:#607086}.mhsp-cam-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#19a463;margin-right:6px}.mhsp-cam-shot img{display:block;width:100%;max-height:640px;object-fit:contain;background:#07111d;border-radius:16px;border:1px solid #dce6f0}.mhsp-cam-shot small{display:block;color:#607086;margin-top:8px}.mhsp-cam-embed{margin-top:14px}.mhsp-cam-embed summary{cursor:pointer;font-weight:800;background:#fff;border:1px solid #e8edf3;border-radius:12px;padding:10px 12px}.mhsp-cam-embed iframe{width:100%;height:620px;border:1px solid #e8edf3;border-radius:14px;margin-top:10px}@media(max-width:820px){.mhsp-cam-form,.mhsp-cam-head{display:grid;grid-template-columns:1fr}}
.mhsp-cam-info{background:#fff;border:1px solid #e8edf3;border-radius:14px;padding:12px 14px;margin:10px 0 14px}.mhsp-cam-info dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px;margin:0}.mhsp-cam-info dt{font-weight:800;color:#162238}.mhsp-cam-info dd{margin:0;color:#31445f;word-break:break-word}@media(max-width:640px){.mhsp-cam-info dl{grid-template-columns:1fr}.mhsp-cam-info dt{margin-top:8px}}
.mhsp-cam-dot.off{background:#d33}.mhsp-muted{color:#607086;margin-top:-4px}.mhsp-cam-info code{background:#f3f6fa;border:1px solid #e1e8f0;border-radius:6px;padding:2px 5px;word-break:break-all}

.mhsp-cam-install{margin:14px 0;padding:14px;border:1px solid #d8e0ea;border-radius:14px;background:#f8fafc}
.mhsp-cam-install textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.45;border:1px solid #cbd5e1;border-radius:10px;padding:12px;background:#0f172a;color:#e2e8f0;box-sizing:border-box;white-space:pre;overflow:auto}

/* Camera Timelapse / Live */
.mhsp-timelapse-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px}.mhsp-button,.mhsp-download{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:10px;background:#0f172a;color:#fff!important;text-decoration:none;font-weight:700}.mhsp-download{background:#2563eb}.mhsp-timelapse-player,.mhsp-live-player{width:100%;max-height:70vh;background:#000;border-radius:14px;margin:10px 0 18px}.mhsp-cam-diary-grid{display:none!important}

/* v1.0.51 pre-live cleanup */
.mhsp-live-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.mhsp-cam-simple{background:#fff}.mhsp-noc-card{background:#f8fbff;border:1px solid #e8edf3;border-radius:16px;padding:14px;margin-bottom:16px}.mhsp-noc-card dl{display:grid;grid-template-columns:140px 1fr;gap:8px 12px;margin:0}.mhsp-noc-card dt{font-weight:800}.mhsp-noc-card dd{margin:0}.mhsp-photo-zoom{cursor:zoom-in;border:0;background:transparent;padding:0}.mhsp-lightbox{position:fixed;inset:0;z-index:2147483640;background:rgba(4,10,18,.92);display:flex;align-items:center;justify-content:center}.mhsp-lightbox-stage{max-width:92vw;max-height:86vh;overflow:hidden;display:flex;align-items:center;justify-content:center}.mhsp-lightbox-stage img{max-width:92vw;max-height:86vh;object-fit:contain;transition:transform .12s ease;transform-origin:center}.mhsp-lightbox-bar{position:absolute;top:16px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}.mhsp-lightbox-bar button{background:#fff!important;color:#14243a!important;border:0!important;border-radius:10px!important;padding:9px 12px!important;font-weight:800!important;cursor:pointer!important}.mhsp-cam-diary>p.mhsp-muted{display:none}.mhsp-cam-install{display:none!important}@media(max-width:720px){.mhsp-live-actions{justify-content:flex-start}.mhsp-noc-card dl{grid-template-columns:1fr}.mhsp-lightbox-bar{top:auto;bottom:14px;max-width:96vw;overflow:auto}.mhsp-lightbox-stage img{max-width:96vw;max-height:78vh}}

/* v1.0.52 Build Diary single viewer */
.mhsp-build-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px;align-items:center}.mhsp-build-actions button[disabled]{opacity:.45;cursor:not-allowed}.mhsp-build-actions .active{outline:3px solid rgba(37,99,235,.22)}.mhsp-build-viewer{width:100%;min-height:260px;background:#07111d;border-radius:16px;border:1px solid #dce6f0;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:10px 0 10px}.mhsp-build-viewer img,.mhsp-build-viewer video{width:100%;max-height:70vh;object-fit:contain;background:#000;display:block}.mhsp-build-video{border:0;border-radius:0}.mhsp-build-snapshot{cursor:default}.mhsp-cam-shot{display:none!important}.mhsp-live-actions{display:none!important}.mhsp-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;background:rgba(255,255,255,.92)!important;color:#14243a!important;border:0!important;border-radius:999px!important;width:48px!important;height:48px!important;font-size:34px!important;line-height:1!important;cursor:pointer!important}.mhsp-lightbox-prev{left:18px}.mhsp-lightbox-next{right:18px}@media(max-width:720px){.mhsp-build-viewer{min-height:190px}.mhsp-build-actions{gap:8px}.mhsp-build-actions .mhsp-button,.mhsp-build-actions .mhsp-download{padding:9px 11px;font-size:13px}.mhsp-lightbox-nav{width:42px!important;height:42px!important;font-size:28px!important}.mhsp-lightbox-prev{left:8px}.mhsp-lightbox-next{right:8px}}

/* v1.0.53 pre-live viewer status */
.mhsp-build-actions .is-building{background:#b91c1c!important;color:#fff!important;animation:mhspBuildPulse .8s infinite alternate}
.mhsp-build-actions .is-ready{background:#16a34a!important;color:#fff!important}
.mhsp-build-actions .is-error{background:#0f172a!important;color:#fff!important}
@keyframes mhspBuildPulse{from{filter:brightness(.82)}to{filter:brightness(1.18)}}

/* v1.0.54 timelapse status/download */
.mhsp-build-actions .mhsp-download.is-disabled{background:#94a3b8!important;opacity:.65;pointer-events:auto;cursor:not-allowed}

/* Camera popout iframe autoscale */
.mhsp-cam-embed-wrap{margin-top:12px;background:#020617;border-radius:14px;overflow:hidden;border:1px solid #334155;width:100%;}
.mhsp-cam-frame{width:100%;aspect-ratio:16/9;height:auto;min-height:260px;border:0;background:#000;display:block;}
@media(max-width:700px){.mhsp-modal-box{width:96vw;max-width:96vw}.mhsp-cam-frame{width:100%;aspect-ratio:16/9;height:auto;min-height:210px}}

/* v1.1.09 camera99 safe quad UI: layout only, keeps v1.0.99 stream/timelapse routes */
.mhsp-cam-v2-nvr-safe{display:grid;gap:18px}
.mhsp-nvr-panel{background:#0b1220;border:1px solid #1f2a3d;border-radius:18px;padding:14px;box-shadow:0 12px 30px rgba(15,23,42,.16);overflow:hidden;color:#e5eefc}
.mhsp-nvr-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px}
.mhsp-nvr-head h3{margin:0;color:#fff;font-size:18px;font-weight:900;letter-spacing:.01em}
.mhsp-nvr-head p{margin:0;color:#93a4bd;font-size:12px}
.mhsp-nvr-grid{display:grid;gap:10px}
.mhsp-nvr-grid.mhsp-nvr-single{grid-template-columns:1fr}
.mhsp-nvr-grid.mhsp-nvr-quad{grid-template-columns:repeat(2,minmax(0,1fr))}
.mhsp-nvr-tile{position:relative;aspect-ratio:16/9;background:#050914;border:1px solid #263449;border-radius:14px;overflow:hidden;min-height:160px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.mhsp-nvr-single .mhsp-nvr-tile{min-height:380px}
.mhsp-nvr-media,.mhsp-nvr-media iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000;display:block;overflow:hidden}
.mhsp-nvr-media iframe{border:0!important;scrollbar-width:none}
.mhsp-nvr-media iframe::-webkit-scrollbar{display:none}
.mhsp-nvr-overlay{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:22px 12px 10px;background:linear-gradient(to top,rgba(0,0,0,.86),rgba(0,0,0,.42),rgba(0,0,0,0));opacity:.08;transition:opacity .16s ease;color:#fff;pointer-events:none}
.mhsp-nvr-tile:hover .mhsp-nvr-overlay,.mhsp-nvr-tile.is-large .mhsp-nvr-overlay{opacity:1}
.mhsp-nvr-overlay strong{display:block;font-size:14px;line-height:1.1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7)}
.mhsp-nvr-overlay span{display:block;margin-top:3px;font-size:11px;color:#cbd5e1;text-shadow:0 1px 2px rgba(0,0,0,.7)}
.mhsp-nvr-large{pointer-events:auto;border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#0f172a;font-weight:900;padding:8px 12px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.mhsp-nvr-tile.is-large{grid-column:1/-1;min-height:520px;order:-1}
.mhsp-nvr-tile.is-large .mhsp-nvr-large::after{content:''}
.mhsp-nvr-empty{display:flex;align-items:center;justify-content:center;text-align:center;color:#6b7b92;background:linear-gradient(135deg,#050914,#111827)}
.mhsp-nvr-empty strong{display:block;color:#94a3b8}.mhsp-nvr-empty span{display:block;font-size:12px;color:#64748b;margin-top:4px}
.mhsp-timelapse-safe-list{display:grid;gap:14px}.mhsp-cam-timelapse-card{background:#fff;color:#14243a;border-radius:14px;padding:14px;border:1px solid #dfe5ec}
@media(max-width:800px){.mhsp-nvr-grid.mhsp-nvr-quad{grid-template-columns:1fr}.mhsp-nvr-single .mhsp-nvr-tile,.mhsp-nvr-tile.is-large{min-height:260px}.mhsp-nvr-head{align-items:flex-start;flex-direction:column}}

/* v1.1.10 simple CCTV quad: one quad, per tile Live / 24h / 7d */
.mhsp-cam-v2-nvr-safe{display:block}
.mhsp-nvr-panel{background:#0b1220;border:1px solid #1f2a3d;border-radius:18px;padding:14px;box-shadow:0 12px 30px rgba(15,23,42,.16);overflow:hidden;color:#e5eefc}
.mhsp-nvr-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px}
.mhsp-nvr-head h3{margin:0;color:#fff;font-size:18px;font-weight:900;letter-spacing:.01em}
.mhsp-nvr-head p{margin:0;color:#93a4bd;font-size:12px}
.mhsp-nvr-grid{display:grid;gap:10px}
.mhsp-nvr-grid.mhsp-nvr-single{grid-template-columns:1fr}
.mhsp-nvr-grid.mhsp-nvr-quad{grid-template-columns:repeat(2,minmax(0,1fr))}
.mhsp-nvr-tile{position:relative;aspect-ratio:16/9;background:#050914;border:1px solid #263449;border-radius:14px;overflow:hidden;min-height:190px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.mhsp-nvr-single .mhsp-nvr-tile{min-height:430px}
.mhsp-nvr-media,.mhsp-nvr-media iframe,.mhsp-nvr-media video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000;display:block;overflow:hidden}
.mhsp-nvr-media iframe{border:0!important;scrollbar-width:none}
.mhsp-nvr-media iframe::-webkit-scrollbar{display:none}
.mhsp-nvr-media video{object-fit:contain}
.mhsp-nvr-topbar{position:absolute;left:0;right:0;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px 24px;background:linear-gradient(to bottom,rgba(0,0,0,.78),rgba(0,0,0,.32),rgba(0,0,0,0));color:#fff;opacity:.08;transition:opacity .16s ease;pointer-events:none}
.mhsp-nvr-tile:hover .mhsp-nvr-topbar,.mhsp-nvr-tile.is-large .mhsp-nvr-topbar{opacity:1}
.mhsp-nvr-topbar strong{font-size:13px;line-height:1.1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.75)}
.mhsp-nvr-topbar span{font-size:11px;color:#cbd5e1;text-shadow:0 1px 2px rgba(0,0,0,.75)}
.mhsp-nvr-controls{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;gap:6px;justify-content:center;padding:22px 8px 0;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.22),rgba(0,0,0,0));opacity:0;transition:opacity .16s ease;pointer-events:none}
.mhsp-nvr-tile:hover .mhsp-nvr-controls,.mhsp-nvr-tile.is-large .mhsp-nvr-controls{opacity:1;pointer-events:auto}
.mhsp-nvr-mode,.mhsp-nvr-large{border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#0f172a;font-weight:900;padding:8px 12px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);font-size:12px;line-height:1}
.mhsp-nvr-mode.active{background:#22c55e;color:#052e16}
.mhsp-nvr-large{margin-left:auto;background:#0f172a;color:#fff;border:1px solid rgba(255,255,255,.22)}
.mhsp-nvr-tile.is-large{grid-column:1/-1;min-height:560px;order:-1}
.mhsp-nvr-empty{display:flex;align-items:center;justify-content:center;text-align:center;color:#6b7b92;background:linear-gradient(135deg,#050914,#111827)}
.mhsp-nvr-empty-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.mhsp-nvr-empty-inner strong{display:block;color:#94a3b8}.mhsp-nvr-empty-inner span{display:block;font-size:12px;color:#64748b;margin-top:4px}
@media(max-width:800px){.mhsp-nvr-grid.mhsp-nvr-quad{grid-template-columns:1fr}.mhsp-nvr-single .mhsp-nvr-tile,.mhsp-nvr-tile.is-large{min-height:280px}.mhsp-nvr-head{align-items:flex-start;flex-direction:column}.mhsp-nvr-controls{opacity:1;pointer-events:auto}.mhsp-nvr-topbar{opacity:1}}


/* v1.1.16 repair: status chips, customer status, archive visibility */
.mhsp-status-row{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0;align-items:center}.mhsp-status-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;line-height:1;background:#e5edf7;color:#1e293b}.mhsp-status-new{background:#fee2e2;color:#991b1b}.mhsp-status-ok{background:#dcfce7;color:#166534}.mhsp-status-wait{background:#fef3c7;color:#92400e}.mhsp-status-sent{background:#dbeafe;color:#1d4ed8}.mhsp-status-manual{background:#ede9fe;color:#5b21b6}.mhsp-status-info{background:#e2e8f0;color:#334155}.mhsp-meta-box{background:#f8fbff;border:1px solid #dfe5ec;border-radius:12px;padding:12px;margin:10px 0}.mhsp-meta-box p{margin:6px 0}.mhsp-work aside button strong{display:block}.mhsp-work aside button em{display:block;font-style:normal;color:#607086;font-size:12px;margin-top:3px}.mhsp-archive-list{display:grid;gap:8px;margin:10px 0}.mhsp-archive-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.mhsp-archive-item em{display:block;font-style:normal;color:#64748b;font-size:12px}.mhsp-message-tools{display:grid;gap:8px;margin-top:12px;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.mhsp-message-tools form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mhsp-message-tools select,.mhsp-message-tools input{max-width:260px}@media(max-width:720px){.mhsp-archive-item{grid-template-columns:1fr}.mhsp-message-tools form{display:grid}}

/* v1.1.20 lead/staff quick actions */
.mhsp-quick-actions{background:#fff;border:1px solid #dbe4ef;border-radius:14px;padding:14px 16px;margin:14px 0;box-shadow:0 8px 22px rgba(15,35,70,.06)}
.mhsp-quick-actions h3{margin:0 0 10px;font-size:18px}
.mhsp-quick-grid{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}
.mhsp-quick-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#f7fafc;border:1px solid #e5edf5;border-radius:12px;padding:10px}
.mhsp-quick-form input{min-width:160px}
.mhsp-quick-form button,.mhsp-quick-staff{white-space:nowrap;font-weight:700}
.mhsp-help{margin:8px 0 0;color:#64748b;font-size:13px}
.mhsp-client-row{align-items:center;gap:12px}
.mhsp-client-row strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mhsp-status-dot{display:inline-block;font-size:11px;line-height:1;padding:5px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;text-transform:uppercase;letter-spacing:.03em}
.mhsp-status-lead{background:#fff7ed;color:#c2410c}.mhsp-status-prospect{background:#fef9c3;color:#854d0e}.mhsp-status-customer{background:#dcfce7;color:#166534}.mhsp-status-portal{background:#dbeafe;color:#1d4ed8}
.mhsp-open-label{margin-left:auto;background:#0f766e;color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;white-space:nowrap}
@media(max-width:760px){.mhsp-quick-grid,.mhsp-quick-form{display:block}.mhsp-quick-form input,.mhsp-quick-form button,.mhsp-quick-staff{width:100%;margin:5px 0}.mhsp-open-label{margin-left:0}}

/* v1.1.23 restore: worklist bell popup and action order */
.mhsp-bell{border:0;border-radius:999px;background:#e5edf7;color:#10233f;font-weight:900;padding:6px 10px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;vertical-align:middle}
.mhsp-bell.active{background:#fee2e2;color:#991b1b;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.mhsp-bell em{font-style:normal;background:#fff;border-radius:999px;padding:2px 6px;font-size:12px;color:#991b1b}
.mhsp-worklist{display:grid;gap:12px}.mhsp-worklist-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:12px}.mhsp-worklist-group h3{margin:0 0 8px;display:flex;justify-content:space-between;align-items:center}.mhsp-worklist-group h3 span{background:#0f766e;color:#fff;border-radius:999px;padding:3px 8px;font-size:12px}.mhsp-worklist-items{display:grid;gap:8px}.mhsp-worklist-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#fff;border:1px solid #e5edf5;border-radius:12px;padding:10px}.mhsp-worklist-item em{display:block;font-style:normal;color:#64748b;font-size:12px;margin-top:3px}.mhsp-dropzone.is-drag{outline:3px solid #22c55e;background:#f0fdf4}.mhsp-submit-upload:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){.mhsp-worklist-item{grid-template-columns:1fr}.mhsp-worklist-item .button{width:100%;text-align:center}}

/* v1.1.24 restore: keep staff workspace compact and searchable */
.mhsp-quick-actions-compact,
.mhsp-taskbar-compact{margin:12px 0;background:#fff;border:1px solid #dbe3ee;border-radius:16px;padding:0;box-shadow:0 8px 24px rgba(20,36,58,.05)}
.mhsp-quick-actions-compact details,
.mhsp-taskbar-compact details{padding:0}
.mhsp-quick-actions-compact summary,
.mhsp-taskbar-compact summary{cursor:pointer;list-style:none;padding:12px 16px;font-weight:800;color:#10233f;display:flex;align-items:center;justify-content:space-between;gap:10px}
.mhsp-quick-actions-compact summary::-webkit-details-marker,
.mhsp-taskbar-compact summary::-webkit-details-marker{display:none}
.mhsp-quick-actions-compact summary:after,
.mhsp-taskbar-compact summary:after{content:'open';font-size:12px;text-transform:uppercase;background:#eef4fb;border-radius:999px;padding:4px 8px;color:#345}
.mhsp-quick-actions-compact details[open] summary:after,
.mhsp-taskbar-compact details[open] summary:after{content:'sluit'}
.mhsp-quick-actions-compact .mhsp-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 16px 12px}
.mhsp-quick-actions-compact .mhsp-help{padding:0 16px 14px;margin:0;color:#607085}
.mhsp-quick-actions-compact input{min-width:0;width:100%}
.mhsp-quick-actions-compact .mhsp-quick-staff{display:flex;align-items:center;justify-content:center;text-align:center;min-height:38px}
.mhsp-taskbar-compact form,
.mhsp-taskbar-compact .mhsp-task-list,
.mhsp-taskbar-compact .mhsp-task-empty{margin:0 16px 14px}
.mhsp-search-card{margin-top:12px}
.mhsp-no-client{margin:12px 0;background:#f7fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:14px;color:#334155}
@media(max-width:900px){.mhsp-quick-actions-compact .mhsp-quick-grid{grid-template-columns:1fr}}

/* v1.1.30 Agent Portal */
.mhsp-agent .mhsp-agent-filters{display:flex;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid #dfe5ec;border-radius:14px;padding:14px;margin:16px 0;box-shadow:0 8px 24px rgba(15,35,55,.05)}
.mhsp-agent .mhsp-agent-filters input,.mhsp-agent .mhsp-agent-filters select{min-width:140px;padding:10px 12px;border:1px solid #ccd6e0;border-radius:12px;background:#fff}
.mhsp-agent .mhsp-agent-list{display:grid;gap:12px;margin-top:14px}.mhsp-agent-row{display:grid;grid-template-columns:72px minmax(180px,1.4fr) minmax(120px,.7fr) minmax(220px,1fr) minmax(110px,.6fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid #dfe5ec;border-radius:14px;padding:12px;box-shadow:0 8px 24px rgba(15,35,55,.05)}
.mhsp-agent-row em{display:block;font-style:normal;color:#607086;font-size:13px;margin-top:3px}.mhsp-agent-photo{width:72px;height:54px;border-radius:10px;overflow:hidden;background:#eef3f8;display:flex;align-items:center;justify-content:center}.mhsp-agent-photo img{width:100%;height:100%;object-fit:cover}.mhsp-agent-placeholder{font-size:28px}.mhsp-agent-row details{grid-column:1/-1;border-top:1px solid #edf1f6;padding-top:8px}.mhsp-agent-row summary{cursor:pointer;font-weight:800;color:#14243a}.mhsp-agent-lead-form{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin-top:10px}.mhsp-agent-lead-form input,.mhsp-agent-lead-form select,.mhsp-agent-lead-form textarea{padding:10px 12px;border:1px solid #ccd6e0;border-radius:12px}.mhsp-agent-lead-form textarea{grid-column:1/-2;min-height:70px}.mhsp-agent-lead-form button{align-self:end}
@media(max-width:900px){.mhsp-agent-row{grid-template-columns:72px 1fr}.mhsp-agent-row>div:nth-child(n+3){grid-column:1/-1}.mhsp-agent-lead-form{grid-template-columns:1fr}.mhsp-agent-lead-form textarea{grid-column:1}}
