
/* ==========================================================================
   NEXUS EDGE — MONITOR BUILDER FE
   Componentes especializados do montador visual.
   ========================================================================== */

.fe-monitor-builder-page {
    display: grid;
    gap: var(--fe-space-5, 1.5rem);
}
.fe-monitor-builder-workflow {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    padding: .75rem;
    border-radius: var(--fe-radius-xl, 22px);
    background: var(--fe-surface, #eef2f6);
}

.fe-monitor-builder-workflow__step {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 44px;
    padding: .7rem 1rem;
    border-radius: var(--fe-radius-lg, 18px);
    color: var(--fe-text-muted, #687386);
    text-decoration: none;
    font-weight: 600;
}

.fe-monitor-builder-workflow__step.is-active {
    color: var(--fe-accent, #23738a);
    box-shadow: var(--fe-shadow-inset);
}

.fe-monitor-builder-workflow__step.is-disabled {
    opacity: .5;
}

.fe-monitor-builder-dialog {
    display: none;
    box-sizing: border-box;
    width: min(920px, calc(100vw - 2rem));
    height: min(780px, calc(100vh - 2rem));
    max-height: calc(100vh - 2rem);
    padding: 0;
    border: 0;
    border-radius: var(--fe-radius-xl, 22px);
    color: var(--fe-text, #263146);
    background: var(--fe-page, #eef2f6);
    box-shadow: 0 30px 90px rgba(15, 23, 42, .42);
}
.fe-monitor-builder-dialog[open] {
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    align-content: stretch;
}

.fe-monitor-builder-dialog::backdrop {
    background: rgba(15, 23, 42, .58);
    backdrop-filter: blur(4px);
}

.fe-monitor-builder-dialog__header,
.fe-monitor-builder-dialog__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .8rem 1rem;
}

.fe-monitor-builder-dialog__header {
    border-bottom: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    background: var(--fe-surface, #eef2f6);
}

.fe-monitor-builder-dialog__actions {
    min-height: 0;
    padding-block: .65rem;
    border-top: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    background: var(--fe-surface, #eef2f6);
}

.fe-monitor-builder-dialog__header h2 {
    margin: .1rem 0 0;
    font-size: clamp(1.35rem, 2.4vw, 1.8rem);
}

.fe-monitor-builder-dialog__body {
    min-height: 0;
    max-height: calc(100vh - 12rem);
    overflow: auto;
    padding: 1.15rem 1.5rem 1.35rem;
    overscroll-behavior: contain;
}

.fe-monitor-builder-dialog__body .fe-monitor-builder-widget-row {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.fe-monitor-builder-dialog__tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-bottom: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    background: var(--fe-surface, #eef2f6);
}

.fe-monitor-builder-dialog__tabs button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 46px;
    border: 0;
    color: var(--fe-text-muted, #687386);
    background: transparent;
    font-weight: 600;
}

.fe-monitor-builder-dialog__tabs button.is-active {
    color: var(--fe-accent, #23738a);
    box-shadow: inset 0 -3px 0 currentColor;
}

.fe-monitor-builder-module-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--fe-space-3, .875rem);
}

.fe-monitor-builder-config-card {
    padding: 1rem 1.15rem;
}

.fe-monitor-builder-config-card .fe-card__header {
    margin-bottom: .75rem;
}

.fe-monitor-builder-config-card .fe-form-grid {
    gap: .7rem;
}

.fe-monitor-builder-config-card textarea {
    min-height: 58px;
}

.fe-monitor-builder-identity-grid {
    grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.5fr) minmax(140px, .55fr);
}

.fe-monitor-builder-description {
    display: grid;
    gap: .35rem;
    margin-top: .65rem;
}

.fe-monitor-builder-config-card .fe-monitor-builder-module-list {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: .5rem;
}

.fe-monitor-builder-config-card .fe-monitor-builder-module-list > label {
    min-height: 48px;
    padding: .65rem .75rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    box-shadow: none;
}

.fe-monitor-builder-config-divider {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin: 1rem 0 .65rem;
    padding-top: .9rem;
    border-top: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
}

.fe-monitor-builder-config-divider span {
    color: var(--fe-text-muted, #687386);
    font-size: .78rem;
}

.fe-monitor-builder-compact-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fe-monitor-builder-compact-group {
    min-width: 0;
}

.fe-monitor-builder-compact-group .fe-note {
    padding: .65rem .75rem;
    font-size: .8rem;
}

@media (max-width: 64rem) {
    .fe-monitor-builder-compact-sections {
        grid-template-columns: 1fr;
    }
}

.fe-monitor-builder-tab-toggles {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.fe-monitor-builder-tab-toggles .fe-monitor-builder-choice {
    align-items: center;
    min-height: 42px;
    padding: .55rem .8rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: 999px;
    box-shadow: none;
}

.fe-monitor-builder-tab-toggles .fe-monitor-builder-choice > span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.fe-monitor-builder-tab-toggles .material-symbols-outlined {
    font-size: 1rem;
}

.fe-monitor-builder-module-list > label,
.fe-monitor-builder-choice {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: 1rem;
    border-radius: var(--fe-radius-lg, 18px);
    background: var(--fe-surface, #eef2f6);
    box-shadow: var(--fe-shadow-soft);
    cursor: pointer;
}

.fe-monitor-builder-module-list input,
.fe-monitor-builder-choice input {
    margin-top: .2rem;
    flex: 0 0 auto;
}

.fe-monitor-builder-module-list small {
    display: block;
    margin-top: .25rem;
    color: var(--fe-text-muted, #687386);
}

.fe-monitor-builder-fieldset {
    min-width: 0;
    margin: 0;
    padding: 1rem;
    border: 0;
    border-radius: var(--fe-radius-lg, 18px);
    background: var(--fe-surface, #eef2f6);
    box-shadow: var(--fe-shadow-inset);
}

.fe-monitor-builder-fieldset legend {
    float: none;
    width: auto;
    margin: 0 0 .75rem;
    font-size: .9rem;
    font-weight: 600;
}

.fe-monitor-builder-fieldset .fe-monitor-builder-choice + .fe-monitor-builder-choice {
    margin-top: .65rem;
}

.fe-monitor-builder-preview-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: start;
    grid-auto-flow: row;
    gap: 1rem;
}

.fe-monitor-builder-preview-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-self: start;
    box-sizing: border-box;
    min-width: 0;
    height: var(--fe-monitor-preferred-height, 290px);
    min-height: 0;
    overflow: hidden;
    padding: var(--fe-monitor-widget-padding, 14px);
    border: var(--fe-monitor-widget-border-width, 0) solid transparent;
    border-radius: var(--fe-monitor-widget-radius, 16px);
    background: var(--fe-surface, #eef2f6);
    box-shadow: var(--fe-shadow-soft);
    color: var(--fe-monitor-widget-color, var(--fe-text, #263146));
    font-size: var(--fe-monitor-widget-content-font-size, var(--fe-monitor-widget-font-size, 16px));
    text-align: var(--fe-monitor-widget-align, start);
    container-type: inline-size;
}
.fe-monitor-builder-preview-card.fe-monitor-widget--auto-fill {
    align-self: stretch;
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: none !important;
}
.fe-monitor-builder-preview-card.fe-monitor-widget--auto-fill .fe-monitor-builder-chart,
.fe-monitor-builder-preview-card.fe-monitor-widget--auto-fill .fe-monitor-builder-map {
    flex: 1 1 auto;
    min-height: 0;
}
.fe-monitor-builder-preview-card:is(.fe-monitor-widget--gauge,.fe-monitor-widget--text,.fe-monitor-widget--kpi,.fe-monitor-widget--status_badge,.fe-monitor-widget--led,.fe-monitor-widget--on_off) > * {
    font-size: clamp(11px, 16cqw, var(--fe-monitor-widget-content-font-size, var(--fe-monitor-widget-font-size, 16px)));
}
.fe-monitor-builder-preview-card > .fe-card__header h3 { font-size: clamp(11px, 14cqw, var(--fe-monitor-widget-title-font-size, var(--fe-monitor-widget-font-size, 16px))); }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge .fe-gauge-card__label { font-size: .82em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge .fe-gauge-card__value { font-size: 1.75em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge .fe-gauge-card__hint { font-size: .7em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge > .fe-gauge-card--text-inside .fe-gauge-card__label { font-size: .72em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge > .fe-gauge-card--text-inside .fe-gauge-card__value { font-size: 1.75em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge > .fe-gauge-card--text-inside .fe-gauge-card__hint { font-size: .64em; }

.fe-monitor-builder-preview-card > .fe-empty {
    width: 100%;
    height: 100%;
    min-height: 0;
    padding: clamp(.35rem, 4cqw, 1rem);
    overflow: hidden;
}

.fe-monitor-builder-preview-card h3,
.fe-monitor-builder-preview-card strong,
.fe-monitor-builder-preview-card small { color: inherit; }

.fe-monitor-builder-preview-card.fe-monitor-surface--raised { background: var(--fe-surface-raised, var(--fe-surface, #eef2f6)); }
.fe-monitor-builder-preview-card.fe-monitor-surface--recessed { background: var(--fe-surface-inset, #e7ecf2); }
.fe-monitor-builder-preview-card.fe-monitor-surface--primary_soft { background: color-mix(in srgb, var(--fe-accent, #23738a) 12%, var(--fe-surface, #eef2f6)); }
.fe-monitor-builder-preview-card.fe-monitor-widget--custom-background { background:var(--fe-monitor-custom-background-light, var(--fe-surface, #eef2f6))!important; }
.fe-monitor-builder-preview-card.fe-monitor-widget--custom-color { --fe-monitor-widget-color:var(--fe-monitor-widget-color-light, var(--fe-text, #263146)); }
.fe-monitor-builder-preview-card.fe-monitor-widget--custom-border { border-color:var(--fe-monitor-widget-border-light, transparent)!important; }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card { background:var(--fe-surface, #1d232d); }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-surface--raised { background:var(--fe-surface-raised, var(--fe-surface, #1d232d)); }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-surface--recessed { background:var(--fe-surface-inset, #171c24); }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-surface--primary_soft { background:color-mix(in srgb, var(--fe-accent, #4ba3b8) 18%, var(--fe-surface, #1d232d)); }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-widget--custom-background { background:var(--fe-monitor-custom-background-dark, var(--fe-surface, #1d232d))!important; }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-widget--custom-color { --fe-monitor-widget-color:var(--fe-monitor-widget-color-dark, var(--fe-text, #edf2f7)); }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-card.fe-monitor-widget--custom-border { border-color:var(--fe-monitor-widget-border-dark, transparent)!important; }
.fe-monitor-builder-preview-card.fe-monitor-tone--muted { --fe-monitor-widget-color: var(--fe-text-muted, #687386); }
.fe-monitor-builder-preview-card.fe-monitor-tone--primary { --fe-monitor-widget-color: var(--fe-accent, #23738a); }
.fe-monitor-builder-preview-card.fe-monitor-tone--success { --fe-monitor-widget-color: var(--fe-success, #23855f); }
.fe-monitor-builder-preview-card.fe-monitor-tone--warning { --fe-monitor-widget-color: var(--fe-warning, #a66b00); }
.fe-monitor-builder-preview-card.fe-monitor-tone--danger { --fe-monitor-widget-color: var(--fe-danger, #b82f40); }
.fe-monitor-builder-preview-card.fe-monitor-shadow--none{box-shadow:none}.fe-monitor-builder-preview-card.fe-monitor-shadow--soft{box-shadow:var(--fe-shadow-soft)}.fe-monitor-builder-preview-card.fe-monitor-shadow--inset{box-shadow:var(--fe-shadow-inset)}

.fe-monitor-builder-preview-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.fe-monitor-builder-preview-actions .fe-button {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.fe-monitor-builder-preview-actions .material-symbols-outlined {
    font-size: 1.05rem;
}

.fe-monitor-builder-gauge-sample {
    --fe-monitor-accent: #4f6fdc;
    display: flex;
    align-items: center;
    gap: .7rem;
    margin-top: .25rem;
    color: var(--fe-monitor-accent);
}

.fe-monitor-builder-gauge-sample__visual {
    position: relative;
    width: min(var(--fe-monitor-gauge-size, 92px), 100%);
    aspect-ratio: 1;
    flex: 0 0 auto;
    border-radius: 50%;
    background: repeating-conic-gradient(var(--fe-monitor-accent) 0 var(--fe-monitor-gauge-stripe, 0px), transparent var(--fe-monitor-gauge-stripe, 0px) calc(var(--fe-monitor-gauge-stripe, 0px) + 2px)), conic-gradient(var(--fe-monitor-accent) var(--fe-monitor-gauge-value), rgba(127, 139, 157, .18) 0);
}

.fe-monitor-builder-gauge-sample__visual::after {
    position: absolute;
    inset: var(--fe-monitor-gauge-thickness, 7px);
    border-radius: inherit;
    background: var(--fe-surface, #eef2f6);
    content: '';
}

.fe-monitor-builder-gauge-sample__reading {
    font-size: 1.55rem;
    font-weight: 650;
    line-height: 1;
}

.fe-monitor-builder-gauge-sample--dial.fe-monitor-builder-gauge-sample--semi .fe-monitor-builder-gauge-sample__visual {
    clip-path: inset(0 0 45% 0);
    margin-bottom: -22px;
}

.fe-monitor-builder-gauge-sample--dial.fe-monitor-builder-gauge-sample--arch .fe-monitor-builder-gauge-sample__visual {
    clip-path: inset(0 0 58% 0);
    margin-bottom: -29px;
}

.fe-monitor-builder-gauge-sample--bar {
    display: grid;
    grid-template-columns: 1fr auto;
    width: 100%;
}

.fe-monitor-builder-gauge-sample--bar .fe-monitor-builder-gauge-sample__visual {
    width: 100%;
    height: 8px;
    aspect-ratio: auto;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--fe-monitor-accent) var(--fe-monitor-gauge-value), rgba(127, 139, 157, .18) 0);
}

.fe-monitor-builder-gauge-sample--bar .fe-monitor-builder-gauge-sample__visual::after,
.fe-monitor-builder-gauge-sample--value .fe-monitor-builder-gauge-sample__visual {
    display: none;
}

.fe-monitor-builder-gauge-sample--value {
    justify-content: center;
    min-height: 52px;
}
.fe-monitor-builder-gauge-live{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;min-height:150px;padding:1rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:14px;background:var(--fe-surface-inset,#e7ecf2)}.fe-monitor-builder-gauge-live[hidden]{display:none}.fe-monitor-builder-gauge-live .fe-gauge-meter{justify-self:center}.fe-monitor-builder-gauge-live>div{display:grid;gap:.2rem}.fe-monitor-builder-gauge-live strong{font-size:1.6rem}.fe-monitor-builder-gauge-live small{color:var(--fe-text-muted,#687386)}
.fe-monitor-builder-gauge-live[data-text-position="below"]{grid-template-columns:1fr;justify-items:center;text-align:center}.fe-monitor-builder-gauge-live[data-text-position="inside"]{position:relative;grid-template-columns:1fr;place-items:center}.fe-monitor-builder-gauge-live[data-text-position="inside"]>div{position:absolute;z-index:3;top:50%;left:50%;display:grid;width:min(76%,calc(var(--fe-gauge-size,92px)*.76));justify-items:center;transform:translate(-50%,-50%);text-align:center}.fe-monitor-builder-gauge-live[data-text-position="inside"][data-style="semi"]>div{top:55%}.fe-monitor-builder-gauge-live[data-text-position="inside"][data-style="arch"]>div{top:62%}

.fe-monitor-builder-preview-card[hidden] {
    display: none;
}

.fe-monitor-builder-preview-card:hover,
.fe-monitor-builder-preview-card:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--fe-accent, #23738a) 45%, transparent);
    transform: translateY(-2px);
    cursor: pointer;
}

.fe-monitor-builder-preview-card > small {
    display: block;
    margin-top: .65rem;
    color: var(--fe-text-muted, #687386);
    opacity: .75;
}

.fe-monitor-builder-preview-card > .fe-card__header { margin-bottom: .45em; }
.fe-monitor-builder-preview-card > .fe-card__header h3 {
    margin: 0;
    font-size: clamp(11px, 14cqw, var(--fe-monitor-widget-title-font-size, var(--fe-monitor-widget-font-size, 16px)));
    font-weight: 600;
}
.fe-monitor-builder-preview-card .fe-kpi__value { font-size: 1.75em; }
.fe-monitor-builder-preview-card.fe-monitor-widget--kpi,
.fe-monitor-builder-preview-card.fe-monitor-widget--text,
.fe-monitor-builder-preview-card.fe-monitor-widget--summary { justify-content: center; gap: .18em; }

@container (max-width: 200px) {
    .fe-monitor-builder-preview-card > .fe-card__header h3,
    .fe-monitor-builder-preview-card > span,
    .fe-monitor-builder-preview-card > small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .fe-monitor-builder-preview-card .fe-kpi__value { font-size: 1.35em; line-height: 1; }
    .fe-monitor-builder-preview-card > .fe-empty .material-symbols-outlined { font-size: 1.25rem; }
    .fe-monitor-builder-preview-card > .fe-empty strong { font-size: .75rem; }
    .fe-monitor-builder-preview-card > .fe-empty span:not(.material-symbols-outlined) { display: none; }
}
.fe-monitor-builder-preview-card .fe-gauge-card { align-self:stretch;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:12px;background:transparent!important;box-shadow:none!important; }
.fe-monitor-builder-preview-card .fe-monitor-builder-gauge-sample { margin: 0; }
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge{display:grid;grid-template:1fr/1fr;place-items:center}
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge>.fe-card__header{position:absolute;z-index:4;top:var(--fe-monitor-widget-padding,14px);right:var(--fe-monitor-widget-padding,14px);left:var(--fe-monitor-widget-padding,14px);margin:0;pointer-events:none}
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge>.fe-card__header .fe-monitor-builder-card-order{pointer-events:auto}
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge>.fe-gauge-card{grid-area:1/1;place-self:center}
.fe-monitor-builder-preview-card.fe-monitor-widget--gauge>.fe-monitor-gauge-variant{grid-area:1/1;place-self:center}
.fe-monitor-builder-chart { display:flex;flex:1 1 auto;align-items:flex-end;gap:5%;height:auto;min-height:0;padding:.75em;border-radius:12px;background:color-mix(in srgb,var(--fe-accent,#23738a) 7%,var(--fe-surface-inset,#e7ecf2)) }
.fe-monitor-builder-chart i { flex:1;border-radius:5px 5px 2px 2px;background:var(--fe-accent,#23738a);opacity:.78 }
.fe-monitor-builder-chart i:nth-child(1){height:32%}.fe-monitor-builder-chart i:nth-child(2){height:54%}.fe-monitor-builder-chart i:nth-child(3){height:43%}.fe-monitor-builder-chart i:nth-child(4){height:76%}.fe-monitor-builder-chart i:nth-child(5){height:61%}.fe-monitor-builder-chart i:nth-child(6){height:88%}
.fe-monitor-builder-chart--line_chart,.fe-monitor-builder-chart--area_chart{align-items:center;background:linear-gradient(155deg,transparent 46%,var(--fe-accent,#23738a) 47% 50%,transparent 51%),color-mix(in srgb,var(--fe-accent,#23738a) 7%,var(--fe-surface-inset,#e7ecf2))}.fe-monitor-builder-chart--line_chart i,.fe-monitor-builder-chart--area_chart i{display:none}
.fe-monitor-builder-map{position:relative;display:grid;flex:1 1 auto;place-items:center;height:auto;min-height:0;overflow:hidden;border-radius:12px;background:linear-gradient(28deg,transparent 46%,rgba(255,255,255,.72) 47% 51%,transparent 52%),linear-gradient(112deg,color-mix(in srgb,var(--fe-success,#318565) 16%,transparent),transparent 60%),var(--fe-surface-inset,#e7ecf2)}
.fe-monitor-builder-map .material-symbols-outlined{z-index:2;color:var(--fe-danger,#b82f40);font-size:2rem}.fe-monitor-builder-map i{position:absolute;width:65%;height:3px;transform:rotate(-17deg);background:var(--fe-accent,#23738a)}
.fe-monitor-builder-map.is-current-hidden .material-symbols-outlined,.fe-monitor-builder-map.is-route-hidden i{display:none}
.fe-monitor-builder-preview-meta{display:block;flex:0 0 auto;margin-top:.45rem;color:var(--fe-text-muted,#687386);font-size:.75rem;line-height:1.25;text-align:center}
.fe-monitor-builder-container-editor{display:grid;gap:.75rem;margin:0 0 1rem;padding:1rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:var(--fe-radius-lg,16px);background:var(--fe-surface-recessed,#e7ecf2)}
.fe-monitor-builder-container-editor__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.fe-monitor-builder-container-editor__header>div{display:grid;gap:.2rem}.fe-monitor-builder-container-editor__header span{color:var(--fe-text-muted,#687386)}
.fe-monitor-builder-container-list{display:grid;gap:.65rem}.fe-monitor-builder-container-row{border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:14px;background:var(--fe-surface,#fff)}.fe-monitor-builder-container-row>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;cursor:pointer}.fe-monitor-builder-container-fields{padding:0 1rem 1rem}
.fe-monitor-builder-preview-container{display:flex;flex-direction:column;gap:.75rem;min-width:0;min-height:var(--fe-monitor-container-min-height,220px);padding:1rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:var(--fe-radius-xl,22px);background:color-mix(in srgb,var(--fe-surface,#fff) 88%,var(--fe-primary,#23738a) 12%)}.fe-monitor-builder-preview-container>h3{margin:0;color:var(--fe-text,#293047);font-size:1rem}.fe-monitor-builder-preview-grid--inner{flex:1;align-content:start;grid-template-columns:repeat(var(--fe-monitor-container-columns,12),minmax(0,1fr))}
@media(max-width:720px){.fe-monitor-builder-container-editor__header{align-items:stretch;flex-direction:column}.fe-monitor-builder-container-editor__header .fe-button{width:100%}}
.fe-monitor-builder-preview-card.fe-monitor-widget--led,.fe-monitor-builder-preview-card.fe-monitor-widget--status_badge,.fe-monitor-builder-preview-card.fe-monitor-widget--on_off{display:grid;grid-template:1fr/1fr;place-items:center}
.fe-monitor-builder-preview-card.fe-monitor-widget--led>.fe-card__header,.fe-monitor-builder-preview-card.fe-monitor-widget--status_badge>.fe-card__header,.fe-monitor-builder-preview-card.fe-monitor-widget--on_off>.fe-card__header{position:absolute;z-index:4;top:var(--fe-monitor-widget-padding,14px);right:var(--fe-monitor-widget-padding,14px);left:var(--fe-monitor-widget-padding,14px);margin:0;pointer-events:none}
.fe-monitor-builder-preview-card.fe-monitor-widget--led>.fe-card__header .fe-monitor-builder-card-order,.fe-monitor-builder-preview-card.fe-monitor-widget--status_badge>.fe-card__header .fe-monitor-builder-card-order,.fe-monitor-builder-preview-card.fe-monitor-widget--on_off>.fe-card__header .fe-monitor-builder-card-order{pointer-events:auto}
html[data-fe-theme="dark"] .fe-monitor-builder-chart,html[data-fe-theme="dark"] .fe-monitor-builder-map{filter:saturate(.82) brightness(.88)}
.fe-monitor-builder-card-order{display:flex;gap:.25rem;margin-left:auto;opacity:0;transition:opacity .16s ease}.fe-monitor-builder-preview-card:hover .fe-monitor-builder-card-order,.fe-monitor-builder-preview-card:focus-within .fe-monitor-builder-card-order{opacity:1}.fe-monitor-builder-card-order .fe-button{width:30px;min-width:30px;height:30px;padding:0}.fe-monitor-builder-card-order .material-symbols-outlined{font-size:1rem}
.fe-monitor-builder-preview-card.is-dragging{opacity:.45;transform:scale(.98)}.fe-monitor-builder-preview-card.is-drop-target{outline:2px dashed var(--fe-accent,#23738a);outline-offset:3px}

.fe-monitor-builder-simulator {
    padding: 1rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: var(--fe-radius-xl, 22px);
    background: color-mix(in srgb, var(--fe-page, #eef2f6) 80%, var(--fe-surface, #fff));
}

.fe-monitor-builder-simulator-tabs {
    display: flex;
    gap: .35rem;
    margin-bottom: 1rem;
    padding: .35rem;
    overflow-x: auto;
    border-radius: var(--fe-radius-lg, 16px);
    background: var(--fe-surface, #eef2f6);
}

.fe-monitor-builder-simulator-tabs button {
    min-height: 38px;
    padding: .5rem .85rem;
    border: 0;
    border-radius: 12px;
    color: var(--fe-text-muted, #687386);
    background: transparent;
    font: inherit;
    font-weight: 650;
    white-space: nowrap;
}

.fe-monitor-builder-simulator-tabs button.is-active {
    color: var(--fe-accent, #23738a);
    background: var(--fe-page, #eef2f6);
    box-shadow: var(--fe-shadow-soft);
}

.fe-monitor-builder-preview-card h3 {
    margin: .75rem 0 .35rem;
    font-size: 1.1rem;
    font-weight: 600;
}

.fe-monitor-builder-preview-card p {
    margin: 0 0 .75rem;
    color: var(--fe-text-muted, #687386);
}

.fe-monitor-builder-preview-devices {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.fe-monitor-builder-preview-devices .fe-button {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.fe-monitor-builder-preview-devices .is-active {
    color: var(--fe-primary, #3567d6);
    box-shadow: var(--fe-shadow-inset);
}

.fe-monitor-builder-preview-stage {
    width: 100%;
    margin: 1rem auto;
    overflow: hidden;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: var(--fe-radius-xl, 22px);
    background: #0e1726;
    transition: width .2s ease;
}

.fe-monitor-builder-preview-stage[data-size="tablet"] {
    width: min(100%, 820px);
}

.fe-monitor-builder-preview-stage[data-size="mobile"] {
    width: min(100%, 390px);
}

.fe-monitor-builder-preview-frame {
    display: block;
    width: 100%;
    min-height: 720px;
    border: 0;
    background: var(--fe-page, #eef3f8);
}

@media (max-width: 720px) {
    .fe-monitor-builder-preview-devices {
        width: 100%;
    }

    .fe-monitor-builder-preview-devices .fe-button {
        flex: 1 1 30%;
        justify-content: center;
    }

    .fe-monitor-builder-preview-frame {
        min-height: 640px;
    }
}

.fe-monitor-builder-widget-row {
    display: block;
    margin-bottom: 1rem;
    border-radius: var(--fe-radius-xl, 22px);
    background: var(--fe-surface, #eef2f6);
    box-shadow: var(--fe-shadow-soft);
}

.fe-monitor-builder-widget-summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.25rem;
    cursor: pointer;
    list-style: none;
}

.fe-monitor-builder-widget-summary::-webkit-details-marker {
    display: none;
}

.fe-monitor-builder-widget-summary small {
    display: block;
    margin-top: .2rem;
    color: var(--fe-text-muted, #687386);
}

.fe-monitor-builder-widget-row[open] .fe-monitor-builder-widget-summary {
    border-bottom: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
}

.fe-monitor-builder-widget-body {
    display: grid;
    gap: 1rem;
    padding: 1.25rem;
}

.fe-monitor-builder-widget-actions {
    display: flex;
    justify-content: flex-end;
}

.fe-monitor-builder-toolbar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
    gap: .45rem;
    margin: 1rem 0 1.25rem;
}

.fe-monitor-builder-tool {
    display: flex;
    min-height: 62px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding: .6rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: var(--fe-radius-lg, 16px);
    color: var(--fe-text, #243047);
    background: var(--fe-surface, #eef2f6);
    cursor: pointer;
    font: inherit;
    font-size: .74rem;
    text-align: center;
}

.fe-monitor-builder-tool .material-symbols-outlined {
    color: var(--fe-accent, #23738a);
    font-size: 1.35rem;
}

.fe-monitor-builder-widget-repository {
    display: none;
}

.fe-monitor-builder-layout-editor {
    overflow: hidden;
}

.fe-monitor-editor-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    padding: .45rem;
    border: 1px solid var(--fe-border);
    border-radius: var(--fe-radius-xl, 22px);
    background: var(--fe-surface-inset);
}

.fe-monitor-editor-tabs button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 52px;
    border: 0;
    border-radius: var(--fe-radius-lg, 16px);
    color: var(--fe-text-muted);
    background: transparent;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.fe-monitor-editor-tabs button.is-active {
    color: var(--fe-primary);
    background: var(--fe-surface);
    box-shadow: var(--fe-shadow-inset);
}

.fe-monitor-builder-workbench-card > .fe-card__header,
.fe-monitor-builder-workbench-card > .fe-note { display: none; }

.fe-monitor-builder-workbench {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 1rem;
    min-height: 620px;
    align-items: stretch;
}

.fe-monitor-builder-palette {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .65rem;
    padding: .75rem .55rem;
    border-radius: var(--fe-radius-lg, 18px);
    background: var(--fe-surface-inset);
}

.fe-monitor-builder-palette > strong {
    writing-mode: vertical-rl;
    color: var(--fe-text-muted);
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.fe-monitor-builder-toolbar--vertical {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.fe-monitor-builder-toolbar--vertical .fe-monitor-builder-tool {
    width: 48px;
    min-width: 48px;
    height: 48px;
    padding: 0;
}

.fe-monitor-builder-workbench__canvas {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--fe-border);
    border-radius: var(--fe-radius-xl, 22px);
    background: var(--fe-surface-inset);
}

.fe-monitor-builder-workbench__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .8rem;
}

.fe-monitor-builder-workbench__heading > div { display: grid; gap: .15rem; }
.fe-monitor-builder-workbench__heading small { color: var(--fe-text-muted); }

.fe-monitor-builder-simulator--workbench {
    flex: 1 1 auto;
    min-height: 620px;
    padding: .65rem;
    width: 100%;
    max-height: none;
    overflow: auto;
    background: var(--fe-page-soft);
}

.fe-monitor-builder-simulator--workbench .fe-monitor-builder-preview-grid--studio {
    min-width: 0;
    transform-origin: top left;
}

.fe-monitor-builder-panel-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: .25rem .4rem;
    color: var(--fe-text-muted);
    font-size: .7rem;
}

.fe-monitor-builder-panel-label small {
    padding: .12rem .35rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--fe-studio-panel-color) 15%, transparent);
}

.fe-monitor-builder-server-widget {
    display: grid;
    place-content: center;
    justify-items: center;
    gap: .35rem;
    min-width: 0;
    padding: .55rem;
    border: 1px solid var(--fe-border);
    color: var(--fe-text);
    background: var(--fe-surface);
    cursor: pointer;
}

.fe-monitor-builder-server-widget:hover,
.fe-monitor-builder-server-widget:focus-visible {
    border-color: var(--fe-accent);
    outline: 2px solid color-mix(in srgb, var(--fe-accent) 45%, transparent);
    outline-offset: 1px;
}

.fe-monitor-builder-preview-container--studio[data-strategy="preserve"] {
    border-style: solid;
}

.fe-monitor-builder-preview-container--studio:not([data-strategy="preserve"]) {
    border-style: dashed;
}

@media (max-width: 720px) {
    .fe-monitor-editor-tabs { grid-template-columns: 1fr; }
    .fe-monitor-builder-workbench { grid-template-columns: 1fr; }
    .fe-monitor-builder-palette { align-items: stretch; }
    .fe-monitor-builder-palette > strong { writing-mode: initial; }
    .fe-monitor-builder-toolbar--vertical { flex-direction: row; overflow-x: auto; }
}

.fe-monitor-builder-layout-canvas {
    display: grid;
    grid-template-columns: repeat(var(--layout-columns), minmax(0, 1fr));
    grid-auto-rows: var(--layout-row-height);
    gap: var(--layout-gap);
    min-width: 0;
    padding: .75rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: var(--fe-radius-xl, 22px);
    background: var(--fe-surface-inset, #e7ecf2);
}

.fe-monitor-builder-layout-panel {
    min-width: 0;
    min-height: 0;
    overflow: auto;
    padding: .75rem;
    border: 2px solid color-mix(in srgb, var(--panel-color) 52%, var(--fe-border));
    border-radius: var(--fe-radius-lg, 18px);
    background: color-mix(in srgb, var(--fe-surface, #eef2f6) 94%, var(--panel-color));
}

.fe-monitor-builder-layout-panel > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: .6rem;
}

.fe-monitor-builder-layout-panel > header small {
    color: var(--fe-text-muted, #687386);
}

.fe-monitor-builder-layout-panel__components {
    display: grid;
    gap: .45rem;
}

.fe-monitor-builder-layout-panel__components button {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .55rem;
    width: 100%;
    padding: .6rem .7rem;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    border-radius: var(--fe-radius-md, 12px);
    color: var(--fe-text, #243047);
    background: var(--fe-surface, #eef2f6);
    text-align: left;
    cursor: pointer;
}

.fe-monitor-builder-layout-panel__components button:hover,
.fe-monitor-builder-layout-panel__components button:focus-visible {
    border-color: var(--panel-color);
    outline: 2px solid color-mix(in srgb, var(--panel-color) 48%, transparent);
    outline-offset: 1px;
}

.fe-monitor-builder-layout-panel__components button > span:nth-child(2) {
    display: grid;
    min-width: 0;
}

.fe-monitor-builder-layout-panel__components button strong,
.fe-monitor-builder-layout-panel__components button small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fe-monitor-builder-layout-panel__components button small {
    color: var(--fe-text-muted, #687386);
}

@media (max-width: 720px) {
    .fe-monitor-builder-layout-canvas {
        display: grid;
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }

    .fe-monitor-builder-layout-panel {
        grid-column: 1 !important;
        grid-row: auto !important;
        min-height: 120px;
    }
}

.fe-monitor-builder-widget-repository--visible {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.fe-monitor-builder-widget-repository--visible .fe-monitor-builder-widget-row {
    min-width: 0;
    margin: 0;
    border: 1px solid var(--fe-border, rgba(104, 115, 134, .18));
    box-shadow: none;
}

.fe-monitor-builder-widget-repository--visible .fe-monitor-builder-widget-summary {
    min-height: 76px;
    border-radius: inherit;
}

.fe-monitor-builder-widget-repository--visible .fe-monitor-builder-widget-summary:hover,
.fe-monitor-builder-widget-repository--visible .fe-monitor-builder-widget-summary:focus-visible {
    color: var(--fe-primary, #3567d6);
    outline: 2px solid color-mix(in srgb, var(--fe-accent, #23738a) 55%, transparent);
    outline-offset: 2px;
}

.fe-monitor-builder-existing-heading {
    display: grid;
    gap: .2rem;
    margin: .25rem 0 .75rem;
}

.fe-monitor-builder-existing-heading span {
    color: var(--fe-text-muted, #687386);
    font-size: .84rem;
}

.fe-monitor-builder-tool:hover,
.fe-monitor-builder-tool:focus-visible {
    color: var(--fe-primary, #3567d6);
    transform: translateY(-1px);
}

.fe-monitor-builder-widget-row:not([open]) > .fe-monitor-builder-widget-body {
    display: none;
}

.fe-monitor-builder-appearance-note {
    display: none;
}

.fe-monitor-builder-dialog .fe-monitor-builder-appearance-note {
    display: block;
}

.fe-monitor-builder-dialog .fe-monitor-builder-widget-summary {
    display: none !important;
}

.fe-monitor-builder-dialog .fe-monitor-builder-type-field {
    display: none !important;
}

.fe-monitor-builder-dialog .fe-monitor-builder-widget-body {
    gap: .7rem;
    padding: 0;
}

.fe-monitor-builder-dialog [data-builder-panel] {
    min-width: 0;
}

.fe-monitor-builder-dialog fieldset[data-builder-panel] {
    margin: 0;
    padding: .85rem;
    border: 1px solid var(--fe-border,rgba(104,115,134,.18));
    border-radius: 14px;
    background: var(--fe-surface,#eef2f6);
    box-shadow: none;
}

.fe-monitor-builder-dialog fieldset[data-builder-panel] > legend {
    float: none;
    width: auto;
    margin: 0 0 .35rem;
    padding: 0 .2rem;
    color: var(--fe-text,#263146);
    font-size: .88rem;
    font-weight: 700;
}

.fe-monitor-builder-dialog fieldset[data-builder-panel] > p {
    margin: 0 0 .65rem;
    font-size: .75rem;
    line-height: 1.35;
}

.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options:not([hidden]) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    align-items: start;
    gap: .65rem 1rem;
}

.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > legend,
.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > p {
    grid-column: 1 / -1;
}

.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > .fe-form-grid {
    grid-column: 1;
}

.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > .fe-monitor-builder-gauge-live {
    grid-column: 2;
    position: sticky;
    top: 0;
    grid-template-columns: 1fr;
    justify-items: center;
    min-height: 230px;
    text-align: center;
}
.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > .fe-monitor-builder-gauge-live[data-text-position="right"] { grid-template-columns:auto minmax(0,1fr);justify-items:start;text-align:left; }

.fe-monitor-builder-dialog .fe-monitor-builder-widget-actions { order: 0; }
.fe-monitor-builder-dialog .fe-monitor-builder-gauge-options:not([hidden]) { order: 1; }
.fe-monitor-builder-dialog .fe-monitor-builder-appearance-note:not([hidden]) { order: 2; }
.fe-monitor-builder-dialog .fe-monitor-builder-fieldset:not([hidden]) { order: 3; }
.fe-monitor-builder-dialog [data-role="builder-logical-options"]:not([hidden]) { order: 1; }

.fe-monitor-builder-dialog .fe-form-grid > label,
.fe-monitor-builder-dialog .fe-monitor-builder-layout-grid > label {
    display: grid;
    gap: .4rem;
}

.fe-monitor-builder-data-picker { align-content: start; }
.fe-monitor-builder-select-shell { position: relative; display: block; }
.fe-monitor-builder-select-shell .material-symbols-outlined { position: absolute; z-index: 2; top: 50%; left: .75rem; color: var(--fe-accent,#23738a); font-size: 1.05rem; transform: translateY(-50%); pointer-events: none; }
.fe-monitor-builder-select-shell .form-select { padding-left: 2.35rem; }
.fe-monitor-builder-select-search { min-height: 38px; padding-block: .4rem; border-radius: 11px; }
.fe-monitor-builder-multi-select { min-height: 168px; padding: .35rem; background-image: none; }
.fe-monitor-builder-multi-select optgroup { padding: .35rem .25rem; color: var(--fe-text-muted,#687386); font-weight: 700; }
.fe-monitor-builder-multi-select option { margin-top: .2rem; padding: .52rem .65rem; border-radius: 8px; color: var(--fe-text,#263146); }
.fe-monitor-builder-multi-select option:checked { background: linear-gradient(var(--fe-accent,#23738a),var(--fe-accent,#23738a)); color: #fff; }
.fe-monitor-builder-chart-options .fe-form-grid { align-items: start; }
.fe-monitor-builder-chart-options .fe-form-grid > label { align-self: start; min-height: 0; }
.fe-monitor-builder-chart-options .fe-form-grid > label:last-child .form-select { min-height: 42px; height: 42px; }
.fe-monitor-builder-selection-chips { display: flex; flex-wrap: wrap; gap: .35rem; min-height: 24px; }
.fe-monitor-builder-selection-chips:empty { display: none; }
.fe-monitor-builder-context-note { grid-column: 1 / -1; padding: .65rem .75rem; border-left: 3px solid var(--fe-accent,#23738a); border-radius: 9px; background: color-mix(in srgb,var(--fe-accent,#23738a) 8%,transparent); color: var(--fe-text-muted,#687386); font-size: .78rem; }
[data-widget-field="source"] { display: none !important; }
.fe-monitor-builder-color-control>span:last-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;min-height:42px;padding:.35rem .55rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:11px;background:var(--fe-surface-inset,#e7ecf2)}.fe-monitor-builder-color-control input[type="checkbox"]{width:1.1rem;height:1.1rem;accent-color:var(--fe-accent,#23738a)}.fe-monitor-builder-color-control input[type="color"]{-webkit-appearance:none;appearance:none;display:block;width:100%;height:32px;padding:2px;border:0!important;border-radius:8px;background:transparent!important;box-shadow:none!important;cursor:pointer}.fe-monitor-builder-color-control input[type="color"]::-webkit-color-swatch-wrapper{padding:0}.fe-monitor-builder-color-control input[type="color"]::-webkit-color-swatch{border:0;border-radius:6px}.fe-monitor-builder-color-control input[type="color"]::-moz-color-swatch{border:0;border-radius:6px}.fe-monitor-builder-color-control input[type="color"]:disabled{opacity:.35;cursor:not-allowed}
.fe-monitor-builder-theme-color-control{grid-column:1/-1;display:grid;grid-template-columns:minmax(180px,1fr) repeat(2,minmax(105px,.55fr));align-items:center;gap:.45rem;padding:.45rem .55rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:11px;background:var(--fe-surface-inset,#e7ecf2)}
.fe-monitor-builder-theme-color-control>label,.fe-monitor-builder-theme-color-control>span{display:flex;align-items:center;gap:.45rem;min-width:0;margin:0;color:var(--fe-text-muted,#687386);font-size:.72rem;font-weight:700}
.fe-monitor-builder-theme-color-control>label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fe-text,#263146);font-size:.78rem}
.fe-monitor-builder-theme-color-control input[type="checkbox"]{width:1rem;height:1rem;flex:0 0 auto;accent-color:var(--fe-accent,#23738a)}
.fe-monitor-builder-theme-color-control input[type="color"]{-webkit-appearance:none;appearance:none;width:100%;min-width:54px;height:30px;padding:2px;border:0!important;border-radius:7px;background:transparent!important;box-shadow:none!important;cursor:pointer}
.fe-monitor-builder-theme-color-control input[type="color"]::-webkit-color-swatch-wrapper{padding:0}.fe-monitor-builder-theme-color-control input[type="color"]::-webkit-color-swatch{border:0;border-radius:6px}.fe-monitor-builder-theme-color-control input[type="color"]::-moz-color-swatch{border:0;border-radius:6px}.fe-monitor-builder-theme-color-control input[type="color"]:disabled{opacity:.35;cursor:not-allowed}
.fe-monitor-builder-contrast{grid-column:1/-1;padding:.5rem .65rem;border-radius:9px;background:color-mix(in srgb,var(--fe-success,#23855f) 11%,transparent);color:var(--fe-success,#23855f);font-size:.74rem}.fe-monitor-builder-contrast.is-warning{background:color-mix(in srgb,var(--fe-warning,#a66b00) 13%,transparent);color:var(--fe-warning,#a66b00)}
html[data-fe-theme="dark"] .fe-monitor-builder-multi-select option { color: var(--fe-text,#edf2f7); background: var(--fe-surface,#1d232d); }
html[data-fe-theme="dark"] .fe-monitor-builder-multi-select option:checked { background: linear-gradient(var(--fe-accent,#4ba3b8),var(--fe-accent,#4ba3b8)); color:#07131a; }
html[data-fe-theme="dark"] .fe-monitor-builder-color-control>span:last-child { background:var(--fe-surface-inset,#171c24);border-color:var(--fe-border,rgba(220,230,242,.12)); }
html[data-fe-theme="dark"] .fe-monitor-builder-color-control input[type="color"] { color-scheme:dark; }
html[data-fe-theme="dark"] .fe-monitor-builder-theme-color-control { background:var(--fe-surface-inset,#171c24);border-color:var(--fe-border,rgba(220,230,242,.12)); }
html[data-fe-theme="dark"] .fe-monitor-builder-theme-color-control>label span { color:var(--fe-text,#edf2f7); }
html[data-fe-theme="dark"] .fe-monitor-builder-theme-color-control input[type="color"] { color-scheme:dark; }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog { color:var(--fe-text,#edf2f7);background:var(--fe-page,#171a20);box-shadow:0 30px 90px rgba(0,0,0,.7); }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog__header,
html[data-fe-theme="dark"] .fe-monitor-builder-dialog__tabs,
html[data-fe-theme="dark"] .fe-monitor-builder-dialog__actions { background:var(--fe-surface-raised,#272c34);border-color:var(--fe-border,rgba(220,230,242,.1)); }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog__tabs { background:var(--fe-surface,#20242b); }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog__body { background:var(--fe-page-soft,#1c2027); }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog fieldset[data-builder-panel] { background:var(--fe-surface,#20242b);border-color:var(--fe-border,rgba(220,230,242,.1)); }
html[data-fe-theme="dark"] .fe-monitor-builder-dialog .form-control,
html[data-fe-theme="dark"] .fe-monitor-builder-dialog .form-select { color:var(--fe-text,#edf2f7);background-color:var(--fe-surface-recessed,#191d23);border-color:var(--fe-border,rgba(220,230,242,.12));box-shadow:none; }
html[data-fe-theme="dark"] .fe-monitor-builder-gauge-live { background:var(--fe-surface-recessed,#191d23);border-color:var(--fe-border,rgba(220,230,242,.12)); }

.fe-monitor-builder-dialog .fe-form-grid > label > span,
.fe-monitor-builder-dialog .fe-monitor-builder-layout-grid > label > span {
    color: var(--fe-text-muted, #687386);
    font-size: .76rem;
    font-weight: 650;
}

.fe-monitor-builder-layout-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(100px, 1fr));
    gap: .875rem;
}

.fe-monitor-builder-size-control{grid-column:1/-1;margin:0;padding:0;border:0}.fe-monitor-builder-size-control legend{margin-bottom:.45rem;font-size:.82rem;font-weight:650}.fe-monitor-builder-size-control>small{display:block;margin-top:.4rem;color:var(--fe-text-muted,#687386);font-size:.7rem}.fe-monitor-builder-segmented{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.fe-monitor-builder-segmented[data-role="builder-height-options"]{grid-template-columns:repeat(3,minmax(0,1fr))}.fe-monitor-builder-segmented button{display:grid;place-items:center;gap:.1rem;min-height:54px;padding:.5rem;border:1px solid var(--fe-border,rgba(104,115,134,.18));border-radius:12px;background:var(--fe-surface,#eef2f6);color:var(--fe-text-muted,#687386);font:inherit;font-weight:600;cursor:pointer}.fe-monitor-builder-segmented button small{font-size:.62rem;opacity:.72}.fe-monitor-builder-segmented button.is-active{border-color:color-mix(in srgb,var(--fe-accent,#23738a) 50%,transparent);background:color-mix(in srgb,var(--fe-accent,#23738a) 12%,var(--fe-surface,#eef2f6));color:var(--fe-accent,#23738a);box-shadow:var(--fe-shadow-inset)}.fe-monitor-builder-order-help{grid-column:1/-1;display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:11px;background:var(--fe-surface-inset,#e7ecf2);color:var(--fe-text-muted,#687386)}.fe-monitor-builder-order-help>span:last-child{display:grid}.fe-monitor-builder-order-help small{font-size:.7rem}.fe-monitor-builder-order-help .material-symbols-outlined{color:var(--fe-accent,#23738a)}
.fe-monitor-builder-dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}.fe-monitor-builder-dimensions label{min-width:0}.fe-monitor-builder-dimensions small{display:block;margin-top:.3rem;color:var(--fe-text-muted,#687386);font-size:.68rem}.fe-monitor-builder-size-control>.fe-note{margin:.65rem 0 0}
.fe-monitor-builder-exact-size{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(0,1fr);align-items:center;gap:.35rem .7rem;margin-top:.65rem}.fe-monitor-builder-exact-size>small{grid-column:2;color:var(--fe-text-muted,#687386);font-size:.68rem}
.fe-monitor-builder-segmented[data-role="builder-width-options"]{grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}
@media(max-width:480px){.fe-monitor-builder-segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.fe-monitor-builder-segmented[data-role="builder-height-options"]{grid-template-columns:1fr}.fe-monitor-builder-card-order{opacity:1}}

.fe-form-grid__full {
    grid-column: 1 / -1;
}

.fe-monitor-builder-advanced {
    padding: 0;
    overflow: hidden;
}

.fe-monitor-builder-advanced > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    cursor: pointer;
    font-weight: 700;
    list-style: none;
}

.fe-monitor-builder-advanced > summary::-webkit-details-marker {
    display: none;
}

.fe-monitor-builder-advanced > summary::after {
    content: '+';
    font-size: 1.25rem;
    line-height: 1;
}

.fe-monitor-builder-advanced[open] > summary::after {
    content: '\2212';
}

.fe-monitor-builder-advanced > summary span {
    margin-left: auto;
    color: var(--fe-text-muted);
    font-size: .78rem;
    font-weight: 500;
}

.fe-monitor-builder-advanced__body {
    padding: 0 1.25rem 1.25rem;
}

@media (max-width: 1100px) {
    .fe-monitor-builder-identity-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fe-monitor-builder-layout-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fe-monitor-builder-workflow {
        grid-template-columns: 1fr;
    }

    .fe-monitor-builder-workflow__step {
        justify-content: flex-start;
    }
    .fe-monitor-builder-layout-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .fe-monitor-builder-dimensions{grid-template-columns:1fr}

    .fe-monitor-builder-module-list {
        grid-template-columns: 1fr;
    }

    .fe-monitor-builder-dialog .fe-monitor-builder-gauge-options:not([hidden]) {
        grid-template-columns: 1fr;
    }

    .fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > .fe-form-grid,
    .fe-monitor-builder-dialog .fe-monitor-builder-gauge-options > .fe-monitor-builder-gauge-live {
        grid-column: 1;
        position: static;
    }

    .fe-monitor-builder-advanced > summary {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .fe-monitor-builder-advanced > summary span {
        width: calc(100% - 2rem);
        margin-left: 0;
    }
}

@media (max-width: 520px) {
    .fe-monitor-builder-layout-grid {
        grid-template-columns: 1fr;
    }
}
.fe-studio-layout-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
  gap: var(--fe-space-4);
}

.fe-studio-layout-card {
  display: grid;
  gap: var(--fe-space-4);
  align-content: space-between;
}

.fe-studio-layout-card h3 { margin: var(--fe-space-3) 0 var(--fe-space-2); }
.fe-studio-layout-card__meta { display: flex; flex-wrap: wrap; gap: var(--fe-space-3); color: var(--fe-text-muted); }
.fe-studio-variant-tabs { display: flex; flex-wrap: wrap; gap: var(--fe-space-2); margin-bottom: var(--fe-space-4); }
.fe-studio-variant-add { display: flex; flex-wrap: wrap; align-items: end; gap: var(--fe-space-2); }
.fe-studio-variant-settings { align-items: end; margin-bottom: var(--fe-space-4); }

.fe-studio-layout-workbench {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 22rem);
  gap: var(--fe-space-5);
  align-items: start;
  margin-top: var(--fe-space-4);
}

.fe-studio-monitor-frame {
  max-width: 70rem;
  padding: clamp(.75rem, 2vw, 1.5rem);
  border: 1px solid var(--fe-border);
  border-radius: var(--fe-radius-xl);
  background: var(--fe-surface-inset);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fe-border) 45%, transparent);
}

.fe-studio-grid {
  display: grid;
  width: 100%;
  gap: 3px;
  min-height: 16rem;
  max-height: 65vh;
}

.fe-studio-cell {
  min-width: 0;
  min-height: 1rem;
  padding: 0;
  border: 1px solid var(--fe-border);
  border-radius: 3px;
  background: color-mix(in srgb, var(--fe-surface-raised) 82%, transparent);
  color: var(--fe-text);
  cursor: crosshair;
}

.fe-studio-cell:hover,
.fe-studio-cell.is-anchor { outline: 3px solid var(--fe-accent); outline-offset: -2px; }
.fe-studio-cell.is-occupied { border-color: var(--panel-color); background: color-mix(in srgb, var(--panel-color) 32%, var(--fe-surface-raised)); cursor: default; }
.fe-studio-panel-list { display: grid; gap: var(--fe-space-3); max-height: 65vh; overflow: auto; padding-right: .25rem; }
.fe-studio-panel-item { display: grid; gap: var(--fe-space-2); padding: var(--fe-space-3); border-left: .35rem solid var(--panel-color); border-radius: var(--fe-radius-lg); background: var(--fe-surface-inset); }
.fe-studio-panel-item small { color: var(--fe-text-muted); }
.fe-studio-compact-header { padding-block: clamp(1rem, 2vw, 1.5rem); }
.fe-studio-editor-card { padding: clamp(.8rem, 1.6vw, 1.25rem); }
.fe-studio-layout-toolbar { display: grid; grid-template-columns: minmax(14rem, 1.4fr) minmax(14rem, 1.6fr) repeat(5, minmax(7rem, .65fr)); gap: var(--fe-space-3); align-items: end; }
.fe-studio-layout-toolbar label, .fe-studio-panel-item label { display: grid; gap: .3rem; }
.fe-inline-check { grid-template-columns: auto 1fr; align-items: center; }
.fe-inline-check input { width: 1.1rem; height: 1.1rem; }
.fe-panel-spacing { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--fe-space-2); margin: 0; padding: var(--fe-space-2); border: 1px solid var(--fe-border); border-radius: var(--fe-radius-md); }
.fe-panel-spacing legend { grid-column: 1 / -1; margin: 0; padding: 0; font-size: .78rem; color: var(--fe-text-muted); }
.fe-studio-sticky-actions { position: sticky; bottom: 0; z-index: 5; padding: var(--fe-space-3); border-top: 1px solid var(--fe-border); background: color-mix(in srgb, var(--fe-surface-raised) 92%, transparent); backdrop-filter: blur(12px); }

@media (max-width: 64rem) {
  .fe-studio-layout-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fe-studio-layout-workbench { grid-template-columns: 1fr; }
  .fe-studio-panel-list { max-height: none; }
}
.fe-monitor-builder-preview-grid--studio {
  display: grid;
  align-items: stretch;
  align-content: start;
  overflow-x: auto;
  overflow-y: hidden;
}

.fe-monitor-builder-preview-container--studio {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border-color: color-mix(in srgb, var(--fe-studio-panel-color) 40%, var(--fe-border));
  background: color-mix(in srgb, var(--fe-surface) 96%, var(--fe-studio-panel-color));
}
.fe-monitor-builder-preview-container--studio { position: relative; cursor: pointer; }
.fe-monitor-builder-panel-label { position: absolute; inset: 50% auto auto 50%; z-index: 3; display: grid; gap: .15rem; max-width: calc(100% - 1rem); padding: .35rem .55rem; transform: translate(-50%,-50%); border: 1px solid color-mix(in srgb,var(--fe-border) 70%,transparent); border-radius: var(--fe-radius-md); background: color-mix(in srgb,var(--fe-surface-raised) 78%,transparent); color: color-mix(in srgb, var(--fe-text-muted) 88%, transparent); text-align: center; cursor: pointer; backdrop-filter: blur(5px); }
.fe-monitor-builder-panel-label strong { font-size: clamp(.82rem, 1vw, 1rem); }
.fe-monitor-builder-panel-label small { font-size: .66rem; white-space: nowrap; }
.fe-monitor-builder-preview-container--studio:has(.fe-monitor-widget) > .fe-monitor-builder-panel-label { opacity: .72; }
.fe-monitor-builder-panel-label:hover,.fe-monitor-builder-panel-label:focus-visible { opacity: 1!important; border-color: var(--fe-accent); outline: none; }
.fe-panel-dialog-body { display: grid; gap: var(--fe-space-4); padding: var(--fe-space-4); overflow: auto; }
.fe-monitor-panel-dialog { width: min(680px, calc(100vw - 2rem)); height: auto; }
.fe-monitor-builder-preview-container--studio.is-hidden-surface { background: transparent; border-color: transparent; box-shadow: none; }
.fe-monitor-builder-preview-container--studio.is-raised { box-shadow: var(--fe-shadow-raised); }
.fe-monitor-builder-preview-container--studio.is-recessed { box-shadow: var(--fe-shadow-inset); }
.fe-monitor-builder-preview-container--studio.is-outline { background: transparent; box-shadow: none; }
.fe-monitor-builder-preview-container--studio.has-custom-panel-background { background: var(--fe-panel-background-light) !important; }
.fe-monitor-builder-preview-container--studio.has-custom-panel-border { border-color: var(--fe-panel-border-light) !important; }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-container--studio.has-custom-panel-background { background: var(--fe-panel-background-dark) !important; }
html[data-fe-theme="dark"] .fe-monitor-builder-preview-container--studio.has-custom-panel-border { border-color: var(--fe-panel-border-dark) !important; }

.fe-monitor-builder-preview-container--studio.is-responsive {
  width: auto;
  max-width: none;
  justify-self: stretch;
  align-self: stretch;
}

.fe-monitor-builder-preview-container--studio.is-fixed {
  contain: size;
}

.fe-monitor-builder-preview-container--studio > .fe-monitor-builder-preview-grid--inner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex: 1 1 auto;
  height: auto;
  min-height: 0;
  align-content: flex-start;
}

.fe-monitor-builder-preview-container--studio > .fe-monitor-builder-preview-grid--inner > [data-width-mode="fixed"] {
  flex: 0 0 min(100%, var(--fe-monitor-widget-preferred-width, 480px));
  width: min(100%, var(--fe-monitor-widget-preferred-width, 480px));
}

.fe-monitor-builder-preview-container--studio > .fe-monitor-builder-preview-grid--inner > [data-width-mode="responsive"] {
  flex: 1 1 min(100%, var(--fe-monitor-widget-preferred-width, 480px));
  width: auto;
  min-width: min(100%, var(--fe-monitor-widget-min-width, 240px));
  max-width: none;
}

.fe-monitor-builder-preview-container--studio[data-strategy="preserve"] > .fe-monitor-builder-preview-grid--inner {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  align-items: flex-start;
}

.fe-monitor-builder-preview-container--studio[data-strategy="preserve"] > .fe-monitor-builder-preview-grid--inner > [data-width-mode="fixed"] {
  flex: 0 0 min(100%, var(--fe-monitor-widget-preferred-width, 480px));
  width: min(100%, var(--fe-monitor-widget-preferred-width, 480px));
}

.fe-monitor-builder-preview-container--studio[data-strategy="preserve"] > .fe-monitor-builder-preview-grid--inner > [data-width-mode="responsive"] {
  flex: 1 1 min(100%, var(--fe-monitor-widget-preferred-width, 480px));
  width: auto;
  min-width: min(100%, var(--fe-monitor-widget-min-width, 240px));
  max-width: none;
}

.fe-monitor-builder-preview-container--overflow-scroll > .fe-monitor-builder-preview-grid--inner {
  overflow: auto;
}

.fe-monitor-builder-preview-container--overflow-scale > .fe-monitor-builder-preview-grid--inner {
  overflow: visible;
}

.fe-monitor-builder-preview-container--overflow-clip > .fe-monitor-builder-preview-grid--inner {
  overflow: hidden;
}

/* Inspetor flutuante de painel: compacto, contextual e dividido por tarefa. */
.fe-monitor-panel-dialog {
  width: min(620px, calc(100vw - 24px));
  max-height: min(760px, calc(100vh - 24px));
  border: 1px solid color-mix(in srgb, var(--fe-border) 76%, transparent);
  border-radius: 20px;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .32);
}
.fe-panel-inspector__header { padding: 14px 16px 10px; }
.fe-panel-inspector__header h2 { margin: 2px 0 0; font-size: 1.25rem; }
.fe-panel-inspector__tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; margin: 0 14px; padding: 4px; border-radius: 12px; background: var(--fe-surface-inset); box-shadow: var(--fe-shadow-inset); }
.fe-panel-inspector__tabs button { min-height: 34px; padding: 6px 10px; border: 0; border-radius: 9px; background: transparent; color: var(--fe-text-muted); font: inherit; font-size: .78rem; font-weight: 650; cursor: pointer; }
.fe-panel-inspector__tabs button.is-active { background: var(--fe-surface); color: var(--fe-accent); box-shadow: var(--fe-shadow-soft); }
.fe-panel-inspector__body { min-height: 300px; padding: 14px 16px; }
.fe-panel-inspector__section { display: grid; gap: 12px; }
.fe-panel-inspector__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fe-panel-inspector__grid .is-wide { grid-column: 1 / -1; }
.fe-panel-inspector__grid label, .fe-panel-spacing label { display: grid; gap: 4px; min-width: 0; }
.fe-panel-inspector__grid label > span, .fe-panel-spacing label > span { color: var(--fe-text-muted); font-size: .7rem; font-weight: 650; }
.fe-panel-inspector__grid .form-control, .fe-panel-inspector__grid .form-select, .fe-panel-spacing .form-control { min-height: 38px; padding-block: 7px; }
.fe-panel-inspector__toggles { display: flex; flex-wrap: wrap; gap: 8px; }
.fe-panel-inspector__toggles label, .fe-panel-inspector__switch { display: flex; align-items: center; gap: 8px; min-height: 36px; padding: 7px 10px; border: 1px solid var(--fe-border); border-radius: 10px; background: var(--fe-surface); font-size: .76rem; font-weight: 600; }
.fe-panel-inspector__appearance-row { display: grid; grid-template-columns: minmax(160px, .8fr) minmax(0, 1.2fr); align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--fe-border); border-radius: 12px; background: color-mix(in srgb, var(--fe-surface) 72%, transparent); }
.fe-panel-inspector__theme-colors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.fe-panel-inspector__theme-colors label { display: grid; grid-template-columns: auto 34px; align-items: center; justify-content: space-between; gap: 8px; min-height: 38px; padding: 5px 7px 5px 10px; border-radius: 9px; background: var(--fe-surface-inset); color: var(--fe-text-muted); font-size: .7rem; font-weight: 650; }
.fe-panel-inspector__theme-colors input[type="color"] { width: 34px; height: 28px; padding: 2px; border: 0; border-radius: 7px; background: transparent; cursor: pointer; }
.fe-panel-inspector__section .fe-panel-spacing { padding: 10px; }
.fe-panel-inspector__actions { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 8px; padding: 10px 14px; }
.fe-panel-inspector__actions > span { color: var(--fe-text-muted); font-size: .68rem; }
@media (max-width: 560px) { .fe-panel-inspector__grid, .fe-panel-inspector__appearance-row { grid-template-columns: 1fr; } .fe-panel-inspector__actions > span { display: none; } .fe-panel-inspector__actions { grid-template-columns: 1fr 1fr; } }

/* Inspetor de componentes: mesma linguagem compacta e contextual do painel. */
.fe-widget-inspector {
  width: min(780px, calc(100vw - 24px));
  height: min(720px, calc(100vh - 24px));
  max-height: calc(100vh - 24px);
  border: 1px solid color-mix(in srgb, var(--fe-border) 76%, transparent);
  border-radius: 20px;
  background: var(--fe-page-soft, var(--fe-page));
  box-shadow: 0 24px 70px rgba(15, 23, 42, .32);
}
.fe-widget-inspector__header { padding: 14px 16px 10px; }
.fe-widget-inspector__header h2 { margin: 2px 0 0; font-size: 1.25rem; }
.fe-widget-inspector__tabs {
  gap: 4px;
  margin: 0 14px;
  padding: 4px;
  border: 0;
  border-radius: 12px;
  background: var(--fe-surface-inset);
  box-shadow: var(--fe-shadow-inset);
}
.fe-widget-inspector__tabs button {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 9px;
  font-size: .78rem;
  font-weight: 650;
}
.fe-widget-inspector__tabs button .material-symbols-outlined { font-size: 1rem; }
.fe-widget-inspector__tabs button.is-active {
  background: var(--fe-surface);
  color: var(--fe-accent);
  box-shadow: var(--fe-shadow-soft);
}
.fe-widget-inspector__body {
  max-height: none;
  padding: 12px 14px 16px;
  scrollbar-gutter: stable;
}
.fe-widget-inspector .fe-monitor-builder-widget-body { gap: 10px; }
.fe-widget-inspector fieldset[data-builder-panel] {
  padding: 10px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--fe-surface) 78%, transparent);
}
.fe-widget-inspector fieldset[data-builder-panel] > legend { margin-bottom: 4px; font-size: .8rem; }
.fe-widget-inspector fieldset[data-builder-panel] > p { margin-bottom: 8px; font-size: .7rem; }
.fe-widget-inspector .fe-form-grid { gap: 8px 10px; }
.fe-widget-inspector .fe-form-grid > label,
.fe-widget-inspector .fe-monitor-builder-layout-grid > label { gap: 3px; }
.fe-widget-inspector .fe-form-grid > label > span,
.fe-widget-inspector .fe-monitor-builder-layout-grid > label > span { font-size: .68rem; }
.fe-widget-inspector .form-control,
.fe-widget-inspector .form-select { min-height: 36px; padding-block: 6px; border-radius: 10px; font-size: .78rem; }
.fe-widget-inspector .fe-monitor-builder-select-search { min-height: 34px; }
.fe-widget-inspector .fe-monitor-builder-multi-select { min-height: 132px; }
.fe-widget-inspector .fe-note { padding: 8px 10px; border-radius: 10px; font-size: .7rem; }
.fe-widget-inspector .fe-monitor-builder-theme-color-control { padding: 6px 8px; border-radius: 10px; }
.fe-widget-inspector .fe-monitor-builder-segmented button { min-height: 44px; padding: 5px; border-radius: 10px; font-size: .75rem; }
.fe-widget-inspector .fe-monitor-builder-order-help { padding: 8px 10px; }
.fe-widget-inspector .fe-monitor-builder-gauge-options:not([hidden]) { grid-template-columns: minmax(0, 1fr) 260px; gap: 10px; }
.fe-widget-inspector .fe-monitor-builder-gauge-options > .fe-monitor-builder-gauge-live { min-height: 190px; }
.fe-widget-inspector__actions {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 8px;
  padding: 10px 14px;
}
.fe-widget-inspector__actions > span { color: var(--fe-text-muted); font-size: .68rem; }
html[data-fe-theme="dark"] .fe-widget-inspector__tabs { background: var(--fe-surface-inset, #171c24); }
html[data-fe-theme="dark"] .fe-widget-inspector__tabs button.is-active { background: var(--fe-surface, #20242b); }
@media (max-width: 760px) {
  .fe-widget-inspector { width: min(640px, calc(100vw - 16px)); height: calc(100vh - 16px); }
  .fe-widget-inspector .fe-monitor-builder-gauge-options:not([hidden]) { grid-template-columns: 1fr; }
  .fe-widget-inspector .fe-monitor-builder-gauge-options > .fe-form-grid,
  .fe-widget-inspector .fe-monitor-builder-gauge-options > .fe-monitor-builder-gauge-live { grid-column: 1; position: static; }
}
@media (max-width: 520px) {
  .fe-widget-inspector__tabs button .material-symbols-outlined { display: none; }
  .fe-widget-inspector__actions > span { display: none; }
  .fe-widget-inspector__actions { grid-template-columns: 1fr 1fr; }
  .fe-widget-inspector .fe-monitor-builder-theme-color-control { grid-template-columns: 1fr 1fr; }
  .fe-widget-inspector .fe-monitor-builder-theme-color-control > label { grid-column: 1 / -1; }
}
.fe-monitor-widget__alarm {
    --fe-widget-alarm: #b47712;
    position: absolute;
    z-index: 8;
    top: .65rem;
    right: .65rem;
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    padding: .28rem .5rem;
    border: 1px solid color-mix(in srgb, var(--fe-widget-alarm) 55%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--fe-widget-alarm) 14%, var(--fe-surface, #fff));
    color: var(--fe-widget-alarm);
    font-size: .72rem;
    font-weight: 750;
    line-height: 1;
}
.fe-monitor-widget__alarm--critical { --fe-widget-alarm: #b82f40; }
.fe-monitor-widget__alarm .material-symbols-outlined { font-size: 1rem; }
.fe-monitor-widget:has(> .fe-monitor-widget__alarm--warning) { --fe-widget-alarm: #b47712; }
.fe-monitor-widget:has(> .fe-monitor-widget__alarm--critical) { --fe-widget-alarm: #b82f40; }
.fe-monitor-widget:has(> .fe-monitor-widget__alarm--effect-border) {
    border: 2px solid var(--fe-widget-alarm) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--fe-widget-alarm) 16%, transparent), var(--fe-shadow-soft, 0 8px 24px rgba(20,31,51,.1));
}
.fe-monitor-widget:has(> .fe-monitor-widget__alarm--effect-widget) {
    border-color: var(--fe-widget-alarm) !important;
    background: color-mix(in srgb, var(--fe-widget-alarm) 11%, var(--fe-surface, #fff)) !important;
}
.fe-monitor-widget:has(> .fe-monitor-widget__alarm--effect-indicator) :is(.fe-kpi__value,.fe-monitor-logical-indicator,.fe-monitor-gauge-reading strong,.fe-gauge-card__value) {
    color: var(--fe-widget-alarm) !important;
    border-color: var(--fe-widget-alarm) !important;
}
.fe-monitor-widget:has(> .fe-monitor-widget__alarm.is-alarm-pulsing) {
    animation: fe-monitor-alarm-pulse 1.35s ease-in-out infinite;
}
@keyframes fe-monitor-alarm-pulse {
    0%, 100% { filter: none; }
    50% { filter: drop-shadow(0 0 7px color-mix(in srgb, var(--fe-widget-alarm) 58%, transparent)); }
}
@media (prefers-reduced-motion: reduce) {
    .fe-monitor-widget:has(> .fe-monitor-widget__alarm.is-alarm-pulsing) { animation: none !important; }
}
