.ch-demo{border:1px solid rgba(var(--demo-accent-rgb),.1);border-radius:var(--demo-radius);padding:28px var(--demo-pad-lg);margin:20px 0 32px;position:relative;overflow:hidden}.ch-demo::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(var(--demo-accent-rgb),.03) 0%,transparent 60%);pointer-events:none;opacity:.35}.ch-demo-label{font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);color:var(--demo-accent);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:18px;opacity:.7;font-weight:600}.ch-boxes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:var(--demo-pad)}.ch-box{background:var(--mid-bg,#181c25);border:2px solid var(--border-color,#262a32);border-radius:var(--demo-radius-lg);padding:20px;font-family:var(--demo-font-mono);font-size:var(--demo-font-size-md);color:var(--text-color,#f1eeee);transition:border-color 0.3s ease,background 0.3s ease;min-height:120px;display:flex;flex-direction:column;gap:12px}.ch-box:has(img){border-color:#2d8a4e;background:linear-gradient(135deg,rgb(45 138 78 / .08),rgb(45 138 78 / .02))}.ch-box p{margin:0;font-size:var(--demo-font-size-sm);line-height:1.5}.ch-box img{width:100%;max-width:100%;height:auto;border-radius:var(--demo-radius);display:block;object-fit:cover}.ch-toggle-btn{display:inline-flex;align-items:center;gap:6px;background:var(--demo-surface);border:1px solid var(--demo-border);border-radius:var(--demo-radius);padding:6px 14px;font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);color:var(--secondary-text);cursor:pointer;transition:color 0.2s,border-color 0.2s,background 0.2s;line-height:1.4;letter-spacing:.3px;align-self:flex-start}.ch-toggle-btn:hover{background:var(--demo-fill-light);border-color:var(--demo-fill-border-hover);color:var(--demo-accent)}.ch-css-rule{font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);color:var(--secondary-text);background:var(--demo-surface-alt);border:1px solid var(--demo-border);border-radius:var(--demo-radius);padding:10px var(--demo-pad);margin-top:var(--demo-pad);line-height:1.6}.ch-css-rule .ch-highlight{color:#5fd88a;font-weight:600}.ch-css-rule .ch-prop{color:var(--demo-accent)}.ch-form-wrap{max-width:400px}.ch-form-group{border:2px solid var(--border-color,#262a32);border-radius:var(--demo-radius-lg);padding:16px 20px;transition:border-color 0.3s ease,background 0.3s ease;margin-bottom:12px;min-height:94px}.ch-form-group:has(input:invalid:not(:placeholder-shown)){border-color:#e05555;background:rgb(224 85 85 / .05)}.ch-form-group:has(input:valid:not(:placeholder-shown)){border-color:#2d8a4e;background:rgb(45 138 78 / .05)}.ch-form-group label{display:block;font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);color:var(--secondary-text);margin-bottom:8px;letter-spacing:.5px}.ch-form-group input{width:100%;background:var(--mid-bg,#181c25);border:1px solid var(--border-color,#262a32);border-radius:var(--demo-radius);padding:10px 14px;font-family:var(--demo-font-mono);font-size:var(--demo-font-size-md);color:var(--text-color,#f1eeee);outline:none;transition:border-color 0.2s;box-sizing:border-box}.ch-form-group input:focus{border-color:rgba(var(--demo-accent-rgb),.4)}.ch-form-status{font-family:var(--demo-font-mono);font-size:var(--demo-font-size-xs);margin-top:6px;min-height:16px;transition:color 0.3s}.ch-form-group:has(input:invalid:not(:placeholder-shown)) .ch-form-status{color:#e05555}.ch-form-group:has(input:valid:not(:placeholder-shown)) .ch-form-status{color:#5fd88a}.ch-card{border:1px solid var(--border-color,#262a32);border-radius:var(--demo-radius-lg);padding:28px;transition:background 0.4s ease,color 0.4s ease,border-color 0.4s ease;background:#f8f7f4;color:#1a1a2e;max-width:420px}.ch-card:has(#ch-darkmode:checked){background:#0e1219;color:#f1eeee;border-color:#262a32}.ch-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ch-card-title{font-family:var(--demo-font-mono);font-size:var(--demo-font-size-lg);font-weight:700;margin:0}.ch-switch{position:relative;width:48px;height:26px;flex-shrink:0}.ch-switch input{opacity:0;width:0;height:0;position:absolute}.ch-switch-track{position:absolute;inset:0;background:#d0cdc6;border-radius:13px;cursor:pointer;transition:background 0.3s}.ch-switch-track::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform 0.3s;box-shadow:0 1px 3px rgb(0 0 0 / .2)}.ch-card:has(#ch-darkmode:checked) .ch-switch-track{background:var(--heading-color,#FFB42F)}.ch-card:has(#ch-darkmode:checked) .ch-switch-track::after{transform:translateX(22px)}.ch-card-body{font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);line-height:1.6;margin-bottom:20px;opacity:.8}.ch-card-btn{display:inline-block;padding:8px 20px;border-radius:var(--demo-radius);font-family:var(--demo-font-mono);font-size:var(--demo-font-size-sm);font-weight:600;letter-spacing:.5px;border:none;cursor:default;transition:background 0.4s,color 0.4s;background:#1a1a2e;color:#f8f7f4}.ch-card:has(#ch-darkmode:checked) .ch-card-btn{background:var(--heading-color,#FFB42F);color:#0e1219}.ch-code-output{background:rgba(var(--demo-accent-rgb),.04);border:1px solid var(--demo-border);border-radius:var(--demo-radius-lg);padding:14px var(--demo-pad);font-family:var(--demo-font-mono);font-size:var(--demo-font-size-base);color:var(--demo-accent);line-height:1.7;white-space:pre-wrap;overflow-wrap:break-word;position:relative;margin-top:var(--demo-pad)}@media (max-width:520px){.ch-demo{padding:20px var(--demo-pad)}.ch-boxes{grid-template-columns:1fr}.ch-card{padding:20px}}