@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--color-void: #0a0a0b;--color-surface-1: #111113;--color-surface-2: #18181b;--color-surface-3: #1f1f23;--color-surface-4: #27272b;--color-surface-elevated: #2a2a2f;--color-text-primary: #fafafa;--color-text-secondary: #a1a1aa;--color-text-tertiary: #71717a;--color-text-muted: #52525b;--color-border-subtle: rgba(255, 255, 255, .06);--color-border-default: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .15);--color-decision: #3b82f6;--color-decision-glow: rgba(59, 130, 246, .3);--color-decision-soft: rgba(59, 130, 246, .15);--color-chance: #f59e0b;--color-chance-glow: rgba(245, 158, 11, .3);--color-chance-soft: rgba(245, 158, 11, .15);--color-terminal: #10b981;--color-terminal-glow: rgba(16, 185, 129, .3);--color-terminal-soft: rgba(16, 185, 129, .15);--color-success: #22c55e;--color-success-soft: rgba(34, 197, 94, .15);--color-warning: #eab308;--color-warning-soft: rgba(234, 179, 8, .15);--color-error: #ef4444;--color-error-soft: rgba(239, 68, 68, .15);--color-info: #6366f1;--color-info-soft: rgba(99, 102, 241, .15);--color-accent: #06b6d4;--color-accent-glow: rgba(6, 182, 212, .4);--color-accent-soft: rgba(6, 182, 212, .1);--color-hover: rgba(255, 255, 255, .05);--color-active: rgba(255, 255, 255, .08);--color-focus-ring: rgba(59, 130, 246, .5);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .6);--shadow-glow: 0 0 40px var(--color-accent-glow);--transition-fast: .1s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--transition-spring: .4s cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-tooltip: 500;--z-toast: 600}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-display);background:var(--color-void);color:var(--color-text-primary);line-height:1.5}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}::selection{background:var(--color-accent-soft);color:var(--color-text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-surface-4);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}:root{color-scheme:dark}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;height:100vh}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:radial-gradient(1200px 700px at 30% 20%,rgba(6,182,212,.1),transparent 55%),radial-gradient(900px 600px at 75% 10%,rgba(59,130,246,.12),transparent 50%),radial-gradient(900px 600px at 70% 80%,rgba(245,158,11,.08),transparent 55%),var(--color-void)}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{appearance:none;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:10px 12px;font-family:var(--font-display);font-size:14px;font-weight:600;line-height:1;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);-webkit-user-select:none;user-select:none}.btn-primary{background:linear-gradient(180deg,#06b6d433,#06b6d414);border-color:#06b6d459;color:var(--color-text-primary);box-shadow:0 0 0 1px #06b6d41f inset}.btn-secondary{background:#ffffff0a;color:var(--color-text-primary)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-danger{background:#ef44441a;border-color:#ef44444d;color:var(--color-text-primary)}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-ghost:hover:not(:disabled){transform:translateY(-1px);background-color:var(--color-hover);border-color:var(--color-border-strong)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-ghost:active:not(:disabled){transform:translateY(0);background-color:var(--color-active)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.toolbar{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) var(--space-6);background:#111113eb;border-bottom:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toolbar h1{font-size:16px;letter-spacing:.2px}.toolbar-section{display:flex;align-items:center;gap:var(--space-3)}.toolbar-section:last-child{margin-left:auto}.toolbar-mobile-only{display:none}.doc-name{color:var(--color-text-secondary);font-size:13px;padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--color-border-subtle);background:#ffffff08}.node-count{color:var(--color-text-tertiary);font-size:13px}.wizard-btn{border-color:#3b82f659;background:linear-gradient(180deg,#3b82f638,#3b82f614)}.main-content{display:flex;flex:1;overflow:hidden}.left-panel{width:320px;border-right:1px solid var(--color-border-subtle);background:#111113bf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:auto}.canvas-area{flex:1;min-width:0;padding:var(--space-6);overflow:hidden}.sidebar{width:420px;background:#111113bf;border-left:1px solid var(--color-border-subtle);overflow:auto;display:flex;flex-direction:column;gap:1px}.panel,.inspector{padding:var(--space-6);background:linear-gradient(180deg,#ffffff08,#ffffff05);border-bottom:1px solid var(--color-border-subtle)}.panel h3,.inspector h3{margin-bottom:var(--space-4);font-size:14px;letter-spacing:.2px}.panel h4{margin:var(--space-5) 0 var(--space-2);font-size:12px;color:var(--color-text-tertiary);text-transform:uppercase;font-weight:700;letter-spacing:.08em}.panel hr{margin:var(--space-5) 0;border:none;border-top:1px solid var(--color-border-subtle)}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;margin-bottom:var(--space-2);font-size:12px;font-weight:700;color:var(--color-text-secondary)}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:#ffffff08;color:var(--color-text-primary);font-size:14px;outline:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.form-group select{appearance:none}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{border-color:#06b6d473;background:#ffffff0d}.form-group input[type=checkbox]{margin-right:var(--space-2)}.form-group textarea{resize:vertical;font-family:var(--font-display)}.hint{color:var(--color-text-tertiary);font-size:13px;margin-bottom:var(--space-2)}.delete-btn{width:100%;margin-top:var(--space-4)}.node-palette{padding:var(--space-6)}.palette-header h3{font-size:14px;margin-bottom:var(--space-2)}.palette-hint{color:var(--color-text-tertiary);font-size:13px}.palette-items{display:grid;gap:var(--space-3);margin-top:var(--space-5)}.palette-item{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:#ffffff08;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);border-left:3px solid var(--color-accent)}.palette-item:hover{transform:translateY(-1px);background:#ffffff0d;border-color:var(--color-border-strong)}.palette-item.dragging{transform:scale(.98);opacity:.85}.palette-icon{width:34px;height:34px;border-radius:var(--radius-lg);display:grid;place-items:center;background:#ffffff0a;border:1px solid var(--color-border-subtle);font-size:16px}.palette-label{font-weight:800;font-size:13px;letter-spacing:.2px}.palette-description{color:var(--color-text-tertiary);font-size:12px;margin-top:2px}.palette-tips{margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05}.palette-tips h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.palette-tips ul{margin-top:var(--space-3);padding-left:18px;color:var(--color-text-tertiary);font-size:13px;display:grid;gap:var(--space-2)}.canvas-wrap{position:relative;width:100%;height:100%;min-height:560px;border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:radial-gradient(900px 500px at 50% 40%,rgba(255,255,255,.03),transparent 60%),#ffffff05;overflow:hidden}.mobile-overlay{padding:var(--space-4)}.mobile-drawer{width:100%;max-height:90vh}.mobile-body{padding:0}.mobile-panels{display:grid;gap:1px;background:var(--color-border-subtle)}.tree-canvas{display:block;width:100%;height:100%;background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px;background-position:-1px -1px}.success-message{padding:var(--space-4);background:var(--color-success-soft);border:1px solid rgba(34,197,94,.25);color:var(--color-text-primary);border-radius:var(--radius-xl);font-size:13px;margin-bottom:var(--space-4)}.error-message{padding:var(--space-4);background:var(--color-error-soft);border:1px solid rgba(239,68,68,.25);color:var(--color-text-primary);border-radius:var(--radius-xl);font-size:13px;margin-bottom:var(--space-4)}.diagnostics-section{margin-top:var(--space-4)}.error-header{color:#ef4444e6!important}.warning-header{color:#f59e0be6!important}.diagnostic{padding:var(--space-4);margin-bottom:var(--space-3);border-radius:var(--radius-xl);font-size:13px;border:1px solid var(--color-border-subtle);background:#ffffff05}.diagnostic.error{border-left:3px solid var(--color-error)}.diagnostic.warning{border-left:3px solid var(--color-warning)}.diagnostic.info{border-left:3px solid var(--color-info)}.diagnostic-code{font-family:var(--font-mono);font-size:12px;color:var(--color-text-tertiary);margin-bottom:var(--space-2)}.diagnostic-message{color:var(--color-text-primary);margin-bottom:var(--space-2)}.diagnostic-hint{color:var(--color-text-secondary);font-size:13px}.result-summary{margin-bottom:var(--space-4)}.result-value{padding:var(--space-4);background:#ffffff08;border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);font-size:13px;margin-top:var(--space-3)}.explanations{margin-top:var(--space-4)}.explanation{margin-bottom:var(--space-4);padding:var(--space-4);background:#ffffff05;border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl)}.explanation-header{margin-bottom:var(--space-3);color:var(--color-text-primary);font-size:13px}.branches{display:flex;flex-direction:column;gap:var(--space-2)}.branch{display:flex;justify-content:space-between;padding:var(--space-3);background:#ffffff08;border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);font-size:12px}.branch.chosen{border-color:#22c55e59;background:#22c55e1f;font-weight:700}.branch-label{color:var(--color-text-secondary)}.branch-ev{color:var(--color-text-tertiary);font-family:var(--font-mono)}.delta{margin-top:var(--space-3);font-size:12px;color:var(--color-text-tertiary)}.modal-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:var(--space-6);background:#000000a6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:var(--z-modal-backdrop)}.modal-content{width:min(920px,100%);max-height:min(82vh,860px);overflow:hidden;display:flex;flex-direction:column;border-radius:var(--radius-2xl);border:1px solid var(--color-border-default);background:linear-gradient(180deg,#27272be6,#18181beb);box-shadow:var(--shadow-xl)}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-6);border-bottom:1px solid var(--color-border-subtle)}.modal-header h2{font-size:18px;letter-spacing:.2px}.modal-close{width:36px;height:36px;border-radius:var(--radius-full);border:1px solid var(--color-border-subtle);background:#ffffff0a;color:var(--color-text-secondary);font-size:18px;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.modal-close:hover{background:#ffffff0f;border-color:var(--color-border-strong)}.modal-body{padding:var(--space-6);overflow:auto}.modal-footer{padding:var(--space-6);border-top:1px solid var(--color-border-subtle);display:flex;justify-content:flex-end;gap:var(--space-3)}.welcome-intro{color:var(--color-text-secondary);margin-bottom:var(--space-5)}.templates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.template-card{border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff08;padding:var(--space-5);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);display:grid;gap:var(--space-2)}.template-card:hover{transform:translateY(-2px);background:#ffffff0d;border-color:var(--color-border-strong)}.template-card h3{font-size:14px;letter-spacing:.2px}.template-card p{color:var(--color-text-tertiary);font-size:13px}.template-btn{justify-self:start;margin-top:var(--space-3)}.template-btn.primary{border-color:#06b6d459;background:#06b6d41a}.wizard-card{border-color:#3b82f638;background:radial-gradient(700px 400px at 30% 10%,rgba(59,130,246,.18),transparent 55%),#ffffff08}.wizard-icon{font-size:22px}.tutorial-content{display:grid;gap:var(--space-5)}.tutorial-content section{padding:var(--space-5);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05}.tutorial-content h3{font-size:14px;margin-bottom:var(--space-3)}.tutorial-content ul{padding-left:18px;display:grid;gap:var(--space-2);color:var(--color-text-secondary)}.wizard-modal{width:min(980px,100%)}.wizard-progress{margin-top:var(--space-2);color:var(--color-text-tertiary);font-size:13px}.wizard-body{padding:var(--space-6);overflow:auto;display:grid;gap:var(--space-5)}.wizard-question h3{font-size:16px}.wizard-question p{margin-top:var(--space-2);color:var(--color-text-secondary)}.wizard-step{display:grid;gap:var(--space-4)}.wizard-input-large,.wizard-input,.wizard-input-small{border:1px solid var(--color-border-subtle);background:#ffffff08;color:var(--color-text-primary);border-radius:var(--radius-xl);padding:12px 14px;font-size:14px;outline:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.wizard-input:focus,.wizard-input-large:focus,.wizard-input-small:focus{border-color:#06b6d473;background:#ffffff0d}.wizard-input-large{font-size:16px}.wizard-input-small{width:120px;padding:10px 12px}.wizard-examples{display:grid;gap:var(--space-2)}.wizard-examples-label{color:var(--color-text-tertiary);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.wizard-example-btn{text-align:left;padding:10px 12px;border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:#ffffff05;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.wizard-example-btn:hover{background:#ffffff0d;border-color:var(--color-border-strong)}.wizard-radio-group{display:grid;gap:var(--space-3)}.wizard-radio-option{display:flex;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05;cursor:pointer}.wizard-radio-content p{margin-top:2px;color:var(--color-text-tertiary);font-size:13px}.wizard-options-list{display:grid;gap:var(--space-3)}.wizard-option-item{border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05;padding:var(--space-4);display:grid;gap:var(--space-3)}.wizard-option-header{display:flex;align-items:center;gap:var(--space-3)}.wizard-option-number{width:26px;height:26px;border-radius:var(--radius-full);display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--color-text-secondary);background:#ffffff08;border:1px solid var(--color-border-subtle)}.wizard-remove-btn{margin-left:auto;width:32px;height:32px;border-radius:var(--radius-full);border:1px solid var(--color-border-subtle);background:#ffffff08;color:var(--color-text-secondary);cursor:pointer}.wizard-remove-btn:hover{border-color:#ef444473;background:#ef444414}.wizard-option-cost label{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--color-text-secondary);font-size:13px}.wizard-add-btn,.wizard-add-btn-small{justify-self:start;border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:#ffffff08;color:var(--color-text-secondary);padding:10px 12px;cursor:pointer}.wizard-add-btn-small{padding:8px 10px;font-size:13px}.wizard-uncertainty-section,.wizard-outcomes-section{border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05;padding:var(--space-4);display:grid;gap:var(--space-3)}.wizard-uncertainty-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.wizard-checkbox{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:13px}.wizard-uncertain-outcomes{display:grid;gap:var(--space-3)}.wizard-uncertain-item{display:flex;align-items:center;gap:var(--space-3)}.wizard-label-small{color:var(--color-text-tertiary);font-size:12px}.wizard-outcomes-list{display:grid;gap:var(--space-3)}.wizard-outcome-item{border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:#ffffff05;padding:var(--space-4);display:grid;gap:var(--space-3)}.wizard-outcome-label{color:var(--color-text-secondary);font-size:13px}.wizard-outcome-inputs{display:grid;grid-template-columns:1fr auto auto auto;gap:var(--space-3);align-items:end}.wizard-outcome-inputs label{display:grid;gap:var(--space-2);color:var(--color-text-tertiary);font-size:12px;font-weight:800;letter-spacing:.04em}.wizard-review{border-radius:var(--radius-2xl);border:1px solid var(--color-border-subtle);background:#ffffff05;padding:var(--space-5);display:grid;gap:var(--space-3)}.wizard-review-item{color:var(--color-text-secondary);font-size:13px}.wizard-review-list{margin-top:var(--space-2);padding-left:18px;display:grid;gap:var(--space-2)}.wizard-nav{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.wizard-dots{display:flex;align-items:center;gap:8px}.wizard-dot{width:10px;height:10px;border-radius:var(--radius-full);background:#ffffff1a;border:1px solid var(--color-border-subtle)}.wizard-dot.completed{background:#06b6d42e;border-color:#06b6d459}.wizard-dot.active{background:#06b6d466;border-color:#06b6d48c;box-shadow:0 0 0 4px #06b6d424}.quick-actions{min-width:220px;border-radius:var(--radius-2xl);border:1px solid var(--color-border-default);background:#18181beb;box-shadow:var(--shadow-lg);overflow:hidden}.quick-actions-header{padding:10px 12px;border-bottom:1px solid var(--color-border-subtle)}.quick-actions-label{color:var(--color-text-secondary);font-size:12px;font-family:var(--font-mono)}.quick-actions-buttons{padding:10px;display:grid;grid-template-columns:1fr;gap:8px}.quick-action-btn{text-align:left;padding:10px 12px;border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);background:#ffffff08;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.quick-action-btn:hover{transform:translateY(-1px);background:#ffffff0d;border-color:var(--color-border-strong)}.quick-action-btn.decision{border-left:3px solid var(--color-decision)}.quick-action-btn.chance{border-left:3px solid var(--color-chance)}.quick-action-btn.terminal{border-left:3px solid var(--color-terminal)}.quick-action-btn.delete{border-left:3px solid var(--color-error)}@media(max-width:1100px){.sidebar{width:380px}.left-panel{width:300px}.templates-grid{grid-template-columns:1fr}}@media(max-width:900px){.main-content{flex-direction:column;min-height:0}.toolbar{gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap}.toolbar-section{gap:var(--space-2)}.doc-name,.node-count{display:none}.toolbar-mobile-only{display:flex}.canvas-area{flex:1;min-height:0;padding:var(--space-4)}.canvas-wrap{min-height:360px}.wizard-outcome-inputs{grid-template-columns:1fr}}
