/* Oone Context Compiler — WordPress theme bridge v0.2
   Override via WordPress Additional CSS:
   .oone-cc { --occ-brand-accent: #7458db; --occ-brand-bg: #ffffff; --occ-brand-text: #1b2438; }
   Theme tokens are read from WP global styles / Elementor / Astra when present.
*/
.oone-cc {
  --occ-brand-accent: var(--oone-accent, var(--oone-primary, var(--wp--preset--color--primary, var(--e-global-color-primary, var(--ast-global-color-0, #7665d8)))));
  --occ-brand-bg: var(--wp--preset--color--base, var(--wp--preset--color--background, #ffffff));
  --occ-brand-text: var(--wp--preset--color--contrast, #253047);
  --occ-accent: var(--occ-brand-accent);
  --occ-accent-dark: color-mix(in srgb, var(--occ-accent) 80%, #151a31);
  --occ-bg: var(--occ-brand-bg);
  --occ-ink: var(--occ-brand-text);
  --occ-muted: color-mix(in srgb, var(--occ-ink) 66%, var(--occ-bg));
  --occ-line: color-mix(in srgb, var(--occ-ink) 14%, transparent);
  --occ-surface: var(--occ-bg);
  --occ-side: color-mix(in srgb, var(--occ-bg) 95%, var(--occ-accent) 5%);
  --occ-soft: color-mix(in srgb, var(--occ-bg) 93%, var(--occ-accent) 7%);
  --occ-control: var(--occ-bg);
  --occ-field-line: color-mix(in srgb, var(--occ-ink) 20%, transparent);
  --occ-heading: var(--occ-ink);
  --occ-hint: color-mix(in srgb, var(--occ-accent) 14%, var(--occ-bg));
  --occ-ui-shadow: 0 14px 40px rgba(26, 27, 57, .045);
  font-family: inherit;
  color: var(--occ-ink);
}
/* A dark Oone/WordPress template can be detected automatically, or selected by shortcode. */
.oone-cc[data-occ-theme="dark"] {
  --occ-bg: #171c30;
  --occ-ink: #eff1fb;
  --occ-muted: #abb7cc;
  --occ-line: rgba(223,229,255,.17);
  --occ-surface: #20263b;
  --occ-side: #151a2c;
  --occ-soft: #252b42;
  --occ-control: #171c30;
  --occ-field-line: rgba(218,222,250,.25);
  --occ-heading: #f8f6ff;
  --occ-hint: #2c2948;
  --occ-ui-shadow: 0 17px 45px rgba(0,0,0,.17);
  --occ-accent-dark: color-mix(in srgb, var(--occ-accent) 79%, white);
  color-scheme: dark;
}
.oone-cc[data-occ-theme="light"] { color-scheme: light; }
/* Theme geometry, typography and fields */
.oone-cc .occ-app {
  background: var(--occ-bg);
  border-color: var(--occ-line);
  box-shadow: var(--occ-ui-shadow);
  color: var(--occ-ink);
}
.oone-cc h1,.oone-cc h2,.oone-cc h3 { color:var(--occ-heading); font-family:inherit; }
.oone-cc .occ-header {
  background: linear-gradient(120deg, var(--occ-bg),var(--occ-soft));
  border-color: var(--occ-line);
}
.oone-cc .occ-eyebrow, .oone-cc .occ-kicker {color:var(--occ-accent);}
.oone-cc .occ-eyebrow-sep {color:var(--occ-muted);}
.oone-cc .occ-chip {border-color:var(--occ-line);}
.oone-cc .occ-headline p,.oone-cc .occ-lead,.oone-cc .occ-small {color:var(--occ-muted);}
.oone-cc .occ-headline p strong {color:var(--occ-ink);}
.oone-cc .occ-privacy {
  color:var(--occ-ink); background:var(--occ-soft);
  border-color:var(--occ-line);white-space:normal;
}
.oone-cc .occ-privacy small {color:var(--occ-muted);}
.oone-cc .occ-sidebar {background:var(--occ-side);border-color:var(--occ-line);}
.oone-cc .occ-sidebar-title,.oone-cc .occ-step small,
.oone-cc .occ-step>span:first-child {color:var(--occ-muted);}
.oone-cc .occ-step {color:var(--occ-muted);}
.oone-cc .occ-step:hover {background:var(--occ-soft);color:var(--occ-ink);}
.oone-cc .occ-step.is-active {
  background:var(--occ-surface);color:var(--occ-ink);
  border-color:color-mix(in srgb,var(--occ-accent) 38%,var(--occ-line));
  box-shadow:0 2px 10px rgba(0,0,0,.035);
}
.oone-cc .occ-step.is-active>span:first-child {color:var(--occ-accent);}
.oone-cc .occ-sidebar-note {background:var(--occ-surface);border-color:var(--occ-line);color:var(--occ-ink);}
.oone-cc .occ-sidebar-note p {color:var(--occ-muted);}
.oone-cc .occ-text-btn {color:var(--occ-accent-dark);}
.oone-cc .occ-panel {background:var(--occ-surface);border-color:var(--occ-line);}
.oone-cc .occ-panel h3 {color:var(--occ-heading);}
.oone-cc label,.oone-cc .occ-filebody label {color:var(--occ-ink);}
.oone-cc .occ-optional {color:var(--occ-muted);}
.oone-cc input:not([type=radio]):not([type=file]),
.oone-cc select,.oone-cc textarea {
  border-color:var(--occ-field-line);background:var(--occ-control);
  color:var(--occ-ink);
}
.oone-cc input::placeholder,.oone-cc textarea::placeholder {color:var(--occ-muted);opacity:.75;}
.oone-cc input:focus,.oone-cc textarea:focus,.oone-cc select:focus {
  border-color:var(--occ-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--occ-accent) 17%, transparent);
}
.oone-cc .occ-foot {border-color:var(--occ-line);}
.oone-cc .occ-foot button,.oone-cc .occ-actions-grid button,.oone-cc .occ-add-btn {
  background:var(--occ-surface);border-color:var(--occ-line);color:var(--occ-ink);
}
.oone-cc .occ-foot .occ-primary,
.oone-cc .occ-primary,.oone-cc .occ-actions-grid button.occ-primary {
  background:var(--occ-accent);border-color:var(--occ-accent);color:white;
}
.oone-cc .occ-primary:hover,.oone-cc .occ-foot .occ-primary:hover {
  background:var(--occ-accent-dark);border-color:var(--occ-accent-dark);
}
.oone-cc .occ-ghost {background:var(--occ-surface)!important;color:var(--occ-ink)!important;}
.oone-cc .occ-bar {background:var(--occ-line);}
.oone-cc .occ-hint {background:var(--occ-hint);color:var(--occ-ink);border-color:var(--occ-line);}
.oone-cc .occ-hint strong {color:var(--occ-accent-dark);}
.oone-cc .occ-add-btn {color:var(--occ-accent-dark);}
.oone-cc .occ-product-top h3, .oone-cc .occ-margin strong {color:var(--occ-accent-dark);}
.oone-cc .occ-remove {color:var(--occ-muted);}
.oone-cc .occ-margin {background:var(--occ-soft);color:var(--occ-ink);border-color:var(--occ-line);}
.oone-cc .occ-drop {background:var(--occ-soft);border-color:var(--occ-field-line);}
.oone-cc .occ-drop.drag {background:var(--occ-hint);border-color:var(--occ-accent);}
.oone-cc .occ-drop strong {color:var(--occ-ink);}
.oone-cc .occ-drop small {color:var(--occ-muted);}
.oone-cc .occ-drop-icon {background:var(--occ-hint);color:var(--occ-accent-dark);}
.oone-cc .occ-filecard {background:var(--occ-surface);border-color:var(--occ-line);}
.oone-cc .occ-fileicon,.oone-cc .occ-filethumb {
  background:var(--occ-soft);border-color:var(--occ-line);color:var(--occ-muted);
}
.oone-cc .occ-filemeta small,.oone-cc .occ-filebody label,
.oone-cc .occ-emptyfiles,.oone-cc .occ-audit-line,
.oone-cc .occ-platforms label small {color:var(--occ-muted);}
.oone-cc .occ-emptyfiles,.oone-cc .occ-platforms>label {border-color:var(--occ-line);}
.oone-cc .occ-platforms>label {background:var(--occ-surface);color:var(--occ-ink);}
.oone-cc .occ-platforms label span {color:var(--occ-ink);}
.oone-cc .occ-md-preview {background:#171e33;color:#e5eafb;}
.oone-cc .occ-toast {background:var(--occ-ink);color:var(--occ-bg);}
.oone-cc .occ-step:focus-visible,.oone-cc button:focus-visible,
.oone-cc input:focus-visible,.oone-cc select:focus-visible,.oone-cc textarea:focus-visible {
  outline:2px solid var(--occ-accent);outline-offset:2px;
}
@media(max-width:820px) {
  .oone-cc .occ-sidebar {border-color:var(--occ-line);}
}
@media(prefers-reduced-motion:reduce) {
 .oone-cc .occ-step,.oone-cc .occ-toast,.oone-cc .occ-bar>div {transition:none;}
}
/* Dark interactive states receive a deliberate high-contrast treatment. */
.oone-cc[data-occ-theme="dark"] .occ-step.is-active {
  background:var(--occ-surface)!important;
  color:var(--occ-ink)!important;
  border-color:color-mix(in srgb,var(--occ-accent) 45%,var(--occ-line));
}
.oone-cc[data-occ-theme="dark"] .occ-step.is-active small {color:var(--occ-muted);}
