:root{--fof-blue:#1A5EDE;--fof-purple:#DAC3E4;--fof-gray:#C4C3C1;--fof-white:#FFFFFF;--fof-yellow:#FFFFA7;--fof-brown:#73403C;--fof-bg:#F7F8FB;--fof-text:#1F2937;--fof-muted:#6B7280;--fof-pink:#f432a6;--bg-app:var(--fof-bg);--bg-card:var(--fof-white);--bg-subtle:color-mix(in srgb,var(--fof-bg) 72%,#ffffff 28%);--semantic-positive:#4F9361;--semantic-positive-soft:color-mix(in srgb,var(--semantic-positive) 12%,#ffffff 88%);--semantic-attention:#E64B3E;--semantic-attention-soft:color-mix(in srgb,var(--semantic-attention) 12%,#ffffff 88%);--semantic-observation:var(--fof-blue);--semantic-observation-soft:color-mix(in srgb,var(--semantic-observation) 12%,#ffffff 88%);--fof-bubble-rose-100:#F2B5A9;--fof-bubble-blue-500:#1F67E7;--fof-bubble-beige-200:#CDB79F;--fof-bubble-green-600:#586E60;--fof-bubble-rust-500:#B65C3E;--fof-bubble-peach-300:#F0A191;--fof-bubble-brown-700:#6E3D35;--fof-bubble-olive-500:#789D54;--fof-bubble-lime-300:#D7FF8E;--fof-bubble-sky-200:#C9E1EC;--fof-bubble-coral-500:#E64B3E;--fof-bubble-lilac-200:#D8C7E7;--fof-bubble-green-500:#4F9361;--fof-bubble-sky-400:#74B8DF;--fof-bubble-gold-400:#C9AE6F;--fof-bubble-gray-300:#CFCFCF;--fof-bubble-yellow-300:#FFF59A;--fof-bubble-pink-300:#E79DB3;--fof-bubble-rose-100-rgb:242 181 169;--fof-bubble-blue-500-rgb:31 103 231;--fof-bubble-beige-200-rgb:205 183 159;--fof-bubble-green-600-rgb:88 110 96;--fof-bubble-rust-500-rgb:182 92 62;--fof-bubble-peach-300-rgb:240 161 145;--fof-bubble-brown-700-rgb:110 61 53;--fof-bubble-olive-500-rgb:120 157 84;--fof-bubble-lime-300-rgb:215 255 142;--fof-bubble-sky-200-rgb:201 225 236;--fof-bubble-coral-500-rgb:230 75 62;--fof-bubble-lilac-200-rgb:216 199 231;--fof-bubble-green-500-rgb:79 147 97;--fof-bubble-sky-400-rgb:116 184 223;--fof-bubble-gold-400-rgb:201 174 111;--fof-bubble-gray-300-rgb:207 207 207;--fof-bubble-yellow-300-rgb:255 245 154;--fof-bubble-pink-300-rgb:231 157 179;--fof-palette-01-p1:var(--fof-bubble-rust-500);--fof-palette-01-p2:var(--fof-bubble-gray-300);--fof-palette-01-p3:var(--fof-bubble-blue-500);--fof-palette-01-p4:var(--fof-bubble-lilac-200);--fof-palette-02-p1:var(--fof-bubble-sky-200);--fof-palette-02-p2:var(--fof-bubble-gold-400);--fof-palette-02-p3:var(--fof-bubble-brown-700);--fof-palette-02-p4:var(--fof-bubble-coral-500);--fof-palette-03-p1:var(--fof-bubble-green-600);--fof-palette-03-p2:var(--fof-bubble-rose-100);--fof-palette-03-p3:var(--fof-bubble-coral-500);--fof-palette-03-p4:var(--fof-bubble-sky-400);--fof-palette-04-p1:var(--fof-bubble-sky-200);--fof-palette-04-p2:var(--fof-bubble-rust-500);--fof-palette-04-p3:var(--fof-bubble-green-500);--fof-palette-04-p4:var(--fof-bubble-beige-200);--fof-palette-05-p1:var(--fof-bubble-yellow-300);--fof-palette-05-p2:var(--fof-bubble-beige-200);--fof-palette-05-p3:var(--fof-bubble-brown-700);--fof-palette-05-p4:var(--fof-bubble-sky-400);--fof-palette-06-p1:var(--fof-bubble-blue-500);--fof-palette-06-p2:var(--fof-bubble-coral-500);--fof-palette-06-p3:var(--fof-bubble-gold-400);--fof-palette-06-p4:var(--fof-bubble-rose-100);--fof-palette-07-p1:var(--fof-bubble-pink-300);--fof-palette-07-p2:var(--fof-bubble-green-600);--fof-palette-07-p3:var(--fof-bubble-brown-700);--fof-palette-07-p4:var(--fof-bubble-lime-300);--fof-palette-08-p1:var(--fof-bubble-rose-100);--fof-palette-08-p2:var(--fof-bubble-gold-400);--fof-palette-08-p3:var(--fof-bubble-coral-500);--fof-palette-08-p4:var(--fof-bubble-green-600);--fof-palette-09-p1:var(--fof-bubble-coral-500);--fof-palette-09-p2:var(--fof-bubble-rose-100);--fof-palette-09-p3:var(--fof-bubble-beige-200);--fof-palette-09-p4:var(--fof-bubble-lime-300);--fof-palette-10-p1:var(--fof-bubble-rust-500);--fof-palette-10-p2:var(--fof-bubble-beige-200);--fof-palette-10-p3:var(--fof-bubble-sky-400);--fof-palette-10-p4:var(--fof-bubble-olive-500);--fof-palette-11-p1:var(--fof-bubble-lime-300);--fof-palette-11-p2:var(--fof-bubble-gray-300);--fof-palette-11-p3:var(--fof-bubble-lilac-200);--fof-palette-11-p4:var(--fof-bubble-rust-500);--fof-palette-12-p1:var(--fof-bubble-rose-100);--fof-palette-12-p2:var(--fof-bubble-coral-500);--fof-palette-12-p3:var(--fof-bubble-sky-200);--fof-palette-12-p4:var(--fof-bubble-gold-400);--fof-palette-13-p1:var(--fof-bubble-gold-400);--fof-palette-13-p2:var(--fof-bubble-lilac-200);--fof-palette-13-p3:var(--fof-bubble-gray-300);--fof-palette-13-p4:var(--fof-bubble-green-500);--fof-palette-14-p1:var(--fof-bubble-blue-500);--fof-palette-14-p2:var(--fof-bubble-beige-200);--fof-palette-14-p3:var(--fof-bubble-coral-500);--fof-palette-14-p4:var(--fof-bubble-pink-300);--fof-palette-15-p1:var(--fof-bubble-gray-300);--fof-palette-15-p2:var(--fof-bubble-sky-400);--fof-palette-15-p3:var(--fof-bubble-yellow-300);--fof-palette-15-p4:var(--fof-bubble-coral-500);--fof-palette-16-p1:var(--fof-bubble-beige-200);--fof-palette-16-p2:var(--fof-bubble-lime-300);--fof-palette-16-p3:var(--fof-bubble-green-500);--fof-palette-16-p4:var(--fof-bubble-lilac-200);--fof-palette-17-p1:var(--fof-bubble-coral-500);--fof-palette-17-p2:var(--fof-bubble-olive-500);--fof-palette-17-p3:var(--fof-bubble-sky-200);--fof-palette-17-p4:var(--fof-bubble-gold-400);--fof-palette-18-p1:var(--fof-bubble-blue-500);--fof-palette-18-p2:var(--fof-bubble-brown-700);--fof-palette-18-p3:var(--fof-bubble-rose-100);--fof-palette-18-p4:var(--fof-bubble-green-500);--fof-palette-19-p1:var(--fof-bubble-pink-300);--fof-palette-19-p2:var(--fof-bubble-gold-400);--fof-palette-19-p3:var(--fof-bubble-rust-500);--fof-palette-19-p4:var(--fof-bubble-blue-500);--fof-palette-20-p1:var(--fof-bubble-yellow-300);--fof-palette-20-p2:var(--fof-bubble-green-600);--fof-palette-20-p3:var(--fof-bubble-gray-300);--fof-palette-20-p4:var(--fof-bubble-brown-700);--fof-palette-21-p1:var(--fof-bubble-gray-300);--fof-palette-21-p2:var(--fof-bubble-peach-300);--fof-palette-21-p3:var(--fof-bubble-lime-300);--fof-palette-21-p4:var(--fof-bubble-green-600);--btn-primary-bg:var(--fof-blue);--btn-primary-text:#ffffff;--btn-primary-border:var(--fof-blue);--btn-primary-hover-bg:color-mix(in srgb,var(--fof-blue) 85%,black);--btn-primary-hover-border:color-mix(in srgb,var(--fof-blue) 85%,black);--btn-outline-bg:transparent;--btn-outline-text:var(--fof-text);--btn-outline-border:color-mix(in srgb,var(--fof-text) 20%,#ffffff 80%);--btn-outline-hover-bg:color-mix(in srgb,var(--fof-blue) 6%,#ffffff 94%);--btn-outline-hover-border:var(--fof-blue);--btn-ghost-bg:transparent;--btn-ghost-text:var(--fof-text);--btn-ghost-hover-bg:color-mix(in srgb,var(--fof-text) 6%,#ffffff 94%);--btn-danger-bg:#e64b3e;--btn-danger-text:#ffffff;--btn-danger-border:#e64b3e;--btn-danger-hover-bg:color-mix(in srgb,#e64b3e 85%,black);--btn-danger-hover-border:color-mix(in srgb,#e64b3e 85%,black);--btn-success-bg:#22a06b;--btn-success-text:#ffffff;--btn-success-border:#22a06b;--btn-success-hover-bg:color-mix(in srgb,#22a06b 85%,black);--btn-success-hover-border:color-mix(in srgb,#22a06b 85%,black);--btn-radius:10px;--btn-padding-x:14px;--btn-padding-y:8px;--btn-font-size:14px;--btn-font-weight:600;--btn-shadow:0 1px 2px rgba(0,0,0,0.06);--btn-sm-height:32px;--btn-sm-padding-x:10px;--btn-sm-padding-y:6px;--btn-sm-font-size:13px;--btn-md-height:38px;--btn-md-padding-x:14px;--btn-md-padding-y:8px;--btn-md-font-size:14px;--btn-lg-height:44px;--btn-lg-padding-x:18px;--btn-lg-padding-y:10px;--btn-lg-font-size:16px;--semantic-ai:var(--fof-yellow);--semantic-ai-soft:color-mix(in srgb,var(--fof-yellow) 28%,#ffffff 72%);--ai-bg:color-mix(in srgb,var(--fof-yellow) 28%,#ffffff 72%);--ai-border:color-mix(in srgb,var(--fof-brown) 20%,#ffffff 80%);--ai-text:var(--fof-text);--ai-muted:color-mix(in srgb,var(--fof-text) 62%,#ffffff 38%);--ai-accent:var(--fof-brown);--ai-accent-soft:color-mix(in srgb,var(--fof-brown) 10%,#ffffff 90%);--ai-badge-bg:color-mix(in srgb,var(--fof-yellow) 70%,#ffffff 30%);--ai-badge-text:var(--fof-brown);--ai-icon-bg:color-mix(in srgb,var(--fof-brown) 10%,#ffffff 90%);--ai-meta:color-mix(in srgb,var(--fof-text) 58%,#ffffff 42%);--ai-shadow:0 10px 30px rgba(31,41,55,0.06);--ai-callout-bg:color-mix(in srgb,#ffffff 82%,var(--ai-bg) 18%);--ai-callout-border:color-mix(in srgb,var(--fof-brown) 10%,#ffffff 90%);--ai-callout-title:var(--ai-accent);--ai-callout-text:var(--ai-text);--chart-positive:var(--semantic-positive);--chart-attention:var(--semantic-attention);--chart-observation:var(--semantic-observation);--chart-ai:var(--semantic-ai);--chart-grid:color-mix(in srgb,var(--fof-text) 8%,#ffffff 92%);--chart-axis:color-mix(in srgb,var(--fof-text) 18%,#ffffff 82%);--chart-label:color-mix(in srgb,var(--fof-text) 72%,#ffffff 28%);--chart-muted:color-mix(in srgb,var(--fof-text) 52%,#ffffff 48%);--chart-tooltip-bg:var(--bg-card);--chart-tooltip-border:color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);--chart-tooltip-text:var(--fof-text);--chart-tooltip-shadow:0 10px 30px rgba(31,41,55,0.08);--chart-area-1:color-mix(in srgb,var(--chart-1) 18%,#ffffff 82%);--chart-area-2:color-mix(in srgb,var(--chart-2) 18%,#ffffff 82%);--chart-area-3:color-mix(in srgb,var(--chart-3) 18%,#ffffff 82%);--chart-area-4:color-mix(in srgb,var(--chart-4) 18%,#ffffff 82%);--chart-area-5:color-mix(in srgb,var(--chart-5) 18%,#ffffff 82%);--chart-line-width:3;--chart-bar-radius:10px;--chart-active-dot-ring:color-mix(in srgb,var(--fof-blue) 18%,transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:var(--btn-padding-y) var(--btn-padding-x);border-radius:var(--btn-radius);font-size:var(--btn-font-size);font-weight:var(--btn-font-weight);line-height:1;border:1px solid transparent;cursor:pointer;box-shadow:var(--btn-shadow);transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--fof-blue) 18%,transparent),var(--btn-shadow)}.btn-sm{height:var(--btn-sm-height);padding:var(--btn-sm-padding-y) var(--btn-sm-padding-x);font-size:var(--btn-sm-font-size)}.btn-md{height:var(--btn-md-height);padding:var(--btn-md-padding-y) var(--btn-md-padding-x);font-size:var(--btn-md-font-size)}.btn-lg{height:var(--btn-lg-height);padding:var(--btn-lg-padding-y) var(--btn-lg-padding-x);font-size:var(--btn-lg-font-size)}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-border)}.btn-primary:hover{background:var(--btn-primary-hover-bg);border-color:var(--btn-primary-hover-border)}.btn-outline,.btn-secondary{background:var(--btn-outline-bg);color:var(--btn-outline-text);border-color:var(--btn-outline-border)}.btn-outline:hover,.btn-secondary:hover{background:var(--btn-outline-hover-bg);border-color:var(--btn-outline-hover-border)}.btn-ghost{background:var(--btn-ghost-bg);color:var(--btn-ghost-text);border-color:transparent;box-shadow:none}.btn-ghost:hover{background:var(--btn-ghost-hover-bg)}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text);border-color:var(--btn-danger-border)}.btn-danger:hover{background:var(--btn-danger-hover-bg);border-color:var(--btn-danger-hover-border)}.btn:disabled,.btn[disabled]{opacity:.6;cursor:not-allowed;transform:none}.btn-success{background:var(--btn-success-bg);color:var(--btn-success-text);border-color:var(--btn-success-border)}.btn-success:hover{background:var(--btn-success-hover-bg);border-color:var(--btn-success-hover-border)}.btn-icon{padding:6px;width:36px;height:36px;justify-content:center}.card{background:var(--bg-card);border-radius:18px;border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);padding:20px;display:flex;flex-direction:column;gap:16px;transition:box-shadow .15s ease,transform .15s ease}.card:hover{box-shadow:0 8px 24px rgba(0,0,0,.06)}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title{font-size:14px;font-weight:600}.card-content{display:flex;flex-direction:column;gap:12px}.card-footer{margin-top:auto;display:flex;justify-content:flex-end}.card-accent{border-top-width:4px;border-top-style:solid}.card-accent-blue,.card-observation{border-top-color:var(--semantic-observation)}.card-accent-green,.card-positive{border-top-color:var(--semantic-positive)}.card-accent-red,.card-attention{border-top-color:var(--semantic-attention)}.card-accent-ai,.card-ai{border-top-color:var(--semantic-ai)}.card-accent-ai,.card-accent-blue,.card-accent-green,.card-accent-red{border-top-width:4px;border-top-style:solid}.card-kpi{padding:22px}.card-small{padding:14px}.ai-box{background:var(--ai-bg);border:1px solid var(--ai-border);border-radius:24px;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--ai-shadow)}.ai-header{display:flex;align-items:flex-start;gap:12px}.ai-header-main{min-width:0;display:flex;flex-direction:column;gap:8px;flex:1}.ai-icon{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:16px;background:var(--ai-icon-bg);color:var(--ai-accent)}.ai-icon svg{width:20px;height:20px;flex-shrink:0}.ai-badge{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;padding:6px 12px;border-radius:999px;background:var(--ai-badge-bg);color:var(--ai-badge-text);font-size:12px;font-weight:700;line-height:1;letter-spacing:.18em;text-transform:uppercase}.ai-body{display:flex;flex-direction:column;gap:12px}.ai-title{font-size:18px;line-height:1.45;font-weight:700;color:var(--ai-text);margin:0}.ai-content,.ai-text{font-size:15px;line-height:1.9;color:var(--ai-muted)}.ai-content>:first-child,.ai-text>:first-child{margin-top:0}.ai-content>:last-child,.ai-text>:last-child{margin-bottom:0}.ai-meta{font-size:13px;line-height:1.5;color:var(--ai-meta)}.ai-footer{margin-top:4px}.ai-callout{background:var(--ai-callout-bg);border:1px solid var(--ai-callout-border);border-radius:20px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.ai-callout-title{font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:var(--ai-callout-title);margin:0}.ai-callout-text{font-size:15px;line-height:1.7;color:var(--ai-callout-text);margin:0}.ai-box.compact{padding:16px;gap:12px}.ai-box.compact .ai-icon{width:40px;height:40px;border-radius:14px}.ai-box.compact .ai-title{font-size:16px}.ai-box.compact .ai-callout-text,.ai-box.compact .ai-content,.ai-box.compact .ai-text{font-size:14px}@media (max-width:640px){.ai-box{padding:16px;border-radius:20px}.ai-header{gap:10px}.ai-icon{width:40px;height:40px;border-radius:14px}.ai-title{font-size:16px}.ai-callout-text,.ai-content,.ai-text{font-size:14px;line-height:1.75}.ai-callout{border-radius:18px;padding:14px 16px}.ai-meta{font-size:12px;color:var(--text-muted);margin-top:6px;text-align:right}}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1;border:1px solid transparent}.badge-neutral{background:color-mix(in srgb,var(--fof-text) 6%,#ffffff 94%);color:var(--fof-text)}.badge-positive{background:var(--semantic-positive-soft);color:var(--semantic-positive)}.badge-attention{background:var(--semantic-attention-soft);color:var(--semantic-attention)}.badge-observation{background:var(--semantic-observation-soft);color:var(--semantic-observation)}.badge-ai{background:var(--semantic-ai-soft);color:var(--fof-brown)}.chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:13px;border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);background:#ffffff;cursor:pointer;transition:all .15s ease}.chip-active,.chip:hover{border-color:var(--fof-blue)}.chip-active{background:color-mix(in srgb,var(--fof-blue) 12%,#ffffff 88%);color:var(--fof-blue)}.metric-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}.metric-card{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:10px;min-height:104px;box-shadow:0 6px 18px rgba(31,41,55,.04)}.metric-label{font-size:13px;line-height:1.4;color:var(--fof-muted);margin:0}.metric-value{font-size:18px;line-height:1.2;font-weight:700;color:var(--fof-text);margin:0}.metric-meta{font-size:12px;line-height:1.4;color:color-mix(in srgb,var(--fof-text) 58%,#ffffff 42%);margin:0}.panel{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:18px;box-shadow:0 8px 24px rgba(31,41,55,.04)}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-header-main{min-width:0;display:flex;flex-direction:column;gap:6px}.panel-title{font-size:15px;line-height:1.3;font-weight:700;color:var(--fof-text);margin:0}.panel-description{font-size:14px;line-height:1.6;color:var(--fof-muted);margin:0}.panel-toolbar{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.panel-body{display:flex;flex-direction:column;gap:14px}.panel-note{font-size:13px;line-height:1.6;color:var(--fof-muted);margin:0}.chart-panel{gap:12px}.chart-panel,.chart-shell{display:flex;flex-direction:column}.chart-shell{background:color-mix(in srgb,var(--bg-subtle) 65%,#ffffff 35%);border:1px solid color-mix(in srgb,var(--fof-text) 8%,#ffffff 92%);border-radius:16px;min-height:360px;padding:16px;justify-content:stretch}.chart-surface{width:100%;height:100%;min-height:280px}.empty-state{min-height:280px;display:flex;align-items:center;justify-content:center;border-radius:14px;color:var(--fof-muted);font-size:14px;line-height:1.5;text-align:center;padding:24px}.table-panel{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:0 8px 24px rgba(31,41,55,.04)}.table-panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.table-panel-title{font-size:15px;line-height:1.3;font-weight:700;color:var(--fof-text);margin:0}.table-panel-meta{font-size:13px;line-height:1.5;color:var(--fof-muted);margin:0}.table-shell{border:1px solid color-mix(in srgb,var(--fof-text) 8%,#ffffff 92%);border-radius:14px;overflow:hidden;background:var(--bg-card)}.widget-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.widget-tab{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border-radius:10px;border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);background:var(--bg-card);color:var(--fof-text);font-size:13px;font-weight:500;line-height:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.widget-tab:hover{border-color:color-mix(in srgb,var(--fof-blue) 18%,#ffffff 82%)}.widget-tab.is-active{background:var(--fof-blue);border-color:var(--fof-blue);color:#ffffff}@media (min-width:768px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1200px){.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:767px){.panel,.table-panel{padding:18px;border-radius:18px}.metric-card{padding:16px;border-radius:16px;min-height:92px}.chart-shell{min-height:280px;padding:12px}.panel-header,.table-panel-header{flex-direction:column;align-items:stretch}.panel-toolbar{justify-content:flex-start}}.form{display:flex;flex-direction:column;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:16px}.form-row{display:flex;flex-wrap:wrap;gap:16px}.form-group{min-width:0;gap:8px}.form-group,.form-section{display:flex;flex-direction:column}.form-section{gap:16px}.form-section-header{display:flex;flex-direction:column;gap:6px}.form-label{font-size:13px;line-height:1.4;font-weight:600;color:var(--fof-text);margin:0}.form-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.form-required{color:var(--semantic-attention);font-weight:700}.form-description,.form-help,.form-hint{font-size:13px;line-height:1.6;color:var(--fof-muted);margin:0}.form-error{color:var(--semantic-attention)}.form-error,.form-success{font-size:13px;line-height:1.5;margin:0}.form-success{color:var(--semantic-positive)}.input,.select,.textarea{width:100%;background:var(--bg-card);color:var(--fof-text);border:1px solid color-mix(in srgb,var(--fof-text) 12%,#ffffff 88%);border-radius:14px;font-size:14px;line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,color .15s ease}.input,.select{min-height:46px;padding:0 14px}.textarea{min-height:120px;padding:12px 14px;resize:vertical}.input::-moz-placeholder,.textarea::-moz-placeholder{color:color-mix(in srgb,var(--fof-text) 45%,#ffffff 55%)}.input::placeholder,.textarea::placeholder{color:color-mix(in srgb,var(--fof-text) 45%,#ffffff 55%)}.input:hover,.select:hover,.textarea:hover{border-color:color-mix(in srgb,var(--fof-blue) 20%,#ffffff 80%)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:color-mix(in srgb,var(--fof-blue) 45%,#ffffff 55%);box-shadow:0 0 0 3px color-mix(in srgb,var(--fof-blue) 14%,transparent)}.input:disabled,.select:disabled,.textarea:disabled{cursor:not-allowed;background:color-mix(in srgb,var(--bg-subtle) 82%,#ffffff 18%);color:color-mix(in srgb,var(--fof-text) 48%,#ffffff 52%)}.input-readonly,.input[readonly],.textarea[readonly]{background:color-mix(in srgb,var(--bg-subtle) 72%,#ffffff 28%)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,var(--fof-muted) 50%),linear-gradient(135deg,var(--fof-muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.select[multiple]{min-height:140px;padding:10px 12px;background-image:none}.form-group.is-error .input,.form-group.is-error .select,.form-group.is-error .textarea,.input.is-error,.select.is-error,.textarea.is-error{border-color:color-mix(in srgb,var(--semantic-attention) 45%,#ffffff 55%);box-shadow:0 0 0 3px color-mix(in srgb,var(--semantic-attention) 12%,transparent)}.form-group.is-success .input,.form-group.is-success .select,.form-group.is-success .textarea,.input.is-success,.select.is-success,.textarea.is-success{border-color:color-mix(in srgb,var(--semantic-positive) 45%,#ffffff 55%);box-shadow:0 0 0 3px color-mix(in srgb,var(--semantic-positive) 12%,transparent)}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:10px}.checkbox-row,.radio-row{display:flex;flex-wrap:wrap;gap:12px 16px}.checkbox-field,.radio-field{display:inline-flex;align-items:flex-start;gap:10px;min-width:0;cursor:pointer;color:var(--fof-text)}.checkbox-field input,.radio-field input{margin:2px 0 0;accent-color:var(--fof-blue);flex-shrink:0}.checkbox-field input[type=checkbox],.radio-field input[type=radio]{width:16px;height:16px}.checkbox-label,.radio-label{font-size:14px;line-height:1.5;color:var(--fof-text)}.checkbox-description,.radio-description{font-size:13px;line-height:1.5;color:var(--fof-muted);margin-top:2px}.switch-field{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.switch-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:42px;height:24px;border-radius:999px;background:color-mix(in srgb,var(--fof-text) 14%,#ffffff 86%);position:relative;transition:background-color .15s ease,box-shadow .15s ease;cursor:pointer;border:none;outline:none;flex-shrink:0}.switch-input:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:999px;background:#ffffff;box-shadow:0 1px 3px rgba(31,41,55,.18);transition:transform .15s ease}.switch-input:checked{background:var(--fof-blue)}.switch-input:checked:after{transform:translateX(18px)}.switch-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--fof-blue) 14%,transparent)}.switch-label{font-size:14px;line-height:1.5;color:var(--fof-text)}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.form-actions-right{justify-content:flex-end}.form-inline{display:flex;flex-wrap:wrap;align-items:end;gap:16px}.fieldset{min-width:0;border:1px solid color-mix(in srgb,var(--fof-text) 10%,#ffffff 90%);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:14px}.fieldset-legend,.fieldset>legend{font-size:13px;line-height:1.4;font-weight:700;color:var(--fof-text);padding:0 6px}.input-prefix,.input-suffix{color:var(--fof-muted);font-size:13px;line-height:1;white-space:nowrap}.input-group{width:100%;min-height:46px;display:flex;align-items:stretch;border:1px solid color-mix(in srgb,var(--fof-text) 12%,#ffffff 88%);border-radius:14px;background:var(--bg-card);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.input-group:focus-within{border-color:color-mix(in srgb,var(--fof-blue) 45%,#ffffff 55%);box-shadow:0 0 0 3px color-mix(in srgb,var(--fof-blue) 14%,transparent)}.input-group .input{border:0;box-shadow:none;min-height:44px;border-radius:0}.input-group .input:focus{box-shadow:none}.input-group-addon{display:inline-flex;align-items:center;padding:0 14px;background:color-mix(in srgb,var(--bg-subtle) 72%,#ffffff 28%);color:var(--fof-muted);font-size:13px;line-height:1;white-space:nowrap;border-right:1px solid color-mix(in srgb,var(--fof-text) 8%,#ffffff 92%)}.input-group-addon.trailing{border-right:0;border-left:1px solid color-mix(in srgb,var(--fof-text) 8%,#ffffff 92%)}@media (min-width:768px){.form-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:767px){.form-actions,.form-inline,.form-row{flex-direction:column;align-items:stretch}.form-actions-right{justify-content:flex-start}.fieldset{padding:14px;border-radius:14px}}.text-positive{color:var(--semantic-positive)}.text-attention{color:var(--semantic-attention)}.text-observation{color:var(--semantic-observation)}.text-ai{color:var(--semantic-ai)}.bg-card{background:var(--bg-card)}.bg-subtle{background:var(--bg-subtle)}.bg-positive-soft{background:var(--semantic-positive-soft)}.bg-attention-soft{background:var(--semantic-attention-soft)}.bg-observation-soft{background:var(--semantic-observation-soft)}.bg-ai-soft{background:var(--semantic-ai-soft)}.border-positive{border-color:var(--semantic-positive)}.border-attention{border-color:var(--semantic-attention)}.border-observation{border-color:var(--semantic-observation)}.border-ai{border-color:var(--semantic-ai)}:root{--chart-1:var(--fof-bubble-blue-500);--chart-2:var(--fof-bubble-green-500);--chart-3:var(--fof-bubble-coral-500);--chart-4:var(--fof-bubble-gold-400);--chart-5:var(--fof-bubble-sky-400);--chart-6:var(--fof-bubble-lilac-200);--chart-7:var(--fof-bubble-rust-500);--chart-8:var(--fof-bubble-olive-500);--chart-9:var(--fof-bubble-peach-300);--chart-10:var(--fof-bubble-pink-300)}