/* GuardEra 1.48.0 — Operations dashboard; scoped to preserve other modules. */
body.guardera-page .ge-operations{display:grid;gap:24px;min-width:0}
body.guardera-page .ge-operations [hidden]{display:none!important}
body.guardera-page .ge-operations>.card,body.guardera-page .ge-operations>.grid{margin:0}
body.guardera-page .g-content .ge-op-heading{min-height:0;padding:26px 28px!important;margin-bottom:24px!important;gap:24px;align-items:center}
body.guardera-page .ge-op-eyebrow{display:block;color:var(--g-accent);font-size:10px;font-weight:700;letter-spacing:1.5px;line-height:1.6;margin-bottom:9px}
body.guardera-page .g-content .ge-op-heading h1{font-size:32px!important;line-height:1.18;letter-spacing:-1px;margin:0}
.ge-op-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;max-width:50%}
.ge-op-heading-actions .btn{display:inline-flex;align-items:center;gap:9px}
.ge-op-heading-actions svg{width:18px;height:18px;flex-shrink:0}
.ge-op-timezone{font-size:11px;color:var(--g-muted);width:100%;text-align:right;letter-spacing:.2px}
body.guardera-page .ge-operations .ge-op-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:0}
body.guardera-page .ge-operations .ge-op-metric{--op-tone:#719dff;display:block;position:relative;overflow:hidden;padding:24px!important;border:1px solid var(--g-line);border-radius:16px;min-width:0;min-height:0;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--op-tone) 10%,transparent),transparent 70%),var(--g-card);box-shadow:0 8px 24px #00000010}
body.guardera-page .ge-operations .ge-op-metric[data-tone=red]{--op-tone:#fa708a}
body.guardera-page .ge-operations .ge-op-metric[data-tone=amber]{--op-tone:#e5b96a}
body.guardera-page .ge-operations .ge-op-metric[data-tone=teal]{--op-tone:#4dcdb8}
.ge-op-metric:after{content:"";position:absolute;bottom:0;left:24px;right:24px;height:2px;background:linear-gradient(90deg,var(--op-tone),transparent)}
.ge-op-metric-top{display:flex;align-items:center;gap:12px;min-width:0}
body.guardera-page .ge-operations .ge-op-metric-top>span:last-child{font-size:13px;font-weight:600;color:var(--g-muted);line-height:1.4}
body.guardera-page .ge-operations .ge-op-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--op-tone) 12%,transparent);color:var(--op-tone)}
.ge-op-icon svg{width:21px;height:21px}
body.guardera-page .g-content .ge-op-metric>strong{display:block;font-size:40px!important;line-height:1.15;letter-spacing:-1.5px;margin:22px 0 8px;font-variant-numeric:tabular-nums;color:var(--g-text)}
body.guardera-page .ge-operations .ge-op-metric>p{margin:0;font-size:12px;color:var(--g-muted);line-height:1.6}
body.guardera-page .ge-operations .ge-op-panel{padding:26px!important;border:1px solid var(--g-line);border-radius:18px;background:var(--g-card);min-width:0;margin:0;box-shadow:0 8px 26px #00000010}
.ge-op-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.ge-op-section-head>div{min-width:0}
body.guardera-page .ge-operations .ge-op-section-head h2{font-size:20px!important;letter-spacing:-.4px;line-height:1.3;margin:0}
.ge-op-section-head .ge-op-eyebrow{font-size:9px;margin-bottom:5px;color:var(--g-muted)}
.ge-op-section-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--g-line);border-radius:11px;color:var(--g-accent);flex-shrink:0}
.ge-op-section-icon svg{width:18px;height:18px}
body.guardera-page .ge-operations .ge-op-description{font-size:13px!important;color:var(--g-muted);margin:0 0 20px;line-height:1.65}
body.guardera-page .ge-operations [data-operation-status][data-error]{color:#fa708a}
.ge-op-focus{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start;min-width:0}
.ge-op-focus:has(>.ge-op-recent[hidden]){grid-template-columns:minmax(0,1fr)}
body.guardera-page .ge-operations .incident-list{display:grid;gap:12px}
body.guardera-page .ge-operations .incident{--incident-tone:#4dcdb8;padding:18px!important;background:var(--g-deep);border:1px solid var(--g-line);border-left:3px solid var(--incident-tone);border-radius:12px;min-width:0}
body.guardera-page .ge-operations .incident:is([data-severity=critical],[data-severity=high]){--incident-tone:#fa708a;border-left-color:var(--incident-tone)}
body.guardera-page .ge-operations .incident[data-severity=medium]{--incident-tone:#e5b96a;border-left-color:var(--incident-tone)}
.ge-op-incident-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
body.guardera-page .ge-operations .incident h3{margin:14px 0 6px;font-size:16px!important;line-height:1.4;overflow-wrap:anywhere}
body.guardera-page .ge-operations .incident h3 a{color:var(--g-text)!important;text-decoration:none}
body.guardera-page .ge-operations .incident h3 a:hover{text-decoration:underline;text-underline-offset:4px}
body.guardera-page .ge-operations .ge-op-incident-location{font-size:12px;margin:0;color:var(--g-muted);overflow-wrap:anywhere}
body.guardera-page .ge-operations .ge-op-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;line-height:1.4;padding:5px 9px;border-radius:7px;border:1px solid var(--g-line);background:var(--g-card);color:var(--g-muted);white-space:normal}
body.guardera-page .ge-operations .ge-op-badge[data-severity]{color:#4dcdb8;background:#4dcdb810;border-color:#4dcdb830}
body.guardera-page .ge-operations .ge-op-badge:is([data-severity=critical],[data-severity=high]){color:#fa708a;background:#fa708a10;border-color:#fa708a30}
body.guardera-page .ge-operations .ge-op-badge[data-severity=medium]{color:#e5b96a;background:#e5b96a10;border-color:#e5b96a30}
body.guardera-page .ge-operations .ge-op-badge[data-status=in_progress]{color:#719dff;background:#719dff10;border-color:#719dff30}
body.guardera-page .ge-operations .ge-unit-board{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-height:0;max-height:430px;overflow-y:auto;scrollbar-width:thin}
body.guardera-page .ge-operations .ge-facility{display:flex;align-items:center;gap:14px;padding:16px;background:var(--g-deep);border:1px solid var(--g-line);border-radius:12px;min-width:0}
.ge-op-unit-icon{color:#4dcdb8;width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:10px;background:#4dcdb80e}
.ge-op-unit-icon svg{width:20px;height:20px}
.ge-op-unit-info{min-width:0}
.ge-op-unit-info strong{font-size:14px;overflow-wrap:anywhere;line-height:1.5}
body.guardera-page .ge-operations .ge-facility small{font-size:12px;color:var(--g-muted);margin-top:4px}
body.guardera-page .ge-operations .ge-services{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px}
body.guardera-page .ge-operations .ge-service{display:flex;gap:12px;align-items:center;padding:16px;min-width:0;border:1px solid var(--g-line);border-radius:12px;background:var(--g-deep);text-decoration:none;color:var(--g-text)!important;transition:border-color .15s,background .15s}
body.guardera-page .ge-operations .ge-service:hover{border-color:var(--g-accent);background:color-mix(in srgb,var(--g-accent) 5%,var(--g-deep))}
.ge-op-service-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:var(--g-accent);background:color-mix(in srgb,var(--g-accent) 8%,transparent);flex:0 0 34px}
.ge-op-service-icon svg{width:19px;height:19px}
.ge-op-service-name{font-size:13px;line-height:1.45;font-weight:600;overflow-wrap:anywhere;flex:1;min-width:0}
.ge-op-service-arrow{color:var(--g-muted);display:flex;flex:0 0 16px}.ge-op-service-arrow svg{width:16px;height:16px}
body.guardera-page .ge-operations .ge-op-empty{grid-column:1/-1;font-size:13px;color:var(--g-muted);line-height:1.7;padding:18px;border:1px dashed var(--g-line);border-radius:12px;margin:0;background:var(--g-deep)}
.ge-op-records .text-link{display:inline-flex;align-items:center;gap:10px;font-size:12px}.ge-op-records .text-link svg{width:16px;height:16px}
body.guardera-page .ge-operations .ge-table{border:1px solid var(--g-line);border-radius:12px;overflow:auto}
body.guardera-page .ge-operations table{width:100%;min-width:600px;border-collapse:collapse;margin:0}
body.guardera-page .ge-operations table th{font-size:11px;letter-spacing:.4px;padding:14px 16px;background:var(--g-deep);color:var(--g-muted);text-align:left}
body.guardera-page .ge-operations table td{font-size:13px;padding:17px 16px;vertical-align:middle;border-bottom:1px solid var(--g-line);overflow-wrap:anywhere}
.ge-operations table tr:last-child td{border-bottom:0!important}
body.guardera-page .ge-operations .ge-op-record-link{color:var(--g-text)!important;font-weight:600;text-decoration:none;display:block;min-width:130px}
body.guardera-page .ge-operations .ge-op-record-link:hover{text-decoration:underline;text-underline-offset:4px}
.ge-op-timeline{list-style:none;margin:0;padding:0}
.ge-op-timeline-item{position:relative;margin:0 0 0 5px;padding:0 0 22px 25px;border-left:1px solid var(--g-line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline}
.ge-op-timeline-item:before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;background:var(--g-accent);border:2px solid var(--g-card);border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,var(--g-accent) 10%,transparent)}
.ge-op-timeline-item:last-child{padding-bottom:0;border-color:transparent}
.ge-op-timeline-item strong{font-size:13px;color:var(--g-text);font-weight:550;line-height:1.6;overflow-wrap:anywhere}
.ge-op-timeline-item time{font-size:11px;color:var(--g-muted);line-height:1.6;text-align:right}
.ge-op-all-activity{margin-top:20px}
body.guardera-page .ge-operations :is(a,button,[tabindex]):focus-visible{outline:2px solid var(--g-accent);outline-offset:4px}
:root[data-guardera-theme=light] .ge-operations .ge-op-badge[data-severity]{color:#137966!important}
:root[data-guardera-theme=light] .ge-operations .ge-op-badge:is([data-severity=critical],[data-severity=high]){color:#b32c48!important}
:root[data-guardera-theme=light] .ge-operations .ge-op-badge[data-severity=medium]{color:#825c18!important}
:root[data-guardera-theme=light] .ge-operations .ge-op-badge[data-status=in_progress]{color:#365aab!important}
@media(max-width:1100px){.ge-op-focus{grid-template-columns:minmax(0,1fr)}body.guardera-page .ge-operations .ge-unit-board{grid-template-columns:repeat(2,minmax(0,1fr))}.ge-op-heading-actions{max-width:none;justify-content:flex-start}.ge-op-timezone{text-align:left}}
@media(max-width:640px){body.guardera-page .ge-operations{gap:16px}body.guardera-page .g-content .ge-op-heading{padding:20px!important;margin-bottom:16px!important;display: grid;justify-content: start;}body.guardera-page .g-content .ge-op-heading h1{font-size:27px!important}body.guardera-page .ge-operations .ge-op-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body.guardera-page .ge-operations .ge-op-metric{padding:16px!important}.ge-op-metric-top{align-items:flex-start;flex-direction:column;gap:10px}body.guardera-page .ge-operations .ge-op-metric-top>span:last-child{font-size:12px}body.guardera-page .g-content .ge-op-metric>strong{font-size:34px!important;margin-top:18px}body.guardera-page .ge-operations .ge-op-metric>p{font-size:11px}body.guardera-page .ge-operations .ge-op-panel{padding:20px!important}.ge-op-focus{gap:16px}body.guardera-page .ge-operations .ge-unit-board{grid-template-columns:minmax(0,1fr)}body.guardera-page .ge-operations .ge-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.guardera-page .ge-operations .ge-service{padding:14px;flex-wrap:wrap;gap:10px}.ge-op-service-name{flex-basis:100%;order:3;font-size:12px}.ge-op-service-arrow{margin-left:auto}.ge-op-timeline-item{grid-template-columns:minmax(0,1fr);gap:4px}.ge-op-timeline-item time{text-align:left}.ge-op-heading-actions .btn{font-size:12px;padding:10px 12px}}
/* Loading placeholders never contain organization data. */
.guardera-page .ge-loading-label{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
.ge-dashboard-skeleton[hidden]{display:none!important}.ge-dashboard-skeleton{margin:22px 0}.ge-skeleton-heading{display:grid;gap:13px;margin-bottom:28px}.ge-skeleton-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ge-skeleton-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-top:22px}.ge-skeleton-card{padding:24px;border:1px solid var(--g-border,#294051);border-radius:18px;background:var(--g-card,#101f2c);display:grid;gap:16px}.ge-skeleton-row{display:flex;gap:15px;align-items:center;padding:15px 0;border-top:1px solid var(--g-border,#294051)}.ge-skeleton-row>div{display:grid;gap:10px;flex:1;min-width:0}
.ge-skeleton,.guardera-page .ge-skeleton-content{display:block;border-radius:7px;background:linear-gradient(100deg,#263c4d 25%,#344f62 45%,#263c4d 65%);background-size:250% 100%;animation:ge-skeleton-shimmer 1.8s ease-in-out infinite}.ge-skeleton.sk-line{width:100%;height:12px}.ge-skeleton.sk-medium{width:65%;height:12px}.ge-skeleton.sk-short{width:100px;height:10px}.ge-skeleton.sk-title{width:55%;max-width:310px;height:24px}.ge-skeleton.sk-number{width:65px;height:36px}.ge-skeleton.sk-icon{width:38px;height:38px;flex-shrink:0;border-radius:11px}
.guardera-page .ge-skeleton-content{color:transparent!important;user-select:none;min-height:18px;max-width:100%;}.guardera-page [data-operation-count].ge-skeleton-content{width:72px;height:44px}.guardera-page [data-operation-table-status].ge-skeleton-content{height:100px;border:0}
html[data-guardera-theme=light] .ge-skeleton-card{background:#fff;border-color:#d6e1e9}html[data-guardera-theme=light] :is(.ge-skeleton,.guardera-page .ge-skeleton-content){background-image:linear-gradient(100deg,#e6edf3 25%,#f7fafc 45%,#e6edf3 65%)}
@keyframes ge-skeleton-shimmer{from{background-position:100% 0}to{background-position:-100% 0}}
@media(max-width:900px){.ge-skeleton-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ge-skeleton-columns{grid-template-columns:1fr}}
@media(max-width:540px){.ge-skeleton-card{padding:18px}.ge-skeleton-metrics{gap:12px}.ge-skeleton-heading .sk-title{width:85%}}
@media(prefers-reduced-motion:reduce){.ge-skeleton,.guardera-page .ge-skeleton-content{animation:none}}
