:root {
  --cione-bg: #f4f7fb;
  --cione-surface: #ffffff;
  --cione-surface-soft: #f8fafc;
  --cione-text: #17233a;
  --cione-text-secondary: #52627a;
  --cione-border: #d5dfeb;
  --cione-primary: #0b6fb4;
  --cione-primary-hover: #075b95;
  --cione-danger: #b42318;
  --cione-success: #067647;
  --cione-warning: #9a6700;
  --cione-focus-ring: 0 0 0 3px rgba(11,111,180,.28);
  --cione-radius-sm: 8px;
  --cione-radius-md: 12px;
  --cione-radius-lg: 18px;
  --cione-shadow-sm: 0 1px 2px rgba(15,23,42,.08);
  --cione-shadow-md: 0 10px 30px rgba(15,23,42,.12);
  color-scheme: light;
}
:root[data-cione-theme="dark"] {
  --cione-bg: #0b1220;
  --cione-surface: #111b2e;
  --cione-surface-soft: #17233a;
  --cione-text: #f4f7fb;
  --cione-text-secondary: #b8c4d6;
  --cione-border: #34445d;
  --cione-primary: #62b0e8;
  --cione-primary-hover: #8ac6ef;
  --cione-danger: #ff8a80;
  --cione-success: #63d6a3;
  --cione-warning: #ffd166;
  --cione-focus-ring: 0 0 0 3px rgba(98,176,232,.4);
  --cione-shadow-sm: 0 1px 2px rgba(0,0,0,.35);
  --cione-shadow-md: 0 10px 30px rgba(0,0,0,.45);
  color-scheme: dark;
}
.fx-ti-app,.fx-ti-wrap,.cione-app { background: var(--cione-bg); color: var(--cione-text); }
.fx-ti-app input,.fx-ti-app select,.fx-ti-app textarea,.cione-app input,.cione-app select,.cione-app textarea {
  background: var(--cione-surface); color: var(--cione-text); border-color: var(--cione-border);
}
.fx-ti-app input::placeholder,.fx-ti-app textarea::placeholder { color: var(--cione-text-secondary); opacity: .92; }
.fx-ti-app :focus-visible,.cione-app :focus-visible { outline: 2px solid var(--cione-primary); outline-offset: 2px; box-shadow: var(--cione-focus-ring); }
.cione-modal-open { overflow: hidden; }
