.sf-inline{display:inline-block;position:relative;vertical-align:top}.sf-btn{border:1.5px solid var(--border, #e2e8f0);background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);border-radius:10px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.sf-btn:hover{border-color:var(--accent, #667eea);box-shadow:0 4px 14px #667eea2e}.sf-btn-primary{background:var(--button-primary-bg, linear-gradient(135deg, #667eea 0%, #764ba2 100%));color:#fff;border:none;box-shadow:0 4px 16px #667eea59}.sf-btn-primary:hover{filter:brightness(1.06)}.sf-overlay{position:fixed;inset:0;background:#0f172a99;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:200}.sf-overlay-right{justify-content:flex-end;background:#0f172a59}.sf-dialog{background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);border:1px solid var(--border, #e2e8f0);border-radius:16px;width:min(480px,92vw);padding:20px 22px;box-shadow:0 24px 64px #0000004d}.sf-dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sf-dialog-head strong{font-size:16px}.sf-close{background:none;border:none;font-size:20px;color:var(--fg-muted, #64748b);cursor:pointer;line-height:1}.sf-close:hover{color:var(--fg, #1a1a2e)}.sf-sheet{background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);border-left:1px solid var(--border, #e2e8f0);width:min(360px,90vw);height:100vh;padding:20px 22px}.sf-muted{color:var(--fg-muted, #64748b);font-size:14px;margin:8px 0}.sf-content{font-size:14px;margin-top:12px;color:var(--fg, #1a1a2e)}.sf-tabs{width:100%}.sf-tabs-list{display:inline-flex;gap:4px;padding:4px;background:var(--muted-bg, #f8fafc);border-radius:10px;border:1px solid var(--border, #e2e8f0)}.sf-tab{border:none;background:transparent;padding:6px 14px;font-size:13px;font-weight:600;color:var(--fg-muted, #64748b);border-radius:8px;cursor:pointer}.sf-tab.is-active{background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);box-shadow:0 2px 6px #00000014}.sf-tabs-body{margin:12px 0 0}.sf-row{display:inline-flex;align-items:center;gap:10px;cursor:pointer;margin:4px 0}.sf-label{font-size:14px;font-weight:500;color:var(--fg, #1a1a2e)}.sf-label-block{display:flex;flex-direction:column;gap:4px}.sf-hint{font-size:12px;margin:0}.sf-switch{width:44px;height:24px;border-radius:999px;border:none;background:var(--border, #cbd5e1);position:relative;cursor:pointer;transition:background .2s ease;flex-shrink:0}.sf-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.sf-switch.is-on{background:var(--accent, #667eea)}.sf-switch.is-on:after{transform:translate(20px)}.sf-skeleton{background:var(--muted-bg, #e2e8f0);animation:sf-pulse 1.6s ease-in-out infinite}@keyframes sf-pulse{0%,to{opacity:1}50%{opacity:.45}}.sf-tooltip-wrap{position:relative;display:inline-block}.sf-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.96);background:var(--fg, #0f172a);color:#fff;font-size:12px;padding:6px 10px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .15s ease;z-index:50}.sf-tooltip-wrap:hover .sf-tooltip{opacity:1;transform:translate(-50%) scale(1)}.sf-menu,.sf-popover{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);border:1px solid var(--border, #e2e8f0);border-radius:12px;box-shadow:0 12px 32px #00000029;padding:6px;z-index:60}.sf-menu-fixed{position:fixed;top:auto;left:auto}.sf-menu-item{display:block;width:100%;text-align:left;border:none;background:transparent;font-size:14px;padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--fg, #1a1a2e)}.sf-menu-item:hover{background:var(--muted-bg, #f1f5f9)}.sf-popover{min-width:240px;padding:16px}.sf-popover-title{font-size:14px;font-weight:700;margin:0 0 6px}.sf-accordion{width:100%;display:flex;flex-direction:column;gap:8px}.sf-accordion-item{border:1px solid var(--border, #e2e8f0);border-radius:12px;background:var(--card-bg, #fff);overflow:hidden}.sf-accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;border:none;background:transparent;padding:14px 18px;font-size:14px;font-weight:600;cursor:pointer;color:var(--fg, #1a1a2e)}.sf-caret{transition:transform .2s ease;display:inline-block}.sf-caret.is-open{transform:rotate(180deg)}.sf-accordion-body{margin:0;padding:0 18px 14px;font-size:14px}.sf-avatar,.sf-avatar-img{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--accent, #667eea) 0%,var(--accent-2, #764ba2) 100%);color:#fff;font-weight:700;overflow:hidden;box-shadow:0 2px 8px #667eea4d;vertical-align:middle;object-fit:cover}.sf-progress{width:100%}.sf-progress-head{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--fg, #1a1a2e)}.sf-progress-track{height:10px;border-radius:999px;background:var(--muted-bg, #e2e8f0);overflow:hidden;border:1px solid var(--card-border, rgba(0,0,0,.06))}.sf-progress-fill{height:100%;border-radius:999px;transition:width .4s ease}.sf-sep{height:1px;background:var(--border, #e2e8f0);margin:8px 0}.sf-sep-v{width:1px;height:24px;margin:0 8px}.sf-sep-label{display:flex;align-items:center;gap:12px;width:100%}.sf-sep-line{flex:1;height:1px;background:var(--border, #e2e8f0)}.sf-field{display:flex;flex-direction:column;gap:6px;font-size:14px}.sf-field select,.sf-radios input[type=checkbox],.sf-row input[type=checkbox]{accent-color:var(--accent, #667eea)}.sf-field select{padding:10px 14px;border:1.5px solid var(--border, #e2e8f0);border-radius:10px;background:var(--input-bg, #fff);color:var(--fg, #1a1a2e);font-size:14px;cursor:pointer}.sf-radios,.sf-otp,.sf-slider{display:flex;flex-direction:column;gap:8px}.sf-toggle{border:none;background:transparent;padding:8px 14px;font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;color:var(--fg-muted, #64748b);transition:all .2s ease}.sf-toggle.is-on{background:var(--accent-soft, rgba(102,126,234,.12));color:var(--fg, #1a1a2e)}.sf-toggle-outline{border:1.5px solid var(--border, #e2e8f0);background:transparent}.sf-toggle-outline.is-on{border-color:var(--accent, #667eea)}.sf-slider{width:100%}.sf-slider input[type=range]{width:100%;accent-color:var(--accent, #667eea)}.sf-pagination{display:flex;align-items:center;gap:6px}.sf-page{min-width:32px;height:32px;border:1px solid var(--border, #e2e8f0);background:var(--card-bg, #fff);border-radius:8px;font-size:13px;cursor:pointer;color:var(--fg, #1a1a2e)}.sf-page:disabled{opacity:.4;cursor:not-allowed}.sf-page.is-current{background:var(--button-primary-bg, linear-gradient(135deg, #667eea, #764ba2));color:#fff;border-color:transparent;font-weight:700}.sf-breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}.sf-crumb{color:var(--fg-muted, #64748b);cursor:pointer}.sf-crumb:hover{color:var(--accent, #667eea)}.sf-crumb-current{color:var(--fg, #1a1a2e);font-weight:600}.sf-sep-text{font-size:11px}.sf-ctx-area{display:flex;align-items:center;justify-content:center;min-height:64px;border:2px dashed var(--border, #e2e8f0);border-radius:12px;color:var(--fg-muted, #64748b);font-size:13px;user-select:none}.sf-otp-row{display:flex;gap:8px}.sf-otp-row input{width:38px;height:40px;text-align:center;font-size:15px;font-weight:700;border:1.5px solid var(--border, #e2e8f0);border-radius:10px;background:var(--input-bg, #fff);color:var(--fg, #1a1a2e)}.sf-otp-row input:focus{outline:none;border-color:var(--accent, #667eea);box-shadow:0 0 0 3px var(--accent-soft, rgba(102,126,234,.15))}.sf-toast{position:fixed;bottom:18px;right:18px;z-index:300;min-width:220px;background:var(--card-bg, #fff);color:var(--fg, #1a1a2e);border:1px solid var(--border, #e2e8f0);border-left-width:4px;border-radius:12px;padding:12px 16px;box-shadow:0 10px 30px #0000002e}.sf-toast p{margin:0;font-size:14px;font-weight:500}.sf-toast-success{border-left-color:#16a34a}.sf-toast-warning{border-left-color:#d97706}.sf-toast-danger{border-left-color:#dc2626}.sf-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;border:1px solid transparent;width:fit-content}.sf-badge-success{background:#dcfce7;color:#166534}.sf-badge-warning{background:#fef3c7;color:#92400e}.sf-badge-danger{background:#fee2e2;color:#991b1b}.sf-badge-secondary{background:var(--muted-bg, #f1f5f9);color:var(--fg-muted, #64748b)}.sf-badge-outline{background:transparent;border-color:var(--border, #e2e8f0);color:var(--fg, #1a1a2e)}.sf-badge-outline-primary{border-color:var(--accent, #667eea);color:var(--accent, #667eea)}.sf-badge-outline-success{border-color:#86efac;color:#16a34a}.sf-badge-outline-warning{border-color:#fcd34d;color:#d97706}.sf-badge-outline-danger{border-color:#fca5a5;color:#dc2626}.scene3d-stage{position:absolute;inset:0;perspective:900px;perspective-origin:50% 40%}.scene3d-stage>*{will-change:transform}.editor-node{display:contents}.editor-node>*{transition:outline-color .15s ease;border-radius:6px}.editor-node.selected>*{outline:2px dashed #667eea;outline-offset:2px}.editor-node.hovered>*{outline:1px solid rgba(102,126,234,.45);outline-offset:1px}.editor-toolbar{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:100000;display:flex;align-items:center;gap:10px;padding:8px 14px;background:#0f172aeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#e2e8f0;font-size:12px;box-shadow:0 8px 24px #00000059;white-space:nowrap;max-width:calc(100vw - 24px);overflow-x:auto}.editor-toolbar button{border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer}.editor-toolbar .save-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea66}.editor-toolbar .exit-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#e2e8f0}.editor-toolbar .ref-chip{margin-left:10px;padding:3px 10px;background:#667eea26;border:1px solid rgba(102,126,234,.4);border-radius:999px;color:#a5b4fc;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.editor-toolbar .ref-chip:hover{background:#667eea47}.editor-toolbar .ref-chip small{font-family:inherit;font-size:10px;opacity:.7}.editor-toolbar .copy-toast{margin-left:10px;padding:3px 10px;background:#10b98126;border:1px solid rgba(16,185,129,.4);border-radius:999px;color:#6ee7b7;font-size:12px}.editor-inspector{position:fixed;top:16px;right:16px;bottom:64px;width:268px;z-index:100000;background:#0f172af2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);border-radius:14px;color:#e2e8f0;padding:14px;overflow-y:auto;font-size:12px;box-shadow:0 12px 40px #00000073}.editor-inspector.collapsed{display:none}.editor-inspector-toggle{position:fixed;top:16px;right:16px;z-index:100000;background:#0f172aeb;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#e2e8f0;font-size:12px;padding:6px 12px;cursor:pointer;box-shadow:0 6px 18px #0000004d}.editor-inspector-toggle:hover{background:#667eea47}.editor-inspector-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px}.editor-inspector-header h3{margin:0;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:8px}.editor-collapse-btn{background:transparent;border:none;color:#94a3b8;font-size:13px;cursor:pointer;padding:2px 6px;border-radius:6px}.editor-collapse-btn:hover{background:#ffffff1a;color:#e2e8f0}.editor-children{margin-top:12px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.editor-children>label{color:#94a3b8;font-size:11px;display:block;margin-bottom:6px}.editor-children-list{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto}.editor-child-item{display:flex;align-items:center;gap:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:4px 8px;font-size:11px;cursor:pointer;color:#e2e8f0;text-align:left}.editor-child-item:hover{background:#667eea40}.editor-child-item .child-ref{color:#a5b4fc;font-family:SF Mono,Monaco,monospace;flex-shrink:0}.editor-inspector h3{margin:0 0 12px;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:8px}.editor-type{color:#a5b4fc;font-family:SF Mono,Monaco,monospace;font-size:11px}.editor-field{margin-bottom:10px;display:flex;flex-direction:column;gap:4px}.editor-field label{color:#94a3b8;font-size:11px}.editor-field input,.editor-field select,.editor-field textarea{background:#ffffff12;border:1px solid rgba(255,255,255,.14);color:#e2e8f0;border-radius:8px;padding:6px 8px;font-size:12px;width:100%;box-sizing:border-box}.editor-field textarea{min-height:56px;resize:vertical;font-family:SF Mono,Monaco,monospace}.editor-field input:focus,.editor-field select:focus,.editor-field textarea:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea40}.editor-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.editor-actions button,.editor-palette button{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#e2e8f0;border-radius:8px;padding:5px 10px;font-size:11px;cursor:pointer;transition:background .15s ease}.editor-actions button:hover,.editor-palette button:hover{background:#667eea4d}.editor-actions button:disabled{opacity:.35;cursor:not-allowed}.editor-actions button.danger{border-color:#f43f5e66;color:#fda4af}.editor-actions button.danger:hover{background:#f43f5e40}.editor-palette{margin-top:12px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.editor-palette>label{color:#94a3b8;font-size:11px;display:block;margin-bottom:6px}.palette-grid{display:flex;flex-wrap:wrap;gap:5px}.editor-empty{color:#94a3b8;font-size:12px;line-height:1.6}:root{--bg: #f5f7fa;--bg-glow: #e8ecf1;--fg: #1a1a2e;--fg-muted: #64748b;--heading-fg: #1e293b;--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .06);--card-shadow: 0 4px 24px rgba(0, 0, 0, .06);--card-shadow-hover: 0 10px 36px rgba(102, 126, 234, .14);--muted-bg: #f8fafc;--border: #e2e8f0;--input-bg: #ffffff;--accent: #667eea;--accent-2: #764ba2;--accent-soft: rgba(102, 126, 234, .12);--accent-fg: #ffffff;--navbar-bg: rgba(255, 255, 255, .85);--navbar-border: rgba(255, 255, 255, .6);--button-primary-bg: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--button-primary-fg: #ffffff;--button-secondary-bg: #f1f5f9;--button-secondary-fg: #374151;--button-secondary-border: #e2e8f0;--link-color: #667eea;--link-hover: #764ba2;--code-bg: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--code-fg: #e2e8f0;--scrollbar: rgba(102, 126, 234, .2);--background: oklch(1 0 0);--foreground: oklch(.145 0 0);--card: oklch(1 0 0);--card-foreground: oklch(.145 0 0);--popover: oklch(1 0 0);--popover-foreground: oklch(.145 0 0);--primary: oklch(.205 0 0);--primary-foreground: oklch(.985 0 0);--secondary: oklch(.97 0 0);--secondary-foreground: oklch(.205 0 0);--muted: oklch(.97 0 0);--muted-foreground: oklch(.556 0 0);--accent-foreground: oklch(.205 0 0);--destructive: oklch(.577 .245 27.325);--destructive-foreground: oklch(.577 .245 27.325);--border: oklch(.922 0 0);--input: oklch(.922 0 0);--ring: oklch(.708 0 0);--radius: .625rem}html{scroll-behavior:smooth}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#667eea66}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--fg);background:linear-gradient(135deg,var(--bg) 0%,var(--bg-glow) 100%);line-height:1.5;-webkit-font-smoothing:antialiased}button,input,textarea,select{font-family:inherit}:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.page{max-width:1080px;margin:0 auto;padding:32px 28px 56px;display:flex;flex-direction:column;gap:28px}.page>h1,.page>h2,.page>h3,.page>p{margin:0}.page>h1{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.15;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page>h2{font-size:21px;font-weight:700;color:var(--heading-fg);letter-spacing:-.01em}.page>p{color:var(--fg-muted);font-size:14px}.page-dark,.page-midnight,.page-aurora{max-width:none;min-height:100vh;padding:28px 40px 64px;color:var(--fg);--fg: #e2e8f0;--fg-muted: #94a3b8;--heading-fg: #f1f5f9;--card-bg: rgba(255, 255, 255, .05);--card-border: rgba(255, 255, 255, .09);--card-shadow: 0 8px 32px rgba(0, 0, 0, .3);--card-shadow-hover: 0 12px 32px rgba(102, 126, 234, .14);--muted-bg: rgba(255, 255, 255, .04);--border: rgba(255, 255, 255, .12);--input-bg: rgba(255, 255, 255, .06);--accent-soft: rgba(102, 126, 234, .22);--navbar-bg: rgba(15, 23, 42, .65);--navbar-border: rgba(255, 255, 255, .1);--button-secondary-bg: rgba(255, 255, 255, .08);--button-secondary-fg: #e2e8f0;--button-secondary-border: rgba(255, 255, 255, .14);--code-bg: rgba(0, 0, 0, .35);--code-fg: #e2e8f0;--background: oklch(.145 0 0);--foreground: oklch(.985 0 0);--card: oklch(.205 0 0);--card-foreground: oklch(.985 0 0);--popover: oklch(.205 0 0);--popover-foreground: oklch(.985 0 0);--primary: oklch(.922 0 0);--primary-foreground: oklch(.205 0 0);--secondary: oklch(.269 0 0);--secondary-foreground: oklch(.985 0 0);--muted: oklch(.269 0 0);--muted-foreground: oklch(.708 0 0);--accent-foreground: oklch(.985 0 0);--destructive: oklch(.704 .191 22.216);--destructive-foreground: oklch(.985 0 0);--border: oklch(1 0 0 / 10%);--input: oklch(1 0 0 / 15%);--ring: oklch(.556 0 0)}.page-dark{background:linear-gradient(180deg,#0b1220,#0f172a)}.page-midnight{background:radial-gradient(1200px 600px at 85% -10%,rgba(102,126,234,.1),transparent 60%),radial-gradient(900px 500px at 5% 10%,rgba(118,75,162,.08),transparent 55%),linear-gradient(180deg,#070b14,#0b1120)}.page-aurora{background:radial-gradient(1000px 520px at 20% 0%,rgba(34,211,238,.09),transparent 55%),radial-gradient(1000px 520px at 80% 100%,rgba(244,114,182,.07),transparent 55%),linear-gradient(160deg,#0f172a,#1e1b4b,#0f172a)}.page-dark>*,.page-midnight>*,.page-aurora>*{max-width:1080px;width:100%;margin-left:auto;margin-right:auto}.hero{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:24px 0}.hero-title{line-height:1.12;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;flex-wrap:wrap}.navbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--navbar-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;border:1px solid var(--navbar-border);box-shadow:0 4px 20px #0000000f;position:sticky;top:12px;z-index:50}.navbar-brand{font-weight:800;font-size:19px;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap}.navbar-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.navbar-links .link{font-size:14px}.paragraph{color:var(--fg-muted);line-height:1.75;font-size:15px}.button{border:none;border-radius:12px;padding:11px 22px;font-size:14px;font-weight:600;cursor:pointer;width:fit-content;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000001a}.button:hover{transform:translateY(-1px);filter:brightness(1.05)}.button:active{transform:translateY(0);filter:brightness(.97)}.button-primary{background:var(--button-primary-bg);color:var(--button-primary-fg);box-shadow:0 3px 10px #667eea38}.button-primary:hover{box-shadow:0 5px 16px #667eea4d}.button-secondary{background:var(--button-secondary-bg);color:var(--button-secondary-fg);border:1.5px solid var(--button-secondary-border);box-shadow:none}.button-danger{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff;box-shadow:0 4px 16px #e11d484d}.field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--fg)}.field>span{font-size:13px;color:var(--fg-muted)}.field input,.field textarea{padding:12px 16px;border:1.5px solid var(--border);border-radius:12px;font-size:14px;font-weight:400;background:var(--input-bg);transition:all .2s ease;color:var(--fg)}.field input::placeholder,.field textarea::placeholder{color:var(--fg-muted);opacity:.7}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field textarea{resize:vertical}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:24px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;gap:14px;transition:box-shadow .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1),border-color .25s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.card:hover{box-shadow:var(--card-shadow-hover);border-color:var(--accent-soft);transform:translateY(-2px)}.card h3{margin:0;color:var(--heading-fg);font-size:16px;font-weight:700;letter-spacing:-.01em}.card.highlighted{border:2px solid transparent;background-image:linear-gradient(var(--card-bg),var(--card-bg)),linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 8px 24px #667eea29;transform:scale(1.02);position:relative}.card.highlighted h3{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.list{line-height:1.9;padding-left:24px;color:var(--fg-muted)}.card>.list{padding-left:18px;margin:0;line-height:1.8}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:5px 13px;font-size:12px;font-weight:600;letter-spacing:.02em;box-shadow:0 1px 4px #00000014;width:fit-content}.card>.badge{align-self:flex-start}.divider{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.form{display:flex;flex-direction:column;gap:18px;max-width:440px}.link{color:var(--link-color);text-decoration:none;font-weight:600;transition:color .2s ease;position:relative;background:none;border:none;cursor:pointer}.link:hover{color:var(--link-hover)}.stat{display:flex;flex-direction:column;gap:6px;padding:20px 24px;background:var(--muted-bg);border:1px solid var(--card-border);border-radius:14px;transition:all .2s ease}.stat:hover{border-color:var(--accent-soft);box-shadow:0 4px 16px #667eea1a}.stat-value{font-size:32px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:13px;color:var(--fg-muted);font-weight:500}.progress{display:flex;flex-direction:column;gap:8px}.progress-head{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--fg)}.progress-track{height:10px;border-radius:999px;background:var(--muted-bg);border:1px solid var(--card-border);overflow:hidden}.progress-fill{height:100%;border-radius:999px;transition:width .4s cubic-bezier(.4,0,.2,1)}.alert{border:none;border-radius:12px;padding:14px 18px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:10px;box-shadow:0 1px 4px #0000000d}.table-wrap{overflow-x:auto;border-radius:14px;border:1px solid var(--border)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{border:none;border-bottom:1px solid var(--border);padding:14px 18px;text-align:left}.table th{background:var(--muted-bg);font-weight:700;color:var(--fg);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.table td{color:var(--fg)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--muted-bg)}.checkbox{flex-direction:row;align-items:center;gap:10px;font-weight:500;cursor:pointer}.field select{padding:12px 36px 12px 16px;border:1.5px solid var(--border);border-radius:12px;font-size:14px;font-weight:400;background:var(--input-bg);color:var(--fg);cursor:pointer;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.quote{padding:20px 24px;border-left:4px solid;border-image:linear-gradient(180deg,var(--accent),var(--accent-2)) 1;background:var(--muted-bg);border-radius:0 14px 14px 0}.quote p{margin:0 0 8px;font-size:16px;font-style:italic;color:var(--fg);line-height:1.6}.quote footer{font-size:13px;color:var(--accent);font-weight:600}.codeblock{background:var(--code-bg);color:var(--code-fg);border-radius:14px;padding:18px 20px;overflow-x:auto;font-size:13px;line-height:1.7;font-family:SF Mono,Monaco,Cascadia Code,monospace;border:1px solid rgba(255,255,255,.08)}.steps{list-style:none;display:flex;gap:16px;padding:0;flex-wrap:wrap}.step{flex:1;min-width:180px;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--fg-muted)}.step-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;font-size:12px;font-weight:700;flex-shrink:0;box-shadow:0 2px 8px #667eea38}.timeline{list-style:none;padding:0}.timeline-item{display:flex;align-items:flex-start;gap:14px;padding:12px 0;position:relative;font-size:14px;color:var(--fg-muted)}.timeline-dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);margin-top:5px;flex-shrink:0;box-shadow:0 2px 6px #667eea38}.footer{border-top:1px solid var(--border);padding:22px 0 0;color:var(--fg-muted);font-size:13px;display:flex;flex-direction:column;gap:8px}.image{display:block;max-width:100%;height:auto;border-radius:14px}.avatar{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;font-weight:700;border-radius:50%;overflow:hidden;vertical-align:middle;flex-shrink:0;box-shadow:0 2px 8px #667eea4d}.row{display:flex;flex-direction:row}.grid{display:grid}[style*="display: grid"]>.card{height:100%}.card>.button{margin-top:auto;align-self:stretch;text-align:center}[style*="display: grid"]>.stat{justify-content:center;text-align:center}[style*="display: grid"]>.card>.badge{align-self:flex-start}@media (max-width: 900px){.page-dark,.page-midnight,.page-aurora{padding:20px 20px 48px}.page{padding:24px 20px 48px}.navbar{top:8px}}@media (max-width: 768px){[style*=grid-template-columns]{grid-template-columns:1fr!important}[style*="flex-direction: row"]{flex-direction:column!important;align-items:stretch!important}.hero{flex-direction:column;align-items:flex-start}.navbar{flex-direction:column;gap:12px;align-items:flex-start}.navbar-links{gap:14px}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#0f172a;color:#e2e8f0}.console{display:grid;grid-template-columns:380px 1fr;height:100vh;overflow:hidden}.sidebar{background:#0b1120;border-right:1px solid rgba(255,255,255,.08);padding:20px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.sidebar-head{display:flex;flex-direction:column;gap:4px}.brand{margin:0;font-size:22px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:transparent}.brand .badge-lume{font-size:11px;font-weight:700;vertical-align:super;color:#22d3ee;-webkit-text-fill-color:#22d3ee;margin-left:6px}.meta-line{margin:0;font-size:12px;color:#94a3b8;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-line .meta-refresh{border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:#22d3ee;font-size:11px;font-weight:600;border-radius:8px;padding:2px 8px;cursor:pointer;font-family:inherit;transition:all .15s ease;line-height:1.4}.meta-line .meta-refresh:hover{border-color:#22d3ee;color:#67e8f9}.field-block{display:flex;flex-direction:column;gap:10px}.field-block.grow{flex:1;min-height:170px}.field-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.prompt-input{width:100%;min-height:88px;resize:vertical;padding:12px 14px;border:1.5px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff0a;color:#e2e8f0;font-size:14px;font-family:inherit;line-height:1.6;transition:border-color .2s ease,box-shadow .2s ease}.prompt-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea40}.prompt-input.adjust{min-height:56px}.prompt-input:disabled{opacity:.5}.btn-primary{border:none;border-radius:12px;padding:11px 18px;font-size:14px;font-weight:700;cursor:pointer;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 16px #667eea59;transition:filter .2s ease,transform .15s ease}.btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border:1.5px solid rgba(255,255,255,.14);background:#ffffff0a;color:#e2e8f0;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-ghost:hover:not(:disabled){border-color:#667eea}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:6px}.starter-block{display:flex;flex-direction:column;gap:8px}.starter-more{align-self:flex-start;border:1px solid rgba(102,126,234,.35);background:#667eea1a;color:#a5b4fc;font-size:11px;font-weight:600;border-radius:8px;padding:4px 10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.starter-more:hover{border-color:#818cf8;color:#c7d2fe;background:#667eea2e}.starter-count{opacity:.65;font-weight:400;margin-left:2px}.chip{border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cbd5e1;font-size:11px;padding:5px 10px;border-radius:999px;cursor:pointer;transition:all .15s ease}.chip:hover{border-color:#667eea;color:#fff}.file-input{font-size:12px;color:#94a3b8;width:100%}.file-input::file-selector-button{border:1.5px solid rgba(255,255,255,.14);background:#ffffff0a;color:#e2e8f0;border-radius:8px;padding:6px 12px;font-size:12px;cursor:pointer;margin-right:10px}.ref-preview{position:relative;width:100%}.ref-preview img{width:100%;max-height:160px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.12)}.ref-clear{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:#0009;color:#fff;cursor:pointer;font-size:14px;line-height:1}.error-box{background:#e11d4824;border:1px solid rgba(244,63,94,.4);color:#fecaca;border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.5}.auth-panel{border:1px solid rgba(244,63,94,.35);background:#e11d4814;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.auth-panel .auth-hint{margin:0;font-size:12px;color:#fca5a5;line-height:1.55}.auth-panel .auth-row{display:flex;gap:8px}.auth-panel .auth-row .prompt-input{flex:1}.auth-panel .auth-row .btn-primary{border-radius:10px;padding:0 14px;white-space:nowrap}.auth-panel .meta-refresh{align-self:flex-start}.list-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:#cbd5e1;margin-bottom:10px}.record-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;overflow-y:auto;max-height:min(520px,56vh)}.record-list .empty{color:#64748b;font-size:12px;padding:14px 10px}.record-list li{display:flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#ffffff05;overflow:hidden}.record-list li.is-current{border-color:#667eea80;background:#667eea1a}.record-btn{flex:1;display:flex;flex-direction:row;align-items:center;gap:8px;padding:9px 12px;background:none;border:none;color:inherit;cursor:pointer;text-align:left;min-width:0}.record-title{font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.record-time{font-size:11px;color:#64748b;white-space:nowrap;flex-shrink:0}.record-del{width:28px;border:none;background:none;color:#64748b;cursor:pointer;font-size:16px;align-self:stretch}.record-del:hover{color:#f43f5e}.preview-pane{display:flex;flex-direction:column;background:#0f172a;overflow:hidden}.preview-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid rgba(255,255,255,.08);background:#0f172a99;backdrop-filter:blur(8px)}.bar-title{font-size:14px;font-weight:700;color:#e2e8f0}.bar-actions{display:flex;gap:8px}.bar-btn{border:1.5px solid rgba(255,255,255,.14);background:#ffffff0a;color:#e2e8f0;border-radius:9px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.bar-btn:hover:not(:disabled){border-color:#667eea}.bar-btn:disabled{opacity:.4;cursor:not-allowed}.preview-body{flex:1;overflow:auto;background:#020617;padding:0}.preview-empty{height:100%;display:flex;align-items:center;justify-content:center;color:#64748b;font-size:15px}.preview-body .page{min-width:320px}.steps-panel{border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05;padding:12px 20px 16px}.steps-panel-head{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:13px;font-weight:600;color:#e2e8f0}.steps-panel-head .steps-toggle{margin-left:auto;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:#94a3b8;font-size:11px;font-weight:600;border-radius:8px;padding:3px 10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.steps-panel-head .steps-toggle:hover{color:#67e8f9;border-color:#22d3ee}.steps-panel .steps{max-width:720px}.steps .step{min-width:0;word-break:break-word;overflow-wrap:anywhere}.editor-root{padding:16px}.gen-progress{padding:28px 24px;display:flex;flex-direction:column;gap:14px;max-width:560px;margin:40px auto}.gen-progress-head{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:#e2e8f0}.gen-title{font-weight:500;color:#94a3b8;font-size:13px}.gen-spin{width:16px;height:16px;border:2px solid rgba(102,126,234,.3);border-top-color:#667eea;border-radius:50%;animation:sp-spin .8s linear infinite;flex-shrink:0}@keyframes sp-spin{to{transform:rotate(360deg)}}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.steps .step{position:relative;padding:10px 14px;border-left:2px solid rgba(255,255,255,.12);background:#ffffff08;border-radius:0 10px 10px 0;font-size:13px;color:#94a3b8;line-height:1.5}.steps .step:before{content:"\2713";position:absolute;left:-9px;top:12px;width:16px;height:16px;border-radius:50%;background:#16a34a;color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center}.steps .step-active{border-left-color:#667eea;color:#e2e8f0;background:#667eea1a}.steps .step-active:before{content:"\2026";background:#667eea;animation:sp-pulse-dot 1s ease-in-out infinite}@keyframes sp-pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.codegen-overlay{position:fixed;inset:0;background:#020617b3;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:300;padding:24px}.codegen-panel{background:#0f172a;border:1px solid rgba(255,255,255,.1);border-radius:16px;width:min(760px,94vw);max-height:84vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #00000080;overflow:hidden}.codegen-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.codegen-head h3{margin:0;font-size:14px;font-weight:700;color:#e2e8f0}.codegen-head h3:before{content:"\25c6  ";background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:transparent}.codegen-actions{display:flex;gap:8px}.codegen-status{margin:0;padding:14px 20px;color:#94a3b8;font-size:13px}.codegen-err{margin:0;padding:14px 20px;color:#fca5a5;font-size:13px}.codegen-body{margin:0;padding:16px 20px;overflow:auto;flex:1;background:#020617}.codegen-body code{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:12.5px;line-height:1.65;color:#e2e8f0;white-space:pre}.codegen-body .tok-kw{color:#ff7b72}.codegen-body .tok-str{color:#a5d6ff}.codegen-body .tok-cmt{color:#8b949e;font-style:italic}.codegen-body .tok-num{color:#79c0ff}.codegen-body .tok-comp{color:#d2a8ff}.codegen-body .tok-attr{color:#79c0ff}.codegen-body .tok-id{color:#ffa657}.codegen-body .tok-punc{color:#8b949e}@media (max-width: 860px){.console{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:auto;min-height:100vh}.sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.preview-pane{min-height:70vh}}
