.coachmark{--coachmark-panel-bg: var(--surface-overlay);--coachmark-accent: var(--accent-purple);--coachmark-accent-soft: color-mix(in srgb, var(--coachmark-accent) 14%, transparent);--coachmark-accent-strong: color-mix(in srgb, var(--coachmark-accent) 30%, transparent);position:fixed;z-index:var(--z-toast);width:min(324px,calc(100vw - 24px));padding:13px 14px 14px;background:linear-gradient(180deg,color-mix(in srgb,var(--coachmark-panel-bg) 99%,transparent),color-mix(in srgb,var(--surface-raised) 94%,transparent)),var(--coachmark-panel-bg);border:1px solid color-mix(in srgb,var(--coachmark-accent) 18%,var(--border-glass));border-radius:18px;backdrop-filter:blur(20px) saturate(1.05);-webkit-backdrop-filter:blur(20px) saturate(1.05);box-shadow:inset 0 1px #ffffff08,0 1px 2px var(--coachmark-shadow-1),0 8px 22px var(--coachmark-shadow-2),0 18px 38px var(--coachmark-shadow-3);color:var(--text-high);line-height:1.45;pointer-events:auto;overflow:hidden}.coachmark:before{content:"";position:absolute;top:1px;left:18px;right:18px;height:1px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--coachmark-accent) 18%,var(--border-subtle)) 0%,color-mix(in srgb,var(--border-subtle) 92%,transparent) 46%,transparent 100%);opacity:.58}.coachmark--below{animation:coachmark-enter-below .3s var(--ease-out-expo) both}.coachmark--above{animation:coachmark-enter-above .3s var(--ease-out-expo) both}.coachmark--below .coachmark__arrow,.coachmark--above .coachmark__arrow{position:absolute;left:var(--arrow-left, 50%);width:14px;height:8px;transform:translate(-50%);overflow:hidden}.coachmark--below .coachmark__arrow{top:-8px}.coachmark--above .coachmark__arrow{bottom:-8px}.coachmark--below .coachmark__arrow:after,.coachmark--above .coachmark__arrow:after{content:"";position:absolute;left:50%;width:10px;height:10px;background:var(--coachmark-panel-bg);border:1px solid color-mix(in srgb,var(--coachmark-accent) 18%,var(--border-glass));border-radius:2px;transform:translate(-50%) rotate(45deg)}.coachmark--below .coachmark__arrow:after{top:3px}.coachmark--above .coachmark__arrow:after{bottom:3px}.coachmark__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.coachmark-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--text-muted);background:color-mix(in srgb,var(--surface-hover) 70%,transparent);border:1px solid transparent;border-radius:999px;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.coachmark-close:hover{color:var(--text-high);background:color-mix(in srgb,var(--coachmark-accent-soft) 70%,var(--surface-hover));border-color:var(--coachmark-accent-strong);transform:translateY(-1px)}.coachmark-close:focus-visible{outline:2px solid var(--coachmark-accent);outline-offset:2px}.coachmark__eyebrow,.coachmark__title,.coachmark__message,.coachmark__footer{animation:ff-entrance .28s var(--ease-out-expo) both}.coachmark__eyebrow{display:flex;align-items:center;gap:8px;min-width:0}.coachmark__counter{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--coachmark-accent) 16%,var(--border-subtle));background:color-mix(in srgb,var(--coachmark-accent-soft) 72%,transparent);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--coachmark-accent) 68%,var(--text-muted));white-space:nowrap}.coachmark__chapter{min-width:0;font-size:.72rem;font-weight:650;color:var(--text-low);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coachmark__title{margin-top:9px;font-size:.94rem;font-weight:700;color:var(--text-high);letter-spacing:-.02em;animation-delay:.04s}.coachmark__message{margin-top:7px;font-size:.82rem;line-height:1.48;color:color-mix(in srgb,var(--text-high) 78%,var(--text-muted));animation-delay:.08s}.coachmark__footer{display:flex;justify-content:flex-start;margin-top:12px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--coachmark-accent) 10%,var(--border-subtle));animation-delay:.12s}.coachmark__cta{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 13px;border:1px solid color-mix(in srgb,var(--coachmark-accent) 18%,var(--border-default));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--coachmark-accent-soft) 72%,var(--surface-raised) 28%);color:var(--text-high);font-size:.76rem;font-weight:680;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.coachmark__cta:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--coachmark-accent-soft) 82%,var(--surface-raised) 18%);border-color:var(--coachmark-accent-strong);box-shadow:0 8px 20px color-mix(in srgb,var(--coachmark-accent) 10%,transparent)}.coachmark__cta:focus-visible{outline:2px solid var(--coachmark-accent);outline-offset:2px}.coachmark--spotlight{z-index:var(--z-coachmark);border-color:color-mix(in srgb,var(--coachmark-accent) 24%,var(--border-glass));box-shadow:inset 0 1px #ffffff08,0 1px 2px var(--coachmark-shadow-1),0 8px 24px var(--coachmark-shadow-2),0 0 24px color-mix(in srgb,var(--coachmark-accent) 10%,transparent),0 18px 46px var(--coachmark-shadow-3)}.coachmark--mobile{left:max(12px,calc(env(safe-area-inset-left,0px) + 8px));right:max(12px,calc(env(safe-area-inset-right,0px) + 8px));bottom:max(12px,calc(env(safe-area-inset-bottom,0px) + 8px));width:auto;max-width:none;max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));overflow-y:auto;animation:coachmark-enter-mobile .3s var(--ease-out-expo) both}.coachmark--mobile .coachmark__arrow{display:none}.coachmark--mobile .coachmark__footer{margin-top:14px}.coachmark--mobile .coachmark__cta{width:100%;justify-content:center}[data-theme=light] .coachmark{--coachmark-panel-bg: rgba(255, 255, 255, .98);background:linear-gradient(180deg,#fffffff0,#f8f9fbfa 58%),var(--coachmark-panel-bg);border-color:color-mix(in srgb,var(--coachmark-accent) 18%,rgba(0,0,0,.08))}[data-theme=light] .coachmark__message{color:color-mix(in srgb,var(--text-high) 72%,var(--text-muted))}[data-theme=light] .coachmark__counter{background:color-mix(in srgb,var(--coachmark-accent-soft) 56%,white 44%)}[data-theme=light] .coachmark-close{background:#ffffffc7;border-color:#0000000d}@keyframes coachmark-enter-below{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coachmark-enter-above{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coachmark-enter-mobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.spotlight-overlay{position:fixed;inset:0;z-index:var(--z-spotlight);pointer-events:none;overflow:hidden;backdrop-filter:blur(var(--spotlight-blur));-webkit-backdrop-filter:blur(var(--spotlight-blur));animation:spotlight-fade-in .3s var(--ease-out-expo) both}.spotlight-overlay--exiting{animation:spotlight-fade-out .2s var(--ease-out-quart) both}.spotlight-overlay__svg{width:100%;height:100%}.spotlight-overlay__mask{fill:var(--spotlight-overlay);pointer-events:fill;transition:d .25s var(--ease-out-expo)}.spotlight-overlay__glow{fill:none;stroke:color-mix(in srgb,var(--spotlight-glow) 88%,#ffffff 12%);stroke-width:2;opacity:.72;transition:x .25s var(--ease-out-expo),y .25s var(--ease-out-expo),width .25s var(--ease-out-expo),height .25s var(--ease-out-expo),rx .25s var(--ease-out-expo)}@keyframes spotlight-fade-in{0%{opacity:0}to{opacity:1}}@keyframes spotlight-fade-out{0%{opacity:1}to{opacity:0}}@media(max-width:640px){.spotlight-overlay{--spotlight-overlay: rgba(0, 0, 0, .38)}}.app-nav{display:flex;align-items:center}.app-nav-inner{display:flex;align-items:center;gap:2px}.app-nav-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:color .15s ease,background .15s ease;white-space:nowrap;text-decoration:none}.app-nav-tab:hover{color:var(--text-high);background:var(--surface-hover)}.app-nav-tab.active{color:var(--text-high);background:var(--surface-raised);font-weight:600}.app-nav-tab--claire{color:var(--accent-purple);background:var(--purple-10);border:1px solid var(--purple-20)}.app-nav-tab--claire:hover{color:var(--accent-purple);background:var(--purple-15);border-color:var(--purple-30)}.app-nav-tab--claire.active{color:var(--accent-purple);background:var(--surface-raised);border-color:transparent}.claire-tooltip{position:absolute;top:calc(100% + 10px);right:0;width:min(260px,calc(100vw - 32px));padding:10px 14px;background:var(--surface-raised);border:1px solid var(--purple-30);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-high);line-height:1.5;box-shadow:0 8px 24px #0000004d;cursor:pointer;z-index:var(--z-dropdown);animation:ff-fade-in .3s ease}.claire-tooltip-arrow{position:absolute;top:-5px;right:20px;width:10px;height:10px;background:var(--surface-raised);border-left:1px solid var(--purple-30);border-top:1px solid var(--purple-30);transform:rotate(45deg)}@media(max-width:768px){.app-nav{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.app-nav::-webkit-scrollbar{display:none}.app-nav-tab{padding:4px 8px;font-size:var(--text-xs)}.app-nav-inner{gap:1px}}@media(max-width:480px){.app-nav-tab{padding:4px 6px}}.life-status-pill{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);transition:color .15s ease,background .15s ease;white-space:nowrap;flex-shrink:0}.life-status-pill:hover{color:var(--text-high);background:var(--surface-hover)}.pill-label{color:inherit}.pill-caret{color:var(--text-muted);font-size:var(--text-xs)}.modal-content{padding:20px 24px 24px;max-height:70vh;overflow-y:auto;overflow-x:hidden}.empty-state{padding:1.5rem;text-align:center;color:var(--text-muted);font-style:italic}.bottom-sheet-backdrop{position:fixed;inset:0;background:var(--overlay-bg);z-index:var(--z-overlay);animation:ff-fade-in .15s ease-out}.bottom-sheet{--drawer-shell-pad: 20px;position:fixed;bottom:0;left:0;right:0;max-height:90vh;max-height:90dvh;background:var(--surface-overlay);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--border-subtle);border-bottom:none;box-shadow:0 -8px 32px #0006;z-index:var(--z-modal);display:flex;flex-direction:column;animation:ff-slide-in-bottom .3s var(--ease-out-expo);padding-bottom:env(safe-area-inset-bottom);touch-action:pan-y}.bottom-sheet-handle-area{display:flex;justify-content:center;padding:12px 0 4px;flex-shrink:0;cursor:grab;touch-action:none}.bottom-sheet-handle{width:36px;height:4px;background:var(--border-default);border-radius:2px}.bottom-sheet-body{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}[data-theme=light] .bottom-sheet{box-shadow:0 -8px 32px #0000001f}.modal-shell-portal{position:fixed;inset:0;z-index:var(--z-modal-top)}.modal-shell{position:fixed;inset:0;margin:auto;width:var(--modal-shell-width, 520px);height:fit-content;max-width:calc(100vw - 48px);max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);z-index:var(--z-modal);display:flex;flex-direction:column;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;background:var(--surface-overlay);border:1px solid var(--border-subtle);box-shadow:0 24px 60px -12px #00000080,0 0 0 1px #ffffff0a inset;border-radius:var(--drawer-radius);overflow:hidden;animation:ff-scale-in .2s ease-out}.modal-shell-header{padding:24px 24px 20px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg,var(--glass-surface) 0%,transparent 100%)}.modal-shell-header-content{display:flex;flex-direction:column;gap:6px}.modal-shell-title{margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--text-high);letter-spacing:-.025em;line-height:1.3}.modal-shell-subtitle{margin:0;font-size:var(--text-base);color:var(--text-placeholder);letter-spacing:-.01em}.modal-shell-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:0}.modal-shell-footer{border-top:1px solid var(--border-subtle);background:var(--bg-subpanel)}[data-theme=light] .modal-shell{box-shadow:0 24px 80px #00000026,0 0 0 1px #0000000d}@media(max-width:768px){.modal-shell{width:100%;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}.modal-shell-body{padding-bottom:env(safe-area-inset-bottom,0px)}}@media(max-width:480px){.modal-shell-header{padding:20px 16px}.modal-shell-title{font-size:1.2rem}}.discovery-callout{position:relative;display:grid;gap:8px;padding:11px 38px 12px 12px;margin:0;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-overlay) 98%,transparent),color-mix(in srgb,var(--surface-raised) 94%,transparent));border:1px solid color-mix(in srgb,var(--accent-purple) 10%,var(--border-subtle));border-radius:16px;box-shadow:inset 0 1px #ffffff08,0 8px 18px #0000000d;animation:ff-entrance .25s var(--ease-out-expo) both}.discovery-callout__header{display:flex;align-items:center;gap:8px}.discovery-callout__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent-purple) 14%,var(--border-default));background:color-mix(in srgb,var(--accent-purple) 10%,transparent);flex-shrink:0}.discovery-callout__icon{color:color-mix(in srgb,var(--accent-purple) 72%,var(--text-high))}.discovery-callout__title{font-size:var(--text-sm);font-weight:670;color:var(--text-high)}.discovery-callout__body{font-size:var(--text-caption);color:var(--text-muted);line-height:1.5}.discovery-callout__footer{display:flex;justify-content:flex-end}.discovery-callout__dismiss{min-height:30px;padding:0 4px;background:transparent;border:none;color:var(--text-low);font-size:.75rem;font-weight:650;cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast)}.discovery-callout__dismiss:hover,.discovery-callout__dismiss:focus-visible{color:var(--text-high);transform:translateY(-1px);outline:none}.discovery-callout__close{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:transparent;border:1px solid transparent;border-radius:999px;cursor:pointer;color:var(--text-muted);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.discovery-callout__close:hover,.discovery-callout__close:focus-visible{background:color-mix(in srgb,var(--surface-hover) 84%,transparent);border-color:color-mix(in srgb,var(--accent-purple) 14%,var(--border-subtle));color:var(--text-high);outline:none}[data-theme=light] .discovery-callout{background:linear-gradient(180deg,#fffffff5,#f8f9fbfa);border-color:color-mix(in srgb,var(--accent-purple) 10%,rgba(15,23,42,.08));box-shadow:inset 0 1px #fffffff2,0 8px 18px #0f172a0a}.gantt-timeline{display:flex;flex-direction:column;gap:0;-webkit-user-select:none;user-select:none;padding:0 16px 4px}.gantt-axis{display:flex;position:relative;height:24px;border-bottom:1px solid var(--border-subtle);margin-bottom:8px}.gantt-tick{position:absolute;transform:translate(-50%);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:24px}.gantt-tick:after{display:none}.gantt-now-line{position:absolute;top:0;bottom:0;width:1px;border-left:1px dashed var(--accent-purple);opacity:.3;pointer-events:none;z-index:2}.gantt-rows-wrapper{position:relative;min-height:36px}.gantt-rows{display:flex;flex-direction:column;gap:4px}.gantt-row{position:relative;height:32px;flex-shrink:0}.gantt-bar{position:absolute;top:0;height:32px;box-sizing:border-box;border-radius:var(--radius-sm);border:1px solid transparent;display:flex;align-items:center;justify-content:center;gap:4px;padding:0 8px;cursor:grab;transition:box-shadow var(--transition-fast),border-color var(--transition-fast);overflow:hidden;white-space:nowrap;z-index:3}.gantt-bar.dragging-move{cursor:grabbing;opacity:.85}.gantt-bar:hover{box-shadow:0 0 0 1px var(--accent-purple)}.gantt-bar.selected{border-color:var(--accent-purple)!important;box-shadow:0 0 12px #a78bfa40}.gantt-bar-icon{flex-shrink:0;display:flex;align-items:center}.gantt-bar-label{font-size:var(--text-xs);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-bar.ends-at-limit{border-right:none}.gantt-bar.ends-at-limit:after{content:"";position:absolute;right:-12px;top:0;bottom:0;width:20px;background:linear-gradient(to right,transparent,var(--bg-panel));pointer-events:none}.gantt-bar.starts-at-origin{border-left:none}.gantt-bar.starts-at-origin:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:20px;background:linear-gradient(to left,transparent,var(--bg-panel));pointer-events:none;z-index:1}.gantt-handle{position:absolute;top:0;bottom:0;width:6px;cursor:col-resize;z-index:3;opacity:0;transition:opacity var(--transition-fast)}.gantt-bar:hover .gantt-handle,.gantt-handle.dragging{opacity:1}.gantt-handle-left{left:-3px;border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.gantt-handle-right{right:-3px;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.gantt-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:12px;border-radius:1px;background:var(--accent-purple)}.gantt-age-tag{position:absolute;top:50%;padding:1px 5px;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;line-height:14px;background:var(--accent-purple);color:var(--text-on-accent);border-radius:var(--radius-sm);pointer-events:none;z-index:20;white-space:nowrap;opacity:0;transition:opacity var(--transition-fast)}.gantt-row:hover>.gantt-age-tag,.gantt-row.is-dragging>.gantt-age-tag{opacity:1}.gantt-age-tag-left{transform:translate(-100%,-50%);margin-left:-4px}.gantt-age-tag-right{transform:translateY(-50%);margin-left:4px}.gantt-add-row{cursor:crosshair;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:border-color var(--transition-fast),background var(--transition-fast)}.gantt-add-row:hover,.gantt-add-row.dragging{border-color:var(--purple-30);background:var(--purple-05)}.gantt-add-hint{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-muted);pointer-events:none;-webkit-user-select:none;user-select:none}.gantt-ghost{position:absolute;top:0;height:100%;border-radius:var(--radius-sm);background:var(--purple-10);border:1px dashed var(--purple-30);pointer-events:none}.gantt-bar{background:rgba(var(--bar-r),var(--bar-g),var(--bar-b),.12);color:rgba(var(--bar-r),var(--bar-g),var(--bar-b),.9)}[data-theme=light] .gantt-bar{background:rgba(var(--bar-r),var(--bar-g),var(--bar-b),.08);color:rgba(var(--bar-r),var(--bar-g),var(--bar-b),.85)}[data-theme=light] .gantt-axis{border-bottom-color:var(--border-glass)}[data-theme=light] .gantt-bar.ends-at-limit:after{background:linear-gradient(to right,transparent,var(--bg-app))}[data-theme=light] .gantt-bar.starts-at-origin:before{background:linear-gradient(to left,transparent,var(--bg-app))}.premium-select-container{position:relative;width:100%}.premium-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;height:var(--height-lg);padding:0 14px;font-family:inherit;font-size:var(--text-input);font-weight:500;color:var(--text-high);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),transform .1s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);outline:none;-webkit-user-select:none;user-select:none;text-align:left;letter-spacing:-.01em}.premium-select-trigger:hover{border-color:var(--border-strong);background:var(--surface-hover);box-shadow:0 0 0 1px #ffffff0d,0 4px 12px #0000001a;transform:translateY(-1px)}[data-theme=light] .premium-select-trigger:hover{background:#fffffff2;box-shadow:0 0 0 1px #0000000d,0 4px 12px #00000014}.premium-select-trigger:focus-visible,.premium-select-trigger.is-open{border-color:var(--border-focus);background:var(--surface-hover);box-shadow:0 0 0 3px var(--purple-20),0 8px 24px var(--purple-15);transform:translateY(-1px)}[data-theme=light] .premium-select-trigger:focus-visible,[data-theme=light] .premium-select-trigger.is-open{background:#fffffff2;box-shadow:0 0 0 3px var(--purple-12),0 8px 24px var(--purple-10)}.premium-select-trigger:active{transform:translateY(0)}.premium-select-trigger.disabled{opacity:.4;cursor:not-allowed;pointer-events:none;transform:none!important}.select-value{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:8px}.select-value.placeholder{color:var(--text-muted)}.select-icon{display:flex;align-items:center;color:var(--text-placeholder);transition:transform .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.premium-select-trigger:hover .select-icon{color:var(--text-high)}.premium-select-trigger.is-open .select-icon{transform:rotate(180deg);color:var(--accent-purple)}.premium-select-dropdown{max-height:320px;overflow-y:auto;background:var(--surface-overlay);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown),0 0 0 1px #ffffff0d inset;backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);z-index:10000;padding:8px;animation:ff-scale-in .2s cubic-bezier(.16,1,.3,1) forwards;transform-origin:top center}[data-theme=light] .premium-select-dropdown{box-shadow:var(--shadow-dropdown),0 0 0 1px #0000000d inset}.premium-select-option{padding:10px 12px;font-size:var(--text-md);font-weight:500;color:var(--text-high);border-radius:var(--radius-md);cursor:pointer;transition:all .15s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;gap:10px;letter-spacing:-.01em}.premium-select-option:hover{background:var(--surface-pressed);color:var(--text-high);transform:translate(2px)}.premium-select-option.selected{background:linear-gradient(135deg,var(--purple-20),var(--purple-10));color:var(--accent-purple);font-weight:600}[data-theme=light] .premium-select-option.selected{background:linear-gradient(135deg,var(--purple-15),var(--purple-08))}.premium-select-option.highlighted{background:var(--surface-pressed);color:var(--text-high)}.premium-select-option.disabled{opacity:.5;cursor:not-allowed;transform:none!important}.premium-select-option .option-label{flex:1}.premium-select-option .option-desc{font-size:var(--text-sm);color:var(--text-placeholder);font-weight:400}.premium-select-option .option-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.premium-select-container.sm .premium-select-trigger{padding:.4rem .8rem;font-size:var(--text-base)}.premium-select-container.sm .premium-select-dropdown{padding:4px}.premium-select-container.sm .premium-select-option{padding:6px 8px;font-size:var(--text-base);border-radius:var(--radius-md)}.premium-select-container.sm .premium-select-group-header{padding:6px 8px 2px;font-size:var(--text-2xs)}.premium-select-container.lg .premium-select-trigger{padding:.8rem 1.2rem;font-size:var(--text-lg)}.premium-select-container[style*=auto] .premium-select-trigger{width:auto}.premium-select-container[style*=auto] .premium-select-dropdown{min-width:100%;width:auto}.premium-select-group-header{padding:8px 12px 4px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-placeholder);pointer-events:none;-webkit-user-select:none;user-select:none}.phase-popover-backdrop{position:fixed;inset:0;z-index:99}.phase-popover{position:fixed;z-index:100;width:320px;max-height:420px;overflow-y:auto;overflow-x:hidden;background:var(--bg-panel);border:1px solid var(--border-glass);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column}.phase-popover-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.phase-popover-header-icon{color:var(--accent-purple)}.phase-popover-header-title{flex:1;font-size:var(--text-sm);font-weight:600;color:var(--text-high)}.phase-popover-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center}.phase-popover-close:hover{color:var(--text-high);background:var(--purple-05)}.phase-popover-body{padding:12px 16px;display:flex;flex-direction:column;gap:12px}.popover-field{display:flex;flex-direction:column;gap:4px}.popover-field label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.popover-field select,.popover-field input{height:32px;padding:0 8px;font-size:var(--text-sm);background:var(--bg-subpanel);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-high)}.popover-year-row{display:flex;gap:8px;align-items:flex-end;min-width:0}.popover-year-row .popover-field{flex:1;min-width:0}.popover-year-row .popover-field input{width:100%;min-width:0;box-sizing:border-box}.popover-year-month-pair{display:flex;gap:4px}.popover-year-month-pair input{flex:1;min-width:0}.popover-year-month-pair .select-trigger{flex-shrink:0}.popover-year-hint{font-size:var(--text-xs);color:var(--accent-purple);font-style:italic}.popover-custom-status{display:flex;align-items:center;gap:4px}.popover-custom-status input{flex:1;height:32px;padding:0 8px;font-size:var(--text-sm);background:var(--bg-subpanel);border:1px solid var(--accent-purple);border-radius:var(--radius-sm);color:var(--text-high);outline:none}.popover-custom-status input:focus{box-shadow:0 0 0 2px var(--purple-15)}.popover-custom-cancel{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);flex-shrink:0}.popover-custom-cancel:hover{color:var(--text-high);background:var(--purple-05)}.popover-custom-list{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.popover-custom-list-label{font-size:var(--text-xs);color:var(--text-muted);margin-right:2px}.popover-custom-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 6px;font-size:var(--text-xs);color:var(--text-high);background:var(--purple-05);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.popover-custom-chip-btn{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm)}.popover-custom-chip-btn:hover{color:var(--accent-purple);background:var(--purple-10)}.popover-custom-chip-btn.popover-custom-chip-delete:hover{color:var(--negative);background:#ef44441a}.popover-color-row{display:flex;flex-wrap:wrap;gap:2px}.popover-color-dot{width:28px;height:28px;min-width:28px;min-height:28px;box-sizing:border-box;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--dot-color);cursor:pointer;padding:0;transition:all var(--transition-fast)}.popover-color-dot:hover{background:var(--dot-color);filter:brightness(1.15)}.popover-color-dot.selected{border-color:var(--dot-color);box-shadow:0 0 0 1px var(--bg-panel),0 0 0 2px var(--dot-color)}.popover-color-dot.popover-color-custom{position:relative;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-subtle);background:var(--dot-color, transparent);cursor:pointer}.popover-color-dot.popover-color-custom.selected{border-style:solid}.popover-color-custom-plus{font-size:14px;font-weight:600;line-height:1;color:var(--text-muted);pointer-events:none}.popover-color-hidden-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;border:none}.popover-icon-grid{display:flex;flex-wrap:wrap;gap:2px}.popover-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer;padding:0;transition:all var(--transition-fast)}.popover-icon-btn:hover{background:var(--purple-05);color:var(--text-high)}.popover-icon-btn[aria-pressed=true]{background:var(--purple-10);border-color:var(--accent-purple);color:var(--accent-purple)}.popover-section-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:4px 0;width:100%;text-align:left}.popover-section-toggle:hover{color:var(--text-high)}.popover-section-toggle .chevron{transition:transform var(--transition-fast)}.popover-section-toggle[aria-expanded=true] .chevron{transform:rotate(90deg)}.popover-section-content{padding:8px 0}.phase-popover-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--border-subtle)}.popover-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-xs);padding:4px 8px;border-radius:var(--radius-sm)}.popover-delete-btn:hover{color:var(--negative);background:#ef444414}.popover-save-btn{background:var(--accent-purple);border:none;color:var(--text-on-accent);cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:6px 16px;border-radius:var(--radius-sm);transition:filter var(--transition-fast)}.popover-save-btn:hover{filter:brightness(1.1)}[data-theme=light] .phase-popover{border-color:var(--border-glass);background:var(--bg-app)}[data-theme=light] .popover-field select,[data-theme=light] .popover-field input{background:var(--bg-panel);border-color:var(--border-glass)}.chat-hero{position:relative;border-radius:var(--radius-lg);padding:1px;background:linear-gradient(135deg,#8b5cf680,#8b5cf626 40%,#8b5cf60d,#8b5cf64d);box-shadow:0 0 20px #8b5cf614,0 0 60px #8b5cf60a}.chat-hero__inner{background:var(--bg-panel);border-radius:calc(var(--radius-lg) - 1px);padding:20px}.chat-hero__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.chat-hero__header-left{display:flex;align-items:center;gap:10px}.chat-hero__icon-wrap{width:28px;height:28px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent-purple),rgba(139,92,246,.6));display:flex;align-items:center;justify-content:center;color:var(--text-on-accent);flex-shrink:0}.chat-hero__title-group{display:flex;flex-direction:column;gap:1px}.chat-hero__title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.chat-hero__subtitle{font-size:var(--text-xs);font-weight:400;color:var(--text-low);letter-spacing:.02em}.chat-hero__header-right{display:flex;align-items:center;gap:6px}.chat-hero__action-btn{display:flex;align-items:center;gap:4px;background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:4px 10px;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:500;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.chat-hero__action-btn:hover{border-color:var(--accent-purple);color:var(--accent-purple);background:var(--purple-05)}.chat-hero__disclaimer{text-align:center;font-size:var(--text-xs);color:var(--text-low);margin-top:12px;letter-spacing:.02em;opacity:.4}.chat-panel__history-wrap{position:relative}.chat-history-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:300px;max-height:320px;background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);overflow:hidden;display:flex;flex-direction:column}.chat-history-dropdown__header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-subtle);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.chat-history-dropdown__close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px;display:flex;align-items:center}.chat-history-dropdown__close:hover{color:var(--text-high)}.chat-history-dropdown__list{overflow-y:auto;flex:1}.chat-history-item{display:flex;align-items:center;border-bottom:1px solid var(--border-subtle)}.chat-history-item:last-child{border-bottom:none}.chat-history-item__load{flex:1;display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .1s;min-width:0}.chat-history-item__load:hover{background:var(--surface-hover)}.chat-history-item__title{font-size:var(--text-caption);color:var(--text-high);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-history-item__meta{font-size:var(--text-xs);color:var(--text-muted)}.chat-history-item__delete{flex-shrink:0;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:8px;display:flex;align-items:center;opacity:0;transition:opacity .1s,color .1s}.chat-history-item:hover .chat-history-item__delete{opacity:1}.chat-history-item__delete:hover{color:var(--color-negative)}.chat-panel__messages{max-height:400px;overflow-y:auto;padding:4px 0 8px;display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.chat-msg{display:flex;flex-direction:column}.chat-msg--user{align-items:flex-end}.chat-msg--assistant{align-items:flex-start}.chat-msg__bubble{max-width:85%;padding:10px 14px;border-radius:var(--radius-lg);font-size:var(--text-base);line-height:1.55;white-space:pre-wrap}.chat-msg--user .chat-msg__bubble{background:var(--accent-purple);color:var(--text-on-accent);border-bottom-right-radius:var(--radius-sm)}.chat-msg--assistant .chat-msg__bubble{background:var(--surface-raised);color:var(--text-high);border:1px solid var(--border-subtle);border-bottom-left-radius:var(--radius-sm)}.chat-msg__typing{display:flex;gap:5px;padding:12px 16px}.chat-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-purple);animation:chat-dot-bounce 1.4s ease-in-out infinite}.chat-typing-dot:nth-child(2){animation-delay:.2s}.chat-typing-dot:nth-child(3){animation-delay:.4s}@keyframes chat-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.3}40%{transform:translateY(-6px);opacity:1}}.chat-delta{display:flex;align-items:center;gap:10px;margin-top:8px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--surface-raised);max-width:85%}.chat-delta--positive{border-left:3px solid var(--color-positive)}.chat-delta--negative{border-left:3px solid var(--color-negative)}.chat-delta__icon{flex-shrink:0;width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.chat-delta--positive .chat-delta__icon{color:var(--color-positive);background:var(--color-positive-bg)}.chat-delta--negative .chat-delta__icon{color:var(--color-negative);background:var(--color-negative-bg)}.chat-delta__content{flex:1;min-width:0}.chat-delta__summary{font-size:var(--text-caption);font-weight:600;color:var(--text-high)}.chat-delta__detail{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.chat-delta__apply{flex-shrink:0;background:var(--accent-purple);color:var(--text-on-accent);border:none;border-radius:var(--radius-md);padding:6px 14px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:4px}.chat-delta__apply:hover{background:var(--accent-purple-hover)}.chat-delta__apply:disabled{cursor:default}.chat-delta__apply--applied{background:var(--color-positive);opacity:.85}.chat-panel__prompts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.chat-prompt-chip{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px 14px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.chat-prompt-chip:hover{background:var(--purple-05);border-color:var(--purple-25);color:var(--accent-purple)}.chat-prompt-chip:disabled{opacity:.4;cursor:not-allowed}.chat-panel__input-row{display:flex;gap:8px;align-items:center}.chat-panel__history-btn{width:var(--height-lg);height:var(--height-lg);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.chat-panel__history-btn:hover{border-color:var(--accent-purple);color:var(--accent-purple);background:var(--purple-05)}.chat-history-dropdown--bottom{top:auto;bottom:calc(100% + 4px);left:0;right:auto}.chat-panel__input-bar{display:flex;gap:8px;align-items:center;flex:1}.chat-panel__input{flex:1;height:var(--height-lg);padding:0 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-app);color:var(--text-high);font-family:var(--font-sans);font-size:var(--text-base);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-panel__input:focus{border-color:var(--purple-40);box-shadow:0 0 0 3px var(--purple-10)}.chat-panel__input::placeholder{color:var(--text-muted)}.chat-panel__send{width:var(--height-lg);height:var(--height-lg);border:none;border-radius:var(--radius-md);background:var(--accent-purple);color:var(--text-on-accent);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.chat-panel__send:hover{background:var(--accent-purple-hover)}.chat-panel__send:disabled{opacity:.3;cursor:not-allowed}.chat-panel__error{font-size:var(--text-sm);color:var(--color-negative);padding:6px 10px;background:var(--color-negative-bg);border-radius:var(--radius-sm);border:1px solid var(--color-negative-border)}[data-theme=light] .chat-hero{background:linear-gradient(135deg,#7c3aed4d,#7c3aed1a 40%,#7c3aed0d,#7c3aed33);box-shadow:0 0 20px #7c3aed0f,0 1px 3px #0000000f}[data-theme=light] .chat-hero__inner{background:var(--bg-app)}[data-theme=light] .chat-hero__icon-wrap{background:linear-gradient(135deg,var(--accent-purple),rgba(124,58,237,.7))}[data-theme=light] .chat-msg--assistant .chat-msg__bubble,[data-theme=light] .chat-delta{background:var(--bg-panel);box-shadow:0 1px 3px #0000000a}[data-theme=light] .chat-panel__input{background:var(--bg-panel)}[data-theme=light] .chat-history-dropdown{background:var(--bg-app);box-shadow:0 8px 24px #0000001a}[data-theme=light] .chat-prompt-chip{background:var(--bg-app);box-shadow:0 1px 2px #0000000a}.chat-hero__insights{margin-bottom:14px}.chat-hero__insights-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;width:100%}.chat-hero__insights-toggle{display:flex;align-items:center;gap:6px;background:transparent;border:none;padding:0;cursor:pointer;min-width:0;text-align:left;font-family:var(--font-sans)}.chat-hero__insights-chevron{color:var(--text-muted);transition:transform .2s ease;flex-shrink:0}.chat-hero__insights-chevron--collapsed{transform:rotate(-90deg)}.chat-hero__insights-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.chat-hero__insights-updating{font-size:var(--text-xs);color:var(--text-low);font-style:italic}.chat-hero__insights-refresh{margin-left:auto;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .15s}.chat-hero__insights-refresh:hover{border-color:var(--border-subtle);color:var(--text-high)}.chat-hero__insights-list{display:flex;flex-direction:column;gap:0}.chat-hero__insight-card{padding:8px 0;border-bottom:1px solid var(--border-subtle);transition:background .15s;animation:ff-entrance .3s ease backwards}.chat-hero__insight-card:last-child{border-bottom:none}.chat-hero__insight-card:nth-child(1){animation-delay:.05s}.chat-hero__insight-card:nth-child(2){animation-delay:.1s}.chat-hero__insight-card:nth-child(3){animation-delay:.15s}.chat-hero__insight-card:nth-child(4){animation-delay:.2s}.chat-hero__insight-headline{font-size:var(--text-caption);font-weight:600;color:var(--text-high);margin-bottom:3px}.chat-hero__insight-explanation{font-size:var(--text-sm);color:var(--text-low);line-height:1.5}.chat-hero__insight-suggestion{font-size:var(--text-xs);color:var(--text-muted);margin-top:6px;font-weight:400}.chat-hero__insights-loading{display:flex;flex-direction:column;gap:8px}.chat-hero__insight-skeleton{height:64px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-raised) 25%,var(--surface-hover) 50%,var(--surface-raised) 75%);background-size:200% 100%;animation:ai-shimmer 1.5s infinite}.chat-hero__insights-error{padding:10px 14px;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);background:#ef44440d;font-size:var(--text-sm);color:var(--text-muted);display:flex;align-items:center;justify-content:space-between}.chat-hero__insights-retry{background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:3px 10px;font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;transition:all .15s}.chat-hero__insights-retry:hover{border-color:var(--text-muted);color:var(--text-high)}[data-theme=light] .chat-hero__insights-error{background:#ef44440a}@media(max-width:768px){.chat-hero__inner{padding:16px}.chat-hero__subtitle{display:none}.chat-msg__bubble,.chat-delta{max-width:90%}.chat-history-dropdown{width:min(260px,calc(100vw - 32px))}.claire-popup{padding-bottom:env(safe-area-inset-bottom,0px)}.chat-panel__prompts{gap:6px}.chat-prompt-chip{padding:6px 12px}}.claire-popup{position:fixed;top:56px;right:24px;width:440px;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;z-index:var(--z-modal);box-shadow:0 8px 32px #0006,0 0 0 1px var(--border-subtle);border-radius:var(--radius-md);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.claire-popup.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.claire-popup.is-closed{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px)}.claire-popup__close{position:absolute;top:12px;right:12px;z-index:1;width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.claire-popup__close:hover{border-color:var(--border-subtle);color:var(--text-high);background:var(--surface-hover)}[data-theme=light] .claire-popup{box-shadow:0 8px 24px #0000001f,0 0 0 1px var(--border-default)}@media(max-width:768px){.claire-popup{width:calc(100vw - 32px);right:16px;top:56px;max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px)}}.brand-wordmark{--wm-base: #A78BFA;--wm-highlight: #F5EDFF;display:inline-flex;align-items:center;-webkit-user-select:none;user-select:none}[data-theme=light] .brand-wordmark{--wm-base: #7C3AED;--wm-highlight: #DDD6FE}.brand-wordmark__text{display:inline-block;white-space:nowrap;line-height:1;font-family:var(--font-sans);font-weight:720;background:linear-gradient(90deg,var(--wm-base) 0%,var(--wm-base) 25%,var(--wm-highlight) 45%,var(--wm-highlight) 55%,var(--wm-base) 75%,var(--wm-base) 100%);background-size:400% 100%;background-position:100% 50%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent;animation:bw-blob 8s ease-in-out infinite}.brand-wordmark--hero .brand-wordmark__text{font-size:clamp(3.9rem,10vw,8rem);letter-spacing:-.03em}.brand-wordmark--nav .brand-wordmark__text{font-size:1.7rem;letter-spacing:-.06em}@keyframes bw-blob{0%,to{background-position:100% 50%}50%{background-position:0% 50%}}@media(max-width:900px){.brand-wordmark--hero .brand-wordmark__text{font-size:clamp(3.1rem,17vw,5.2rem)}.brand-wordmark--nav .brand-wordmark__text{font-size:1.45rem}}@media(prefers-reduced-motion:reduce){.brand-wordmark__text{animation:none}}:root{--purple-05: rgba(139, 92, 246, .05);--purple-06: rgba(139, 92, 246, .06);--purple-08: rgba(139, 92, 246, .08);--purple-10: rgba(139, 92, 246, .1);--purple-12: rgba(139, 92, 246, .12);--purple-15: rgba(139, 92, 246, .15);--purple-20: rgba(139, 92, 246, .2);--purple-25: rgba(139, 92, 246, .25);--purple-30: rgba(139, 92, 246, .3);--purple-40: rgba(139, 92, 246, .4);--purple-50: rgba(139, 92, 246, .5);--purple-60: rgba(139, 92, 246, .6);--color-income: #10b981;--color-expense: #e57373;--color-asset: #60a5fa;--color-liability: #c084fc;--color-networth: #a78bfa;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .12);--shadow-md: 0 8px 24px rgba(0, 0, 0, .2);--shadow-lg: 0 20px 50px -10px rgba(0, 0, 0, .4);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--transition-fast: .15s var(--ease-out-expo);--transition-normal: .2s var(--ease-out-expo);--transition-slow: .3s var(--ease-out-expo);--glass-card-bg: rgba(24, 24, 27, .8);--text-page-title: clamp(2rem, 4vw, 2.8rem);--card-padding-lg: 2rem;--card-padding-md: 1.5rem;--page-shell-max-width: 1440px;--page-shell-gutter: max(1.5rem, 3vw);--page-shell-gutter-mobile: 12px;--page-shell-gutter-mobile-tight: 8px;--accent-purple-light: #c4b5fd;--text-light-secondary: #d4d4d8;--color-positive-light: #34d399;--lh-tight: 1.2;--lh-snug: 1.4;--lh-normal: 1.5;--lh-relaxed: 1.6;--lh-loose: 1.7;--ls-tighter: -.03em;--ls-tight: -.01em;--ls-normal: 0;--ls-wide: .06em;--ls-caps: .06em}[data-theme=light]{--glass-card-bg: rgba(255, 255, 255, .88)}@keyframes ff-entrance{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ff-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ff-scale-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes ff-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ff-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ff-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes ff-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes ff-slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent;-webkit-overflow-scrolling:touch}.scrollbar-thin::-webkit-scrollbar{width:5px;height:5px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px;transition:background-color .2s ease}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.scrollbar-none{scrollbar-width:none}.scrollbar-none::-webkit-scrollbar{display:none}.backdrop{position:fixed;inset:0;background:var(--overlay-bg);z-index:var(--z-overlay);animation:ff-fade-in .15s ease-out}.btn-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:9px;background:var(--glass-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-placeholder);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.btn-close:hover{background:var(--surface-hover);color:var(--text-high);transform:scale(1.05)}.btn-close--minimal{background:transparent;border:none}.btn-close--minimal:hover{background:var(--surface-hover)}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;padding:0;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.icon-btn:hover{background:var(--surface-hover);color:var(--text-high)}.icon-btn:active{transform:scale(.9)}.icon-btn:focus-visible{outline:2px solid var(--accent-purple);outline-offset:2px}.icon-btn--xs{width:var(--icon-btn-xs);height:var(--icon-btn-xs)}.icon-btn--sm{width:var(--icon-btn-sm);height:var(--icon-btn-sm)}.icon-btn--md{width:var(--icon-btn-md);height:var(--icon-btn-md)}.icon-btn--lg{width:var(--icon-btn-lg);height:var(--icon-btn-lg)}.icon-btn--xl{width:var(--icon-btn-xl);height:var(--icon-btn-xl)}.icon-btn--accent:hover{background:var(--purple-10);color:var(--accent-purple)}.icon-btn--danger:hover{background:var(--color-negative-bg);color:var(--color-negative)}.label{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-caps)}.label-md{font-size:var(--text-base);font-weight:600;color:var(--text-high)}.label-sm{font-size:var(--text-sm);font-weight:500;color:var(--text-low)}.hint{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--lh-snug)}.hint-sm{font-size:var(--text-xs);color:var(--text-low);line-height:var(--lh-snug)}.section-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-md)}.section-heading{font-size:var(--text-lg);font-weight:700;color:var(--text-high);margin:0}.badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--text-2xs);font-weight:600;white-space:nowrap;font-feature-settings:"tnum"}.badge--purple{background:var(--purple-10);border:1px solid var(--purple-30);color:var(--accent-purple)}.badge--positive{background:var(--color-positive-bg);border:1px solid var(--color-positive-border);color:var(--color-positive)}.badge--warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.badge--muted{background:var(--surface-raised);border:1px solid var(--border-default);color:var(--text-muted)}.alert{font-size:var(--text-sm);line-height:var(--lh-snug);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border-left:3px solid}.alert--warning{color:var(--color-warning);background:var(--color-warning-bg);border-color:var(--color-warning)}.alert--danger{color:var(--color-negative);background:var(--color-negative-bg);border-color:var(--color-negative)}.alert--info{color:var(--accent-purple);background:var(--purple-10);border-color:var(--accent-purple)}.seg-control{display:inline-flex;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-subtle)}.seg-btn{padding:5px 14px;font-size:var(--text-sm);font-weight:600;border:none;background:var(--bg-subpanel);color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.seg-btn+.seg-btn{border-left:1px solid var(--border-subtle)}.seg-btn:hover:not(.seg-btn--active){color:var(--text-high);background:var(--surface-hover)}.seg-btn--active{background:var(--accent-purple);color:var(--text-on-accent)}.input-group{display:flex;align-items:center;position:relative}.input-group .input-prefix,.input-group .input-suffix{position:absolute;pointer-events:none;font-size:var(--text-sm);color:var(--text-muted);font-weight:500;z-index:1}.input-group .input-prefix{left:12px}.input-group .input-suffix{right:12px}.input-group input.has-prefix{padding-left:24px}.input-group input.has-suffix{padding-right:28px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-xs)}.gap-2{gap:var(--space-sm)}.gap-3{gap:var(--space-md)}.gap-4{gap:var(--space-lg)}.gap-6{gap:var(--space-xl)}.gap-8{gap:var(--space-2xl)}.tabular-nums{font-variant-numeric:tabular-nums}.font-mono{font-family:var(--font-mono)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.w-full{width:100%}@media(max-width:768px){.ufs-input,.ufs-select,.input-group input,select.ufs-input{font-size:16px}.icon-btn--xs,.icon-btn--sm,.btn-close,.ufs-connection-badge,.ufs-expand-toggle{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.btn-mobile-block{width:100%}.ufs-form-row-gap{flex-wrap:wrap}}@media(hover:none){.icon-btn:hover,.btn-close:hover{background:transparent;color:inherit;transform:none}.btn-close--minimal:hover{background:transparent}}@media(pointer:coarse){.ufs-toggle{min-width:48px;min-height:28px}.seg-btn,.icon-btn,.btn-close{-webkit-user-select:none;user-select:none}}:root{--bg-app: #050509;--bg-panel: #0D0D12;--bg-subpanel: #14141C;--accent-purple: #A78BFA;--accent-purple-hover: #B49BFB;--accent-yellow: #FFC94B;--text-high: #FFFFFF;--text-muted: #A1A1B5;--text-low: #71717a;--text-dim: var(--text-low);--text-placeholder: rgba(255, 255, 255, .4);--text-on-accent: #000000;--border-subtle: rgba(255, 255, 255, .08);--border-glass: rgba(255, 255, 255, .12);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .15);--border-focus: rgba(139, 92, 246, .5);--glass-surface: rgba(255, 255, 255, .03);--surface-raised: rgba(255, 255, 255, .05);--surface-overlay: rgba(30, 30, 50, .98);--surface-input: rgba(255, 255, 255, .03);--surface-hover: rgba(255, 255, 255, .06);--surface-pressed: rgba(255, 255, 255, .08);--color-positive: #10b981;--color-negative: #ef4444;--color-warning: #f59e0b;--color-positive-bg: rgba(16, 185, 129, .1);--color-negative-bg: rgba(239, 68, 68, .1);--color-warning-bg: rgba(245, 158, 11, .1);--color-positive-border: rgba(16, 185, 129, .3);--color-negative-border: rgba(239, 68, 68, .3);--color-warning-border: rgba(245, 158, 11, .25);--overlay-bg: rgba(0, 0, 0, .6);--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-thumb-hover: rgba(255, 255, 255, .25);--shadow-card: 0 12px 28px rgba(0, 0, 0, .45);--shadow-dropdown: 0 8px 32px rgba(0, 0, 0, .5);--shadow-modal: 0 20px 50px -10px rgba(0, 0, 0, .4);--spotlight-overlay: rgba(0, 0, 0, .48);--spotlight-blur: 1px;--spotlight-glow: rgba(167, 139, 250, .28);--coachmark-shadow-1: rgba(0, 0, 0, .08);--coachmark-shadow-2: rgba(0, 0, 0, .12);--coachmark-shadow-3: rgba(0, 0, 0, .08);--header-bg: rgba(5, 5, 9, .6);--height-sm: 32px;--height-md: 36px;--height-lg: 44px;--height-xl: 52px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-pill: 9999px;--icon-btn-xs: 16px;--icon-btn-sm: 20px;--icon-btn-md: 28px;--icon-btn-lg: 32px;--icon-btn-xl: 44px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 500;--z-modal: 600;--z-toast: 700;--z-spotlight: 9998;--z-coachmark: 9999;--z-modal-top: 10000;--drawer-radius: 16px;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", "Fira Code", monospace;--text-2xs: .625rem;--text-xs: .7rem;--text-sm: .75rem;--text-caption: .8125rem;--text-base: .85rem;--text-md: .9rem;--text-input: .9375rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.375rem}body{margin:0;background-color:var(--bg-app);color:var(--text-high);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-x:clip;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.ff-bg-grid{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 0V40M0 1H40' stroke='rgba(255,255,255,0.05)' stroke-width='1' fill='none'/%3E%3C/svg%3E");background-position:center;-webkit-mask-image:radial-gradient(circle at 50% 50%,black 20%,transparent 85%);mask-image:radial-gradient(circle at 50% 50%,black 20%,transparent 85%)}.ff-bg-glow{position:fixed;top:-50%;left:50%;transform:translate(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(139,92,246,.15) 0%,transparent 70%);pointer-events:none;z-index:0;animation:pulse-glow 8s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.5;transform:translate(-50%) scale(1)}50%{opacity:.8;transform:translate(-50%) scale(1.1)}}[data-theme=light] .ff-bg-grid{background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 0V40M0 1H40' stroke='rgba(0,0,0,0.04)' stroke-width='1' fill='none'/%3E%3C/svg%3E")}[data-theme=light] .ff-bg-glow{background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 70%)}.app-grid-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none;background-size:40px 40px;background-image:linear-gradient(to right,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.02) 1px,transparent 1px);-webkit-mask-image:linear-gradient(to bottom,black 40%,transparent 100%);mask-image:linear-gradient(to bottom,black 40%,transparent 100%)}.app{position:relative;z-index:1;height:100dvh;display:flex;flex-direction:column;overflow-y:auto;scrollbar-gutter:stable}.app-header{height:56px;border-bottom:1px solid var(--border-subtle);background:var(--header-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:50;transition:background .3s ease;width:100%}.app-header-inner{max-width:var(--page-shell-max-width);margin:0 auto;padding-left:var(--page-shell-gutter);padding-right:var(--page-shell-gutter);width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;overflow:hidden}.app-header-left{display:flex;align-items:center;gap:24px;min-width:0}.app-header-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.app-header-wordmark{flex-shrink:0;color:var(--text-high)}.app-header-brand-text{font-family:var(--font-sans);font-weight:700;letter-spacing:-.045em;font-size:1.05rem;color:var(--text-high);white-space:nowrap}.app-header-right{display:flex;align-items:center;gap:4px;min-width:0;flex-shrink:1}.app-header-action-icon{display:none;flex-shrink:0}.app-main{flex:1;display:flex;flex-direction:column;min-height:0}.tutorial-checklist-slot{max-width:var(--page-shell-max-width);margin:0 auto;width:100%;padding:16px var(--page-shell-gutter) 0;box-sizing:border-box}.app-hamburger{display:none}@media(max-width:768px){.app-header-inner{padding-left:var(--page-shell-gutter-mobile);padding-right:var(--page-shell-gutter-mobile);overflow:visible}.app-header-left{gap:8px}.app-header-wordmark .brand-wordmark__text{font-size:1.28rem}.app-header-right .app-nav-tab{display:none}.app-header-right .scenario-trigger-wrapper,.app-header-right .life-status-pill-wrapper{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.app-header-right .scenario-trigger-wrapper>*,.app-header-right .life-status-pill-wrapper>*{pointer-events:auto}.app-hamburger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.app-hamburger:hover{color:var(--text-high);background:var(--surface-hover)}}.mobile-menu{position:absolute;top:calc(100% + 4px);right:0;width:min(260px,calc(100vw - 24px));background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);padding:6px;z-index:var(--z-dropdown);animation:ff-fade-in .15s ease-out}.mobile-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:var(--radius-md);color:var(--text-high);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.mobile-menu-item:hover{background:var(--surface-raised)}.mobile-menu-item-icon{color:var(--text-muted);flex-shrink:0}.mobile-menu-item--claire,.mobile-menu-item--claire .mobile-menu-item-icon{color:var(--accent-purple)}.mobile-menu-divider{height:1px;background:var(--border-subtle);margin:4px 8px}@media(max-width:480px){.app-header-inner{padding-left:var(--page-shell-gutter-mobile-tight);padding-right:var(--page-shell-gutter-mobile-tight)}.app-header-left{gap:4px}.app-header-brand{gap:6px}.app-header-wordmark .brand-wordmark__text{font-size:1.18rem}}.btn-primary{background:var(--accent-purple);color:var(--text-on-accent);font-weight:600;border:none;border-radius:var(--radius-md);height:var(--height-md);padding:0 20px;font-size:var(--text-md);letter-spacing:-.01em;cursor:pointer;transition:background var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover{background:var(--accent-purple-hover)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-md);height:var(--height-md);padding:0 16px;font-size:var(--text-md);font-weight:500;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover{border-color:var(--border-strong);color:var(--text-high)}.btn-secondary:active{transform:scale(.98)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:0 1rem;background:transparent;color:var(--text-muted);border:none;border-radius:var(--radius-sm);height:var(--height-md);font-family:var(--font-sans);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,font-weight .15s ease}.btn-ghost:hover{background:var(--surface-hover);color:var(--text-high)}.btn-ghost:active{transform:scale(.98)}.btn-ghost--active{color:var(--text-high);background:var(--surface-hover)}.btn-danger{padding:.875rem 1.5rem;background:var(--color-negative-bg);color:var(--color-negative);border:1px solid var(--color-negative-border);border-radius:var(--radius-md);height:var(--height-lg);font-size:var(--text-md);font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-danger:hover{background:#ef444433;border-color:var(--color-negative)}.btn-danger:active{transform:scale(.98)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-sm{height:var(--height-sm);padding:0 12px;font-size:var(--text-sm)}.btn-lg{height:var(--height-lg);padding:0 20px}.btn-xl{height:var(--height-xl);padding:0 24px;font-size:var(--text-lg)}.btn-block{width:100%}[data-theme=light] .btn-secondary{background:#fff;border:1px solid var(--border-subtle);color:var(--text-muted)}[data-theme=light] .btn-secondary:hover{border-color:var(--border-strong);color:var(--text-high);background:var(--surface-hover)}.action-btn{background:transparent;border:none;color:var(--text-muted);width:var(--height-sm);height:var(--height-sm);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:var(--text-lg)}.action-btn:hover{background:var(--surface-hover);color:var(--text-high)}.action-btn.delete:hover{background:var(--color-negative-bg);color:var(--color-negative)}.tab-pill-group{display:flex;background:#0003;padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);width:fit-content}.tab-pill{border:none;background:transparent;color:var(--text-muted);height:var(--height-md);padding:0 16px;font-size:var(--text-base);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:background .15s ease,color .15s ease}.tab-pill:hover{color:var(--text-high)}.tab-pill.active{background:var(--accent-purple);color:var(--text-on-accent);font-weight:600}.panel-base{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden}.input-glass{background:#0000004d;border:1px solid var(--border-subtle);color:var(--text-high);border-radius:var(--radius-md);padding:8px 12px;font-family:var(--font-sans);outline:none;transition:border-color .2s}.input-glass:focus{border-color:var(--accent-purple)}[data-theme=light]{--bg-app: #FFFFFF;--bg-panel: #F4F4F5;--bg-subpanel: #E4E4E7;--accent-purple: #7c3aed;--accent-purple-hover: #6d28d9;--text-high: #09090B;--text-muted: #52525B;--text-low: #a1a1aa;--text-dim: var(--text-low);--text-placeholder: #a1a1aa;--text-on-accent: #ffffff;--border-subtle: rgba(0, 0, 0, .1);--border-glass: rgba(0, 0, 0, .08);--border-default: rgba(0, 0, 0, .1);--border-strong: rgba(0, 0, 0, .15);--border-focus: rgba(139, 92, 246, .6);--glass-surface: rgba(0, 0, 0, .03);--surface-raised: #ffffff;--surface-overlay: rgba(255, 255, 255, .98);--surface-input: #ffffff;--surface-hover: rgba(0, 0, 0, .04);--surface-pressed: rgba(0, 0, 0, .06);--color-positive: #059669;--color-negative: #dc2626;--color-warning: #d97706;--color-positive-bg: rgba(16, 185, 129, .06);--color-negative-bg: rgba(239, 68, 68, .06);--color-warning-bg: rgba(245, 158, 11, .08);--color-positive-border: rgba(16, 185, 129, .2);--color-negative-border: rgba(220, 38, 38, .2);--color-warning-border: rgba(217, 119, 6, .3);--overlay-bg: rgba(0, 0, 0, .4);--scrollbar-thumb: rgba(0, 0, 0, .12);--scrollbar-thumb-hover: rgba(0, 0, 0, .18);--shadow-card: 0 4px 12px rgba(0, 0, 0, .06);--shadow-dropdown: 0 8px 32px rgba(0, 0, 0, .15);--shadow-modal: 0 20px 50px -10px rgba(0, 0, 0, .15);--spotlight-overlay: rgba(0, 0, 0, .28);--spotlight-blur: .6px;--spotlight-glow: rgba(124, 58, 237, .24);--coachmark-shadow-1: rgba(0, 0, 0, .05);--coachmark-shadow-2: rgba(0, 0, 0, .08);--coachmark-shadow-3: rgba(0, 0, 0, .05);--header-bg: rgba(255, 255, 255, .8)}[data-theme=light] .input-glass,[data-theme=light] .tab-pill-group{background:var(--surface-hover)}[data-theme=light] .tab-pill.active{color:var(--text-on-accent)}:root{--theme-transition: color .15s ease, background-color .15s ease, border-color .15s ease}body,.ufs-container,.dashboard-container,.financial-statement-table,.drawer-shell{transition:var(--theme-transition)}body.theme-switching,body.theme-switching *{transition:none!important}@media print{.app-grid-bg,button[title="Open Debug Toolbar"],[style*="position: fixed"],.ufs-section-badge,.ufs-delete-btn{display:none!important}body,.app{background:#fff!important;color:#000!important}.ufs-table{font-size:10pt!important;border-collapse:collapse!important}.ufs-table th,.ufs-table td{border:1px solid #ccc!important;padding:4px 8px!important}.ufs-table-wrapper{max-height:none!important;overflow:visible!important}.ufs-section-header{page-break-after:avoid}.ufs-item-row{page-break-inside:avoid}}@media(pointer:coarse){.ff-bg-glow{animation:none;opacity:.2}}.ufs-form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.ufs-label,.label{font-size:var(--text-sm);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-caps)}.ufs-input{width:100%;box-sizing:border-box;height:var(--height-lg);padding:0 16px;font-family:inherit;background-color:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-high);font-size:var(--text-input);transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.ufs-input:focus{outline:none;background-color:var(--surface-hover);border-color:var(--border-focus);box-shadow:0 0 0 3px var(--purple-15)}select.ufs-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.5)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}select.ufs-input option{background:var(--bg-app);color:var(--text-high);padding:12px}select.ufs-input option:checked{background:var(--purple-30)}.ufs-select{height:var(--height-lg);padding:0 44px 0 14px;background-color:var(--surface-input)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-md);color:var(--text-high)!important;font-size:var(--text-input);font-weight:500;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.5)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;transition:background-color .15s,border-color .15s;letter-spacing:-.01em}.ufs-select:hover{border-color:var(--border-strong)!important;background-color:var(--surface-hover)!important;box-shadow:0 0 0 1px #ffffff0d,0 4px 12px #0000001a;transform:translateY(-1px)}.ufs-select:focus{outline:none;background-color:var(--surface-hover)!important;border-color:var(--border-focus)!important;box-shadow:0 0 0 3px #8b5cf62e,0 8px 24px var(--purple-15);transform:translateY(-1px)}.ufs-select:active{transform:translateY(0)}.ufs-select option{background:var(--bg-app)!important;color:var(--text-high)!important;padding:12px 14px;font-weight:500;letter-spacing:-.01em}.ufs-select optgroup{background:var(--bg-app)!important;color:var(--text-muted)!important;font-weight:700;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;padding:8px 14px 4px;margin-top:4px}.ufs-select option:checked{background:linear-gradient(135deg,var(--purple-20),var(--purple-10))!important;color:#8b5cf6!important;font-weight:600}.ufs-select:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.ufs-select.sm{padding:6px 34px 6px 10px;font-size:var(--text-base);border-radius:var(--radius-md);background-position:right 10px center!important}[data-theme=light] select.ufs-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.4)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}[data-theme=light] select.ufs-input:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.4)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}[data-theme=light] .ufs-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.4)' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important}[data-theme=light] .ufs-select:hover{box-shadow:0 0 0 1px #0000000d,0 4px 12px #00000014}select.ufs-input::-ms-expand,.ufs-select::-ms-expand{display:none}.ufs-input.error,.ufs-select.error{border-color:var(--color-negative)}.ufs-input.error:focus,.ufs-select.error:focus{box-shadow:0 0 0 3px var(--color-negative-bg)}.ufs-field-error{font-size:var(--text-sm);color:var(--color-negative);margin-top:var(--space-xs)}.ufs-help-text{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-xs);line-height:1.4}.ufs-help-text--italic{font-style:italic}.ufs-micro-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.ufs-text-secondary{font-size:var(--text-base);color:var(--text-muted)}.ufs-badge-text{font-size:var(--text-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.ufs-summary-value{font-size:var(--text-lg);font-weight:600}.ff-password-wrapper{position:relative;display:flex;align-items:center;width:100%}.ff-password-wrapper input{width:100%;padding-right:3rem}.ff-password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-dim);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.ff-password-toggle:hover{color:var(--text-low)}.ff-strength{display:flex;align-items:center;gap:.75rem;margin-top:.25rem}.ff-strength-bar{flex:1;height:4px;background:var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.ff-strength-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease,background .3s ease}.ff-strength-fill.ff-strength-weak{width:33%;background:var(--color-negative)}.ff-strength-fill.ff-strength-medium{width:66%;background:var(--color-warning)}.ff-strength-fill.ff-strength-strong{width:100%;background:var(--color-positive)}.ff-strength-label{font-size:var(--text-sm);font-weight:600;white-space:nowrap}.ff-strength-label.ff-strength-weak{color:var(--color-negative)}.ff-strength-label.ff-strength-medium{color:var(--color-warning)}.ff-strength-label.ff-strength-strong{color:var(--color-positive)}.ff-mismatch{font-size:var(--text-sm);color:var(--color-negative);margin-top:.125rem}.ff-input-error{border-color:var(--color-negative)!important}.ff-input-error:focus{box-shadow:0 0 0 3px #ef444426!important}.ff-password-error{color:var(--color-negative);font-size:var(--text-md)}.section-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-md)}@media(max-width:768px){.ufs-input,.ufs-select{height:48px}.ufs-form-group{gap:var(--space-md)}.ufs-form-row-flex,.ufs-form-row-flex--end{flex-direction:column}}:root{--pill-bg: transparent;--pill-border: var(--border-subtle);--pill-text: var(--text-muted);--pill-shadow: none;--pill-hover-bg: transparent;--pill-hover-border: var(--border-strong);--pill-active-bg-sec: transparent;--pill-active-text-sec: var(--text-high);--pill-active-border-sec: var(--accent-purple)}[data-theme=light]{--pill-bg: transparent;--pill-text: var(--text-muted);--pill-shadow: none;--pill-hover-bg: transparent;--pill-hover-border: var(--border-strong);--pill-active-bg-sec: transparent;--pill-active-text-sec: var(--text-high);--pill-active-border-sec: var(--accent-purple)}.dashboard-container{display:flex;flex-direction:column;flex:1;min-height:calc(100dvh - 56px);max-width:var(--page-shell-max-width);margin:0 auto;width:100%;padding:24px var(--page-shell-gutter) 16px;box-sizing:border-box;gap:12px}.dashboard-container--statement,.dashboard-container--scrollable{flex:none;height:auto;min-height:0}.page-title{font-family:var(--font-sans);font-size:1.75rem;font-weight:700;color:var(--text-high);letter-spacing:-.02em;margin:0;line-height:1.2}.statement-mobile-disclaimer{display:none}.overview-section-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}.overview-hero{padding:0}.overview-hero-value{font-size:3rem;font-weight:800;font-family:var(--font-mono);color:var(--text-high);letter-spacing:-.03em;line-height:1.1;display:flex;align-items:baseline;gap:12px}.overview-hero-growth{font-size:var(--text-caption);font-weight:600;font-family:var(--font-mono);letter-spacing:0}.overview-hero-growth{color:var(--text-muted)}.overview-hero-subtitle{font-size:var(--text-caption);font-weight:400;color:var(--text-muted);margin-top:6px}.overview-hero-sparkline{margin-top:16px;height:48px;opacity:.4}.overview-hero-sparkline svg{width:100%;height:100%}.overview-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);padding:1.5rem 0}.metrics-kpi-stat{display:flex;flex-direction:column;gap:2px;padding:0 32px;border-left:1px solid var(--border-subtle)}.metrics-kpi-stat:first-child{padding-left:0;border-left:none}.metrics-kpi-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.metrics-kpi-value{font-size:1.5rem;font-weight:700;font-family:var(--font-mono);color:var(--text-high);letter-spacing:-.02em;line-height:1.2}.metrics-kpi-subtitle{font-size:var(--text-sm);font-weight:400;color:var(--text-low);margin-top:1px}.metrics-stat{padding:1.25rem;display:flex;flex-direction:column;gap:2px}.metrics-stat+.metrics-stat{border-left:1px solid var(--border-subtle)}.metrics-value{font-size:1.5rem;font-weight:700;color:var(--text-high);letter-spacing:-.01em;line-height:1.2}.metrics-subtitle{font-size:var(--text-sm);color:var(--text-low);font-weight:400;margin-top:2px}.overview-section{border-top:1px solid var(--border-subtle);padding-top:1.5rem}.retirement-analysis{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1.5rem}.retirement-row,.retirement-status-row{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--text-caption);padding:4px 0}.retirement-row-label{color:var(--text-muted);font-weight:400}.retirement-row-value{font-family:var(--font-mono);color:var(--text-high);font-weight:600;letter-spacing:-.01em}.retirement-divider{border:none;border-top:1px solid var(--border-subtle);margin:8px 0}.retirement-status-label{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.retirement-status-value{font-weight:600;color:var(--text-high);font-size:var(--text-caption)}.allocation-section{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1.5rem}.allocation-bar-row,.allocation-summary-row{grid-template-columns:10rem 1fr 3rem 7rem;gap:12px}.allocation-bar-row{display:grid;align-items:center;padding:5px 0}.allocation-bar-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.allocation-bar-track{height:6px;border-radius:1px;background:var(--border-subtle);overflow:hidden}.allocation-bar-fill{height:100%;border-radius:1px;background:var(--text-high);opacity:.18}.allocation-pct{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-muted);text-align:right}.allocation-value{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-high);font-weight:500;text-align:right}.allocation-summary-row{display:grid;align-items:baseline;padding:4px 0;font-size:var(--text-sm)}.allocation-summary-label{color:var(--text-muted)}.allocation-summary-value{grid-column:4;font-family:var(--font-mono);color:var(--text-high);font-weight:600;text-align:right}.overview-hero-chart{margin-top:20px;height:120px;width:100%}.phase-track-area{position:relative}.phase-bar{position:absolute;background:var(--bg-subpanel);border:none;border-radius:var(--radius-sm);display:flex;align-items:center;padding:0 8px;overflow:hidden}.phase-bar-label{display:flex;align-items:center;font-size:var(--text-xs);font-weight:600;color:var(--text-high);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phase-now-marker{position:absolute;width:1px;top:0;bottom:0;background:var(--text-muted);z-index:2;opacity:.6}.phase-axis{position:relative;height:20px;margin-top:4px;border-top:1px solid var(--border-subtle)}.phase-axis-tick{position:absolute;transform:translate(-50%);font-size:.6rem;color:var(--text-low);white-space:nowrap;padding-top:3px}.phase-now-label{position:absolute;transform:translate(-50%);font-size:.6rem;color:var(--text-muted);white-space:nowrap;padding-top:3px;font-weight:600}.kpi-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;width:100%}.overview-hero-row{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:stretch}.overview-detail-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.overview-collapsible__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);padding:12px 0 8px;cursor:pointer;color:var(--text-muted);transition:color .15s}.overview-collapsible__toggle:hover{color:var(--text-high)}.overview-collapsible__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.overview-collapsible__chevron{transition:transform .2s;transform:rotate(-90deg)}.overview-collapsible__chevron--open{transform:rotate(0)}@media(max-width:1200px){.overview-hero-row{grid-template-columns:1fr}.kpi-bar{grid-template-columns:repeat(2,1fr)}.overview-metrics{flex-direction:column;gap:24px;padding:1.5rem 0}.metrics-primary-group{padding-right:0;gap:32px}.metrics-divider{display:none}.metrics-secondary-group{padding-left:0}.allocation-bar-row,.allocation-summary-row{grid-template-columns:8rem 1fr 3rem 6rem}.metrics-stat:nth-child(3){border-left:none}.overview-hero-value{font-size:2.25rem}}@media(max-width:768px){.dashboard-header{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dashboard-container{padding:16px var(--page-shell-gutter-mobile)}.statement-mobile-disclaimer{display:block;margin-top:-2px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--border-subtle) 78%,transparent);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--glass-surface) 88%,transparent),color-mix(in srgb,var(--bg-panel) 96%,transparent));color:var(--text-muted);font-size:.92rem;line-height:1.5;box-shadow:0 18px 40px #00000029;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dashboard-container.charts-view{flex:none;height:auto;min-height:0}.charts-view .dashboard-chart-area.charts-view-area{min-height:400px}.kpi-bar,.overview-detail-row{grid-template-columns:1fr}.metrics-primary-group{flex-direction:column;gap:16px}.metrics-secondary-group{grid-template-columns:1fr 1fr}.allocation-bar-row,.allocation-summary-row{grid-template-columns:1fr}.allocation-bar-label,.allocation-summary-label{grid-column:1}.allocation-value,.allocation-summary-value{grid-column:1;text-align:left}.metrics-stat+.metrics-stat{border-left:none;border-top:1px solid var(--border-subtle)}.overview-hero-value{font-size:2rem}.dashboard-controls{flex-direction:column;align-items:stretch;gap:4px}.dashboard-controls .enhanced-time-controls{justify-content:flex-end}.chart-legend-bar{gap:8px;justify-content:center}.legend-pill{padding:4px 8px;font-size:10px}}@media(max-width:480px){.dashboard-container{padding:12px var(--page-shell-gutter-mobile-tight)}.overview-hero-value{font-size:1.5rem}.kpi-card{padding:12px}.dashboard-chart-area{height:400px;min-height:400px}}.kpi-item{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:20px;display:flex;flex-direction:column;justify-content:center}.kpi-label{font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px;font-weight:600}.kpi-value{font-size:1.5rem;font-weight:700;color:var(--text-high);letter-spacing:-.02em;display:flex;align-items:center;gap:8px}.kpi-subtext{font-size:var(--text-caption);color:var(--text-muted);margin-top:4px}.dashboard-chart-area{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:24px;display:flex;flex-direction:column;gap:20px;height:650px;min-height:650px;position:relative;overflow:hidden}.chart-panel{display:none;width:100%;height:100%;flex:1}.chart-panel.active{display:block!important;animation:ff-fade-in .3s ease-in-out}.charts-view .dashboard-chart-area.charts-view-area{height:auto;min-height:0;flex:1}.dashboard-controls{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:var(--z-sticky);margin-bottom:0}.legend-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:500;transition:background .15s ease,border-color .15s ease;cursor:pointer;background:var(--pill-bg);border:1px solid var(--pill-border);color:var(--pill-text)}.chart-legend-bar{display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap}.legend-pill{padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;background:transparent;border:1px solid var(--pill-border);color:var(--text-muted);box-shadow:none;opacity:1!important}.legend-pill:hover{background:transparent;border-color:var(--pill-hover-border);color:var(--text-high)}.legend-pill.active{background:transparent;border-style:solid;border-color:var(--pill-active-border-sec);color:var(--text-high)}.legend-dot{width:6px;height:6px;border-radius:50%}[data-theme=light] .kpi-item{box-shadow:var(--shadow-card);background:var(--bg-app)}[data-theme=light] .kpi-item:hover{box-shadow:0 8px 20px var(--purple-10);border-color:var(--purple-20)}[data-theme=light] .kpi-subtext{color:var(--text-low)}[data-theme=light] .dashboard-chart-area,[data-theme=light] .charts-view-area{box-shadow:var(--shadow-card);background:var(--bg-app)}[data-theme=light] .dashboard-card{background:var(--bg-app);box-shadow:var(--shadow-card)}[data-theme=light] .overview-metrics{background:transparent}.scenario-trigger{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:color .15s ease,background .15s ease;white-space:nowrap;flex-shrink:0}.scenario-trigger:hover{color:var(--text-high);background:var(--surface-hover)}.scenario-trigger.open{color:var(--text-high);background:var(--surface-raised)}.scenario-trigger-label{font-weight:500}.scenario-trigger-caret{font-size:var(--text-sm);opacity:.5}.scenario-modal-body{padding:20px 24px 24px}.scenario-list{display:flex;flex-direction:column;gap:.5rem}.scenario-row{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-subpanel);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:border-color .15s ease,box-shadow .15s ease}.scenario-row.active{border-color:var(--accent-purple);box-shadow:0 0 8px var(--purple-30)}.scenario-name-btn{flex:1;text-align:left;padding:0;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-md);font-weight:500}.scenario-row.active .scenario-name-btn{color:var(--text-high);font-weight:600}.scenario-actions{display:flex;gap:4px;flex-shrink:0;align-items:center}.scenario-icon-btn{background:transparent;border:none;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-low);transition:color .15s,background .15s}.scenario-icon-btn:hover{color:var(--accent-purple);background:var(--bg-subpanel)}.scenario-icon-btn.disabled{opacity:.4;cursor:not-allowed}.scenario-icon-btn.disabled:hover{color:var(--text-low);background:transparent}.scenario-icon-btn.confirm-danger,.scenario-icon-btn.confirm-danger:hover{color:var(--color-negative)}.scenario-confirm-hint{margin-top:4px;padding:6px 10px;font-size:var(--text-xs);color:var(--color-negative);background:var(--color-negative-bg);border-radius:var(--radius-md);text-align:center}.scenario-add-section{margin-top:1rem}.scenario-inline-form{display:flex;gap:.5rem}.scenario-inline-input{padding:.5rem .75rem;font-size:var(--text-base);flex:1}.scenario-inline-btn{padding:.5rem 1rem;font-size:var(--text-sm);font-weight:600}.scenario-new-btn{width:100%;padding:.85rem;background:var(--bg-subpanel);border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);color:var(--accent-purple);font-weight:500;font-size:var(--text-md);cursor:pointer;transition:all .15s ease}.scenario-new-btn:hover{border-color:var(--accent-purple);background:var(--purple-15)}.scenario-upgrade-hint{padding:.75rem 1rem;font-size:var(--text-sm);color:var(--text-muted);text-align:center;background:var(--bg-subpanel);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.scenario-upgrade-link{color:var(--accent-purple)}.scenario-whatif-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.scenario-whatif-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}[data-theme=light] .scenario-row{background:var(--bg-panel);border-color:var(--border-glass)}[data-theme=light] .scenario-new-btn{background:var(--bg-panel);border-color:var(--border-strong)}[data-theme=light] .scenario-new-btn:hover{background:var(--purple-08)}.enhanced-kpi-card,.insights-card,.legend-pill,.btn-primary,.btn-secondary{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden}.enhanced-kpi-card:not(:hover),.insights-card:not(:hover){will-change:auto}.dashboard-chart-area{contain:layout style paint;content-visibility:auto}.kpi-bar{contain:layout style paint}.glass-panel{contain:layout style}.ufs-table{contain:layout}.app-main{transform:translateZ(0);will-change:scroll-position}body{text-rendering:optimizeLegibility;font-smooth:always;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:no-preference){*{scroll-behavior:smooth}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}svg{shape-rendering:geometricPrecision}img{image-rendering:-webkit-optimize-contrast}.chart-panel:not(.active){content-visibility:hidden}.ufs-value-cell,.ufs-name-cell{contain:layout style}.enhanced-kpi-card:before,.insights-card:before{transform:translateZ(0)}.modal-overlay{contain:layout style paint}.dashboard-controls{contain:layout style}.app-grid-bg{will-change:opacity;transform:translateZ(0)}.app-header{contain:layout style;transform:translateZ(0)}.ufs-sticky-col{contain:style}.glass-panel,.panel-base{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transform:translateZ(0)}
