.ct-page { padding-block: 48px 64px; }
.ct-page h1 { font: 600 44px/1.15 var(--serif); margin: 14px 0 18px; }
.ct-intro { margin-bottom: 40px; max-width: 780px; }
.ct-intro .lead { font-size: 19px; line-height: 1.65; max-width: 720px; }
.ct-page h2 { font-size: 23px; line-height: 1.35; margin: 0 0 20px; }
.ct-page h3 { font-size: 17px; margin: 12px 0; }
.ct-measure { max-width: 700px; }
.ct-collection { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-top: 28px; max-width: 980px; }
.ct-theme-example { border: 1px solid var(--border); border-radius: 8px; padding: 18px; background: var(--paper); }
.ct-theme-example > p, .ct-theme-example > small { color: var(--muted); }
.ct-theme-screenshot { display:block;width:100%;height:auto;aspect-ratio:3214/2078;object-fit:contain;border:1px solid var(--border);border-radius:6px;box-sizing:border-box; }
.ct-builder { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; align-items: start; }
.ct-builder > *, .ct-editor > section { min-width: 0; }
.ct-editor > section { padding-bottom: 32px; margin-bottom: 28px; border-bottom: 1px solid var(--border); }
.ct-identity { display: grid; gap: 16px; }
.ct-field { display: grid; gap: 8px; font-size: 14px; font-weight: 600; }
.ct-builder input:not([type=checkbox]):not([type=color]), .ct-builder select, .ct-builder textarea { width: 100%; min-width: 0; background: var(--paper); color: var(--text); border: 1px solid var(--border); border-radius: 6px; padding: 10px 12px; font: inherit; }
.ct-builder textarea { resize: vertical; font-weight: 400; }
.ct-builder [aria-invalid=true] { border-color: var(--accent); }
.ct-builder :is(input,select,textarea,button,summary):focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.ct-check { display: flex; gap: 10px; align-items: start; font-size: 14px; }
.ct-check input { flex-shrink: 0; width: 19px; height: 19px; margin-top: 3px; accent-color: var(--accent); }
.ct-help { color: var(--muted); font-size: 13px; line-height: 1.6; margin-block: 10px; }
.ct-picker { display: grid; grid-template-columns: 42px minmax(0,1fr) 100px; gap: 12px; align-items: center; margin-block: 18px; }
.ct-picker label { font-size: 14px; font-weight: 600; }
.ct-picker label span { display: block; font-size: 12px; font-weight: 400; color: var(--muted); margin-top: 2px; }
.ct-picker input[type=color] { width: 42px; height: 42px; padding: 3px; border: 1px solid var(--border); border-radius: 6px; background: var(--paper); cursor: pointer; }
.ct-picker input[type=text] { font: 13px ui-monospace,monospace !important; padding-inline: 8px !important; }
.ct-advanced summary { cursor: pointer; padding-block: 10px; font-weight: 600; }
.ct-preview-sticky { position: sticky; top: 100px; }
.ct-preview-column { align-self: stretch; }
.ct-preview { --bg:#0b0d14;--outer:#07080d;--secondary:#10131d;--raised:#151925;--hover:#1f2533;--text:#f1f5f9;--secondary-text:#e2e8f0;--support:#cbd5e1;--muted:#94a3b8;--quiet:#64748b;--quietest:#475569;--accent:#a78bfa;--focus:#c4b5fd;--accent-text:#ddd6fe;--warm:#d9a441;--warm-support:#f2c879;--warm-text:#fde0ab; background:var(--outer);color:var(--text);border:1px solid var(--border);border-radius:8px;overflow:hidden; }
.ct-preview-bar { display:flex;justify-content:space-between;gap:10px;padding:14px;font-size:12px;border-bottom:1px solid var(--quietest); }
.ct-preview-bar > span { color:var(--muted); }
.ct-preview-layout { display:grid;grid-template-columns:100px minmax(0,1fr);min-height:410px; }
.ct-preview-nav { padding:18px 8px;background:var(--secondary);color:var(--muted);font-size:12px;overflow-wrap:anywhere; }
.ct-preview-nav > div { padding:8px 6px;margin-bottom:5px;border-left:2px solid transparent;border-radius:4px; }
.ct-preview-nav > .active { background:var(--raised);border-color:var(--focus);color:var(--accent-text); }
.ct-preview-body { background:var(--bg);padding:22px 18px;min-width:0;overflow-wrap:anywhere; }
.ct-preview-body small { color:var(--muted);font-size:10px; }
.ct-preview-body h3 { color:var(--text);font:600 23px/1.3 var(--serif); }
.ct-preview-body p { color:var(--secondary-text);font:16px/1.8 var(--serif); }
.ct-preview-field { padding:10px;border:1px solid var(--quietest);background:var(--raised);color:var(--text);font-size:12px;border-radius:4px;margin-block:16px; }
.ct-preview-actions { display:flex;gap:8px;flex-wrap:wrap;font-size:12px; }
.ct-preview-button { padding:7px 14px;background:var(--accent);color:var(--on-accent);border-radius:4px;font-weight:600; }
.ct-preview-hover { padding:7px 12px;background:var(--hover);color:var(--support);border-radius:4px; }
.ct-preview-tag { display:inline-block;margin-top:16px;border:1px solid var(--focus);color:var(--accent-text);font-size:11px;border-radius:4px;padding:2px 7px; }
.ct-preview-focus { padding:6px;border:2px solid var(--focus);color:var(--support);margin-top:16px;font-size:11px;border-radius:4px; }
.ct-preview-journey { color:var(--warm-text);font-size:11px;margin-top:22px; }
.ct-preview-journey > div { height:5px;background:var(--raised);margin-top:8px; }
.ct-preview-journey span { display:block;width:64%;height:100%;background:var(--warm); }
.ct-contrast-warnings { padding-left:18px;font-size:13px;color:var(--text); }
.ct-submit { grid-column:1/-1;border-top:1px solid var(--border);padding-top:30px; }
.ct-submit > p { max-width:850px; }
.ct-submit-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:18px; }
.ct-builder button:disabled { cursor:not-allowed;opacity:.55;box-shadow:none; }
.ct-technical { margin-top:16px;min-width:0; }
.ct-technical summary { cursor:pointer;font-size:14px;padding-block:10px; }
.ct-technical textarea { width:100%;max-width:100%;box-sizing:border-box; }
.ct-submit #ready-hint { margin-bottom:12px; }
.ct-submit .ct-help { font-size:13px; }
.ct-technical summary:focus-visible { outline:2px solid var(--accent);outline-offset:3px; }
.ct-submit #theme-output { font:12px/1.6 ui-monospace,monospace; }
.ct-submit #submit-status { min-height:28px;overflow-wrap:anywhere; }
.ct-honey { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
#turnstile-widget { margin-block:16px;min-width:0; }
.nav-links > a.ct-nav { white-space:nowrap; }
@media(max-width:1000px) { .ct-builder { gap:28px; } .ct-page h1 { font-size:36px; } }
@media(max-width:780px) { .ct-builder,.ct-collection { grid-template-columns:1fr; } .ct-preview-sticky { position:static; } .ct-preview-column { grid-row:2; } .ct-page { padding-block:30px 44px; } .ct-page h1 { font-size:30px; } .ct-intro .lead { font-size:17px; } }
@media(max-width:400px) { .ct-picker { grid-template-columns:36px minmax(0,1fr) 86px;gap:8px; } .ct-picker input[type=color] { width:36px;height:40px; } .ct-preview-layout { grid-template-columns:75px minmax(0,1fr); } .ct-preview-body { padding:16px 12px; } }
@media(prefers-reduced-motion:reduce) { .ct-page * { scroll-behavior:auto;transition:none; } }
