:root{--bg-primary:#fbfaf6;--bg-secondary:#fff;--bg-tertiary:#efece4;--bg-card:#fff;--bg-card-hover:#fdfcf8;--bg-surface:#fffffffa;--bg-overlay:#11182780;--bg-glass:#fffffff5;--border-primary:#d8d2c4;--border-secondary:#b8b3a7;--border-accent:#1d3557;--border-glow:transparent;--text-primary:#111827;--text-secondary:#3f4756;--text-tertiary:#6b7280;--text-muted:#9ca3af;--accent-blue:#1d3557;--accent-blue-glow:transparent;--accent-vermilion:#c4492d;--accent-cyan:#0c6273;--accent-cyan-glow:transparent;--accent-green:#2f5d50;--accent-green-glow:transparent;--accent-red:#b03434;--accent-red-glow:transparent;--accent-orange:#b85522;--accent-orange-glow:transparent;--accent-purple:#4b3a8c;--accent-purple-glow:transparent;--accent-pink:#8a2461;--gradient-accent:#1d3557;--gradient-header:#fff;--gradient-warm:#c4492d;--node-indicator:#2b6cb0;--node-condition:#d69e2e;--node-action:#2f855a;--node-math:#6b46c1;--node-price:#2c7a7b;--node-money:#97266d;--node-group:#2b6cb0;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--font-sans:var(--font-inter,"Inter"),"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-serif:var(--font-noto-serif-jp,"Noto Serif JP"),"Hiragino Mincho ProN","Yu Mincho",serif;--font-mono:"JetBrains Mono","Consolas",monospace;--font-xs:.7rem;--font-sm:.8rem;--font-base:.875rem;--font-md:1rem;--font-lg:1.125rem;--font-xl:1.5rem;--font-2xl:2rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px #1118270a;--shadow-md:0 2px 6px #1118270d;--shadow-lg:0 8px 24px #1118270f;--shadow-xl:0 16px 40px #11182714;--shadow-glow-blue:none;--shadow-glow-green:none;--shadow-glow-cyan:none;--shadow-glow-purple:none;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-normal:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.4s cubic-bezier(.4,0,.2,1);--transition-spring:.35s cubic-bezier(.34,1.56,.64,1);--header-height:56px;--palette-width:clamp(220px,14vw,270px);--property-width:clamp(300px,20vw,380px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--font-base);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";text-rendering:optimizeLegibility}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.app{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.app-body{flex:1;display:flex;position:relative;overflow:hidden}.header{min-height:var(--header-height);height:auto;padding:8px var(--space-lg);background:var(--bg-glass);border-bottom:1px solid var(--border-primary);z-index:100;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px 14px;display:flex;position:relative}.header:before{content:"";opacity:1;background:linear-gradient(90deg,#7a72651f,#7a72654d,#7a72651f);height:2px;position:absolute;top:0;left:0;right:0}.header-left{align-items:center;gap:var(--space-md);flex-shrink:0;min-width:0;display:flex}.header-logo{align-items:center;gap:var(--space-sm);font-weight:800;font-size:var(--font-lg);color:var(--text-primary);letter-spacing:0;display:flex}.header-logo-icon{border-radius:var(--radius-md);color:#2f4a67;width:32px;height:32px;box-shadow:var(--shadow-sm);background:#e7e2d8;border:1px solid #d3cec2;justify-content:center;align-items:center;font-size:15px;display:flex}.header-logo--image{gap:0;width:176px;height:42px;font-size:0;line-height:1;overflow:hidden}.header-brand-logo{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.header-logo--image .header-logo-icon,.header-logo--image span{display:none}.header-left .header-logo--image{flex-shrink:0;display:block}.header-center{align-items:center;gap:var(--space-sm);flex:none;min-width:0;display:flex}.header-subtitle{color:var(--text-muted);font-size:var(--font-xs);white-space:nowrap;margin-left:4px}.header-tagline{color:var(--text-muted);white-space:nowrap;background:#3b82f612;border:1px solid #3b82f62e;border-radius:20px;margin-left:8px;padding:2px 8px;font-size:.72rem;font-weight:500}.header-project-input{text-align:center;width:190px;font-size:var(--font-sm)}.header-right{flex-wrap:wrap;flex:680px;justify-content:flex-end;align-items:center;gap:6px 8px;min-width:0;padding:2px 0;display:flex;overflow:visible}.header-quick-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:8px;display:inline-flex}.header-action-group{border-left:1px solid var(--border-primary);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding-left:8px;display:inline-flex}.header-action-group:first-child{border-left:none;padding-left:0}.header-action-group--advanced{margin-left:auto}.header-action-btn{gap:4px;min-height:34px;padding:7px 10px;font-size:.78rem}.header-action-btn svg{flex-shrink:0}.header-action-btn--primary{color:#23406a;background:#eef5ff;border-color:#436ea55c}.header-action-btn--primary:hover{color:#1c3357;background:#e3eefc;border-color:#23406a8f}.language-toggle{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);min-width:82px;height:34px;color:var(--text-secondary);font-family:var(--font-sans);letter-spacing:.03em;cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:.7rem;font-weight:800;display:inline-flex}.language-toggle:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.language-toggle-icon{color:#2f6fb3;display:inline-flex}.language-toggle-current{color:#1f3d63}.language-toggle-arrow{opacity:.55}.language-toggle-next{color:var(--text-muted)}.language-toggle.is-compact{min-width:74px;height:32px;padding:0 9px;font-size:.66rem}.header-save-menu{flex-shrink:0;position:relative}.mobile-project-editor{display:none}.header-save-menu-panel{border:1px solid var(--border-primary);background:var(--bg-secondary);min-width:260px;box-shadow:var(--shadow-xl);z-index:380;gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.header-save-menu-item{border:1px solid var(--border-primary);background:var(--bg-card);width:100%;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--font-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;align-items:center;gap:8px;padding:7px 10px;font-weight:600;display:flex}.header-save-menu-item-text{flex-direction:column;gap:1px;min-width:0;display:flex}.header-save-menu-item-main{font-size:var(--font-sm);color:var(--text-primary)}.header-save-menu-item-sub{color:var(--text-muted);font-size:.78rem;font-weight:500;line-height:1.35}.header-save-menu-item:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-primary)}.header-save-menu-item:disabled{opacity:.5;cursor:not-allowed}.header-right .btn,.header-right .toggle-group,.header-right .property-select{flex-shrink:0}.header-right .btn:after{display:none}.header-right .btn:hover{box-shadow:none;background:#f2efe8;border-color:#c9c2b6;transform:none}.header-right .btn.btn-primary:hover{box-shadow:0 0 0 1px #2f4a6747}.header-focus-select{width:168px;min-width:168px;font-size:var(--font-xs);padding:5px 8px}.welcome-banner{justify-content:center;align-items:center;gap:var(--space-lg);padding:9px var(--space-xl);color:var(--text-secondary);font-size:var(--font-sm);background:linear-gradient(90deg,#c4492d1a,#0000 18%),#ffffffdb;border-top:1px solid #d8d2c4a6;border-bottom:1px solid #b8b3a78c;line-height:1.5;display:flex;box-shadow:inset 0 1px #ffffffbf}.welcome-banner-text{text-align:center;max-width:860px;font-weight:650}.welcome-banner-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:inline-flex}.welcome-banner-cta{background:var(--bg-card);min-height:30px;color:var(--accent-blue);font-size:var(--font-xs);border-color:#1d355740;padding:5px 12px;font-weight:750}.welcome-banner-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.welcome-banner-close:hover{color:var(--text-primary);background:#1d35570f}.btn{align-items:center;gap:var(--space-sm);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;box-shadow:none;padding:8px 16px;font-size:.88rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:focus-visible,a.btn:focus-visible,.toggle-btn:focus-visible,.icon-btn:focus-visible,.modal-close:focus-visible,.template-mobile-nav-btn:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #1c3d6d59}.btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-primary);box-shadow:none;transform:none}.btn:active{background:var(--bg-tertiary);transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-primary{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff;box-shadow:none}.btn-primary:hover{color:#fff;box-shadow:none;background:#15325c;border-color:#15325c}.btn-success{background:var(--accent-green);border-color:var(--accent-green);color:#fff;box-shadow:none}.btn-success:hover{color:#fff;box-shadow:none;background:#175e31;border-color:#175e31}.btn-icon{padding:7px 9px}.btn-sm{font-size:var(--font-xs);padding:5px 12px}.toggle-group{background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-primary);display:flex;overflow:hidden}.toggle-btn{font-size:var(--font-xs);font-weight:600;font-family:var(--font-mono);white-space:nowrap;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:5px 12px}.toggle-btn.active{background:var(--accent-blue);color:#fff}.toggle-group-target{background:#f3f1ea;border-color:#c8c1b3;border-radius:8px;gap:3px;padding:3px}.toggle-btn-target{min-width:70px;min-height:30px;font-family:var(--font-sans);color:#6b778a;border:1px solid #0000;border-radius:6px;padding:5px 12px;font-size:.82rem;font-weight:700}.toggle-btn-target:hover{color:var(--text-secondary);background:#fff}.toggle-btn-target.active{background:var(--accent-blue);color:#fff;border-color:#1c3d6de6;box-shadow:inset 0 0 0 1px #ffffff38}.node-palette{width:var(--palette-width);background:var(--bg-glass);border-right:1px solid var(--border-primary);padding-bottom:calc(34px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(48px + env(safe-area-inset-bottom,0px));flex-direction:column;flex-shrink:0;display:flex;overflow:hidden auto}.palette-header{padding:var(--space-md)var(--space-lg);font-size:var(--font-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-primary);font-weight:600}.palette-search-wrap{border-bottom:1px solid var(--border-primary);padding:8px 10px}.palette-usage-hint{color:var(--text-secondary);border:1px solid var(--border-primary);border-left:3px solid var(--accent-blue);background:#f7f5ef;margin:8px 12px 10px;padding:7px 10px;font-size:.78rem;line-height:1.45}.palette-confirm-bar{background:var(--bg-card);border-top:2px solid var(--accent-blue);z-index:10;flex-direction:column;gap:8px;padding:12px 16px;animation:.2s confirmSlideUp;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 12px #0000001a}@keyframes confirmSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.palette-confirm-label{font-size:var(--font-sm);color:var(--text-primary);font-weight:600}.palette-confirm-actions{gap:8px;display:flex}.palette-magic-wrap{margin:0 0 12px;padding:0 12px}.palette-magic-btn{justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 14px;font-size:.92rem;line-height:1.2}.palette-focus-wrap{border-bottom:1px solid var(--border-primary);flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.palette-focus-btn{border:1px solid var(--border-primary);color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#f7f5ef;padding:4px 7px;font-size:.64rem}.palette-focus-btn:hover{color:var(--text-secondary);border-color:var(--border-secondary)}.palette-focus-btn.active{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f680}.palette-beginner-hint{margin:var(--space-sm)var(--space-md);padding:var(--space-sm)var(--space-md);border-radius:var(--radius-md);background:#10b98114;border:1px solid #10b98140}.palette-beginner-hint-title{color:#6ee7b7;margin-bottom:3px;font-size:.65rem;font-weight:700}.palette-beginner-hint-text{color:var(--text-secondary);font-size:.78rem;line-height:1.45}.palette-search{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);outline:none;padding:7px 10px;font-size:.72rem}.palette-search:focus{border-color:var(--accent-blue)}.palette-category{border:1px solid var(--border-primary);background:#ffffff75;margin:0 8px 10px;padding:0}.palette-category-title{align-items:center;gap:var(--space-sm);font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none;background:#e9e6dfcc;border-bottom:1px solid #d1cdc3bf;padding:10px 12px;font-weight:600;display:flex}.palette-category-title:hover{color:var(--text-secondary)}.palette-item{font-size:var(--font-sm);color:var(--text-secondary);cursor:grab;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm);border-top:1px solid #d1cdc373;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:8px 12px 8px 18px;display:flex}.palette-item-main{align-items:center;gap:var(--space-sm);min-width:0;display:inline-flex}.palette-item-main span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.palette-item-help{border:1px solid var(--border-primary);border-radius:var(--radius-full);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:#f7f5ef;flex-shrink:0;justify-content:center;align-items:center;font-size:.67rem;font-weight:700;line-height:1;display:inline-flex}.palette-item-help:hover{color:var(--text-primary);border-color:var(--border-secondary);background:#fff}.palette-item-help.active{color:#fff;border-color:var(--accent-blue);background:var(--accent-blue)}.palette-item:hover{background:var(--bg-secondary);color:var(--text-primary);transform:translate(3px)}.palette-item:active{cursor:grabbing;transform:scale(.98)}.palette-item-dot{width:8px;height:8px;box-shadow:none;border-radius:50%;flex-shrink:0}.editor-canvas{background:var(--bg-primary);flex:1;position:relative}.react-flow__background{background:var(--bg-primary)!important}.react-flow__minimap{background:var(--bg-card)!important;border:1px solid var(--border-primary)!important;border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-sm)!important}.react-flow__controls{overflow:hidden;border:1px solid var(--border-primary)!important;border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-sm)!important;background:var(--bg-card)!important}.react-flow__controls-button{border-bottom:1px solid var(--border-primary)!important;color:var(--text-secondary)!important;fill:var(--text-secondary)!important;transition:all var(--transition-fast)!important;background:0 0!important}.react-flow__controls-button:hover{background:var(--bg-secondary)!important;color:var(--text-primary)!important;fill:var(--text-primary)!important}.react-flow__edge-path{filter:drop-shadow(0 0 3px);transition:stroke-width .2s;stroke-width:2.5px!important}.react-flow__edge:hover .react-flow__edge-path{filter:drop-shadow(0 0 8px);stroke-width:3.5px!important}.custom-node{background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);min-width:240px;max-width:300px;font-size:var(--font-sm);color:var(--text-primary);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);animation:nodeEntrance .35s var(--transition-spring)both;position:relative;overflow:visible}@keyframes nodeEntrance{0%{opacity:0;transform:scale(.92)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.custom-node:hover{border-color:var(--border-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.custom-node.selected{border-color:var(--accent-blue);box-shadow:0 0 0 2px var(--accent-blue)}.custom-node-header{align-items:center;gap:var(--space-sm);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-primary);border-radius:var(--radius-lg)var(--radius-lg)0 0;background:var(--bg-secondary);padding:10px 14px;font-size:.85rem;font-weight:700;display:flex}.custom-node-header-icon{font-size:12px}.custom-node-header-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.node-delete-btn{border-radius:var(--radius-sm);width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;line-height:1;display:flex}.custom-node:hover .node-delete-btn{opacity:1}.node-delete-btn:hover{color:#ef4444;background:#ef444433}.custom-node-body{padding:var(--space-sm)var(--space-md)}.node-connect-guide{padding:6px var(--space-md)8px;color:var(--text-muted);border-top:1px solid var(--border-primary);background:#ffffff04;align-items:flex-start;gap:6px;font-size:.62rem;line-height:1.45;display:flex}.node-connect-guide-label{border-radius:var(--radius-sm);border:1px solid var(--border-secondary);background:var(--bg-tertiary);min-height:16px;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;flex-shrink:0;align-items:center;padding:0 6px;font-size:.56rem;font-weight:700;display:inline-flex}.custom-node-row{font-size:var(--font-xs);color:var(--text-secondary);grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:10px;padding:5px 0;line-height:1.4;display:grid}.custom-node-row label{min-width:0;max-width:100%;color:var(--text-tertiary);font-size:var(--font-xs);overflow-wrap:anywhere;display:block}.custom-node-row span,.custom-node-row select{text-align:right;white-space:normal;word-break:break-word;min-width:0;color:var(--text-primary);justify-self:end;font-weight:500;line-height:1.4}.custom-node-select,.custom-node-input{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-xs);outline:none;max-width:90px;padding:2px 6px}.custom-node-select:focus,.custom-node-input:focus{border-color:var(--accent-blue)}.node-indicator .custom-node-header{background:var(--bg-tertiary);color:var(--node-indicator)}.node-condition .custom-node-header{background:var(--bg-tertiary);color:var(--node-condition)}.node-action .custom-node-header{background:var(--bg-tertiary);color:var(--node-action)}.node-math .custom-node-header{background:var(--bg-tertiary);color:var(--node-math)}.node-price .custom-node-header{background:var(--bg-tertiary);color:var(--node-price)}.node-money .custom-node-header{background:var(--bg-tertiary);color:var(--node-money)}.node-group .custom-node-header{background:var(--bg-tertiary);color:var(--node-group)}.node-indicator .custom-node{border-top:3px solid var(--node-indicator)}.node-condition .custom-node{border-top:3px solid var(--node-condition)}.node-action .custom-node{border-top:3px solid var(--node-action)}.node-math .custom-node{border-top:3px solid var(--node-math)}.node-price .custom-node{border-top:3px solid var(--node-price)}.node-money .custom-node{border-top:3px solid var(--node-money)}.node-group .custom-node{border-top:3px solid var(--node-group)}.ea-summary{height:100%;padding:0;overflow-y:auto}.ea-summary-header{align-items:center;gap:var(--space-sm);padding:var(--space-md)var(--space-lg);font-size:var(--font-sm);color:var(--text-primary);border-bottom:2px solid var(--border-accent);background:var(--bg-tertiary);font-weight:700;display:flex;position:relative}.ea-summary-header-icon{background:var(--accent-blue);width:14px;height:14px;box-shadow:none;border-radius:3px;flex-shrink:0}.ea-summary-section{padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--border-primary);animation:.3s both eaSectionFadeIn}@keyframes eaSectionFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ea-summary-section-title{font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm);font-weight:600}.ea-summary-strategy-type{font-size:var(--font-sm);color:var(--text-primary);font-weight:700}.ea-summary-risk{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);font-weight:600;display:flex}.ea-summary-risk-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 0 1px #ffffff2e}.ea-summary-risk-bar{border-radius:var(--radius-full);height:6px;margin-left:var(--space-sm);background:#ffffff0f;flex:1;overflow:hidden}.ea-summary-risk-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.ea-summary-list{flex-direction:column;gap:5px;display:flex}.ea-summary-item{font-size:var(--font-xs);color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:#3b82f60d;border:1px solid #3b82f614;border-left:3px solid #3b82f666;padding:6px 10px;line-height:1.5}.ea-summary-item:hover{border-left-color:var(--accent-blue);background:#3b82f614}.ea-summary-item-check{align-items:center;gap:8px;display:flex}.ea-summary-check-status{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:48px;padding:1px 6px;font-size:.6rem;font-weight:700;display:inline-flex}.ea-summary-check-status.ok{color:#22c55e;background:#22c55e1a;border-color:#22c55e59}.ea-summary-check-status.warn{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b59}.ea-summary-check-status.pending{color:var(--text-tertiary);border-color:var(--border-primary);background:var(--bg-primary)}.ea-summary-item-trailing{background:#10b9810d;border-color:#10b98114 #10b98114 #10b98114 #10b98166}.ea-summary-entry{padding:var(--space-sm)var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-bottom:var(--space-sm);transition:all var(--transition-fast);background:#ffffff05}.ea-summary-entry:hover{background:#fff}.ea-summary-entry:last-child{margin-bottom:0}.ea-summary-entry-label{font-size:var(--font-xs);color:var(--text-primary);margin-bottom:4px;font-weight:600}.ea-summary-entry-detail{color:var(--text-tertiary);font-size:.65rem}.ea-summary-entry-conds{margin-top:6px}.ea-summary-cond-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;font-size:.6rem;font-weight:600;display:block}.ea-summary-cond{font-size:var(--font-xs);color:var(--accent-cyan);border-radius:0 var(--radius-sm)var(--radius-sm)0;background:#06b6d40d;border-left:2px solid #06b6d466;margin-bottom:3px;padding:4px 8px;line-height:1.5}.ea-summary-warning{font-size:var(--font-xs);color:var(--accent-orange);border-radius:var(--radius-sm);background:#f59e0b0d;border-left:2px solid #f59e0b66;margin-top:6px;padding:4px 8px}.ea-summary-risk-box{padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-xs);margin-bottom:var(--space-sm);line-height:1.7}.ea-summary-risk-box-ok{color:var(--text-secondary);background:#10b9810d;border:1px solid #10b9811f;border-left:3px solid #10b98180}.ea-summary-risk-box-ok strong{color:#34d399;font-weight:700}.ea-summary-risk-ratio{font-weight:700;font-size:var(--font-sm);background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;border-top:1px solid #10b9811a;margin-top:6px;padding-top:6px}.ea-summary-risk-box-warn{color:#fca5a5;background:#ef44440d;border:1px solid #ef44441f;border-left:3px solid #ef444480}.ea-summary-risk-hint{color:var(--text-muted);margin-top:4px;font-size:.65rem;display:block}.ea-summary-risk-box-none{border:1px solid var(--border-primary);color:var(--text-muted);background:#ffffff05}.ea-summary-features{flex-wrap:wrap;gap:5px;display:flex}.ea-summary-feature{font-size:var(--font-xs);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-full);transition:all var(--transition-fast);background:#f7f5ef;padding:4px 10px;line-height:1.3}.ea-summary-feature:hover{background:#ffffff0f}.ea-summary-feature.warn{color:var(--accent-orange);background:#f59e0b0a;border-color:#f59e0b33}.react-flow__handle{transition:all var(--transition-fast);z-index:10;border:2px solid var(--bg-card)!important;background:var(--text-tertiary)!important;width:20px!important;height:20px!important}.react-flow__handle:hover{transform:scale(1.3);box-shadow:0 0 8px}.handle-label{color:var(--text-secondary);pointer-events:none;background:var(--bg-card);border-radius:4px;padding:1px 4px;font-size:.72rem;font-weight:700;position:absolute;transform:translateY(-50%)}.handle-label-left{left:24px}.handle-label-right{text-align:right;right:24px}.handle-typed.handle-number{background:#3b82f6!important;border-color:#3b82f64d!important}.handle-typed.handle-number:hover{box-shadow:0 0 10px #3b82f699}.handle-typed.handle-bool{background:#f59e0b!important;border-color:#f59e0b4d!important}.handle-typed.handle-bool:hover{box-shadow:0 0 10px #f59e0b99}.handle-typed.handle-sltp{background:#ec4899!important;border-color:#ec48994d!important}.handle-typed.handle-sltp:hover{box-shadow:0 0 10px #ec489999}.node-indicator .react-flow__handle:not(.handle-typed){background:var(--node-indicator)!important}.node-condition .react-flow__handle:not(.handle-typed){background:var(--node-condition)!important}.node-action .react-flow__handle:not(.handle-typed){background:var(--node-action)!important}.node-math .react-flow__handle:not(.handle-typed){background:var(--node-math)!important}.node-price .react-flow__handle:not(.handle-typed){background:var(--node-price)!important}.node-money .react-flow__handle:not(.handle-typed){background:var(--node-money)!important}.property-panel{width:var(--property-width);background:var(--bg-glass);border-left:1px solid var(--border-primary);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.property-panel-empty{height:100%;color:var(--text-muted);font-size:var(--font-sm);text-align:center;padding:var(--space-xl);justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.property-panel-empty-icon{opacity:.5;font-size:32px}.property-header{padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.property-header h3{font-size:var(--font-sm);color:var(--text-primary);font-weight:600}.property-section{padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--border-primary)}.property-mode-hint{color:var(--text-secondary);border-radius:var(--radius-sm);background:#3b82f614;border:1px solid #3b82f640;margin-top:6px;padding:7px 9px;font-size:.66rem;line-height:1.45}.property-section-title{font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-sm);font-weight:600}.property-field{gap:var(--space-xs);margin-bottom:var(--space-md);flex-direction:column;display:flex}.property-field:last-child{margin-bottom:0}.property-label{font-size:var(--font-xs);color:var(--text-tertiary);font-weight:500}.property-input,.property-select{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-sm);padding:var(--space-sm)var(--space-md);transition:border-color var(--transition-fast);outline:none;width:100%}.property-input:focus,.property-select:focus{border-color:var(--accent-blue)}.code-preview-toggle{bottom:var(--space-lg);right:var(--space-lg);z-index:10;position:absolute}.code-preview-panel{background:var(--bg-secondary);border-top:1px solid var(--border-primary);z-index:50;flex-direction:column;height:45%;animation:.3s slideUp;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.code-preview-header{padding:var(--space-sm)var(--space-lg);border-bottom:1px solid var(--border-primary);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.code-preview-header h3{font-size:var(--font-sm);align-items:center;gap:var(--space-sm);font-weight:600;display:flex}.code-preview-actions{gap:var(--space-sm);display:flex}.code-preview-body{flex:1;overflow:hidden}.status-bar{padding:0 var(--space-lg);border-top:1px solid var(--border-primary);height:24px;font-size:var(--font-xs);color:var(--text-muted);background:#efebe2;flex-shrink:0;justify-content:flex-start;align-items:center;display:flex}.status-bar-left,.status-bar-right{align-items:center;gap:var(--space-lg);display:flex}.status-bar-next-cta{background:var(--accent-blue);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:20px;align-items:center;gap:4px;padding:3px 12px;font-size:.75rem;font-weight:700;transition:background .12s;display:inline-flex}.status-bar-next-cta:hover{background:#1d4ed8}.status-indicator{align-items:center;gap:var(--space-xs);display:flex}.status-dot{background:var(--accent-green);border-radius:50%;width:6px;height:6px}.modal-overlay{z-index:1000;background:#26231f66;justify-content:center;align-items:center;animation:.25s cubic-bezier(.4,0,.2,1) fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.modal{background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);width:90%;max-width:640px;max-height:80vh;box-shadow:var(--shadow-xl);animation:.35s cubic-bezier(.34,1.56,.64,1) modalSlideUp;overflow-y:auto}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{padding:var(--space-xl);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--font-lg);color:#2b3138;font-weight:700}.modal-body{padding:var(--space-xl)}.wizard-body{gap:14px;display:grid}.wizard-step-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.wizard-step-pill{border-radius:var(--radius-md);border:1px solid var(--border-primary);color:var(--text-tertiary);background:#f7f5ef;align-items:center;gap:8px;padding:8px 10px;font-size:.7rem;font-weight:600;display:flex}.wizard-step-pill.active{color:#2b3138;background:#ece7dd;border-color:#c4bcae}.wizard-step-pill.done{color:#3f7662;background:#3f76621f;border-color:#3f766259}.wizard-step-pill-index{border-radius:var(--radius-full);border:1px solid;justify-content:center;align-items:center;width:18px;height:18px;font-size:.64rem;line-height:1;display:inline-flex}.wizard-panel{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);padding:12px}.wizard-panel-title{color:var(--text-primary);font-size:var(--font-sm);margin-bottom:4px;font-weight:700}.wizard-panel-text{color:var(--text-secondary);margin-bottom:10px;font-size:.72rem;line-height:1.6}.wizard-inline-note{color:var(--text-tertiary);font-size:.66rem}.legal-disclaimer-box{border-radius:var(--radius-md);background:#fff7f7;border:1px solid #e5c7c7;gap:8px;padding:10px 12px;display:grid}.legal-disclaimer-title{font-size:var(--font-xs);color:#8b1f1f;font-weight:700}.legal-disclaimer-list{color:#6b2a2a;gap:4px;margin:0;padding-left:18px;font-size:.66rem;line-height:1.45;display:grid}.legal-disclaimer-consent{color:var(--text-secondary);align-items:flex-start;gap:8px;font-size:.68rem;display:inline-flex}.legal-disclaimer-consent input{accent-color:var(--accent-blue);margin-top:2px}.delivery-flow-box{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#faf9f5;gap:8px;padding:10px 12px;display:grid}.delivery-flow-title{font-size:var(--font-xs);color:var(--text-secondary);font-weight:700}.delivery-flow-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.delivery-flow-steps.is-auto{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-flow-step{border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:#fff;gap:2px;padding:6px 8px;display:grid}.delivery-flow-step-index{color:var(--text-muted);font-size:.62rem;font-weight:700}.delivery-flow-step-label{color:var(--text-secondary);font-size:.72rem;font-weight:600;line-height:1.35}.delivery-flow-step.active{background:#3b82f612;border-color:#3b82f666}.delivery-flow-step.active .delivery-flow-step-label{color:#1d4ed8}.delivery-flow-step.done{background:#10b98117;border-color:#10b98159}.delivery-flow-step.done .delivery-flow-step-label{color:#047857}.delivery-flow-step.warn{background:#ef444414;border-color:#ef444459}.delivery-flow-step.warn .delivery-flow-step-label{color:#b91c1c}.delivery-flow-summary{color:var(--text-tertiary);font-size:.78rem;line-height:1.5}.mypage-body{background:linear-gradient(#f7f4ed 0%,#f2efe8 100%);padding:20px;display:block;overflow:auto}.mypage-container{gap:12px;max-width:980px;margin:0 auto;display:grid}.mypage-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.mypage-meta-card{color:#344255;background:#fff;border:1px solid #cec8bb;gap:8px;padding:12px;font-size:.92rem;display:grid}.mypage-meta-card-main{align-items:center;gap:8px;display:flex}.mypage-meta-main-text{color:#1f2a38;font-size:.88rem;font-weight:600}.mypage-meta-title{color:#5f6f86;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.mypage-meta-value{color:#1f2a38;font-size:.95rem;font-weight:600;line-height:1.55}.mypage-alert{color:#8b1f1f;background:#fff7f7;border:1px solid #d9b9b9;padding:10px 12px;font-size:.9rem;line-height:1.55}.mypage-nav{flex-wrap:wrap;gap:8px;display:flex}.mypage-nav .btn{min-height:40px;padding:8px 14px;font-size:.9rem;font-weight:700}.mypage-home-list{gap:10px;display:grid}.mypage-home-title{color:#1f2a38;font-size:.95rem;font-weight:800}.mypage-home-card{transition:background var(--transition-fast),border-color var(--transition-fast);background:#fff;border:1px solid #cec8bb;gap:6px;padding:12px;text-decoration:none;display:grid}.mypage-home-card:hover{background:#f8fbff;border-color:#98b3d3}.mypage-home-card-title{color:#1f2a38;font-size:.92rem;font-weight:700}.mypage-home-card-text{color:#53657c;font-size:.9rem;line-height:1.55}.broker-board{background:#f8fafc;border:1px solid #9fb2c5;gap:12px;padding:14px;display:grid}.broker-board-header{color:#fff;background:#2c425c;border-left:4px solid #3aa5d1;align-items:center;gap:8px;padding:10px 12px;font-size:1.05rem;font-weight:800;display:flex}.broker-board-dot{background:#3aa5d1;border-radius:999px;width:10px;height:10px;box-shadow:0 0 0 2px #3aa5d147}.broker-board-description{color:#1f2a38;margin:0;font-size:.96rem;line-height:1.7}.broker-card-list{gap:10px;display:grid}.broker-card{background:#fff;border:1px solid #bfc8d3;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.broker-card-main{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.broker-card-logo{color:#24384f;letter-spacing:.02em;background:#f4f6f9;border:1px solid #d2d9e1;justify-content:center;align-items:center;height:50px;font-size:.95rem;font-weight:800;display:flex}.broker-card-info{gap:3px;min-width:0;display:grid}.broker-card-name{color:#1f2a38;margin:0;font-size:1rem}.broker-card-text{color:#4a5f78;margin:0;font-size:.93rem;line-height:1.55}.broker-card-cta{background:var(--accent-blue);color:#fff;border-color:#bf1010;justify-content:center;min-height:48px;font-weight:800}.broker-card-cta:hover{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.user-download-current-action{background:#f7fbff;border:1px solid #cfd9e7;gap:8px;padding:12px;display:grid}.user-download-current-action-label{letter-spacing:.03em;text-transform:uppercase;color:#234b79;font-size:.8rem;font-weight:800}.user-download-current-action-text{color:#1e2f45;font-size:.94rem;font-weight:700;line-height:1.55}.user-download-current-action-details summary{cursor:pointer;color:#3f5b7c;font-size:.84rem;font-weight:700}.user-download-current-action-details p{color:#465b76;margin-top:6px;font-size:.86rem;line-height:1.6}.user-download-panel{background:#fff;border:1px solid #cdc6b9}.user-download-panel.is-embedded{box-shadow:none}.user-download-body{gap:14px;padding:18px;display:grid}.user-download-panel .wizard-inline-note{color:#4d5d72;font-size:.8rem;line-height:1.6}.user-download-note{background:#f8fafd;border:1px solid #d7d2c7;padding:10px 12px}.user-download-note-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ib-cta-card{background:linear-gradient(135deg,#eff6ff 0%,#f0fdf4 100%);border:2px solid #3b82f6;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.ib-cta-body{flex:1;gap:4px;min-width:0;display:grid}.ib-cta-badge{color:#1d4ed8;text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.ib-cta-title{font-size:var(--font-base);color:var(--text-primary);font-weight:700}.ib-cta-desc{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.5}.ib-cta-btn{white-space:nowrap;min-height:48px;font-size:var(--font-sm);padding:0 20px;font-weight:700}.user-download-intro-details{background:#f8fafd;border:1px solid #d7d2c7}.user-download-intro-summary{font-size:var(--font-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:8px 12px;list-style:none;display:flex}.user-download-intro-summary::-webkit-details-marker{display:none}.user-download-intro-summary:before{content:"▶";font-size:.6rem;transition:transform .15s}.user-download-intro-details[open] .user-download-intro-summary:before{transform:rotate(90deg)}.user-download-intro-body{font-size:var(--font-sm);color:var(--text-secondary);border-top:1px solid #d7d2c7;gap:8px;padding:8px 12px 12px;line-height:1.55;display:grid}.user-download-section{background:#fff;border:1px solid #cec8bb;gap:10px;padding:14px;display:grid}.user-download-shared-inputs{background:#fbfdff;border-color:#bfcde0}.user-download-section-eyebrow{color:#607089;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}.user-download-section-title{color:#1f2a38;font-size:1.02rem;font-weight:800}.user-download-step-hint{color:#4c607b;font-size:.9rem;line-height:1.55}.user-download-panel .property-label{color:#37485f;font-size:.86rem;font-weight:700}.user-download-panel .property-input,.user-download-panel .property-select{min-height:40px;font-size:.94rem}.user-download-panel .btn{min-height:40px;font-size:.9rem;font-weight:700}.user-download-extra-details>summary{cursor:pointer;color:#3f5b7c;font-size:.86rem;font-weight:700}.user-download-panel .wizard-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-download-legal{background:#fff9f9;border-color:#dfbdbd}.user-download-legal-details{gap:8px;display:grid}.user-download-legal-summary{cursor:pointer;color:#8b1f1f;font-size:.78rem;font-weight:800}.user-download-panel .delivery-flow-box{background:#fefefe;border-color:#c9c3b5;gap:10px;padding:12px}.user-download-panel .delivery-flow-title{color:#32455f;font-size:.78rem}.user-download-panel .delivery-flow-step{gap:4px;padding:9px 10px}.user-download-panel .delivery-flow-step-label{color:#213147;font-size:.82rem}.user-download-panel .delivery-flow-step-index{font-size:.68rem}.user-download-panel .delivery-flow-summary{color:#415873;font-size:.8rem}.user-status-refresh-row{gap:8px;display:grid}.user-status-refresh-note{color:#5a6b80;font-size:.78rem;line-height:1.5}.user-status-dashboard{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.user-status-card{background:#fff;border:1px solid #d2ccbf;border-left:4px solid #a4b3c7;gap:6px;padding:10px 11px;display:grid}.user-status-card.tone-success{background:#f6fcf9;border-left-color:#3aa675}.user-status-card.tone-pending{background:#fffaf3;border-left-color:#d8902f}.user-status-card.tone-danger{background:#fff8f8;border-left-color:#cb5b5b}.user-status-card-label{color:#5a6b80;font-size:.78rem;font-weight:700}.user-status-card-value{color:#1f2a38;font-size:1rem;font-weight:800}.user-status-card-note{color:#5a6b80;font-size:.75rem;line-height:1.45}.user-status-request-id{color:#455a75;background:#fcfcfb;border:1px dashed #d9d1c3;padding:8px 10px;font-size:.78rem}.user-status-linked{margin:0}.user-status-linked-title{margin-bottom:6px;font-size:.84rem;font-weight:700}.user-linked-accounts-list{gap:8px;display:grid}.user-linked-account-item{background:#fff;border:1px solid #d2ccbf;gap:4px;padding:10px;display:grid}.user-linked-account-main{color:#1f2a38;font-size:.84rem}.user-linked-account-sub{color:#5a6b80;font-size:.76rem;line-height:1.5}@media (max-width:880px){.user-status-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.user-status-dashboard{grid-template-columns:minmax(0,1fr)}}.wizard-inline-switch{border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);background:#ffffff05;align-items:center;gap:8px;margin-bottom:10px;padding:6px 10px;font-size:.7rem;display:inline-flex}.wizard-inline-switch input{accent-color:var(--accent-blue)}.wizard-strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.wizard-strategy-card{text-align:left;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff05;padding:10px}.wizard-strategy-card:hover{border-color:var(--border-secondary);color:var(--text-primary)}.wizard-strategy-card.active{color:var(--text-primary);background:#3b82f61f;border-color:#3b82f680}.wizard-strategy-title{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;font-size:.75rem;font-weight:700;display:flex}.wizard-strategy-desc{color:var(--text-tertiary);font-size:.68rem;line-height:1.5}.wizard-strategy-card.active .wizard-strategy-desc{color:var(--text-secondary)}.wizard-tag{border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;padding:1px 6px;font-size:.56rem;font-weight:700;display:inline-flex}.wizard-tag-recommend{color:#6ee7b7;background:#10b98129;border:1px solid #10b98152}.wizard-tag-caution{color:#fcd34d;background:#f59e0b2e;border:1px solid #f59e0b59}.wizard-tag-danger{color:#fca5a5;background:#ef44442e;border:1px solid #ef444459}.wizard-check{border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;font-size:.72rem;display:flex}.wizard-check input{accent-color:var(--accent-blue)}.wizard-summary{border-radius:var(--radius-sm);color:var(--text-secondary);background:#10b98114;border:1px solid #10b9814d;padding:8px 10px;font-size:.7rem;line-height:1.65}.wizard-risk-alert{border-radius:var(--radius-sm);background:#f59e0b1f;border:1px solid #f59e0b59;margin-bottom:8px;padding:8px 10px}.wizard-risk-alert-title{color:#fcd34d;margin-bottom:4px;font-size:.68rem;font-weight:700}.wizard-risk-alert ul{gap:2px;margin:0;padding-left:18px;display:grid}.wizard-risk-alert li{color:var(--text-secondary);font-size:.68rem;line-height:1.5}.wizard-check-confirm{background:#ef444414;border-color:#ef444459}.bt-guide-summary{border-radius:var(--radius-md);color:var(--text-secondary);background:#3b82f61a;border:1px solid #3b82f64d;padding:10px 12px;font-size:.74rem;line-height:1.65}.bt-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.bt-guide-card{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);padding:10px 12px}.bt-guide-card-title{color:var(--text-primary);margin-bottom:4px;font-size:.72rem;font-weight:700}.bt-guide-card ul{gap:2px;margin:0;padding-left:18px;display:grid}.bt-guide-card li{color:var(--text-secondary);font-size:.7rem;line-height:1.5}.bt-guide-note{border-radius:var(--radius-sm);color:var(--text-secondary);background:#f59e0b1a;border:1px solid #f59e0b4d;padding:8px 10px;font-size:.69rem;line-height:1.6}.bt-compare-preset{border-radius:var(--radius-md);background:#10b98114;border:1px solid #10b9814d;gap:6px;padding:10px 12px;display:grid}.bt-compare-preset-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.bt-compare-preset-title{color:#6ee7b7;font-size:.7rem;font-weight:700}.bt-compare-preset-row{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:10px;font-size:.68rem;display:flex}.wizard-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.chart-preview-modal{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;flex-direction:column;width:min(96vw,1240px);max-width:1240px;height:min(92vh,920px);max-height:92vh;display:flex;overflow:hidden}.chart-preview-modal input,.chart-preview-modal textarea,.chart-preview-modal select{-webkit-user-select:text;user-select:text}.chart-preview-body{flex:1;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:14px;min-height:0;padding:14px;display:grid;overflow:hidden}.chart-preview-sidebar{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#faf8f2;min-height:0;padding:14px 14px 24px;scroll-padding-bottom:24px;overflow-y:auto}.chart-preview-stage{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);flex-direction:column;gap:12px;min-height:0;padding:10px;display:flex;overflow-y:auto}.chart-preview-controls{grid-template-columns:1fr;align-items:start;gap:10px;display:grid}.chart-preview-controls-title{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--border-primary);grid-column:1/-1;padding-top:4px;padding-bottom:4px;font-size:.7rem;font-weight:700}.chart-preview-controls-title:first-child{padding-top:0}.chart-preview-step-gap{margin-top:16px}.chart-preview-field-gap{margin-top:8px}.chart-preview-controls .property-field{margin-bottom:0}.chart-preview-inline-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.chart-preview-sl-tp-grid .property-input{font-size:var(--font-md);font-weight:600}.chart-preview-filter-select{background:#f7f5ef}.chart-preview-intro-note{color:#35506f;border-radius:var(--radius-md);background:#f4f8fe;border:1px solid #2c425c2e;margin:0 0 8px;padding:10px 12px;line-height:1.55}.chart-preview-hint-note{align-items:flex-start;gap:8px;margin:0;display:flex}.chart-preview-hint-icon{color:#2c425c;border:1px solid #2c425c59;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:1px;font-size:.66rem;font-weight:700;display:inline-flex}.chart-preview-text-entry{color:#10b981;font-weight:700}.chart-preview-text-sl,.chart-preview-label-sl{color:#c53030;font-weight:700}.chart-preview-text-tp,.chart-preview-label-tp{color:#2b6cb0;font-weight:700}.chart-preview-tf-grid{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:6px;display:grid}.chart-preview-tf-pill{border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-height:32px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:#f7f5ef;justify-content:flex-start;align-items:center;gap:6px;padding:4px 8px;font-size:.68rem;font-weight:600;display:flex}.chart-preview-tf-pill input{accent-color:var(--accent-blue)}.chart-preview-tf-pill small{color:#fbbf24;letter-spacing:.02em;margin-left:auto;font-size:.6rem}.chart-preview-tf-pill.is-approx{background:#fbbf2414;border-color:#fbbf2473}.chart-preview-tf-note{font-size:var(--font-xs);color:#fbbf24;margin-top:6px;line-height:1.35}.chart-preview-controls .property-input:disabled{opacity:.55;cursor:not-allowed}.chart-preview-check{align-items:center;gap:var(--space-sm);font-size:var(--font-sm);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#f7f5ef;height:auto;min-height:40px;padding:8px 10px;line-height:1.35;display:inline-flex}.chart-preview-check input{accent-color:var(--accent-blue)}.chart-preview-main{gap:var(--space-sm)var(--space-md);grid-template-columns:minmax(0,2fr) minmax(320px,1fr);grid-template-areas:"canvas side""legend side";align-items:start;min-height:0;display:grid}.chart-preview-actions{border-top:1px solid var(--border-primary);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:8px;min-height:36px;margin-top:2px;padding-top:8px;display:inline-flex}.chart-preview-actions-sticky{background:0 0;margin-top:12px;padding-top:10px;padding-bottom:0;position:static}.chart-preview-mobile-nav,.chart-preview-mobile-footer,.chart-preview-stage-toolbar{display:none}.chart-preview-stage-fullscreen-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:#fff;padding:6px 10px;font-size:.72rem;font-weight:700}.chart-preview-guide{border:1px solid #d8d0c0;border-left:4px solid var(--accent-vermilion);border-radius:var(--radius-md);background:linear-gradient(#fffffffa,#faf7f1f0);grid-template-columns:minmax(170px,220px) minmax(0,1fr);align-items:start;gap:6px 10px;padding:8px 12px;display:grid;box-shadow:0 6px 16px #1118270a}.chart-preview-guide-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chart-preview-guide-kicker{display:none}.chart-preview-guide-title{color:#172033;font-size:.86rem;font-weight:900;line-height:1.35}.chart-preview-guide-steps{grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.chart-preview-guide-steps span{border-radius:var(--radius-sm);color:#263241;text-align:center;background:#fbf8f1;border:1px solid #d8d0c0;justify-content:center;align-items:center;min-height:30px;padding:5px 6px;font-size:.7rem;font-weight:900;display:flex}.chart-preview-guide-foot{color:#53606d;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 12px;font-size:.73rem;line-height:1.55;display:flex}.chart-preview-guide-foot span:not(.chart-preview-guide-legend){display:none}.chart-preview-guide-next{border-radius:var(--radius-sm);color:#4b352b;background:#fff4ea;border:1px solid #c4492d4d;grid-column:1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;padding:6px 8px;font-size:.68rem;line-height:1.45;display:grid}.chart-preview-guide-next-label{border-radius:var(--radius-full);background:var(--accent-vermilion);color:#fff;white-space:nowrap;align-items:center;min-height:22px;padding:2px 7px;font-size:.62rem;font-weight:900;display:inline-flex}.chart-preview-line-map{grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.chart-preview-line-map-item{border-radius:var(--radius-sm);color:#263241;background:#fffefa;border:1px solid #d8d0c0;align-items:center;min-height:30px;padding:5px 6px;font-size:.66rem;font-weight:900;line-height:1.3;display:flex}.chart-preview-line-map-item:before{content:"";border-radius:999px;flex-shrink:0;width:9px;height:9px;margin-right:6px}.chart-preview-line-map-item--entry{border-left:3px solid #10b981}.chart-preview-line-map-item--entry:before{background:#10b981}.chart-preview-line-map-item--sl{border-left:3px solid #ef4444}.chart-preview-line-map-item--sl:before{background:#ef4444}.chart-preview-line-map-item--tp{border-left:3px solid #3b82f6}.chart-preview-line-map-item--tp:before{background:#3b82f6}.chart-preview-guide-legend{border-radius:var(--radius-full);color:#4d5662;white-space:nowrap;background:#fbf8f1;border:1px solid #d8d0c0;align-items:center;padding:2px 8px;font-weight:900;display:inline-flex}.chart-preview-guide-settings-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#1d3557;border:1px solid #1d355752;flex-shrink:0;min-height:34px;padding:6px 10px;font-size:.72rem;font-weight:900}.chart-preview-stage.is-fullscreen{z-index:3200;background:var(--bg-card);border:none;border-radius:0;flex-direction:column;margin:0;padding:10px;display:flex;position:fixed;inset:0;overflow:hidden}.chart-preview-stage.is-fullscreen .chart-preview-guide,.chart-preview-stage.is-fullscreen-mobile .chart-preview-guide,.chart-preview-stage.is-fullscreen .chart-preview-summary{display:none}.chart-preview-stage.is-fullscreen .chart-preview-canvas-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.chart-preview-stage.is-fullscreen .chart-preview-svg{aspect-ratio:auto;flex:1;width:100%;height:100%;max-height:none}@media screen and (max-width:768px) and (orientation:portrait){.chart-preview-stage.is-fullscreen{transform-origin:0 0;background:var(--bg-card);z-index:9999;width:100vh;height:100vw;padding:12px;inset:0 auto auto 100vw;overflow:hidden;transform:rotate(90deg)}}.chart-preview-stage.is-fullscreen-mobile .chart-preview-summary{display:none}.chart-preview-stage.is-fullscreen-mobile .chart-preview-canvas-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.chart-preview-stage.is-fullscreen-mobile .chart-preview-svg{aspect-ratio:auto;flex:1;width:100%;height:100%;max-height:none}.chart-preview-build-btn{letter-spacing:.01em;justify-content:center;width:100%;min-height:44px;font-size:.95rem}.chart-preview-sidebar,.chart-preview-stage{scrollbar-width:thin;scrollbar-color:#c0baa9 #f3f1ea}.chart-preview-sidebar::-webkit-scrollbar{width:8px}.chart-preview-stage::-webkit-scrollbar{width:8px}.chart-preview-sidebar::-webkit-scrollbar-track{background:#f3f1ea;border-radius:999px}.chart-preview-stage::-webkit-scrollbar-track{background:#f3f1ea;border-radius:999px}.chart-preview-sidebar::-webkit-scrollbar-thumb{background:#c0baa9;border:2px solid #f3f1ea;border-radius:999px}.chart-preview-stage::-webkit-scrollbar-thumb{background:#c0baa9;border:2px solid #f3f1ea;border-radius:999px}.chart-preview-canvas-wrap{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:contain;min-height:380px;padding:8px;position:relative;overflow:hidden}.chart-preview-canvas-wrap *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.chart-preview-svg .draggable-line,.chart-preview-svg .draggable-line *{touch-action:none;-ms-touch-action:none}.chart-preview-svg{aspect-ratio:1000/460;border-radius:calc(var(--radius-md) - 2px);width:100%;height:auto;max-height:min(56vh,560px);display:block}.chart-preview-svg text{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.chart-preview-svg.is-manual{cursor:crosshair}.chart-preview-dragging,.chart-preview-dragging body{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.chart-preview-click-hint{font-size:var(--font-xs);color:var(--accent-cyan);margin-top:8px}.chart-preview-legend{font-size:var(--font-xs);color:var(--text-secondary);flex-wrap:wrap;grid-area:legend;gap:8px 12px;padding-left:2px;display:flex}.chart-preview-legend span{align-items:center;gap:6px;display:inline-flex}.chart-preview-legend i{border-radius:2px;width:10px;height:10px;display:inline-block}.chart-preview-acquire{border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-sm);color:var(--text-secondary);background:#f7f5ef;align-self:stretch;overflow:auto}.chart-preview-acquire-head{border-bottom:1px solid var(--border-primary);margin-bottom:12px;padding-bottom:10px}.chart-preview-acquire-title{font-size:var(--font-sm);color:var(--text-primary);letter-spacing:.02em;margin-bottom:4px;font-weight:700}.chart-preview-acquire-subtitle{font-size:var(--font-xs);color:var(--text-tertiary);margin:0;line-height:1.6}.chart-preview-logic-card{border:1px solid var(--border-primary);background:var(--bg-card);border-radius:var(--radius-md);padding:10px}.chart-preview-section-label{font-size:var(--font-xs);color:var(--text-secondary);margin-bottom:6px;font-weight:700}.chart-preview-acquire ul{gap:4px;margin:0;padding-left:18px;display:grid}.chart-preview-acquire li{font-size:var(--font-xs);color:var(--text-secondary);line-height:1.5}.chart-preview-confirm{border:1px solid var(--border-primary);background:var(--bg-tertiary);border-radius:var(--radius-md);margin-top:12px;padding:10px}.chart-preview-confirm-title{font-size:var(--font-xs);color:var(--text-primary);margin-bottom:4px;font-weight:700}.chart-preview-confirm p{font-size:var(--font-xs);color:var(--text-secondary);margin:0;line-height:1.5}.chart-preview-confirm-metrics{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.chart-preview-confirm-metrics span{color:var(--text-secondary);border:1px solid var(--border-primary);background:#fff;border-radius:999px;padding:3px 8px;font-size:11px}.chart-preview-confirm-metrics strong{color:var(--text-primary)}.chart-preview-confirm-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:inline-flex}.chart-preview-manual-list{border-top:1px solid #ddd8cf;margin-top:12px;padding-top:10px}.chart-preview-manual-title{font-size:var(--font-xs);color:#2b3138;margin-bottom:6px;font-weight:700}.chart-preview-manual-items{gap:6px;display:grid}.chart-preview-manual-item{background:#fff;border:1px solid #dfdbd2;border-radius:6px;justify-content:space-between;align-items:flex-start;gap:8px;padding:8px;display:flex}.chart-preview-manual-main{flex:1;gap:8px;min-width:0;display:grid}.chart-preview-manual-head{color:#2f343b;font-size:11px;font-weight:700;line-height:1.4}.chart-preview-manual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.chart-preview-manual-field{gap:4px;display:grid}.chart-preview-manual-field>span{color:#6b7280;letter-spacing:.01em;font-size:10px;font-weight:600}.chart-preview-manual-field .property-input,.chart-preview-manual-field .property-select{padding:6px 8px;font-size:11px}.chart-preview-manual-toggle .chart-preview-check{min-height:30px;padding:4px 8px;font-size:11px}.chart-preview-manual-caption{color:#59636f;font-size:10px;line-height:1.4}.chart-preview-manual-risk{color:#475569;font-size:10px;font-weight:600;line-height:1.4}.chart-preview-manual-risk.is-good{color:#15803d}.chart-preview-manual-risk.is-caution{color:#b45309}.chart-preview-manual-risk.is-bad{color:#b91c1c}.chart-preview-manual-item:hover{background:#f4f3ef;border-color:#cfc9be}.chart-preview-event-list{border-top:1px solid #ddd8cf;margin-top:12px;padding-top:10px}.chart-preview-event-items{gap:6px;max-height:280px;padding-right:2px;display:grid;overflow:auto}.chart-preview-event-item{color:#4b5563;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfdbd2;border-radius:6px;align-items:flex-start;gap:8px;width:100%;padding:7px 8px;font-family:inherit;display:flex}.chart-preview-event-item:hover{background:#f4f3ef;border-color:#cfc9be}.chart-preview-event-item.active{border-color:#2f4a678c;box-shadow:0 0 0 1px #2f4a6733}.chart-preview-event-dot{border-radius:999px;flex-shrink:0;width:9px;height:9px;margin-top:3px}.chart-preview-event-main{gap:2px;min-width:0;display:grid}.chart-preview-event-main strong{color:#2f343b;font-size:11px;font-weight:700;line-height:1.4}.chart-preview-event-main span{color:#4b5563;font-size:11px;line-height:1.45}@media (max-width:1640px){.header-subtitle,.header-tagline{display:none}}@media (max-width:1520px){.header{gap:8px 10px}.header-right{gap:6px}.header-action-group{gap:6px;padding-left:6px}.header-action-btn{padding:7px 9px;font-size:.74rem}}@media (max-width:1380px){.header{padding:8px var(--space-md)}.header-right{flex-basis:100%;justify-content:flex-start}.header-quick-actions{margin-left:auto}.header-action-group{border-left:none;padding-left:0}.header-action-group--create{order:1}.header-action-group--filters{order:2}.header-action-group--manage{order:3}.header-action-group--advanced{order:4;margin-left:auto}.chart-preview-body{grid-template-columns:1fr;gap:12px;overflow-y:auto}.chart-preview-sidebar{max-height:44vh;padding-bottom:14px}.chart-preview-stage{overflow-y:auto}}@media (max-width:1180px){.chart-preview-body{grid-template-columns:1fr}}@media (max-width:900px){.chart-preview-tf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal.modal-lg{width:min(98vw,760px);max-height:92vh;overflow:hidden}.modal-lg .modal-body-split{flex-direction:column;display:flex;overflow:hidden}.modal-lg .template-list{border-right:none;border-bottom:1px solid var(--border-primary);width:100%;max-height:44vh}.modal-lg .template-preview{min-height:0;padding:var(--space-lg);flex:1;overflow-y:auto}.modal-lg .template-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}}@media (max-width:760px){.chart-preview-modal{width:96%;max-height:92vh}.chart-preview-body{gap:10px;padding:12px}.chart-preview-sidebar{max-height:100vh;padding-bottom:16px}.chart-preview-canvas-wrap{min-height:260px}}.modal-close{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);background:0 0;border:none;padding:6px;font-size:20px}.modal-close:hover{color:var(--text-primary);background:#ffffff0f}.flow-guide{margin:var(--space-sm)var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);background:#3b82f60d;border:1px solid #3b82f61f}.flow-guide-title{font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-sm);font-weight:600}.flow-guide-steps{flex-direction:column;gap:2px;display:flex}.flow-guide-step{align-items:center;gap:var(--space-sm);display:flex}.flow-guide-step-num{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex}.flow-guide-step-text{font-size:var(--font-xs);flex-direction:column;line-height:1.3;display:flex}.flow-guide-step-text strong{color:var(--text-primary);font-weight:600}.flow-guide-step-text span{color:var(--text-muted);font-size:.65rem}.flow-guide-arrow{color:var(--text-muted);text-align:center;padding-left:4px;font-size:10px;line-height:1}.palette-category-desc{color:var(--text-muted);background:#f5f4efd9;border-bottom:1px dashed #d1cdc3cc;padding:8px 12px;font-size:.65rem;line-height:1.5}.palette-tooltip{margin:0 var(--space-md)var(--space-sm);padding:var(--space-sm)var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);animation:.15s fadeIn}.palette-tooltip-desc{font-size:var(--font-xs);color:var(--text-secondary);margin-bottom:var(--space-xs);line-height:1.5}.palette-tooltip-hint{color:var(--accent-cyan);padding-top:var(--space-xs);border-top:1px solid var(--border-primary);font-size:.65rem;line-height:1.4}.handle-label{color:#cfd6df;border-radius:var(--radius-full);text-overflow:ellipsis;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;white-space:nowrap;z-index:5;background:#131928e6;border:1px solid #96a5b838;align-items:center;gap:4px;max-width:96px;padding:1px 6px;font-size:9px;font-weight:500;display:flex;position:absolute;overflow:hidden;transform:translate(-100%,-50%)}.handle-label-left{justify-content:flex-end;left:-10px}.handle-label-right{right:-10px;transform:translate(100%,-50%)}.handle-label-name{color:var(--text-secondary);font-weight:600}.handle-label-type{opacity:.8;background:#fff;border:1px solid #ffffff0f;border-radius:3px;padding:0 3px;font-size:8px;font-weight:500;line-height:14px}.property-description{padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--border-primary)}.property-description p{font-size:var(--font-xs);color:var(--text-secondary);margin:0;line-height:1.6}.property-connect-hint{margin-top:var(--space-sm);padding:var(--space-sm)var(--space-md);border-radius:var(--radius-sm);color:var(--accent-cyan);background:#06b6d40f;border:1px solid #06b6d41f;font-size:.65rem;line-height:1.5}.property-connect-hint-label{text-transform:uppercase;letter-spacing:.06em;color:#06b6d499;margin-bottom:2px;font-size:.6rem;font-weight:600;display:block}.modal-lg{flex-direction:column;width:min(96vw,1480px);max-width:1480px;height:min(90vh,980px);max-height:92vh;display:flex;overflow:hidden}.modal-body-split{flex:1;min-height:0;display:flex;overflow:hidden}.template-mobile-nav{display:none}.template-mobile-nav-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#f7f5ef;padding:8px 10px;font-size:.8rem;font-weight:700}.template-mobile-nav-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.template-mobile-nav-btn:disabled{opacity:.45;cursor:not-allowed}.template-mobile-back{display:none}.template-list{border-right:1px solid var(--border-primary);background:#fcfbf8;flex-shrink:0;width:clamp(360px,34vw,520px);overflow-y:auto}.template-list-toolbar{z-index:2;padding:var(--space-sm)var(--space-md);border-bottom:1px solid var(--border-primary);background:#f7f5ef;gap:8px;display:grid;position:sticky;top:0}.template-toolbar-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.template-toolbar-title{color:var(--text-primary);font-size:.78rem;font-weight:700}.template-toolbar-hint{color:var(--text-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:#fff;padding:7px 8px;font-size:.68rem;line-height:1.45}.template-list-count{color:var(--text-muted);font-size:.65rem}.template-control-grid{grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px;display:grid}.template-control-label{color:var(--text-muted);white-space:nowrap;font-size:.68rem;font-weight:600}.template-control-select{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:100%;min-height:36px;color:var(--text-primary);background:#fff;padding:7px 10px;font-size:.8rem}.template-control-select:focus{outline-offset:0;outline:2px solid #3b82f633}.template-search-wrap{border-bottom:1px solid var(--border-primary);background:#fcfbf8;padding:10px 12px}.template-search-input{border:1px solid var(--border-primary);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:#fff;padding:8px 10px;font-size:.8rem}.template-search-input:focus{outline-offset:0;outline:2px solid #3b82f633}.template-quick-start{border-radius:var(--radius-md);background:#10b98114;border:1px solid #10b98159;gap:6px;margin:10px 12px;padding:10px;display:grid}.template-quick-start-title{color:#047857;font-size:.75rem;font-weight:700}.template-quick-start-desc{color:#065f46;font-size:.72rem;line-height:1.45}.template-quick-start-btn{justify-content:center;width:100%;padding:7px 10px;font-size:.78rem}.template-list-empty{border-radius:var(--radius-md);border:1px dashed var(--border-secondary);color:var(--text-secondary);margin:10px 12px;padding:12px;font-size:.75rem;line-height:1.5}.template-list-item{border-bottom:1px solid var(--border-primary);cursor:pointer;transition:all var(--transition-fast);gap:12px;padding:14px 12px;display:flex}.template-list-item:hover{background:var(--bg-card-hover)}.template-list-item.active{border-left:3px solid var(--accent-blue);background:#3b82f614}.template-list-icon{border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border-secondary);width:40px;height:40px;color:var(--accent-blue);flex-shrink:0;justify-content:center;align-items:center;display:flex}.template-list-info{min-width:0}.template-list-name{color:var(--text-primary);margin-bottom:4px;font-size:.95rem;font-weight:600}.template-selected-badge{border-radius:var(--radius-full);letter-spacing:.03em;color:#1e3a8a;background:#3b82f61f;border:1px solid #3b82f64d;align-items:center;margin-left:6px;padding:1px 6px;font-size:.58rem;font-weight:700;display:inline-flex}.template-recommended-badge{border-radius:var(--radius-full);letter-spacing:.03em;color:#fef3c7;background:#f59e0b29;border:1px solid #f59e0b4d;align-items:center;margin-bottom:4px;padding:1px 6px;font-size:.58rem;font-weight:700;display:inline-flex}.template-list-desc{color:var(--text-tertiary);font-size:.78rem;line-height:1.52}.template-list-metrics{color:var(--text-secondary);flex-wrap:wrap;gap:8px;margin-top:6px;font-size:.69rem;display:flex}.template-tags{margin-top:var(--space-xs);flex-wrap:wrap;gap:4px;display:flex}.template-tag{border:1px solid var(--border-primary);border-radius:var(--radius-full);color:var(--text-tertiary);background:#fff;padding:1px 6px;font-size:.6rem}.template-preview{padding:var(--space-xl);flex:1;min-width:0;overflow-y:auto}.template-preview-empty{justify-content:center;align-items:center;gap:var(--space-md);height:100%;color:var(--text-muted);font-size:var(--font-sm);text-align:center;flex-direction:column;display:flex}.template-preview-sticky{top:calc(-1*var(--space-xl));z-index:3;margin:calc(-1*var(--space-xl))calc(-1*var(--space-xl))var(--space-lg);padding:12px var(--space-xl);border-bottom:1px solid var(--border-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f5eff5;position:sticky}.template-preview-sticky-caption{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:.66rem;font-weight:700}.template-preview-sticky-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.template-preview-sticky-name{font-size:var(--font-sm);color:var(--text-primary);font-weight:700}.template-load-btn-inline{flex-shrink:0;padding:8px 14px;font-size:.78rem}.template-preview-header h3{font-size:var(--font-lg);margin-bottom:var(--space-md);font-weight:700}.template-meta-row{gap:var(--space-lg);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.template-meta-item{font-size:var(--font-xs);color:var(--text-secondary);flex-direction:column;gap:2px;display:flex}.template-meta-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.6rem;font-weight:600}.template-difficulty{align-items:center;gap:4px;display:flex}.diff-dot{background:var(--border-secondary);border-radius:50%;width:6px;height:6px}.diff-dot.active{background:var(--accent-orange)}.template-explanation{margin-bottom:var(--space-lg);padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.template-explanation-title{color:var(--text-secondary);margin-bottom:8px;font-size:.75rem;font-weight:700}.template-explanation p{font-size:var(--font-sm);color:var(--text-secondary);margin-bottom:var(--space-sm);line-height:1.7}.template-explanation p:last-child{margin-bottom:0}.template-guide-grid{margin-bottom:var(--space-lg);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.template-guide-card{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#fbfaf7;gap:6px;padding:10px;display:grid}.template-guide-title{color:var(--text-secondary);font-size:.68rem;font-weight:700}.template-guide-text{color:var(--text-tertiary);font-size:.74rem;line-height:1.5}.template-guide-list{gap:4px;margin:0;padding-left:16px;display:grid}.template-guide-list li{color:var(--text-tertiary);font-size:.74rem;line-height:1.45}.template-flow{margin-bottom:var(--space-xl)}.template-flow-title{font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-md);font-weight:600}.template-flow-diagram{flex-direction:column;gap:0;display:flex}.template-flow-node{align-items:flex-start;gap:var(--space-md);padding:var(--space-sm)0;display:flex}.template-flow-node-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px;box-shadow:0 0 6px}.template-flow-node-content{min-width:0}.template-flow-node-label{font-size:var(--font-sm);color:var(--text-primary);font-weight:600}.template-flow-node-note{font-size:var(--font-xs);color:var(--text-tertiary);margin-top:1px;line-height:1.4}.template-flow-connector{background:var(--border-secondary);border-radius:1px;width:2px;height:12px;margin-left:4px}.template-reasons{margin-bottom:var(--space-xl)}.template-reasons-title{font-size:var(--font-sm);color:var(--text-primary);margin-bottom:var(--space-md);font-weight:700}.template-reasons-list{gap:var(--space-md);flex-direction:column;display:flex}.template-reason{padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);border-left:3px solid var(--accent-blue)}.template-reason-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);font-size:var(--font-sm);font-weight:600;display:flex}.template-reason-from{color:var(--accent-blue)}.template-reason-arrow{color:var(--text-muted);font-size:14px}.template-reason-to{color:var(--accent-green)}.template-reason-why{font-size:var(--font-xs);color:var(--text-secondary);line-height:1.6}.btn-lg{font-size:var(--font-base);padding:10px 24px}.template-load-btn{justify-content:center;width:100%}.empty-canvas{pointer-events:none;z-index:1;background:radial-gradient(at top,#c4492d06,#0000 60%),radial-gradient(at bottom,#1d355706,#0000 60%);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:clamp(28px,5vh,56px) 18px clamp(20px,4vh,48px);animation:.5s both emptyFadeIn;display:flex;position:absolute;inset:0;overflow:auto}@keyframes emptyFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.empty-canvas-icon{border-radius:var(--radius-md);width:68px;height:68px;color:var(--accent-blue);box-shadow:var(--shadow-sm);pointer-events:auto;background:linear-gradient(#1d355714,#ffffffe0);border:1px solid #1d355714;place-items:center;margin-bottom:2px;display:grid}.empty-canvas-title{font-family:var(--font-serif);color:var(--text-primary);text-align:center;text-wrap:balance;pointer-events:auto;max-width:560px;margin:0;font-size:clamp(1.5rem,2.25vw,2rem);font-weight:700;line-height:1.35}.empty-canvas-why{border-radius:var(--radius-full);color:var(--accent-green);font-size:var(--font-xs);text-align:center;pointer-events:auto;background:#2f5d5014;border:1px solid #2f5d5038;max-width:380px;margin-bottom:6px;padding:6px 16px}.empty-canvas-cta-stack{pointer-events:auto;flex-direction:column;align-items:center;gap:10px;display:flex}.empty-canvas-cta{width:min(320px,100vw - 48px);min-height:48px;font-size:var(--font-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-weight:750;display:flex}.empty-canvas-cta:hover{box-shadow:var(--shadow-md);border-color:var(--accent-blue);transform:translateY(-1px)}.empty-canvas-cta:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.empty-canvas-cta--primary{border:1px solid var(--accent-blue);background:var(--accent-blue);color:#fff;box-shadow:var(--shadow-md)}.empty-canvas-cta--primary:hover{color:#fff;box-shadow:var(--shadow-lg);background:#132946;border-color:#132946}.empty-canvas-manual{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px dashed var(--border-primary);color:var(--text-tertiary);font-size:var(--font-sm);text-align:center;pointer-events:auto;max-width:360px;line-height:1.7}.empty-canvas-manual strong{color:var(--text-secondary);font-size:var(--font-sm);margin-bottom:6px;font-weight:700;display:block}.empty-canvas-trust{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:6px;max-width:380px;margin-top:10px;display:flex}.empty-canvas-trust span{border-radius:var(--radius-full);background:var(--bg-card);color:var(--accent-green);font-size:var(--font-xs);border:1px solid #2f5d504d;padding:3px 10px;font-weight:700}.empty-canvas-note{border:1px solid var(--border-primary);border-left:3px solid var(--accent-vermilion);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:var(--font-xs);text-align:center;pointer-events:auto;max-width:340px;margin-top:6px;padding:8px 14px}.empty-canvas-guide{margin-top:var(--space-xs);color:var(--accent-blue);font:inherit;font-size:var(--font-xs);cursor:pointer;text-underline-offset:3px;pointer-events:auto;background:0 0;border:0;padding:6px 8px;font-weight:700;text-decoration:underline}.empty-canvas-guide:hover{color:#15273f}.empty-canvas-guide:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.empty-canvas .btn{pointer-events:auto}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);font-size:var(--font-xs);color:var(--text-secondary);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);padding:4px 8px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip:hover:after{opacity:1}.toast{align-items:center;gap:var(--space-sm);padding:var(--space-md)var(--space-xl);border-radius:var(--radius-sm);font-size:var(--font-sm);z-index:9999;box-shadow:var(--shadow-xl);white-space:nowrap;background:var(--bg-card);border:1px solid var(--border-secondary);color:var(--text-primary);font-weight:600;animation:.35s cubic-bezier(.34,1.56,.64,1) toastSlideUp;display:flex;position:fixed;bottom:44px;left:50%;transform:translate(-50%)}.toast-error{color:#b91c1c;background:#fdf2f2;border:1px solid #f87171}.toast-info{color:#15803d;background:#f0fdf4;border:1px solid #4ade80}.toast-icon{border-radius:999px;flex-shrink:0;width:10px;height:10px}.toast-icon.is-error{background:#ef4444;box-shadow:0 0 0 1px #ef444459}.toast-icon.is-info{background:#10b981;box-shadow:0 0 0 1px #10b98159}.toast-message{line-height:1.4}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%)translateY(24px)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.react-flow__connection-path{stroke-width:2px!important}.type-legend{margin:var(--space-sm)var(--space-md);padding:var(--space-sm)var(--space-md);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:#ffffff05}.type-legend-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-xs);font-size:.6rem;font-weight:600}.type-legend-items{flex-direction:column;gap:3px;display:flex}.type-legend-item{align-items:center;gap:var(--space-sm);color:var(--text-tertiary);font-size:.65rem;display:flex}.type-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}@media (max-width:900px){.wizard-strategy-grid,.bt-guide-grid{grid-template-columns:1fr}}@media (max-width:760px){.wizard-step-row{grid-template-columns:1fr}.wizard-actions{flex-direction:column;align-items:stretch}}.admin-body{padding:20px;display:block;overflow:auto}.admin-container{gap:12px;max-width:980px;margin:0 auto;display:grid}.admin-container--narrow{gap:12px;max-width:640px;margin:0 auto;display:grid}.admin-card{border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:12px}.admin-card--grid{gap:10px;display:grid}.admin-section-title{font-size:var(--font-sm);margin-bottom:8px;font-weight:600}.admin-section-title--inline{font-size:var(--font-sm);font-weight:600}.admin-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.admin-two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-add-row{grid-template-columns:1fr auto;gap:8px;display:grid}.admin-btn-row{flex-wrap:wrap;gap:8px;display:flex}.admin-list{gap:8px;display:grid}.admin-scrollable{max-height:280px;padding-right:4px;overflow:auto}.admin-scrollable--tall{max-height:300px;padding-right:4px;overflow:auto}.admin-account-row{grid-template-columns:1fr auto auto;align-items:center;gap:8px;display:grid}.admin-account-row--two-col{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.admin-row-info{gap:2px;display:grid}.admin-meta{font-size:var(--font-xs);color:var(--text-tertiary)}.admin-meta--secondary{font-size:var(--font-xs);color:var(--text-secondary)}.admin-log-entry{border:1px solid var(--border-primary);border-radius:var(--radius-sm);gap:4px;padding:8px;display:grid}.admin-delivery-entry{border:1px solid var(--border-primary);border-radius:var(--radius-sm);gap:6px;padding:8px;display:grid}.admin-delivery-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-delivery-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-delivery-compile{grid-template-columns:minmax(170px,240px) auto;align-items:center;gap:8px;display:grid}@media (max-width:768px){.admin-delivery-compile{grid-template-columns:1fr}}.admin-email-row{border-bottom:1px solid var(--border-primary);grid-template-columns:1fr auto;align-items:center;gap:8px;padding-bottom:6px;display:grid}.admin-email-address{font-size:var(--font-sm);font-weight:500}.admin-badge-allow{font-size:var(--font-xs);color:#10b981}.admin-badge-deny{font-size:var(--font-xs);color:#ef4444}.mobile-menu-btn{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:none}.mobile-menu-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.mobile-sidebar-toggle{z-index:90;border-radius:var(--radius-full);border:1px solid var(--border-secondary);background:var(--bg-card);width:auto;min-width:80px;height:42px;color:var(--text-secondary);box-shadow:var(--shadow-lg);cursor:pointer;letter-spacing:.02em;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:.68rem;font-weight:700;display:none;position:fixed}.mobile-sidebar-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:scale(1.05)}.mobile-sidebar-toggle--palette{color:#2c425c;background:#f5f9ff;border-color:#2c425c59;bottom:72px;left:12px}.mobile-sidebar-toggle--property{color:#6b4a2d;background:#fff8ef;border-color:#c0562159;bottom:72px;right:12px}.mobile-sidebar-toggle-label{line-height:1}.mobile-sidebar-toggle svg{flex-shrink:0;width:16px;height:16px}.mobile-sidebar-close{border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:none}.mobile-sidebar-close:hover{color:#ef4444;background:#ef44441a}.mobile-drawer-close,.mobile-menu-note{display:none}.mobile-action-bar{z-index:90;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);gap:6px;padding:4px 8px;display:none;position:fixed;bottom:36px;left:50%;transform:translate(-50%)}.mobile-action-btn{width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-action-btn:active{background:var(--bg-tertiary);color:var(--text-primary)}.mobile-action-btn--danger:active{color:#ef4444;background:#ef444426}.mobile-overlay{z-index:199;background:#1a1e2473;animation:.2s fadeIn;display:none;position:fixed;inset:0}@media (max-width:768px){:root{--header-height:52px;--palette-width:100%;--property-width:100%}.btn{min-height:40px;font-size:var(--font-sm);padding:8px 14px}.btn-sm{min-height:36px;padding:6px 10px}.welcome-banner{align-items:stretch;gap:var(--space-sm);grid-template-columns:1fr;padding:10px 12px;display:grid}.welcome-banner-text{text-align:left;overflow-wrap:anywhere;min-width:0}.welcome-banner-actions{justify-content:space-between;width:100%}.welcome-banner-cta{flex:auto;justify-content:center}.mobile-menu-btn,.mobile-sidebar-toggle,.mobile-action-bar{display:flex}.app.mobile-overlays-open .mobile-sidebar-toggle,.app.mobile-overlays-open .mobile-action-bar{opacity:0;pointer-events:none;transform:scale(.9)}.mobile-sidebar-close{display:flex}.mobile-overlay.is-visible{display:block}.header{min-height:var(--header-height);flex-wrap:nowrap;gap:8px;padding:6px 12px}.header-left{flex:1;min-width:0}.header-logo{font-size:var(--font-base);gap:6px}.header-logo--image{width:150px;height:36px}.header-logo-icon{width:28px;height:28px;font-size:13px}.header-subtitle,.header-center{display:none}.header-project-input{width:100px;font-size:var(--font-xs);padding:5px 6px}.header-right{background:var(--bg-surface);border-left:1px solid var(--border-primary);width:min(320px,85vw);height:100vh;box-shadow:var(--shadow-xl);z-index:300;flex-flow:column;justify-content:flex-start;align-items:stretch;gap:12px;padding:16px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%)}.header-quick-actions{gap:6px;margin-left:0}.header-right.mobile-open{transform:translate(0)}.header-action-group{border-left:none;border-top:1px solid var(--border-primary);flex-direction:column;align-items:stretch;gap:8px;padding-top:12px;padding-left:0}.header-action-group--advanced{margin-left:0}.header-right .header-action-group:first-of-type{border-top:none;padding-top:0}.mobile-project-editor{border-bottom:1px solid var(--border-primary);gap:6px;padding:0 0 10px;display:grid}.mobile-project-label{font-size:var(--font-xs);color:var(--text-secondary);letter-spacing:.02em;font-weight:700}.mobile-project-input{text-align:left;width:100%;font-size:var(--font-sm)}.header-right .btn{justify-content:flex-start;width:100%}.header-save-menu{width:100%}.header-save-menu-panel{min-width:0;margin-top:6px;position:static}.header-right .toggle-group{justify-content:center;width:100%}.header-right .toggle-group-target{gap:4px;width:100%;padding:4px}.header-right .toggle-btn-target{flex:1 1 0;min-width:0;min-height:38px;font-size:1.05rem}.header-focus-select{width:100%;min-width:unset;font-size:var(--font-sm);padding:8px 10px}.mobile-drawer-close{justify-content:flex-end;align-items:center;margin-bottom:4px;display:flex}.mobile-drawer-close-btn{border:1px solid var(--border-primary);border-radius:var(--radius-md);min-width:72px;height:36px;color:var(--text-secondary);font-size:var(--font-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0 12px;font-weight:600;display:flex}.mobile-drawer-close-btn:hover{color:#ef4444;background:#ef44441a}.mobile-menu-note{font-size:var(--font-xs);color:var(--text-secondary);border:1px solid var(--border-primary);background:#f7f5ef;padding:6px 8px 2px;line-height:1.5;display:block}.node-palette{z-index:200;border-right:1px solid var(--border-primary);width:min(320px,85vw);height:auto;box-shadow:var(--shadow-xl);padding-bottom:calc(126px + env(safe-area-inset-bottom,0px));transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:30px;left:0;transform:translate(-100%)}.node-palette.mobile-open{transform:translate(0)}.property-panel{z-index:200;border-left:1px solid var(--border-primary);width:min(340px,90vw);height:auto;box-shadow:var(--shadow-xl);padding-bottom:calc(126px + env(safe-area-inset-bottom,0px));transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:30px;right:0;transform:translate(100%)}.property-panel.mobile-open{transform:translate(0)}.palette-header{justify-content:space-between;align-items:center;min-height:52px;padding:14px 16px;display:flex}.palette-search{font-size:var(--font-sm);padding:10px 12px}.palette-item{padding:10px var(--space-lg);padding-left:var(--space-xl);min-height:40px;font-size:var(--font-sm)}.palette-item-help{width:26px;height:26px;font-size:.75rem}.property-header{min-height:52px;padding:14px 16px}.property-panel-empty{padding:var(--space-lg)}.property-input,.property-select{padding:10px var(--space-md);font-size:var(--font-sm)}.editor-canvas{width:100%}.react-flow__minimap{width:100px!important;height:60px!important;bottom:56px!important;right:8px!important}.react-flow__controls{bottom:56px!important;left:8px!important}.react-flow__controls-button{width:28px!important;height:28px!important}.react-flow__handle{width:26px!important;height:26px!important}.custom-node{min-width:180px;max-width:260px;font-size:var(--font-xs)}.custom-node-header{padding:8px 10px;font-size:.78rem}.node-delete-btn{opacity:1;width:24px;height:24px;font-size:13px}.handle-label{font-size:.65rem}.empty-canvas{padding:clamp(40px,9vh,72px)var(--space-lg)var(--space-lg);justify-content:flex-start;gap:9px}.empty-canvas-icon{width:64px;height:64px}.empty-canvas-title{max-width:340px;font-size:1.45rem;line-height:1.45}.empty-canvas-why,.empty-canvas-note{max-width:340px}.empty-canvas-text{max-width:280px;font-size:var(--font-xs)}.empty-canvas:before,.empty-canvas:after{display:none}.modal-overlay{align-items:flex-end}.modal{border-radius:var(--radius-lg)var(--radius-lg)0 0;width:100%;max-width:100%;max-height:95vh;animation:.35s cubic-bezier(.34,1.56,.64,1) modalSlideUpMobile}@keyframes modalSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--space-lg)}.modal-header h2{font-size:var(--font-md)}.modal-body{padding:var(--space-lg)}.modal.modal-lg{height:95vh;max-height:95vh}.modal-lg .modal-header{padding:14px 16px}.modal-lg .modal-body-split{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.modal-lg .template-mobile-nav{border-bottom:1px solid var(--border-primary);background:#f7f5ef;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;display:grid}.modal-lg .template-list,.modal-lg .template-preview{flex:1;min-height:0;display:none;overflow-y:auto}.modal-lg .template-list.mobile-visible,.modal-lg .template-preview.mobile-visible{display:block}.modal-lg .template-list.mobile-visible{border-bottom:none;border-right:none;width:100%;max-height:none}.modal-lg .template-list-toolbar{gap:10px;padding:10px 12px}.modal-lg .template-search-wrap{padding:8px 12px}.modal-lg .template-quick-start{margin:8px 12px}.modal-lg .template-list-item{gap:10px;padding:12px}.modal-lg .template-list-name{font-size:1.05rem;line-height:1.3}.modal-lg .template-list-desc{font-size:.88rem;line-height:1.5}.modal-lg .template-preview{padding:12px}.modal-lg .template-preview-sticky{margin:-12px -12px 10px;padding:10px 12px;top:-12px}.modal-lg .template-preview-sticky-row{flex-direction:column;align-items:stretch}.modal-lg .template-load-btn-inline{justify-content:center;width:100%}.modal-lg .template-mobile-back{margin-bottom:10px;display:block}.modal-lg .template-mobile-back-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:#fff;padding:6px 10px;font-size:.75rem;font-weight:700}.modal-lg .template-preview-header h3{font-size:1.35rem;line-height:1.35}.modal-lg .template-meta-row{flex-direction:column;gap:8px}.modal-lg .template-guide-grid{grid-template-columns:1fr}.modal-lg .template-reason-header{flex-wrap:wrap}.chart-preview-modal{border-radius:var(--radius-lg)var(--radius-lg)0 0;width:100%;max-width:100%;height:95vh;max-height:95vh}.chart-preview-body{flex-direction:column;flex:1;gap:0;min-height:0;padding:10px 12px;display:flex;overflow:hidden}.chart-preview-mobile-nav{border-bottom:1px solid var(--border-primary);background:#f7f5ef;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px 8px;display:grid}.chart-preview-mobile-nav-btn{border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:#fff;padding:9px 10px;font-size:.78rem;font-weight:700}.chart-preview-mobile-nav-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.chart-preview-modal{border-radius:0;flex-direction:column;align-self:stretch;max-width:100vw;height:100dvh;max-height:100dvh;display:flex}.chart-preview-body{flex:1;min-height:0;overflow-y:auto}.chart-preview-sidebar,.chart-preview-stage{flex:1;min-height:0;margin-top:10px;display:none;overflow-y:auto}.chart-preview-sidebar.mobile-visible{flex:none;display:block}.chart-preview-stage.mobile-visible{overscroll-behavior:contain;flex-direction:column;padding:8px;display:flex;overflow:hidden}.chart-preview-guide{grid-template-columns:1fr;gap:6px;padding:8px}.chart-preview-guide-head{align-items:flex-start;gap:8px}.chart-preview-guide-kicker{display:none}.chart-preview-guide-title{font-size:.78rem;line-height:1.35}.chart-preview-guide-steps{display:none}.chart-preview-guide-next{grid-template-columns:auto minmax(0,1fr);gap:6px;padding:6px 7px;font-size:.66rem}.chart-preview-guide-next-label{width:auto;min-height:22px;padding:2px 7px;font-size:.62rem}.chart-preview-line-map{display:none}.chart-preview-guide-foot{font-size:.66rem}.chart-preview-guide-foot span:not(.chart-preview-guide-legend){display:none}.chart-preview-guide-legend{white-space:normal}.chart-preview-canvas-wrap{flex:auto;min-height:clamp(365px,48vh,430px);padding:6px}.chart-preview-stage.mobile-visible .chart-preview-summary{display:none}.chart-preview-sidebar{padding-bottom:18px}.chart-preview-svg{aspect-ratio:auto;width:100%;height:100%;min-height:100%;max-height:none}.chart-preview-stage-toolbar{justify-content:flex-end;padding-bottom:6px;display:flex}.chart-preview-summary .chart-preview-acquire-subtitle{display:none}.chart-preview-manual-grid{grid-template-columns:1fr}.chart-preview-mobile-footer{border-top:1px solid var(--border-primary);background:#f7f5ef;padding:8px 12px 12px;display:block}.status-bar{flex-wrap:wrap;gap:4px 12px;height:auto;min-height:30px;padding:0 12px}.status-bar-right{display:none}.status-bar-left{gap:var(--space-md);font-size:.65rem}.toast{white-space:normal;width:calc(100vw - 24px);max-width:none;font-size:var(--font-xs);padding:var(--space-md)var(--space-lg);bottom:40px}.template-grid{grid-template-columns:1fr}.template-card-tags{flex-wrap:wrap}.wizard-strategy-grid{grid-template-columns:1fr}.wizard-step-row{grid-template-columns:1fr;gap:6px}.wizard-step-pill{padding:6px 10px;font-size:.68rem}.wizard-actions{flex-direction:column;align-items:stretch;gap:8px}.delivery-flow-steps{grid-template-columns:1fr}.mypage-body{padding:12px}.mypage-container{gap:10px}.mypage-meta-grid{grid-template-columns:1fr}.mypage-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mypage-nav .btn{justify-content:center;width:100%}.broker-board{gap:10px;padding:10px}.broker-board-header{padding:8px 10px;font-size:.95rem}.broker-board-description{font-size:.88rem}.broker-card{grid-template-columns:1fr;gap:10px;padding:10px}.broker-card-main{grid-template-columns:80px minmax(0,1fr);gap:10px}.broker-card-logo{height:44px;font-size:.82rem}.broker-card-name{font-size:.9rem}.broker-card-text{font-size:.82rem}.broker-card-cta{width:100%}.user-download-body{gap:10px;padding:12px}.user-download-note-row{flex-direction:column;align-items:stretch}.user-download-panel .btn{min-height:40px}.code-preview-panel{height:60%}.code-preview-toggle{bottom:var(--space-md);right:var(--space-md)}::-webkit-scrollbar{width:8px;height:8px}}@media (max-width:390px){.header-logo span{font-size:var(--font-sm)}.header-logo--image{width:138px;height:34px}.header-project-input{width:80px}.header-right,.node-palette,.property-panel{width:100vw}.custom-node{min-width:160px;max-width:220px}.empty-canvas-text{max-width:240px}.mobile-sidebar-toggle{gap:5px;min-width:70px;height:38px;padding:0 8px;font-size:.62rem;bottom:64px}.mobile-sidebar-toggle--palette{left:8px}.mobile-sidebar-toggle--property{right:8px}}.header{background:linear-gradient(#fffffffc,#f9f7f1f7);padding:9px clamp(16px,3vw,42px) 8px;box-shadow:0 1px #11182708,0 10px 30px #1d35570a}.header:before{background:linear-gradient(90deg,#1d3557d6 0 15%,#c4492de6 15% 17%,#d8d2c48c 17% 100%);height:3px}.header-logo--image{width:164px;height:40px}.language-toggle{background:#ffffffdb;border-color:#c9c2b4;box-shadow:inset 0 1px #fffc,0 1px 3px #1118270a}.language-toggle:hover{color:var(--accent-blue);background:#f7f5ef;border-color:#a89f8e}.modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a181575}.modal.modal-lg{border-radius:var(--radius-md);background:#fdfbf7;border-color:#786f606b;box-shadow:0 28px 80px #11182738,inset 0 2px #ffffffb8}.modal-lg .modal-header{background:linear-gradient(#fff,#f8f5ee);border-bottom-color:#cdc5b7;padding:16px 20px}.modal-lg .modal-header h2{color:#172033;letter-spacing:0;font-size:1.02rem}.modal-lg .modal-header h2 svg{color:var(--accent-blue)}.modal-body-split{background:#f8f5ee}.template-list{background:linear-gradient(#fbfaf7,#f3efe6);border-right-color:#cfc7b9;width:clamp(380px,32vw,500px)}.template-list-toolbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f5eef7;border-bottom-color:#cbc3b4;padding:14px 14px 12px;box-shadow:0 10px 24px #1d35570a}.template-toolbar-title{color:#172033;font-size:.86rem}.template-list-count{border-radius:var(--radius-full);color:#5b5247;text-align:center;background:#ebe5d8;min-width:34px;padding:3px 8px;font-weight:800}.template-toolbar-hint,.template-jargon-hint{color:#4c5a68;border-radius:var(--radius-sm);background:#fffdfa;border:1px solid #d9d1c2;border-left:3px solid #cfc7b9;box-shadow:inset 0 1px #ffffffb3}.template-jargon-hint{margin:2px 12px 8px;padding:9px 11px;font-size:.74rem;line-height:1.65}.template-control-grid{grid-template-columns:74px minmax(0,1fr)}.template-control-label{color:#6f675c;font-weight:800}.template-control-select,.template-search-input{color:#172033;background:#fffefa;border-color:#cfc7b9;min-height:38px;box-shadow:inset 0 1px #ffffffbf}.template-control-select:focus,.template-search-input:focus{border-color:#1d35578c;outline:3px solid #1d35571f}.template-search-wrap{background:#f8f5ee;padding:12px 14px 10px}.template-quick-start{border:1px solid #c4492d42;border-left:4px solid var(--accent-vermilion);background:linear-gradient(#ffffffeb,#fff8efeb);margin:12px 14px 10px;padding:13px;box-shadow:0 8px 20px #c4492d12}.template-quick-start-title{color:#93341f;font-size:.82rem}.template-quick-start-desc{color:#5b3d31;font-size:.76rem}.template-quick-start-btn{background:#1d3557;min-height:38px;margin-top:2px}.template-list-item{border-radius:var(--radius-md);cursor:pointer;min-height:118px;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);background:#fffefa;border:1px solid #ddd5c7;margin:10px 12px;padding:14px 14px 14px 13px;position:relative;box-shadow:0 1px 2px #11182708}.template-list-item:before{content:"";background:0 0;border-radius:0 2px 2px 0;width:3px;position:absolute;inset:10px auto 10px 0}.template-list-item:hover,.template-list-item:focus-within{background:#fff;border-color:#1d355761;transform:translateY(-1px);box-shadow:0 10px 22px #1d355714}.template-list-item.active{background:linear-gradient(#fff,#f5f8fb);border-color:#1d3557b8;box-shadow:0 12px 28px #1d35571f}.template-list-item.active:before{background:var(--accent-blue)}.template-list-item:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.template-list-icon{width:42px;height:42px;color:var(--accent-blue);background:#f3efe6;border-color:#d1c8b8}.template-list-item.active .template-list-icon{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.template-list-info{width:100%;padding-right:72px}.template-list-name{color:#172033;font-size:.94rem;font-weight:800;line-height:1.35}.template-recommended-badge{border-radius:var(--radius-full);min-height:22px;color:var(--accent-vermilion);letter-spacing:.03em;box-shadow:none;background:#fff3ed;border:1px solid #c4492d47;align-items:center;margin:0;padding:2px 9px;font-size:.64rem;font-weight:900;display:inline-flex;position:absolute;top:12px;right:12px}.template-selected-badge{color:var(--accent-blue);background:#1d355714;border-color:#1d355752;margin:0 0 5px;padding:2px 8px}.template-list-desc{color:#53606d;line-height:1.55}.template-list-metrics{color:#6a6258;gap:6px}.template-list-metrics span{border-radius:var(--radius-sm);background:#f6f1e8;padding:2px 6px}.template-tag{color:#5d665f;background:#fbf7ef;border-color:#d8d0c0;font-weight:700}.template-preview{background:linear-gradient(#fffefa,#faf7ef);padding:26px 30px 30px}.template-preview-sticky{background:#fffdf9f5;border-bottom-color:#cfc7b9;margin:-26px -30px 22px;padding:13px 30px 14px;top:-26px;box-shadow:0 12px 24px #1d35570d}.template-preview-sticky-caption{color:#736a5f;font-size:.64rem}.template-preview-sticky-name{color:#172033;font-size:1rem}.template-load-btn-inline{color:#fff;background:#1d3557;border-color:#1d3557;min-height:40px;font-weight:900}.template-preview-header h3{color:#111827;font-family:var(--font-serif);letter-spacing:0;margin-bottom:14px;font-size:clamp(1.45rem,2vw,2rem);line-height:1.25}.template-meta-row{grid-template-columns:repeat(5,minmax(112px,1fr));gap:8px;margin-bottom:18px;display:grid}.template-meta-item{border-radius:var(--radius-md);background:#fffdfa;border:1px solid #ded5c7;min-height:54px;padding:9px 10px}.template-meta-label{color:#7a7065}.template-guide-card,.template-explanation,.template-reason{background:#fffdfa;border-color:#d8d0c0;box-shadow:0 1px 2px #11182708}.template-guide-card{padding:12px}.template-guide-card.caution{background:#fff8ea;border-color:#b8552247}.template-guide-title,.template-explanation-title,.template-flow-title,.template-reasons-title{color:#172033;font-weight:900}.template-guide-text,.template-guide-list li,.template-explanation p,.template-reason-why{color:#4a5563}.template-flow{border-radius:var(--radius-md);background:#fbf7ef;border:1px solid #d8d0c0;padding:14px}.template-flow-node{background:#fffefa;border:1px solid #ded5c7;margin:0;border-radius:var(--radius-md)!important;padding:10px 12px!important}.template-flow-connector{background:#c6bbaa;height:14px}.template-reason{border-left-color:var(--accent-blue)}@media (max-width:760px){.header{padding:8px 12px}.header-logo--image{width:150px;height:36px}.modal.modal-lg{border-radius:var(--radius-lg)var(--radius-lg)0 0}.modal-lg .modal-header{padding:13px 14px}.modal-lg .template-mobile-nav{background:#f4efe5;padding:10px 12px}.template-mobile-nav-btn{border-radius:var(--radius-sm);background:#fffdfa}.template-mobile-nav-btn.active{background:var(--accent-blue)}.modal-lg .template-list.mobile-visible{width:100%}.template-list-item{min-height:0;margin:9px 10px;padding:13px 12px}.template-list-info{padding-right:62px}.template-recommended-badge{font-size:.6rem;top:10px;right:10px}.modal-lg .template-preview{padding:12px}.modal-lg .template-preview-sticky{margin:-12px -12px 12px;padding:11px 12px;top:-12px}.template-preview-header h3{font-size:1.35rem}.modal-lg .template-meta-row{grid-template-columns:1fr;display:grid}}:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:2px}@media (pointer:coarse){button,.btn,a[role=button],[role=button]{min-height:48px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.app--starter .header-action-group--filters,.app--starter .header-action-group--create,.app--starter .header-action-group--manage,.app--starter .header-action-group--advanced,.app--starter .header-project-input,.app--starter .header-right,.app--starter .mobile-menu-btn,.app--starter .mobile-project-editor,.app--starter .status-bar{display:none!important}.empty-canvas-advanced-link{margin-top:var(--space-xs);color:var(--text-tertiary);font:inherit;font-size:var(--font-xs);cursor:pointer;text-underline-offset:3px;pointer-events:auto;opacity:.75;transition:opacity var(--transition-fast),color var(--transition-fast);background:0 0;border:0;padding:4px 8px;font-weight:600;text-decoration:underline}.empty-canvas-advanced-link:hover{opacity:1;color:var(--accent-blue)}.empty-canvas-advanced-link:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.app--starter .empty-canvas-manual,.app--starter .mobile-action-bar{display:none!important}

