.fd-root{--fd-gap: 16px;--fd-side-w: 340px;--fd-tint: color-mix(in srgb, var(--text-muted) 9%, transparent);--fd-tint-strong: color-mix(in srgb, var(--text-muted) 18%, transparent);position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;display:grid;grid-template-columns:minmax(0,1fr) var(--fd-side-w);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"header header" "main side";gap:var(--fd-gap);padding:var(--fd-gap);overflow:hidden;font-family:var(--font);font-size:13px;line-height:1.45;color:var(--text);font-variant-numeric:tabular-nums}.fd-root h1,.fd-root h2,.fd-root p{margin:0}.fd-root button,.fd-root input,.fd-root select{font:inherit;color:inherit}.fd-root button{cursor:pointer}.fd-root :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fd-root *{scrollbar-width:thin;scrollbar-color:var(--fd-tint-strong) transparent}.fd-card{pointer-events:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}.fd-num{font-variant-numeric:tabular-nums}.fd-muted{color:var(--text-muted)}.fd-strong{font-weight:600}.fd-accent{color:var(--accent-strong)}.fd-small{font-size:12px}.fd-r{text-align:right}.fd-eyebrow{display:block;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--text-muted)}.fd-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-solid);font-size:13px;font-weight:500;white-space:nowrap;transition:background-color .15s,color .15s,border-color .15s}.fd-btn:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fd-btn-ghost{background:transparent;border-color:transparent}.fd-btn-ghost:hover{background:var(--fd-tint)}.fd-btn-ghost[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.fd-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--surface-solid);font-weight:600;height:40px}.fd-btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.fd-btn-primary[aria-pressed=true]{background:var(--accent-strong)}.fd-btn-secondary{background:var(--accent-soft);border-color:transparent;color:var(--accent-strong);font-weight:600;height:38px}.fd-btn-small{height:28px;padding:0 10px;font-size:12px}.fd-block{width:100%}.fd-icon-btn{position:relative;display:inline-grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;border:none;background:transparent;color:var(--text-muted)}.fd-icon-btn:hover{background:var(--fd-tint);color:var(--text)}.fd-chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:999px;border:none;background:var(--fd-tint);white-space:nowrap}.fd-chip:hover{background:var(--fd-tint-strong)}.fd-chip-static{height:28px;padding:0 10px;font-size:12px}.fd-chip-static:hover{background:var(--fd-tint)}.fd-pill{display:inline-flex;align-items:center;gap:4px;padding:1px 9px;margin-left:6px;border-radius:999px;font-size:11.5px;font-weight:600;white-space:nowrap}td>.fd-pill:first-child,.fd-detail>.fd-pill{margin-left:0}.fd-detail>.fd-pill{align-self:flex-start}.fd-pill-ok{background:var(--accent-soft);color:var(--accent-strong)}.fd-pill-muted{background:var(--fd-tint);color:var(--text-muted)}.fd-pill-warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.fd-pill-critical{background:color-mix(in srgb,var(--critical) 15%,transparent);color:var(--critical)}.fd-pill-info{background:color-mix(in srgb,var(--water) 15%,transparent);color:var(--water)}.fd-live-dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 color-mix(in srgb,var(--accent) 50%,transparent);animation:fd-pulse 2s ease-out infinite}@keyframes fd-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 50%,transparent)}70%,to{box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 0%,transparent)}}.fd-bar{position:relative;display:inline-block;width:56px;height:6px;border-radius:999px;background:var(--fd-tint-strong);overflow:hidden;vertical-align:middle}.fd-bar>span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--accent);transform-origin:left center;transition:transform .4s ease-out}.fd-bar-lg{width:100%;height:8px}.fd-battery{display:inline-flex;align-items:center;gap:8px}.fd-tone-warn .fd-bar>span{background:var(--warn)}.fd-tone-critical .fd-bar>span{background:var(--critical)}.fd-tone-critical>.fd-num{color:var(--critical)}.fd-switch-btn{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 4px;border:none;background:transparent;font-weight:500;white-space:nowrap;border-radius:10px;transition:background-color .15s}.fd-switch-btn:hover{background:var(--fd-tint)}.fd-switch-only{height:26px}.fd-switch{position:relative;flex:none;width:34px;height:20px;border-radius:999px;background:var(--fd-tint-strong);transition:background-color .2s}.fd-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-solid);box-shadow:var(--shadow);transition:transform .2s}.fd-switch-btn[aria-checked=true] .fd-switch{background:var(--accent)}.fd-switch-btn[aria-checked=true] .fd-switch:after{transform:translate(14px)}.fd-seg{display:inline-flex;padding:3px;gap:2px;border-radius:12px;background:var(--fd-tint)}.fd-seg>button{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;border:none;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:500;white-space:nowrap}.fd-seg>button:hover{color:var(--text)}.fd-seg>button[aria-pressed=true]{background:var(--surface-solid);color:var(--accent-strong);font-weight:600;box-shadow:var(--shadow)}.fd-header{grid-area:header;display:flex;align-items:center;gap:10px;min-height:60px;padding:8px 12px 8px 14px;min-width:0}.fd-brand{display:flex;align-items:center;gap:10px;flex:none;margin-right:6px}.fd-logo{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent);color:var(--surface-solid)}.fd-brand-text{display:flex;flex-direction:column;line-height:1.2}.fd-brand-text strong{font-size:15px}.fd-brand-text .fd-muted{font-size:11.5px}.fd-search{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 12px;border-radius:10px;border:1px solid transparent;background:var(--fd-tint);color:var(--text-muted);min-width:180px;flex:0 1 300px;transition:background-color .15s,border-color .15s}.fd-search:hover{background:var(--fd-tint-strong)}.fd-search:focus-within{border-color:var(--accent);background:var(--surface-solid)}.fd-search input{flex:1;min-width:0;border:none;background:transparent;outline:none;color:var(--text)}.fd-search input::placeholder{color:var(--text-muted)}.fd-kbd{display:grid;place-items:center;min-width:20px;height:20px;border-radius:6px;border:1px solid var(--border);background:var(--surface-solid);font-family:inherit;font-size:11px}.fd-select select,.fd-field select{height:36px;padding:0 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface-solid);color:var(--text);cursor:pointer;transition:border-color .15s,background-color .15s}.fd-select select:hover,.fd-field select:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fd-header-spacer{flex:1}.fd-clock{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;padding:0 4px;white-space:nowrap}.fd-clock-time{font-size:16px;font-weight:600}.fd-clock-tz{font-size:11px;color:var(--text-muted)}.fd-badge{position:absolute;top:3px;right:2px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--critical);color:var(--surface-solid);font-size:10px;font-weight:700;border:2px solid var(--surface-solid);box-sizing:content-box}.fd-user{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;margin-left:4px;border-radius:999px;background:var(--fd-tint);flex:none}.fd-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong)}.fd-user-text{display:flex;flex-direction:column;line-height:1.2;font-size:12px}.fd-user-text .fd-muted{font-size:11px}.fd-main{grid-area:main;display:flex;flex-direction:column;justify-content:space-between;gap:var(--fd-gap);min-height:0;min-width:0}.fd-top{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}.fd-title{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:14px 20px;min-width:220px}.fd-crumb{display:flex;gap:6px;font-size:12px;color:var(--text-muted)}.fd-title h1{font-size:22px;font-weight:700;line-height:1.25}.fd-live{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--accent-strong)}.fd-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fd-kpi{display:flex;flex-direction:column;gap:2px;padding:14px 16px;min-width:0}.fd-kpi-label{font-size:12px;font-weight:500;color:var(--text-muted)}.fd-kpi-value{font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-.01em;white-space:nowrap}.fd-kpi-value small{margin-left:4px;font-size:13px;font-weight:500;color:var(--text-muted)}.fd-kpi-sub{font-size:11.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-bottom{display:grid;grid-template-columns:minmax(320px,400px) minmax(0,1fr);align-items:end;gap:var(--fd-gap);min-height:0}.fd-bottom-left{display:flex;flex-direction:column;gap:12px;min-width:0}.fd-controls{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.fd-hint{font-size:11.5px;color:var(--text-muted)}.fd-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fd-task{display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px}.fd-task-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.fd-task-route{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;font-size:15px;font-weight:600}.fd-task-eta{text-align:right;flex:none}.fd-task-eta strong{font-size:18px}.fd-stepper{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.fd-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.fd-step-dot{position:relative;z-index:1;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:11px;font-weight:600;background:var(--surface-solid);border:2px solid var(--fd-tint-strong);color:var(--text-muted)}.fd-step-label{font-size:11px;line-height:1.25;color:var(--text-muted)}.fd-step-bar{position:absolute;top:11px;left:calc(50% + 14px);right:calc(-50% + 14px);height:3px;border-radius:999px;background:var(--fd-tint-strong);overflow:hidden}.fd-step-bar>span{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);transform-origin:left center;transition:transform .3s linear}.fd-step-done .fd-step-dot{background:var(--accent);border-color:var(--accent);color:var(--surface-solid)}.fd-step-current .fd-step-dot{border-color:var(--accent);color:var(--accent-strong);box-shadow:0 0 0 4px var(--accent-soft)}.fd-step-current .fd-step-label{color:var(--accent-strong);font-weight:600}.fd-tablecard{container:fdtable / inline-size;display:flex;flex-direction:column;max-height:min(340px,42vh);min-width:0;overflow:hidden}.fd-tabs{display:flex;align-items:center;gap:4px;padding:6px 10px 0;border-bottom:1px solid var(--border)}.fd-tabs>[role=tab]{display:inline-flex;align-items:center;gap:6px;padding:10px 12px 9px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-weight:500;margin-bottom:-1px}.fd-tabs>[role=tab]:hover{color:var(--text)}.fd-tabs>[role=tab][aria-selected=true]{color:var(--accent-strong);font-weight:600;border-bottom-color:var(--accent)}.fd-count{min-width:20px;padding:0 6px;border-radius:999px;background:var(--fd-tint);font-size:11px;font-weight:600;line-height:18px;text-align:center}[aria-selected=true]>.fd-count{background:var(--accent-soft)}.fd-tab-alert>.fd-count{background:color-mix(in srgb,var(--critical) 15%,transparent);color:var(--critical)}.fd-table-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.fd-table{width:100%;border-collapse:separate;border-spacing:0}.fd-table th{position:sticky;top:0;z-index:1;padding:9px 12px;background:var(--surface-solid);font-size:11.5px;font-weight:600;color:var(--text-muted);text-align:left;white-space:nowrap}.fd-table th.fd-r{text-align:right}.fd-table td{padding:8px 12px;border-top:1px solid var(--border);white-space:nowrap;vertical-align:middle}.fd-table td.fd-wrap{white-space:normal;min-width:220px}.fd-cell-main{display:block}.fd-cell-sub{display:block;font-size:11.5px;line-height:1.25;color:var(--text-muted)}.fd-col-target-name{display:inline-block;max-width:130px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}@container fdtable (max-width: 640px){.fd-col-task,.fd-col-crop{display:none}}@container fdtable (max-width: 540px){.fd-col-speed,.fd-col-temp{display:none}.fd-col-target-name{max-width:90px}}@container fdtable (max-width: 440px){.fd-table th,.fd-table td{padding-left:8px;padding-right:8px}.fd-table td>.fd-pill{display:table;margin:2px 0 0}.fd-col-target-name,.fd-col-ph{display:none}}@container fdtable (max-width: 340px){.fd-col-target{display:none}.fd-table .fd-bar{width:40px}}.fd-row{cursor:pointer;transition:background-color .12s}.fd-row:hover{background:var(--fd-tint)}.fd-row:focus-visible{outline-offset:-2px}.fd-row-selected,.fd-row-selected:hover{background:var(--accent-soft)}.fd-row-selected>td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.fd-empty{padding:24px 16px;text-align:center;color:var(--text-muted)}.fd-side{grid-area:side;display:flex;flex-direction:column;min-height:0;pointer-events:none}.fd-side-body{display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--fd-tint-strong) transparent;scrollbar-gutter:stable}@media (max-height: 1000px){.fd-silhouette{padding:4px 16px}.fd-silhouette svg{max-height:64px;margin:0 auto}}.fd-sheet-handle{display:none}.fd-detail{--fd-detail-max: min(600px, calc(100dvh - 260px) );display:flex;flex-direction:column;flex:0 1 auto;max-height:var(--fd-detail-max);min-height:0;overflow:hidden;padding:0}.fd-detail>.fd-detail-head{flex:none;padding:16px 16px 10px}.fd-detail-scroll{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:2px 16px 12px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--fd-tint-strong) transparent}.fd-detail-scroll>.fd-phase-chip,.fd-detail-scroll>.fd-pill{align-self:flex-start}.fd-detail-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fd-detail-foot{flex:none;display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--border)}.fd-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.fd-detail-head h2{font-size:18px;font-weight:700;line-height:1.3}.fd-detail-head p{font-size:12px}.fd-detail-head .fd-icon-btn{margin:-6px -6px 0 0}.fd-phase-chip{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.fd-phase-chip-muted{background:var(--fd-tint);color:var(--text-muted)}.fd-phase-chip-muted .fd-live-dot{background:var(--text-muted);animation:none}.fd-charging{color:var(--text-muted);font-weight:500}.fd-silhouette{padding:10px 16px;border-radius:14px;background:var(--accent-soft);color:var(--accent-strong)}.fd-silhouette svg{display:block}.fd-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fd-stat{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:12px;background:var(--fd-tint);min-width:0}.fd-stat-label{font-size:11.5px;color:var(--text-muted)}.fd-stat-value{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fd-actions-single,.fd-actions:has(.fd-resume){grid-template-columns:minmax(0,1fr)}.fd-resume{grid-column:1 / -1;display:flex;flex-direction:column;gap:4px}.fd-btn-resume:disabled{opacity:.55;cursor:not-allowed}.fd-resume-hint{font-size:12px;color:var(--warn)}.fd-field{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;border:none;min-width:0}.fd-field>span,.fd-field>legend{padding:0;margin-bottom:6px;font-size:11.5px;font-weight:600;color:var(--text-muted)}.fd-field>span{margin-bottom:0}.fd-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.fd-task-grid>button{height:32px;padding:0 4px;border-radius:9px;border:1px solid var(--border);background:transparent;font-size:12px}.fd-task-grid>button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.fd-sensors{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.fd-sensors li{display:grid;grid-template-columns:minmax(0,1fr) auto 96px;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--border)}.fd-sensors li:first-child{border-top:none}.fd-sensor-value{font-size:14px;font-weight:600;text-align:right}.fd-sensor-value small{margin-left:3px;font-size:11px;font-weight:500;color:var(--text-muted)}.fd-spark{display:block;overflow:visible}.fd-spark path{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.fd-spark circle{fill:var(--accent)}.fd-growth{display:flex;flex-direction:column;gap:6px}.fd-growth-head{display:flex;justify-content:space-between}.fd-irrigation{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--water) 10%,transparent)}.fd-irrigation-label{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--water)}.fd-summary{display:flex;flex-direction:column;gap:12px;padding:16px}.fd-summary-compact{flex-direction:row;align-items:center;gap:10px;padding:10px 14px}.fd-summary-compact h2{font-size:13px;font-weight:700;white-space:nowrap}.fd-summary-status{display:inline-flex;align-items:center;gap:6px;min-width:0;flex:1 1 auto;color:var(--accent-strong);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-summary-status.fd-status-alert{color:var(--critical)}.fd-summary-weather{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);white-space:nowrap}.fd-summary-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.fd-summary-head h2{font-size:15px;font-weight:700}.fd-status{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:12px;background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.fd-status-alert{background:color-mix(in srgb,var(--critical) 13%,transparent);color:var(--critical)}.fd-status-alert .fd-live-dot{background:var(--critical)}.fd-zones{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.fd-zones li{display:flex;flex-direction:column;gap:6px}.fd-zone-plots{display:flex;flex-wrap:wrap;gap:6px}.fd-zone-plot{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-solid);font-size:12px;font-weight:600}.fd-zone-plot:hover{border-color:var(--accent)}.fd-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.fd-health-watch .fd-dot{background:var(--warn)}.fd-health-alert .fd-dot{background:var(--critical)}.fd-summary-foot{display:flex;justify-content:space-between;gap:8px;font-size:12px;padding-top:10px;border-top:1px solid var(--border)}@media (max-width: 1279px){.fd-hide-md{display:none}.fd-kpi-value{font-size:22px}}@media (max-width: 1099px){.fd-root{grid-template-columns:minmax(0,1fr);grid-template-areas:"header" "main";padding-bottom:calc(var(--fd-gap) + 64px)}.fd-header{flex-wrap:wrap;row-gap:8px}.fd-search{order:10;flex:1 1 240px;max-width:none}.fd-select{order:11}.fd-kpi-row{max-width:none}.fd-bottom{grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.fd-side{position:fixed;z-index:3;right:var(--fd-gap);bottom:var(--fd-gap);width:min(420px,calc(100vw - 2 * var(--fd-gap)));max-height:min(72vh,680px);gap:8px}.fd-sheet-handle{order:2;display:flex;align-items:center;gap:10px;flex:none;height:52px;padding:0 16px;text-align:left}.fd-sheet-handle .fd-strong{flex:1}.fd-grip{width:28px;height:4px;border-radius:999px;background:var(--fd-tint-strong)}.fd-sheet-chevron{transition:transform .2s}.fd-side.fd-open .fd-sheet-chevron{transform:rotate(180deg)}}@media (max-width: 699px){.fd-root{--fd-gap: 10px;gap:var(--fd-gap)}.fd-hide-sm{display:none}.fd-header{flex-wrap:wrap;row-gap:8px;padding:8px 10px}.fd-brand{margin-right:0}.fd-search{order:10;flex:1 1 100%}.fd-btn-ghost{padding:0 9px}.fd-clock-tz{display:none}.fd-main{overflow-y:auto;overscroll-behavior:contain}.fd-top{flex-direction:column;gap:8px}.fd-title{display:none}.fd-kpis{flex:none;display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;pointer-events:auto;scrollbar-width:none}.fd-kpis::-webkit-scrollbar{display:none}.fd-kpi{flex:0 0 auto;min-width:128px;padding:8px 12px;scroll-snap-align:start}.fd-kpi-value{font-size:18px}.fd-kpi-sub{display:none}.fd-controls{padding:8px 10px}.fd-controls-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.fd-controls-row::-webkit-scrollbar{display:none}.fd-task{gap:10px;padding:10px 12px}.fd-task-route{font-size:14px}.fd-task-eta strong{font-size:16px}.fd-step-dot{width:20px;height:20px;font-size:10px}.fd-step-bar{top:9px;left:calc(50% + 12px);right:calc(-50% + 12px)}.fd-step:not(.fd-step-current) .fd-step-label{display:none}.fd-bottom{grid-template-columns:minmax(0,1fr);gap:8px}.fd-bottom-left{gap:8px}.fd-hint{display:none}.fd-tablecard.fd-open{position:fixed;z-index:4;left:var(--fd-gap);right:var(--fd-gap);bottom:var(--fd-gap);max-height:62vh}.fd-side{left:var(--fd-gap);right:var(--fd-gap);width:auto}.fd-step-label{font-size:10px;white-space:nowrap}}@media (max-width: 420px){.fd-brand-text{display:none}}@media (prefers-reduced-motion: reduce){.fd-root *,.fd-root *:before,.fd-root *:after{animation:none!important;transition:none!important}}.fd-test{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--warn) 45%,transparent);background:color-mix(in srgb,var(--warn) 6%,transparent)}.fd-test-head{display:flex;justify-content:space-between;align-items:center}.fd-test-metrics,.fd-test-custom{display:flex;flex-wrap:wrap;gap:6px}.fd-test-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.fd-test-levels>.fd-btn{flex-direction:column;gap:0;height:auto;padding:4px 6px;line-height:1.3}.fd-test-levels .fd-num{font-size:11px;opacity:.8}.fd-test-good{color:var(--accent-strong)}.fd-test-watch{color:var(--warn)}.fd-test-alert{color:var(--critical)}.fd-test-good:hover{background:var(--accent-soft)}.fd-test-watch:hover{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.fd-test-alert:hover{border-color:var(--critical);background:color-mix(in srgb,var(--critical) 12%,transparent)}.fd-test-custom input{flex:1;min-width:0;width:90px;height:28px;padding:0 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface-solid);color:var(--text);font:inherit;font-size:12px}.fd-test-custom input:hover,.fd-test-custom input:focus{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fd-test-custom .fd-btn:disabled{opacity:.5;cursor:not-allowed}.fd-alert-tools{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:6px;height:40px;padding:0 12px;background:var(--surface-solid);border-bottom:1px solid var(--border)}.fd-alert-tools .fd-btn:disabled{opacity:.5;cursor:not-allowed}.fd-alert-tools .fd-btn:disabled:hover{border-color:var(--border)}.fd-table-alerts th{top:40px}.fd-row-acked>td{opacity:.55}.fd-acked{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);white-space:nowrap}.fd-feed{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:8px 0 0}.fd-feed .fd-pill{margin-left:0}.fd-src{margin-left:6px;padding:0 5px;border-radius:4px;font-size:10px;font-weight:600;color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 12%,transparent)}.fd-src-real{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.fd-collapse{--fd-collapse-bleed: 0px;display:grid;grid-template-rows:0fr;min-height:0;min-width:0;visibility:hidden;transition:grid-template-rows .26s cubic-bezier(.2,.7,.2,1),visibility 0s linear .26s,opacity .2s ease;opacity:0}.fd-collapse-open{grid-template-rows:1fr;visibility:visible;opacity:1;transition:grid-template-rows .26s cubic-bezier(.2,.7,.2,1),visibility 0s,opacity .2s ease .05s}.fd-collapse>.fd-collapse-inner{min-height:0;min-width:0;overflow:hidden;padding:var(--fd-collapse-bleed);margin:calc(-1 * var(--fd-collapse-bleed))}.fd-collapse.fd-collapse-open>.fd-collapse-inner.fd-table-scroll{overflow:auto}.fd-collapse.fd-collapse-open>.fd-collapse-inner.fd-side-body{overflow-x:hidden;overflow-y:auto}.fd-collapse-btn{width:32px;height:32px}.fd-collapse-btn[aria-expanded=false]{color:var(--accent-strong)}.fd-kpi-row{position:relative;flex:1 1 600px;max-width:830px;display:grid;grid-template-columns:minmax(0,1fr);column-gap:12px;row-gap:0;align-items:stretch;min-width:0}.fd-kpis-collapse{--fd-collapse-bleed: 24px;grid-column:1;grid-row:1}.fd-kpi-row.fd-is-collapsed .fd-kpis-collapse{grid-row:2}.fd-kpi-toggle{position:absolute;top:6px;right:6px;z-index:1;pointer-events:auto}.fd-kpi-toggle .fd-collapse-btn{width:28px;height:28px;border-radius:999px;background:var(--surface)}.fd-kpi-toggle .fd-collapse-btn:hover{background:var(--fd-tint-strong);color:var(--text)}.fd-kpis>.fd-kpi:last-child{padding-right:40px}.fd-kpi-strip{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;gap:18px;min-height:48px;padding:6px 8px 6px 16px;white-space:nowrap;overflow:hidden;animation:fd-strip-in .22s ease-out}.fd-kpi-strip-item{display:inline-flex;align-items:baseline;gap:5px;font-size:12.5px}.fd-kpi-strip-item strong{font-size:15px}.fd-kpi-strip-btn{margin-left:auto}@keyframes fd-strip-in{0%{opacity:0;transform:translateY(-4px)}}.fd-top:has(.fd-kpi-row.fd-is-collapsed){align-items:flex-start}.fd-controls{gap:0}.fd-controls-head{display:flex;align-items:center;gap:8px;min-width:0}.fd-controls-spacer{flex:1}.fd-controls .fd-collapse{--fd-collapse-bleed: 6px}.fd-controls-body{display:flex;flex-direction:column;gap:10px}.fd-controls .fd-collapse>.fd-controls-body{padding-top:calc(var(--fd-collapse-bleed) + 10px)}.fd-controls.fd-is-collapsed{padding-top:8px;padding-bottom:8px}.fd-shortcut-hint{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.fd-shortcut-hint .fd-kbd{display:inline-grid;min-width:18px;height:18px;font-size:10.5px}.fd-task{gap:0}.fd-task .fd-stepper{padding-top:14px}.fd-task-head{align-items:center}.fd-task-head>div:first-child{min-width:0;flex:1}.fd-task-toggle{margin-right:-6px}.fd-task.fd-is-collapsed{padding-top:10px;padding-bottom:10px}.fd-tabs{min-height:52px;padding-right:8px}.fd-tabs-spacer{flex:1}.fd-tabs>.fd-collapse-btn{align-self:center}.fd-table-collapse{flex:0 1 auto}.fd-tablecard.fd-is-collapsed .fd-tabs{border-bottom-color:transparent}.fd-tablecard.fd-is-collapsed .fd-tabs>[role=tab][aria-selected=true]{border-bottom-color:transparent}.fd-root{transition:grid-template-columns .26s cubic-bezier(.2,.7,.2,1)}.fd-side{gap:10px}.fd-side-collapse{flex:0 1 auto}.fd-sheet-handle:hover{background-image:linear-gradient(var(--fd-tint),var(--fd-tint))}.fd-sheet-handle:hover .fd-sheet-chevron{color:var(--text)}@media (min-width: 1100px){.fd-root.fd-side-collapsed{--fd-side-w: 240px}.fd-sheet-handle{display:flex;align-items:center;gap:10px;flex:none;height:48px;padding:0 10px 0 16px;text-align:left}.fd-sheet-handle .fd-strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-sheet-handle .fd-grip{display:none}.fd-sheet-chevron{color:var(--text-muted);transition:transform .2s}.fd-side.fd-is-collapsed .fd-sheet-chevron{transform:rotate(180deg);color:var(--accent-strong)}.fd-side.fd-is-collapsed{gap:0}}@media (max-width: 1099px){.fd-side.fd-is-collapsed{gap:0}}@media (max-width: 699px){.fd-kpi-row{flex:none;width:100%;max-width:none;column-gap:8px}.fd-kpis-collapse{--fd-collapse-bleed: 0px;margin-right:36px}.fd-kpi-row.fd-is-collapsed .fd-kpis-collapse{margin-right:0}.fd-kpis>.fd-kpi:last-child{padding-right:16px}.fd-collapse>.fd-kpis.fd-collapse-inner{overflow-x:auto;overflow-y:hidden}.fd-kpi-toggle{top:4px;right:4px}.fd-kpi-strip{gap:12px;min-height:44px;padding-left:12px;overflow-x:auto;scrollbar-width:none}.fd-kpi-strip-item strong{font-size:14px}.fd-controls-head{overflow-x:auto;scrollbar-width:none}.fd-task .fd-stepper{padding-top:10px}.fd-tabs{min-height:48px}}@media (max-width: 420px){.fd-kpi-strip-item .fd-muted:first-child{display:none}}.fd-settings-btn{position:relative}.fd-settings-btn[aria-expanded=true]{background:var(--accent-soft);color:var(--accent-strong)}.fd-settings-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--surface-solid)}@media (prefers-reduced-motion: reduce){.fd-root,.fd-collapse,.fd-collapse-open{transition:none!important}.fd-kpi-strip{animation:none}}.fd-header{position:relative;z-index:5}.fd-search-wrap{position:relative;display:flex;min-width:180px;flex:0 1 300px}.fd-search-wrap>.fd-search{flex:1 1 auto;min-width:0}.fd-search-pop{position:absolute;top:calc(100% + 8px);left:0;width:max(100%,min(420px,calc(100vw - 2 * var(--fd-gap))));max-width:calc(100vw - 2 * var(--fd-gap));max-height:min(62vh,460px);display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);animation:fd-search-in .14s ease-out}@keyframes fd-search-in{0%{opacity:0;transform:translateY(-4px)}}.fd-search-list{overflow-y:auto;overscroll-behavior:contain;padding:6px}.fd-search-group+.fd-search-group{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.fd-search-head{display:flex;align-items:center;gap:6px;padding:6px 10px 4px;font-size:11.5px;font-weight:600;color:var(--text-muted)}.fd-search-opt{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border-radius:10px;cursor:pointer;min-width:0}.fd-search-opt-active{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.fd-search-opt-title{font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-search-opt-alert .fd-search-opt-title{font-weight:500;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.fd-search-opt-active .fd-search-opt-title{color:var(--accent-strong)}.fd-search-opt-detail{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-search-empty{margin:0;padding:18px 16px;color:var(--text-muted);text-align:center;overflow-wrap:anywhere}.fd-search-foot{display:flex;align-items:center;gap:4px;margin:0;padding:7px 12px;border-top:1px solid var(--border);font-size:11.5px;color:var(--text-muted)}.fd-search-foot .fd-kbd{min-width:18px;padding:0 4px}.fd-count-hits{background:var(--accent-soft);color:var(--accent-strong)}.fd-empty>p{margin:0}.fd-empty-hint{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px!important}.fd-link-btn{border:none;background:var(--accent-soft);color:var(--accent-strong);font:inherit;font-weight:600;padding:4px 12px;border-radius:999px;cursor:pointer}.fd-link-btn:hover{background:var(--accent);color:var(--surface-solid)}@media (max-width: 1099px){.fd-search-wrap{order:10;flex:1 1 240px}.fd-search-pop{width:100%}}@media (max-width: 699px){.fd-search-wrap{flex:1 1 100%;min-width:0}.fd-search-pop{max-height:55vh}}.fd-settings-layer{--fd-input-border: color-mix(in srgb, var(--text-muted) 32%, transparent);position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:auto}.fd-settings-layer h2,.fd-settings-layer h3{margin:0}.fd-settings-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--bg) 22%,transparent);animation:fd-fade-in .2s ease-out}.fd-settings{position:absolute;top:var(--fd-gap);right:var(--fd-gap);bottom:var(--fd-gap);width:min(548px,calc(100vw - 2 * var(--fd-gap)));display:flex;flex-direction:column;min-height:0;background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow),0 24px 64px color-mix(in srgb,var(--text) 18%,transparent);overflow:hidden;animation:fd-drawer-in .26s cubic-bezier(.2,.7,.2,1)}@keyframes fd-drawer-in{0%{transform:translate(24px);opacity:0}}@keyframes fd-fade-in{0%{opacity:0}}.fd-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 16px 14px 22px;border-bottom:1px solid var(--border)}.fd-settings-head h2{font-size:19px;font-weight:700;line-height:1.3}.fd-settings-head p{font-size:12px;margin-top:2px}.fd-settings-select{display:none}.fd-settings-main{flex:1;min-height:0;display:grid;grid-template-columns:136px minmax(0,1fr)}.fd-settings-rail{display:flex;flex-direction:column;gap:2px;padding:12px 8px;border-right:1px solid var(--border);overflow-y:auto}.fd-settings-rail>[role=tab]{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:8px 10px;border:none;border-radius:10px;background:transparent;color:var(--text-muted);font-size:12.5px;font-weight:500;line-height:1.35;text-align:left}.fd-settings-rail>[role=tab]:hover{background:var(--fd-tint);color:var(--text)}.fd-settings-rail>[role=tab][aria-selected=true]{background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.fd-settings-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 22px 28px 20px}.fd-set-section-head{margin-bottom:12px}.fd-set-section-head h3{font-size:16px;font-weight:700}.fd-set-section-head p{font-size:12px}.fd-set-group{margin-bottom:18px}.fd-set-group-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0 4px}.fd-set-group-head h3{display:inline-flex;align-items:center;gap:6px;flex:1 1 auto;font-size:13.5px;font-weight:700}.fd-set-field{padding:12px 0;border-top:1px solid var(--border)}.fd-set-group-head+.fd-set-field,.fd-set-group>.fd-set-field:first-child{border-top:none}.fd-set-field-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:8px}.fd-set-label{display:inline-flex;align-items:center;flex:1 1 auto;min-width:0;font-weight:600}.fd-set-help{margin-top:6px;font-size:12px;color:var(--text-muted)}.fd-mod-dot{flex:none;display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--accent)}.fd-apply{flex:none;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.fd-apply-live{background:var(--accent-soft);color:var(--accent-strong)}.fd-apply-reset{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.fd-apply-startup{background:color-mix(in srgb,var(--water) 15%,transparent);color:var(--water)}.fd-link-btn{flex:none;padding:2px 4px;border:none;border-radius:6px;background:transparent;color:var(--accent-strong);font-size:12px;font-weight:600}.fd-link-btn:hover{text-decoration:underline}.fd-text-input,.fd-select-input{width:100%;height:36px;padding:0 10px;border-radius:10px;border:1px solid var(--fd-input-border);background:var(--surface-solid);color:var(--text);outline:none}.fd-text-input:focus,.fd-select-input:focus{border-color:var(--accent)}.fd-text-input[aria-invalid=true]{border-color:var(--critical);box-shadow:0 0 0 3px color-mix(in srgb,var(--critical) 14%,transparent)}.fd-settings-layer .fd-text-input:focus-visible,.fd-settings-layer .fd-select-input:focus-visible,.fd-num-input input:focus-visible{outline:none}.fd-num-control{display:flex;align-items:center;gap:14px}.fd-num-input{flex:none;display:inline-flex;align-items:center;width:132px;height:36px;border-radius:10px;border:1px solid var(--fd-input-border);background:var(--surface-solid);overflow:hidden}.fd-num-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.fd-num-input input{flex:1;min-width:0;height:100%;padding:0 4px 0 10px;border:none;background:transparent;color:var(--text);text-align:right;outline:none}.fd-num-unit{flex:none;padding:0 10px 0 4px;font-size:12px;color:var(--text-muted);white-space:nowrap}.fd-num-compact .fd-num-input{width:100%}.fd-num-control:not(:has(.fd-range)) .fd-num-input{width:180px}.fd-num-compact.fd-num-control .fd-num-input{width:100%}.fd-range{--fd-range-pct: 50%;flex:1;min-width:0;height:22px;margin:0;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.fd-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(to right,var(--accent) var(--fd-range-pct),var(--fd-tint-strong) var(--fd-range-pct))}.fd-range::-moz-range-track{height:6px;border-radius:999px;background:linear-gradient(to right,var(--accent) var(--fd-range-pct),var(--fd-tint-strong) var(--fd-range-pct))}.fd-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;margin-top:-6px;border-radius:50%;border:2px solid var(--accent);background:var(--surface-solid);box-shadow:var(--shadow)}.fd-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;border:2px solid var(--accent);background:var(--surface-solid)}.fd-range:focus-visible{outline-offset:4px;border-radius:6px}.fd-seg-wrap{flex-wrap:wrap}.fd-set-warn{display:flex;align-items:flex-start;gap:6px;margin-top:8px;padding:6px 10px;border-radius:10px;background:color-mix(in srgb,var(--warn) 13%,transparent);color:var(--warn);font-size:12px;font-weight:600}.fd-set-warn svg{flex:none;margin-top:2px}.fd-has-warn .fd-num-input{border-color:var(--warn)}.fd-rail-warn{flex:none;min-width:18px;padding:0 5px;border-radius:999px;background:var(--warn);color:var(--surface-solid);font-size:10.5px;font-weight:700;line-height:18px;text-align:center}.fd-unit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.fd-unit-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) 32px;gap:8px;padding:10px 10px 12px;border-radius:14px;background:var(--fd-tint)}.fd-unit-cell{display:flex;flex-direction:column;gap:3px;min-width:0;grid-column:span 2}.fd-unit-id{grid-column:span 2}.fd-unit-name{grid-column:span 4}.fd-unit-del{grid-column:7;grid-row:1;align-self:end;width:32px;height:36px}.fd-unit-del:hover:not(:disabled){color:var(--critical)}.fd-unit-del:disabled{opacity:.4;cursor:not-allowed}.fd-unit-row>.fd-unit-cell:nth-of-type(3){grid-column:1 / span 2}.fd-unit-row>.fd-unit-cell:nth-of-type(5){grid-column:span 3}.fd-unit-label{font-size:11px;font-weight:600;color:var(--text-muted)}.fd-unit-error{grid-column:1 / -1;font-size:12px;font-weight:600;color:var(--critical)}.fd-unit-add{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.fd-toast{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:8px 8px 8px 14px;border-radius:12px;background:var(--text);color:var(--surface-solid);animation:fd-fade-in .2s ease-out}.fd-toast .fd-btn{background:var(--surface-solid);color:var(--text)}.fd-settings-foot{display:flex;flex-direction:column;gap:10px;padding:12px 20px 16px;border-top:1px solid var(--border);background:var(--surface-solid)}.fd-pending{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 14px;border-radius:14px;background:color-mix(in srgb,var(--warn) 13%,transparent)}.fd-pending p{display:flex;align-items:center;gap:8px;flex:1 1 220px;font-weight:600}.fd-dot-warn{background:var(--warn);animation:none}.fd-set-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fd-btn-quiet{background:transparent;border-color:transparent;color:var(--text-muted)}.fd-btn-quiet:hover{color:var(--critical);border-color:color-mix(in srgb,var(--critical) 40%,transparent)}.fd-btn-danger{background:var(--critical);border-color:var(--critical);color:var(--surface-solid);font-weight:600}.fd-btn-danger:hover{border-color:var(--critical);background:color-mix(in srgb,var(--critical) 85%,var(--text))}.fd-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-radius:12px;background:color-mix(in srgb,var(--critical) 10%,transparent)}.fd-confirm>span{flex:1 1 200px;font-weight:600;color:var(--critical)}.fd-set-msg{font-size:12px}.fd-set-msg-ok{color:var(--accent-strong)}.fd-set-msg-error{color:var(--critical);font-weight:600}@media (max-width: 699px){.fd-settings{top:0;right:0;bottom:0;left:0;width:100%;border-radius:0;border:none}.fd-settings-head{padding:14px 10px 10px 16px;border-bottom:none}.fd-settings-select{display:block;padding:0 16px 10px;border-bottom:1px solid var(--border)}.fd-settings-main{grid-template-columns:minmax(0,1fr)}.fd-settings-rail{display:none}.fd-settings-body{padding:14px 16px 24px}.fd-settings-foot{padding:10px 16px calc(12px + env(safe-area-inset-bottom))}.fd-num-control{gap:10px}.fd-num-input{width:112px}}@media (prefers-reduced-motion: reduce){.fd-settings,.fd-settings-backdrop,.fd-toast{animation:none}}.fd-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:16px;font-family:var(--font);font-size:13px;line-height:1.45;color:var(--text);font-variant-numeric:tabular-nums}.fd-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--bg) 45%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fd-modal-fade .15s ease-out}.fd-modal{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);animation:fd-modal-pop .18s ease-out}.fd-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 8px 20px}.fd-modal-head h2{margin:0;font-size:17px;font-weight:700}.fd-modal-head p{margin:2px 0 0}.fd-modal-body{display:flex;flex-direction:column;gap:14px;padding:8px 20px 16px;overflow-y:auto;min-height:0}.fd-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 18px;border-top:1px solid var(--border)}.fd-modal-foot .fd-btn{min-width:96px}@keyframes fd-modal-fade{0%{opacity:0}}@keyframes fd-modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}@media (prefers-reduced-motion: reduce){.fd-modal,.fd-modal-backdrop{animation:none}}@media (max-width: 699px){.fd-modal-layer{place-items:end stretch;padding:0}.fd-modal{width:100%;border-radius:var(--radius) var(--radius) 0 0}}:root{--bg: #eef1ee;--surface: rgba(255, 255, 255, .92);--surface-solid: #ffffff;--border: rgba(20, 40, 30, .08);--text: #16241c;--text-muted: #66756c;--accent: #1f8a4c;--accent-strong: #146c3a;--accent-soft: #e3f3e9;--water: #3b82c4;--warn: #c98a14;--critical: #c8432f;--shadow: 0 8px 24px rgba(20, 40, 30, .08);--radius: 18px;--font: "IBM Plex Sans Thai", system-ui, sans-serif;color-scheme:light}:root[data-theme=dark]{--bg: #0e1512;--surface: rgba(22, 32, 27, .88);--surface-solid: #16201b;--border: rgba(255, 255, 255, .08);--text: #e6efe9;--text-muted: #8fa198;--accent: #3fbf74;--accent-strong: #5fd68d;--accent-soft: #1d3428;--water: #5aa5e6;--warn: #e0a83a;--critical: #e86a55;--shadow: 0 8px 24px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);overflow:hidden}.app{position:relative;width:100vw;height:100vh}.scene-layer{position:absolute;top:0;right:0;bottom:0;left:0}
