html, body {
    /* Prefer the existing Arial fallback: some local Helvetica Neue faces render
       ultra-light even when the browser requests regular/medium weights. */
    font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
}

a, .btn-link {
    color: #006bb7;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
/* Shared readability hierarchy; retain the existing font, sizing and layout. */
:root {
    --bs-body-font-weight: 400;
    --bs-body-color: #212529;
    --bs-secondary-color: #4f5963;
    --bs-tertiary-color: #606a73;
}

body, .form-control, .form-select {
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.nav-link, .navbar-brand, label, .btn, [role="status"] {
    font-weight: 500;
}

.table th, strong, b, .badge {
    font-weight: 600;
}

.text-muted, .text-secondary {
    /* Bootstrap text utilities use !important. */
    color: var(--bs-secondary-color) !important;
}

.text-warning {
    color: #805c00 !important;
}

small, .small, .form-text {
    font-weight: 400;
}

.form-control::placeholder {
    color: var(--bs-secondary-color);
    font-weight: 400;
    opacity: 1;
}

.form-control:disabled, .form-select:disabled {
    color: #5c6570;
    background-color: #e9ecef;
    opacity: 1;
}

.form-check-input:disabled ~ .form-check-label,
label:has(input:disabled), fieldset:disabled label {
    color: #5c6570;
    opacity: 1;
}

.btn:disabled, .btn.disabled, fieldset:disabled .btn {
    --bs-btn-disabled-color: #5c6570;
    --bs-btn-disabled-bg: #e9ecef;
    --bs-btn-disabled-border-color: #c8ced4;
    --bs-btn-disabled-opacity: 1;
}

/* M5B coreX design system: shared by every administration area. */
:root{--cx-ink:#233443;--cx-muted:#5d6f7d;--cx-border:#dce4e9;--cx-accent:#196755;--bs-body-color:var(--cx-ink);--bs-body-bg:#f5f7f8;--bs-primary:#196755}
body{color:var(--cx-ink);font-weight:400;font-size:.94rem;line-height:1.55}h1{font-size:1.85rem;font-weight:500;letter-spacing:-.035em;margin-bottom:.6rem}h2{font-size:1.3rem;font-weight:500}h3,h4{font-size:1.14rem;font-weight:500}h5,h6{font-size:1rem;font-weight:500}p{color:var(--cx-muted)}a{color:#176553}a:hover{color:#103f35}.text-muted,.small{color:var(--cx-muted)!important}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;color:var(--cx-muted);font-weight:600;display:block;margin-bottom:.5rem}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-heading p{max-width:65rem}.panel,.card{background:white;border:1px solid var(--cx-border);border-radius:10px;box-shadow:0 1px 2px #142b3910!important}.panel{padding:1.35rem;margin-bottom:1.1rem}a.panel{text-decoration:none}.section-grid,.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.metric-value{font-size:2rem;font-weight:500;color:var(--cx-ink)}.metric-label{font-size:.8rem;color:var(--cx-muted)}.table{--bs-table-bg:white;--bs-table-color:var(--cx-ink);font-size:.87rem;margin-bottom:1rem}.table th{background:#edf2f4;font-size:.76rem;color:#465b69;font-weight:600;padding:.9rem .85rem;vertical-align:middle}.table td{padding:.9rem .85rem;vertical-align:top;border-color:#e7ecef}.table td small{display:block;color:var(--cx-muted)}.table-responsive{border:1px solid var(--cx-border);border-radius:9px;background:#fff;margin:1rem 0;max-width:100%;overflow:auto}.table-responsive .table{margin:0}.btn{font-weight:500;border-radius:6px;font-size:.87rem;padding:.48rem .85rem}.btn-primary{background:#196755;border-color:#196755}.btn-primary:hover{background:#124b3e;border-color:#124b3e}.btn-outline-primary{color:#196755;border-color:#76a899}.btn-outline-primary:hover{background:#196755;border-color:#196755}.btn:disabled{opacity:.65;color:#495b67}.form-label,label{font-weight:500}.form-control,.form-select{font-size:.9rem;color:#263a48;background-color:white;min-height:2.6rem}.form-control::placeholder{color:#6c7e89;font-weight:400}.form-control:disabled,.form-select:disabled{background:#e9eef1;color:#647580}.filter-bar{display:flex;align-items:end;flex-wrap:wrap;gap:.8rem;background:#fff;border:1px solid var(--cx-border);border-radius:9px;padding:1rem}.filter-bar label{min-width:150px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid>fieldset,.form-grid>p{grid-column:1/-1}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.65rem}legend{font-size:1rem;font-weight:500}details{margin:.6rem 0}summary{font-weight:500;color:#365669;cursor:pointer}details[open]>summary{margin-bottom:.8rem}.badge{font-weight:500;padding:.4rem .6rem;border-radius:5px}.empty-state{padding:2rem;text-align:center;border:1px dashed #c6d3db;border-radius:9px}.pagination-bar{display:flex;gap:1rem;align-items:center;justify-content:flex-end}.signin-panel{max-width:440px;margin:6vh auto;background:white;border:1px solid var(--cx-border);padding:2rem;border-radius:12px}.signin-panel label{display:block;margin:1.2rem 0}.signin-panel .btn{width:100%}code{overflow-wrap:anywhere}dialog[open]{position:fixed;inset:15vh 1rem auto;max-width:600px;background:#fff;box-shadow:0 0 0 100vmax #10253055!important;z-index:100;border:1px solid var(--cx-border)!important}hr{border-color:var(--cx-border);opacity:1}input:focus-visible,select:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #80b9a9;outline-offset:3px}@media(max-width:650px){.form-grid{grid-template-columns:1fr}.filter-bar label{width:100%}.page-heading{display:block}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:1rem}.signin-panel{padding:1.3rem;margin:2vh auto}.permission-grid{grid-template-columns:1fr}}
.table td{overflow-wrap:anywhere}.content img{max-width:100%;height:auto}.content fieldset{min-width:0}.content form{max-width:100%}
.attention-list{display:flex;flex-direction:column}.attention-item{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border,#dde4e8)}.attention-item:last-child{border-bottom:0}.attention-item h3{font-size:1rem;margin:.2rem 0}.attention-item p{margin:.25rem 0}.context-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.pulse-strip{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding:.75rem 0}.pulse-strip>span,.pulse-strip>a{display:block;max-width:17rem;color:inherit;text-decoration:none}.pulse-strip strong{font-size:1.2rem;display:block}.quiet-state{color:#52645d;padding:1rem 0}.summary-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid #e4e9ed}.summary-row p{margin:.2rem 0}.summary-row small{display:block;color:#556270}.period-tabs,.operational-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.period-tabs a,.operational-tabs a{padding:.5rem .8rem;border:1px solid #ccd6dc;border-radius:.4rem;text-decoration:none}.operational-tabs a.active{background:#e1efea;color:#183f34;border-color:#537a6d}.usage-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;padding:.65rem 0}.usage-row progress{grid-column:1/-1;width:100%;height:.4rem;accent-color:#497b6c}.notice{padding:1rem;background:#fff7e5;border-left:3px solid #c58b23;margin:1rem 0}.content{max-width:1440px;margin:0 auto}.panel{margin-bottom:1rem}@media(max-width:650px){.attention-item,.summary-row{flex-direction:column}.pulse-strip{gap:.75rem}.pulse-strip>span,.pulse-strip>a{flex-basis:45%}}

/* M5B final owner polish: compact operational directories. */
.directory-toolbar {display:flex; align-items:end; gap:12px; flex-wrap:wrap; margin-bottom:16px;}
.directory-toolbar .filter-bar {flex:1; margin:0;}
.employee-editor[popover] {width:min(540px,calc(100vw - 32px)); max-height:85vh; overflow:auto; border:1px solid var(--line,#d8e0e6); border-radius:12px; padding:24px;}
.employee-editor::backdrop {background:#12202e55;}
.device-row {padding:16px 20px;}
.device-row .page-heading {margin-bottom:4px;}
.device-row h3 {font-size:1.05rem; margin:0;}
.device-row p {margin:4px 0;}
.device-row .context-actions {display:inline-flex; margin:8px 12px 8px 0;}
.temporary-choice {display:inline-block; vertical-align:top; margin:12px 0;}
.context-help {margin-top:12px; font-size:.85rem; color:var(--muted,#52616c);}
.people-list h2 {font-size:1.05rem; margin:0 0 6px;}
@media(max-width:600px){.directory-toolbar>* {width:100%;}.summary-row {flex-wrap:wrap;} .device-row {padding:14px;} .operational-tabs {overflow-x:auto; max-width:100%;}}

.panel.summary-row {padding:16px 20px;}
.attention-item {padding-top:16px;padding-bottom:16px;}

.directory-toolbar {background:white;border:1px solid var(--cx-border);border-radius:9px;padding:12px;align-items:end;}
.directory-toolbar .filter-bar {border:0;background:transparent;padding:0;flex:0 1 auto;}
.device-row>small {display:block;margin-bottom:6px;}

/* Live View stays inside the computer workspace; pixels never enlarge the document. */
.live-viewer header,.live-options{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:space-between}
.live-options{justify-content:flex-start;margin-block:1rem}.live-options label{min-width:10rem}
.live-screen{background:#17252c;min-height:12rem;display:grid;place-items:center;border-radius:.6rem;overflow:hidden;color:#fff}
.live-screen img{display:block;width:auto;max-width:100%;max-height:65vh;object-fit:contain}.live-screen img[hidden],.live-screen p[hidden]{display:none}
.live-screen p{padding:1rem;color:#e6eef1}.live-viewer [data-status]{font-weight:600}.live-viewer small{display:block;margin-top:.5rem}
@media(max-width:600px){.live-options>*{flex:1 1 45%;min-width:0}.live-screen{min-height:9rem}}

/* Shared endpoint communication forms: bounded, responsive, consistent with One View. */
.endpoint-form{max-width:52rem}.endpoint-form>label{display:block;margin:.8rem 0}.endpoint-form input:not([type=checkbox]),.endpoint-form select,.endpoint-form textarea{display:block;width:100%;max-width:100%;padding:.55rem .7rem;border:1px solid var(--cx-border);border-radius:6px;color:var(--cx-ink);font:inherit;background:#fff}.endpoint-form fieldset{padding:.75rem;border:1px solid var(--cx-border);border-radius:6px;margin:.8rem 0;max-height:18rem;overflow:auto}.endpoint-form fieldset label{margin-right:1rem}.endpoint-form textarea{resize:vertical}.endpoint-form p{max-width:65ch}
.live-wall-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),360px));gap:1rem;align-items:start; }
.live-wall-grid > .panel { min-width:0;padding:1rem; }
.wall-thumbnail { padding:0;border:0;box-shadow:none; }
.wall-thumbnail header h2,.wall-thumbnail header p,.wall-thumbnail .live-options,.wall-thumbnail > small { display:none; }
.wall-thumbnail .live-screen { min-height:140px;aspect-ratio:16/9; }
.wall-thumbnail .live-screen img { width:100%;height:100%;object-fit:contain; }
.wall-card { --wall-color:#6b7280;border:3px solid var(--wall-color);max-width:360px;width:100%;box-sizing:border-box; }
.wall-card * { box-sizing:border-box; }
.wall-card[data-activity-state=active] { --wall-color:#2563b5; }
.wall-card[data-activity-state=work] { --wall-color:#247447; }
.wall-card[data-activity-state=idle] { --wall-color:#b63e40; }
.wall-card .wall-status { display:inline-block;border:1px solid var(--wall-color);color:var(--wall-color);font-size:.8rem;font-weight:600;border-radius:5px;padding:.15rem .45rem;margin-bottom:.5rem; }
.wall-attention { display:inline-block;color:#795417;font-size:.8rem;margin-left:.4rem; }
.wall-attention[hidden] { display:none; }
.wall-card > header a { display:block;overflow-wrap:anywhere; }
.wall-card .live-screen [data-frame] { cursor:pointer; }
.wall-card .live-screen [data-frame]:focus-visible { outline:3px solid #2563b5;outline-offset:2px; }
.wall-thumbnail [data-activity] { display:none; }
.working-calendar{margin-top:1rem}.working-calendar label{display:inline-flex;flex-direction:column;margin:.4rem;max-width:100%}.working-calendar fieldset label{flex-direction:row;gap:.4rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin:1rem 0;max-width:1100px}.calendar-day{min-height:82px;text-align:left;border:1px solid #cbd8d6;border-radius:8px;background:#edf6f2;color:#243e36;padding:.6rem}.calendar-day span{display:block;font-size:.8rem;overflow-wrap:anywhere}.calendar-day.off{background:#f2f3f5;color:#647079}.calendar-day.chosen{outline:2px solid #316859}.calendar-edit{padding:1rem;border:1px solid #d5dfdf;border-radius:8px}.calendar-grid>strong{text-align:center}.working-calendar .context-actions input{max-width:180px}.endpoint-form select[size]{width:100%;max-width:100%}@media(max-width:600px){.calendar-grid{gap:.2rem}.calendar-day{padding:.25rem;min-height:70px;font-size:.85rem}.calendar-day span{font-size:.65rem}.working-calendar .context-actions{flex-wrap:wrap}}
.assignment-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin: 1rem 0; }
.assignment-editor label { display: block; }
.assignment-editor select, .assignment-editor input { max-width: 100%; }
@media (max-width: 700px) { .assignment-fields { grid-template-columns: 1fr; } }
