@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-100:oklch(96.7% .003 264.542);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-4xl:56rem;--container-7xl:80rem;--text-xs:.75rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-4{margin:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(280px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-gray-300{border-color:var(--color-gray-300)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media(hover:hover){.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:p-8{padding:calc(var(--spacing) * 8)}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:p-12{padding:calc(var(--spacing) * 12)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media(min-width:80rem){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:p-16{padding:calc(var(--spacing) * 16)}}@media(prefers-color-scheme:dark){.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:text-white{color:var(--color-white)}}}:root{--font-family:"Pretendard Variable", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--bg:#f0f2f7;--card:#fff;--card-inner:#fafbfc;--card-hover:#f8f9ff;--text:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--border:#e5e7eb;--border-light:#f3f4f6;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--radius:var(--radius-lg);--shadow-sm:0 1px 2px #0000000a, 0 1px 4px #0000000a;--shadow-md:0 2px 4px #0000000a, 0 4px 16px #0000000f;--shadow-lg:0 4px 8px #0000000a, 0 8px 32px #00000014;--shadow-xl:0 8px 16px #0000000a, 0 16px 48px #0000001a;--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#a5b4fc;--primary-surface:#eef2ff;--accent:#8b5cf6;--success:#22c55e;--success-surface:#f0fdf4;--warning:#f59e0b;--warning-surface:#fffbeb;--danger:#ef4444;--danger-surface:#fef2f2;--stock-up:#e53935;--stock-down:#1e88e5;--grade-a:#16a34a;--grade-b:#2563eb;--grade-c:#ea580c;--grade-d:#dc2626;--ai-bg:linear-gradient(135deg, #1e3a5f 0%, #2c5f8a 100%);--skeleton-base:#f0f0f0;--skeleton-shine:#e0e0e0;--skel-ai-bg:#e5e7eb;--banner-bg:#fffbeb;--banner-border:#fde68a;--banner-label-bg:#fef3c7;--banner-label-text:#92400e;--banner-text:#78350f;--toggle-hover:#f3f4f6;--bar-bg-up-start:#ffcdd2;--bar-bg-down-start:#bbdefb;--admin-data:#2196f3;--admin-batch:#ff9800;--admin-scheduler:#0ea5e9;--admin-system:#8b5cf6;--admin-calendar:#14b8a6;--admin-stock:#673ab7;--admin-users:#00bcd4;--admin-consents:#ef4444;--admin-portfolio:#6366f1;--admin-comparison:#9c27b0;--admin-financial:#4caf50;--admin-valuation:#9c27b0;--admin-quant:#ff9800;--admin-report:#e91e63;--risk-low:#4caf50;--risk-medium:#ff9800;--risk-high:#f44336;--asset-stock:#2196f3;--asset-stock-bg:#e3f2fd;--asset-etf:#9c27b0;--asset-etf-bg:#f3e5f5;--asset-bond:#4caf50;--asset-bond-bg:#e8f5e9;--asset-deposit:#ff9800;--asset-deposit-bg:#fff3e0;--vip-diamond:#b9f2ff;--vip-platinum:#e5e4e2;--vip-gold:gold;--vip-silver:silver;--vip-bronze:#cd7f32;--membership-enterprise:#8b5cf6;--membership-pro:#3b82f6;--membership-starter:#10b981;--membership-free:#6b7280;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--transition-spring:.4s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark]{--bg:#111827;--card:#1f2937;--card-inner:#1a2332;--card-hover:#283548;--text:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--border:#374151;--border-light:#2d3748;--shadow-sm:0 1px 2px #0003, 0 1px 4px #0003;--shadow-md:0 2px 4px #0003, 0 4px 16px #0000004d;--shadow-lg:0 4px 8px #0003, 0 8px 32px #0006;--shadow-xl:0 8px 16px #0000004d, 0 16px 48px #00000080;--primary-light:#a5b4fc;--primary-surface:#6366f11f;--success-surface:#22c55e1a;--warning-surface:#f59e0b1a;--danger-surface:#ef44441a;--stock-up:#ff6b6b;--stock-down:#64b5f6;--ai-bg:linear-gradient(135deg, #162538 0%, #1c3650 100%);--skeleton-base:#374151;--skeleton-shine:#4b5563;--skel-ai-bg:#283548;--banner-bg:#1c1a0f;--banner-border:#5c4d1a;--banner-label-bg:#3d3415;--banner-label-text:#fbbf24;--banner-text:#fcd34d;--toggle-hover:#283548;--bar-bg-up-start:#ff6b6b33;--bar-bg-down-start:#64b5f633;--asset-stock-bg:#1a2744;--asset-etf-bg:#2a1a3a;--asset-bond-bg:#1a2e1a;--asset-deposit-bg:#2e2a1a;--vip-diamond:#7dd3fc;--vip-platinum:#d1d5db;--vip-gold:#fbbf24;--vip-silver:#a8a29e;--vip-bronze:#d97706}.card-glass{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl);box-shadow:0 4px 24px #0000000f,inset 0 1px #ffffff80;background:#ffffff8c!important;border:1px solid #ffffff73!important}.card-glass:hover{box-shadow:0 8px 32px #00000014,inset 0 1px #fff9;background:#ffffffa6!important}[data-theme=dark] .card-glass{box-shadow:0 4px 24px #0000004d,inset 0 1px #ffffff0d;background:#1f293780!important;border:1px solid #ffffff14!important}[data-theme=dark] .card-glass:hover{box-shadow:0 8px 32px #0006,inset 0 1px #ffffff14;background:#1f293799!important}body{transition:background var(--transition-slow),color var(--transition-slow)}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-animate{animation:countUp .4s var(--transition-base)}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}a{color:var(--primary,#646cff);-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:var(--primary-dark,#535bf2)}body{min-width:320px;min-height:100vh;color:var(--text,#333);background-color:var(--bg,#f0f2f7);margin:0}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:400px}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-enter var(--transition-spring) forwards;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-width:280px}.toast-exit{animation:toast-exit .2s ease-in forwards}@keyframes toast-enter{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toast-exit{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%) scale(.95)}}.toast-success{background:var(--success-surface);border:1px solid var(--success);color:#166534}[data-theme=dark] .toast-success{background:#22c55e26;color:#86efac;border-color:#22c55e66}.toast-error{background:var(--danger-surface);border:1px solid var(--danger);color:#991b1b}[data-theme=dark] .toast-error{background:#ef444426;color:#fca5a5;border-color:#ef444466}.toast-info{background:var(--primary-surface);border:1px solid var(--primary);color:#3730a3}[data-theme=dark] .toast-info{background:#6366f126;color:#a5b4fc;border-color:#6366f166}.toast-warning{background:var(--warning-surface);border:1px solid var(--warning);color:#92400e}[data-theme=dark] .toast-warning{background:#f59e0b26;color:#fbbf24;border-color:#f59e0b66}.toast-icon{flex-shrink:0;font-size:1.1rem;line-height:1.4}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:var(--text-sm);line-height:1.4}.toast-message{font-size:var(--text-xs);opacity:.85;margin-top:2px;line-height:1.4}.toast-close{flex-shrink:0;background:none;border:none;font-size:1rem;cursor:pointer;opacity:.5;padding:0;line-height:1;color:inherit;transition:opacity var(--transition-fast)}.toast-close:hover{opacity:1}.toast-progress{position:absolute;bottom:0;left:0;height:3px;border-radius:0 0 var(--radius-lg) var(--radius-lg);animation:toast-progress linear forwards}.toast-success .toast-progress{background:var(--success)}.toast-error .toast-progress{background:var(--danger)}.toast-info .toast-progress{background:var(--primary)}.toast-warning .toast-progress{background:var(--warning)}@keyframes toast-progress{0%{width:100%}to{width:0%}}@media(max-width:480px){.toast-container{inset:auto 12px 20px;max-width:none}.toast{min-width:auto}}.footer{margin-top:64px;padding:32px 24px;background:var(--card, #f8f9fa);border-top:1px solid var(--border, #e0e0e0);text-align:center;transition:background .3s,border-color .3s}.footer-inner{max-width:1200px;margin:0 auto}.footer-legal{font-size:.75rem;color:var(--text-secondary, #6b7280);line-height:1.6;margin-bottom:16px;text-align:left}.footer-legal-title{margin-bottom:8px;font-weight:600;color:var(--text, #1f2937)}.footer-legal-item{margin-bottom:4px}.footer-legal-item:last-child{margin-bottom:0}.footer-guide{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:12px}.footer-guide-link{color:var(--primary, #6366f1);font-size:.8rem;font-weight:600;text-decoration:none}.footer-guide-link+.footer-guide-link{padding-left:1rem;border-left:1px solid var(--border, #e0e0e0)}.footer-guide-link:hover{text-decoration:underline}.footer-copyright{padding-top:16px;border-top:1px solid var(--border, #e0e0e0);font-size:.875rem;color:var(--text-muted, #9ca3af)}.footer-copyright p{margin:0}.footer-copyright-sub{margin:4px 0 0;font-size:.75rem}.error-boundary-container{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem}.error-boundary-card{background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);padding:3rem 2.5rem;max-width:480px;width:100%;text-align:center}.error-boundary-icon{font-size:3rem;margin-bottom:1rem}.error-boundary-title{color:var(--stock-down);font-size:1.5rem;font-weight:700;margin:0 0 .75rem}.error-boundary-message{color:var(--text);font-size:1rem;line-height:1.6;margin:0 0 .5rem}.error-boundary-hint{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 2rem}.error-boundary-actions{display:flex;gap:.75rem;justify-content:center}.error-boundary-btn{padding:.625rem 1.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:opacity .15s;border:none}.error-boundary-btn:hover{opacity:.85}.error-boundary-btn-primary{background:var(--primary);color:#fff}.error-boundary-btn-secondary{background:var(--card-inner);color:var(--text);border:1px solid var(--border)}.shepherd-button{background:#3288e6;border:0;border-radius:3px;color:#ffffffbf;cursor:pointer;margin-right:.5rem;padding:.5rem 1.5rem;transition:all .5s ease}.shepherd-button:not(:disabled):hover{background:#196fcc;color:#ffffffbf}.shepherd-button.shepherd-button-secondary{background:#f1f2f3;color:#000000bf}.shepherd-button.shepherd-button-secondary:not(:disabled):hover{background:#d6d9db;color:#000000bf}.shepherd-button:disabled{cursor:not-allowed}.shepherd-footer{border-bottom-left-radius:5px;border-bottom-right-radius:5px;display:flex;justify-content:flex-end;padding:0 .75rem .75rem}.shepherd-footer .shepherd-button:last-child{margin-right:0}.shepherd-cancel-icon{background:transparent;border:none;color:#808080bf;cursor:pointer;font-size:2em;font-weight:400;margin:0;padding:0;transition:color .5s ease}.shepherd-cancel-icon:hover{color:#000000bf}.shepherd-has-title .shepherd-content .shepherd-cancel-icon{color:#808080bf}.shepherd-has-title .shepherd-content .shepherd-cancel-icon:hover{color:#000000bf}.shepherd-title{color:#000000bf;display:flex;flex:1 0 auto;font-size:1rem;font-weight:400;margin:0;padding:0}.shepherd-header{align-items:center;border-top-left-radius:5px;border-top-right-radius:5px;display:flex;justify-content:flex-end;line-height:2em;padding:.75rem .75rem 0}.shepherd-has-title .shepherd-content .shepherd-header{background:#e6e6e6;padding:1em}.shepherd-text{color:#000000bf;font-size:1rem;line-height:1.3em;padding:.75em}.shepherd-text p{margin-top:0}.shepherd-text p:last-child{margin-bottom:0}.shepherd-content{border-radius:5px;outline:none;padding:0}.shepherd-element{background:#fff;border:none;border-radius:5px;box-shadow:0 1px 4px #0003;margin:0;max-width:400px;opacity:0;outline:none;padding:0;transition:opacity .3s,visibility .3s;visibility:hidden;width:100%;z-index:9999}.shepherd-enabled.shepherd-element{opacity:1;visibility:visible}.shepherd-element[data-popper-reference-hidden]:not(.shepherd-centered){opacity:0;pointer-events:none;visibility:hidden}.shepherd-element,.shepherd-element *,.shepherd-element :after,.shepherd-element :before{box-sizing:border-box}.shepherd-arrow,.shepherd-arrow:before{height:16px;position:absolute;width:16px;z-index:-1}.shepherd-arrow:before{background:#fff;content:"";transform:rotate(45deg)}.shepherd-element[data-popper-placement^=top]>.shepherd-arrow{bottom:-8px}.shepherd-element[data-popper-placement^=bottom]>.shepherd-arrow{top:-8px}.shepherd-element[data-popper-placement^=left]>.shepherd-arrow{right:-8px}.shepherd-element[data-popper-placement^=right]>.shepherd-arrow{left:-8px}.shepherd-element.shepherd-centered>.shepherd-arrow{opacity:0}.shepherd-element.shepherd-has-title[data-popper-placement^=bottom]>.shepherd-arrow:before{background-color:#e6e6e6}.shepherd-target-click-disabled.shepherd-enabled.shepherd-target,.shepherd-target-click-disabled.shepherd-enabled.shepherd-target *{pointer-events:none}.shepherd-modal-overlay-container{height:0;left:0;opacity:0;overflow:hidden;pointer-events:none;position:fixed;top:0;transition:all .3s ease-out,height 0s .3s,opacity .3s 0s;width:100vw;z-index:9997}.shepherd-modal-overlay-container.shepherd-modal-is-visible{height:100vh;opacity:.5;transform:translateZ(0);transition:all .3s ease-out,height 0s 0s,opacity .3s 0s}.shepherd-modal-overlay-container.shepherd-modal-is-visible path{pointer-events:all}.shepherd-element{z-index:10000}.foresto-tour-step .shepherd-content{border-radius:16px;background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);box-shadow:var(--shadow-lg, 0 10px 40px rgba(0, 0, 0, .15))}.foresto-tour-step .shepherd-text{color:var(--text, #1f2937);font-size:1rem;line-height:1.6;padding:1.5rem}.foresto-tour-step .shepherd-header{background:transparent;padding:1rem 1.5rem 0}.foresto-tour-step .shepherd-title{color:var(--text, #1f2937);font-weight:700}.foresto-tour-step .shepherd-cancel-icon{color:var(--text-secondary, #6b7280)}.foresto-tour-step .shepherd-cancel-icon:hover{color:var(--text, #1f2937)}.foresto-tour-step .shepherd-footer{padding:0 1.5rem 1.5rem}.foresto-tour-step .shepherd-button{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;padding:.5rem 1.25rem;font-weight:600;cursor:pointer}.foresto-tour-step .shepherd-button:hover{box-shadow:0 4px 12px #667eea4d}.foresto-tour-step .shepherd-button.shepherd-button-secondary{background:var(--card-inner, #f9fafb);color:var(--text, #1f2937);border:1px solid var(--border, #e5e7eb)}.foresto-tour-step .shepherd-button.shepherd-button-secondary:hover{background:var(--border-light, #f3f4f6);box-shadow:none}.tour-progress{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;color:var(--text-muted, #9ca3af);font-weight:600}.tour-progress-bar{flex:1;height:4px;background:var(--border-light, #f3f4f6);border-radius:2px;overflow:hidden}.tour-progress-fill{height:100%;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:2px;transition:width .3s ease}.tour-hint{font-size:.85rem;color:var(--text-muted, #9ca3af);margin-top:.5rem}.shepherd-modal-overlay-container{z-index:9999}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: var(--primary, #6366f1);--secondary-color: var(--text-secondary, #6b7280);--success-color: var(--stock-up, #16a34a);--danger-color: var(--stock-down, #dc2626);--warning-color: #f59e0b;--info-color: #17a2b8;--light-color: var(--card-inner, #fafbfc);--dark-color: var(--text, #1f2937);--border-radius: 8px;--box-shadow: var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .1));--transition: all .3s ease}html,body{font-family:var(--font-family, "Pretendard Variable", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg, #f5f5f5);transition:background .3s,color .3s}body{color:var(--text, #333);line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:20px;max-width:1400px;margin:0 auto;width:100%}.main-content:has(>.landing-container),.main-content:has(>.auth-container){padding:0;max-width:none}.header{background:var(--card, #ffffff);color:var(--text, #1f2937);border-bottom:1px solid var(--border, #e0e0e0);padding:0;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0,0,0,.08));position:sticky;top:0;z-index:100;transition:background .3s,border-color .3s,color .3s}.header-container{max-width:1400px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:56px;gap:24px}.header-logo{flex:0 0 auto}.logo-button{background:none;border:none;color:var(--primary, #6366f1);font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:var(--border-radius);transition:var(--transition)}.logo-button:hover{background-color:var(--card-hover, rgba(0, 0, 0, .04))}.logo-icon{font-size:1.5rem}.logo-text{display:none}@media(min-width:768px){.logo-text{display:inline}}.header-nav{flex:1;display:flex;gap:8px;justify-content:center;align-items:center}.step-journey{display:flex;align-items:center;gap:0}.step-indicator-group{display:flex;align-items:center;position:relative}.step-connector{width:32px;height:2px;background:var(--border, #e0e0e0);flex-shrink:0;transition:background .3s}.step-connector.completed{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.step-button-wrapper{display:flex;flex-direction:column;align-items:center;position:relative}.step-button{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:8px;transition:background .15s}.step-button:hover{background:var(--card-hover, rgba(0, 0, 0, .04))}.step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;background:var(--card-inner, #f3f4f6);color:var(--text-muted, #9ca3af);border:2px solid var(--border, #e0e0e0);transition:all .2s;line-height:1}.step-circle.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent;box-shadow:0 2px 8px #667eea59}.step-circle.completed{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent}.step-label{font-size:.72rem;font-weight:500;color:var(--text-secondary, #6b7280);white-space:nowrap;transition:color .15s}.step-button:hover .step-label{color:var(--text, #1f2937)}.nav-locked-badge{display:inline-block;background:#ef44441f;color:#ef4444;font-size:.6rem;font-weight:700;padding:.1rem .35rem;border-radius:4px;margin-left:.4rem;vertical-align:middle}.nav-locked{opacity:.6}.aux-nav{display:flex;align-items:center;gap:4px;margin-left:12px;padding-left:12px;border-left:1px solid var(--border, #e0e0e0)}@media(max-width:1024px)and (min-width:769px){.step-connector{width:16px}.step-label{font-size:.65rem}.step-button{padding:4px}.aux-nav{margin-left:8px;padding-left:8px}}.nav-link,.nav-group-button{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:.85rem;font-weight:500;cursor:pointer;padding:8px 14px;border-radius:8px;transition:all .15s;position:relative;white-space:nowrap}.nav-link:hover,.nav-group-button:hover{background-color:var(--card-hover, rgba(0, 0, 0, .04));color:var(--text, #1f2937)}.nav-link.active,.nav-group-button.active{font-weight:600;background-color:#667eea1a;color:var(--primary, #6366f1)}.nav-group{position:relative}.nav-caret{margin-left:6px;font-size:.8rem}.nav-dropdown{position:absolute;top:calc(100% + 10px);left:0;min-width:180px;background:var(--card, #ffffff);color:var(--text, #1f2937);border:1px solid var(--border, #e0e0e0);border-radius:12px;box-shadow:var(--shadow-lg, 0 12px 28px rgba(15, 23, 42, .18));padding:.5rem;display:flex;flex-direction:column;gap:4px;z-index:120}.nav-dropdown-item{background:none;border:none;color:var(--text, #1f2937);text-align:left;padding:.5rem .65rem;border-radius:8px;cursor:pointer;font-size:.9rem}.nav-dropdown-item:hover{background:var(--card-hover, #eef2ff);color:var(--primary, #4338ca)}.nav-dropdown-separator{font-size:.7rem;font-weight:700;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.05em;padding:.4rem .65rem .15rem;margin-top:.25rem;pointer-events:none;-webkit-user-select:none;user-select:none}.nav-dropdown-separator:first-child{margin-top:0}.nav-dropdown-item.active{background:#667eea1f;color:var(--primary, #4338ca);font-weight:600}.nav-recommended-badge{display:inline-block;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.65rem;font-weight:700;padding:.15rem .4rem;border-radius:4px;margin-left:.5rem;vertical-align:middle}.header-user{flex:0 0 auto;display:flex;align-items:center;gap:12px}.user-info{display:flex;align-items:center;font-size:.85rem;gap:10px}.user-name-section{display:flex;align-items:center;gap:6px}.user-name{font-weight:600;font-size:.85rem;color:var(--text, #1f2937)}.profile-incomplete-tag{display:inline-block;background:#ef444426;color:#ef4444;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px;border:1px solid rgba(239,68,68,.3);cursor:pointer;white-space:nowrap;transition:all .2s ease}.profile-incomplete-tag:hover{background:#ef444440;border-color:#ef444480;transform:scale(1.05)}.user-email{display:none}.user-tier-section{display:flex;gap:6px;align-items:center}.tier-badge{font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:12px;background-color:var(--card-inner, rgba(0, 0, 0, .06));white-space:nowrap;border:1px solid var(--border-light, rgba(0, 0, 0, .08))}.tier-badge.vip-tier{cursor:help}.tier-badge:hover{background-color:var(--card-hover, rgba(0, 0, 0, .1));transform:scale(1.05);transition:all .2s ease}.btn-logout{background-color:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border, #e0e0e0);padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;font-size:.85rem;transition:var(--transition)}.btn-logout:hover{background-color:var(--card-hover, rgba(0, 0, 0, .04));color:var(--text, #1f2937);border-color:var(--text-muted, #9ca3af)}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--border-radius);transition:var(--transition)}.mobile-menu-toggle:hover{background-color:var(--card-hover, rgba(0, 0, 0, .04))}@media(max-width:768px){.header-container{justify-content:space-between}.header-nav,.header-user{display:none}.mobile-menu-toggle,.mobile-step-row{display:flex}}.hamburger-icon{display:flex;flex-direction:column;justify-content:space-between;width:24px;height:18px;position:relative}.hamburger-icon span{display:block;width:100%;height:2px;background:var(--text, #1f2937);border-radius:2px;transition:all .3s ease}.hamburger-icon.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger-icon.open span:nth-child(2){opacity:0}.hamburger-icon.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu-backdrop{position:fixed;inset:0;background:#00000080;z-index:140;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-drawer{position:fixed;top:0;right:0;bottom:0;width:300px;max-width:85vw;background:var(--card, #ffffff);z-index:150;transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column;overflow-y:auto}.mobile-menu-drawer.open{transform:translate(0)}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:1.1rem;font-weight:600;flex-shrink:0}.mobile-menu-close{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;line-height:1}.mobile-menu-close:hover{background-color:#fff3}.mobile-step-row{display:flex;align-items:center;justify-content:center;padding:14px 20px;gap:0;border-bottom:1px solid var(--border-light, #f3f4f6);background:var(--card-inner, #fafbfc)}.mobile-step-item{display:flex;align-items:center}.mobile-step-connector{width:24px;height:2px;background:var(--border, #e0e0e0);flex-shrink:0;transition:background .3s}.mobile-step-connector.completed{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.mobile-step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;background:var(--card-inner, #f3f4f6);color:var(--text-muted, #9ca3af);border:2px solid var(--border, #e0e0e0);cursor:pointer;transition:all .2s;line-height:1}.mobile-step-circle.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent;box-shadow:0 2px 8px #667eea59}.mobile-step-circle.completed{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent}.mobile-nav-step-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--card-inner, #f3f4f6);color:var(--text-muted, #9ca3af);font-size:.7rem;font-weight:700;margin-right:8px;flex-shrink:0;border:1.5px solid var(--border, #e0e0e0)}.mobile-nav-group-button.open .mobile-nav-step-num{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent}.mobile-nav-group-label{display:flex;align-items:center}.mobile-aux-divider{font-size:.7rem;font-weight:700;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.05em;padding:12px 20px 6px;border-top:1px solid var(--border, #e0e0e0);margin-top:4px;pointer-events:none;-webkit-user-select:none;user-select:none}.mobile-nav{flex:1;padding:8px 0;overflow-y:auto}.mobile-nav-group{border-bottom:1px solid var(--border-light, #f3f4f6)}.mobile-nav-group-button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 20px;background:none;border:none;font-size:1rem;font-weight:600;color:var(--text, #1f2937);cursor:pointer;transition:background .2s}.mobile-nav-group-button:hover{background:var(--card-hover, #f9fafb)}.mobile-nav-group-button.open{color:var(--primary, #6366f1);background:#667eea0f}.mobile-nav-caret{font-size:.8rem;transition:transform .2s ease}.mobile-nav-caret.open{transform:rotate(180deg)}.mobile-nav-items{padding:0 0 8px;background:var(--card-inner, #fafbfc)}.mobile-nav-separator{font-size:.7rem;font-weight:700;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.05em;padding:8px 32px 4px;pointer-events:none;-webkit-user-select:none;user-select:none}.mobile-nav-separator:first-child{padding-top:4px}.mobile-nav-item{display:block;width:100%;padding:10px 32px;background:none;border:none;text-align:left;font-size:.95rem;color:var(--text-secondary, #374151);cursor:pointer;transition:all .15s}.mobile-nav-item:hover{background:#667eea0f;color:var(--primary, #6366f1)}.mobile-nav-item.active{background:#667eea1a;color:var(--primary, #6366f1);font-weight:600}.mobile-menu-user{padding:16px 20px;border-top:1px solid var(--border, #e5e7eb);background:var(--card-inner, #f8f9fa);flex-shrink:0}.mobile-user-info{margin-bottom:12px}.mobile-user-name{display:block;font-weight:600;color:var(--text, #1f2937);margin-bottom:8px}.mobile-user-tiers{display:flex;gap:8px}.mobile-logout{width:100%;background-color:#667eea1a;color:var(--primary, #6366f1);border:1px solid var(--primary, #6366f1)}.btn{padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md, 8px);font-size:1rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:600}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary, #6366f1);color:#fff;box-shadow:0 1px 2px #6366f133}.btn-primary:hover:not(:disabled){background:var(--primary-dark, #4f46e5);box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #6366f133}.btn-ghost{background:transparent;color:var(--primary, #6366f1);border:1px solid transparent}.btn-ghost:hover:not(:disabled){background:var(--primary-surface, #eef2ff);border-color:var(--primary-light, #a5b4fc)}.btn-secondary{background-color:var(--text-secondary, #6b7280);color:#fff}.btn-secondary:hover:not(:disabled){opacity:.85}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.spinner{width:50px;height:50px;border:4px solid var(--border, #e5e7eb);border-top-color:var(--primary, #6366f1);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text, #1f2937)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:var(--border-radius);font-size:1rem;font-family:inherit;transition:var(--transition);background:var(--card, #ffffff);color:var(--text, #1f2937)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary, #6366f1);box-shadow:0 0 0 3px #667eea33}.form-group input:disabled,.form-group select:disabled{background-color:var(--card-inner, #fafbfc);cursor:not-allowed}.form-group small{display:block;margin-top:5px;color:var(--text-secondary, #6b7280);font-size:.85rem}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:var(--card, #ffffff);border-radius:var(--border-radius);box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .1));padding:40px;width:100%;max-width:450px}.auth-card h1{font-size:1.8rem;margin-bottom:10px;color:var(--text, #1f2937)}.subtitle{color:var(--text-secondary, #6b7280);margin-bottom:30px;font-size:.95rem}.auth-card form{margin-bottom:20px}.auth-footer{text-align:center;padding-top:20px;border-top:1px solid var(--border-light, #f3f4f6)}.auth-footer p{margin:0;color:var(--text-secondary, #6b7280)}.link{color:var(--primary, #6366f1);text-decoration:none;font-weight:500;cursor:pointer}.link:hover{text-decoration:underline}.error-message{background-color:#dc262614;color:var(--stock-down, #dc2626);padding:15px 20px;border-radius:var(--border-radius);margin-bottom:20px;border-left:4px solid var(--stock-down, #dc2626);font-weight:500;font-size:1rem;box-shadow:0 2px 8px #dc354526;animation:fadeInShake .5s ease-out;white-space:pre-line;line-height:1.6}@keyframes fadeInShake{0%{opacity:0;transform:translateY(-10px)}50%{transform:translateY(0)}60%{transform:translate(-5px)}70%{transform:translate(5px)}80%{transform:translate(-3px)}90%{transform:translate(3px)}to{opacity:1;transform:translate(0)}}.survey-container{display:flex;justify-content:center;padding:20px}.survey-card{background:var(--card, #ffffff);border-radius:var(--border-radius);box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .1));padding:40px;width:100%;max-width:700px}.progress-section{margin-bottom:40px}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.progress-text{font-weight:500;color:var(--text, #1f2937)}.progress-percent{font-weight:700;color:var(--primary, #6366f1);font-size:1.1rem}.progress-bar{width:100%;height:8px;background-color:var(--border, #e5e7eb);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .3s ease}.question-section{margin:40px 0}.survey-question{margin:0}.question-category{margin-bottom:20px}.category-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500;background-color:var(--card-inner, #fafbfc)}.category-experience{color:#6366f1}.category-duration{color:#f093fb}.category-risk{color:#4facfe}.category-knowledge{color:#43e97b}.category-amount{color:#fa709a}.question-text{font-size:1.3rem;margin-bottom:25px;color:var(--text, #1f2937);font-weight:500}.options-container{display:flex;flex-direction:column;gap:12px}.option-item{display:flex;align-items:flex-start}.option-input{margin-right:12px;margin-top:4px;cursor:pointer}.option-label{flex:1;padding:12px;border:1px solid var(--border, #e5e7eb);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.option-label:hover{border-color:var(--primary, #6366f1);background-color:var(--card-hover, #f9fafb)}.option-label.selected{background-color:#667eea14;border-color:var(--primary, #6366f1);font-weight:500}.option-text{display:block;margin-bottom:5px}.option-weight{display:block;font-size:.8rem;color:var(--text-muted, #9ca3af)}.investment-section{background-color:var(--card-inner, #fafbfc);padding:20px;border-radius:var(--border-radius);margin:30px 0}.investment-section label{font-weight:500;margin-bottom:10px}.investment-section small{color:var(--text-secondary, #6b7280)}.button-section{display:flex;gap:15px;margin-top:40px}.button-section .btn{flex:1;padding:12px 20px;font-size:1rem}.survey-info{background-color:#667eea14;border-left:4px solid var(--primary, #6366f1);padding:15px;border-radius:var(--border-radius);margin-top:30px}.survey-info p{margin:0;color:var(--primary, #6366f1);font-size:.95rem}.survey-info-sub{font-size:.85rem!important;color:var(--text-secondary, #6b7280)!important;margin-top:.5rem!important}.notice-consent{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.notice-checkbox{display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:var(--text, #1f2937)}.result-container{display:flex;justify-content:center;padding:20px}.result-card{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);box-shadow:var(--shadow-sm);padding:40px;width:100%;max-width:800px}.result-header{text-align:center;margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid var(--border, #e5e7eb)}.result-icon{margin-bottom:20px}.result-type{font-size:2rem;margin-bottom:15px;color:var(--primary, #6366f1)}.result-subtitle{color:var(--text-secondary, #6b7280);font-size:1.05rem;margin:0}.scores-section{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:40px}.score-card{background:var(--card-inner, #fafbfc);padding:20px;border-radius:var(--radius, 12px);text-align:center}.score-label{color:var(--text-secondary, #6b7280);font-size:.9rem;font-weight:500;margin-bottom:10px}.score-value{font-size:1.8rem;font-weight:700;margin-bottom:15px}.score-bar{width:100%;height:6px;background-color:var(--border, #e5e7eb);border-radius:3px;overflow:hidden}.score-fill{height:100%;transition:width .5s ease}.description-section,.characteristics-section,.portfolio-section,.return-section,.investment-section{margin-bottom:30px}.description-section h2,.characteristics-section h2,.portfolio-section h2,.return-section h2,.investment-section h2{font-size:1.3rem;margin-bottom:15px;color:var(--text, #1f2937)}.characteristics-list{list-style:none}.characteristics-list li{padding:10px 0 10px 25px;position:relative;color:var(--text-secondary, #6b7280)}.characteristics-list li:before{content:"✓";position:absolute;left:0;color:var(--primary, #6366f1);font-weight:700}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.portfolio-item{background-color:var(--card-inner, #fafbfc);padding:15px;border-radius:var(--border-radius);text-align:center}.asset-name{font-weight:500;margin-bottom:8px;color:var(--text, #1f2937)}.asset-ratio{font-size:1.5rem;font-weight:700;color:var(--primary, #6366f1);margin-bottom:10px}.asset-bar{width:100%;height:6px;background-color:var(--border, #e5e7eb);border-radius:3px;overflow:hidden}.asset-fill{height:100%}.return-value{font-size:1.8rem;font-weight:700}.investment-value{font-size:1.5rem;font-weight:700;color:var(--primary, #6366f1)}.result-info{background-color:#667eea14;border-left:4px solid var(--primary, #6366f1);padding:15px;border-radius:var(--border-radius);margin-top:30px}.result-info p{margin:0;color:var(--primary, #6366f1);font-size:.95rem}.history-container{padding:20px}.history-layout{display:grid;grid-template-columns:350px 1fr;gap:20px;max-width:1400px;margin:0 auto}.history-list-section,.history-detail-section{background:var(--card, #ffffff);border-radius:var(--border-radius);box-shadow:var(--shadow-md, 0 2px 8px rgba(0, 0, 0, .1));padding:20px}.history-header{margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--border-light, #f3f4f6)}.history-header h1{font-size:1.5rem;margin-bottom:5px;color:var(--text, #1f2937)}.history-count{color:var(--text-secondary, #6b7280);font-size:.9rem;margin:0}.history-list{display:flex;flex-direction:column;gap:10px;max-height:600px;overflow-y:auto}.history-item{padding:15px;border:1px solid var(--border, #e5e7eb);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition)}.history-item:hover{border-color:var(--primary, #6366f1);background-color:var(--card-hover, #f9fafb)}.history-item.selected{border-color:var(--primary, #6366f1);background-color:#667eea14}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.history-type-badge{font-weight:500;font-size:.9rem}.history-date{font-size:.8rem;color:var(--text-muted, #9ca3af)}.history-item-body{display:flex;gap:15px;margin-bottom:10px}.history-score,.history-confidence{flex:1}.history-score .label,.history-confidence .label{display:block;font-size:.8rem;color:var(--text-secondary, #6b7280)}.history-score .value,.history-confidence .value{font-weight:700;font-size:.95rem}.history-investment{font-size:.85rem;color:var(--text-secondary, #6b7280);padding-top:10px;border-top:1px solid var(--border-light, #f3f4f6)}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary, #6b7280)}.empty-state p{margin-bottom:20px}.empty-detail{display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--text-muted, #9ca3af);text-align:center}.detail-card{display:flex;flex-direction:column;gap:25px}.detail-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:2px solid var(--border-light, #f3f4f6)}.detail-type-badge{font-size:1.2rem;font-weight:700}.detail-date{color:var(--text-secondary, #6b7280);font-size:.9rem}.detail-scores{display:grid;grid-template-columns:1fr 1fr;gap:15px}.score-box{background-color:var(--card-inner, #fafbfc);padding:15px;border-radius:var(--border-radius);text-align:center}.score-box .score-label{color:var(--text-secondary, #6b7280);margin-bottom:8px}.score-box .score-value{font-size:1.5rem;font-weight:700}.detail-description h3,.detail-characteristics h3,.detail-portfolio h3,.detail-return h3,.detail-investment h3{font-size:1.1rem;margin-bottom:12px;color:var(--text, #1f2937)}.detail-description p,.detail-return p,.detail-investment p{color:var(--text-secondary, #6b7280);line-height:1.6}.detail-characteristics ul{list-style:none}.detail-characteristics li{padding:8px 0 8px 25px;position:relative;color:var(--text-secondary, #6b7280)}.detail-characteristics li:before{content:"✓";position:absolute;left:0;color:var(--primary, #6366f1);font-weight:700}.portfolio-items{display:flex;flex-direction:column;gap:10px}.portfolio-row{display:flex;justify-content:space-between;padding:10px;background-color:var(--card-inner, #fafbfc);border-radius:var(--border-radius)}.portfolio-asset{font-weight:500}.portfolio-ratio{font-weight:700;color:var(--primary, #6366f1)}.return-value{font-size:1.5rem;font-weight:700;color:var(--primary, #6366f1)}.detail-buttons{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-light, #f3f4f6)}.detail-buttons .btn{width:100%}@media(max-width:1024px){.history-layout{grid-template-columns:1fr}.history-list{max-height:300px}}@media(max-width:768px){.main-content{padding:10px}.survey-card,.auth-card,.result-card{padding:20px}.survey-card h1,.result-card h1{font-size:1.5rem}.question-text{font-size:1.1rem}.scores-section,.detail-scores{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.button-section{flex-direction:column}.history-layout{grid-template-columns:1fr}}@media(max-width:480px){.survey-card,.auth-card,.result-card{padding:15px}.result-header{padding-bottom:20px}.result-type,.score-value{font-size:1.5rem}.question-text{font-size:1rem}.portfolio-grid{grid-template-columns:1fr}}.ai-analysis-section{margin:30px 0;padding:25px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:var(--border-radius);color:#fff}.ai-analysis-section h2{margin-bottom:20px;font-size:1.5rem;display:flex;align-items:center;gap:10px}.ai-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#fff3;border-radius:20px;font-size:1rem;font-weight:600}.ai-card{background:var(--card, rgba(255, 255, 255, .95));border-radius:var(--border-radius);padding:20px;margin-bottom:15px;box-shadow:0 4px 6px #0000001a;color:var(--text, #1f2937)}.ai-card:last-child{margin-bottom:0}.ai-card h3{color:var(--primary, #6366f1);font-size:1.2rem;margin-bottom:12px;font-weight:600}.ai-card.risk-warning{border-left:4px solid var(--stock-down, #dc2626)}.ai-card.risk-warning h3{color:var(--stock-down, #dc2626)}.ai-content{line-height:1.8;font-size:1rem;color:var(--text-secondary, #6b7280);white-space:pre-wrap;word-wrap:break-word}@media(max-width:768px){.ai-analysis-section{padding:20px}.ai-card{padding:15px}.ai-badge{font-size:.9rem;padding:6px 12px}.ai-card h3{font-size:1.1rem}.ai-content{font-size:.95rem}}.admin-back-btn{display:inline-flex;align-items:center;gap:4px;background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:8px 16px;cursor:pointer;font-size:14px;color:var(--text-secondary, #6b7280);transition:all .2s;margin-bottom:12px}.admin-back-btn:hover{border-color:var(--primary, #6366f1);color:var(--primary, #6366f1);background:var(--card-hover, #f9fafb)}.admin-workflow-nav{display:flex;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid var(--border, #e5e7eb)}.admin-workflow-link{display:inline-flex;align-items:center;gap:6px;background:var(--primary, #6366f1);color:#fff;border:none;border-radius:8px;padding:10px 20px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.admin-workflow-link:hover{opacity:.9}.theme-toggle{width:36px;height:36px;border-radius:50%;border:1px solid var(--border, #e0e0e0);background:var(--card-inner, rgba(0, 0, 0, .04));cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .2s;flex-shrink:0;position:relative;padding:0}.theme-toggle:hover{background:var(--card-hover, rgba(0, 0, 0, .08));border-color:var(--text-muted, #9ca3af)}[data-theme=dark] .main-content{background-color:var(--bg)}[data-theme=dark] .step-circle{background:var(--card-inner);color:var(--text-muted);border-color:var(--border)}[data-theme=dark] .step-connector{background:var(--border)}[data-theme=dark] .step-label{color:var(--text-secondary)}[data-theme=dark] .step-button:hover .step-label{color:var(--text)}[data-theme=dark] .aux-nav{border-left-color:var(--border)}[data-theme=dark] .nav-locked-badge{background:#ef444433;color:#fca5a5}[data-theme=dark] .mobile-step-row{background:var(--card-inner);border-bottom-color:var(--border)}[data-theme=dark] .mobile-step-circle{background:var(--card-inner);color:var(--text-muted);border-color:var(--border)}[data-theme=dark] .mobile-step-connector{background:var(--border)}[data-theme=dark] .mobile-nav-step-num{background:var(--card-inner);color:var(--text-muted);border-color:var(--border)}[data-theme=dark] .mobile-aux-divider{color:var(--text-muted);border-top-color:var(--border)}[data-theme=dark] .mobile-menu-drawer{background:var(--card)}[data-theme=dark] .mobile-nav-group{border-bottom-color:var(--border)}[data-theme=dark] .mobile-nav-group-button{color:var(--text)}[data-theme=dark] .mobile-nav-group-button:hover{background:var(--card-hover)}[data-theme=dark] .mobile-nav-group-button.open{color:var(--primary-light);background:#667eea1a}[data-theme=dark] .mobile-nav-items{background:var(--card-inner)}[data-theme=dark] .mobile-nav-item{color:var(--text-secondary)}[data-theme=dark] .mobile-nav-item:hover{background:var(--card-hover);color:var(--primary-light)}[data-theme=dark] .mobile-nav-item.active{background:#667eea26;color:var(--primary-light)}[data-theme=dark] .mobile-nav-separator{color:var(--text-muted)}[data-theme=dark] .mobile-menu-user{border-top-color:var(--border);background:var(--card-inner)}[data-theme=dark] .mobile-user-name{color:var(--text)}[data-theme=dark] .mobile-logout{background-color:#667eea26;color:var(--primary-light);border-color:var(--primary)}[data-theme=dark] .auth-card{background:var(--card);box-shadow:var(--shadow-md)}[data-theme=dark] .auth-card h1,[data-theme=dark] .form-group label{color:var(--text)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:var(--card-inner);border-color:var(--border);color:var(--text)}[data-theme=dark] .form-group input:focus,[data-theme=dark] .form-group select:focus,[data-theme=dark] .form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #667eea33}[data-theme=dark] .error-message{background-color:#dc26261f;color:#fca5a5;border-left-color:#991b1b}[data-theme=dark] .survey-card{background:var(--card);box-shadow:var(--shadow-md)}[data-theme=dark] .category-badge{background-color:var(--card-inner)}[data-theme=dark] .option-label{border-color:var(--border)}[data-theme=dark] .option-label:hover{border-color:var(--primary);background-color:var(--card-hover)}[data-theme=dark] .option-label.selected{background-color:#667eea1f;border-color:var(--primary)}[data-theme=dark] .survey-info{background-color:#667eea1a}[data-theme=dark] .history-list-section,[data-theme=dark] .history-detail-section{background:var(--card);box-shadow:var(--shadow-md)}[data-theme=dark] .history-item{border-color:var(--border)}[data-theme=dark] .history-item:hover{border-color:var(--primary);background-color:var(--card-hover)}[data-theme=dark] .history-item.selected{border-color:var(--primary);background-color:#667eea1a}[data-theme=dark] .result-info,[data-theme=dark] .survey-info{background-color:#667eea1a}[data-theme=dark] .ai-card{background:var(--card);box-shadow:var(--shadow-sm)}[data-theme=dark] .ai-card.risk-warning{border-left-color:#991b1b}[data-theme=dark] .ai-card.risk-warning h3{color:#fca5a5}.disclaimer-box{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-left:4px solid #f59e0b;padding:1.25rem 1.5rem;border-radius:var(--radius, 12px);margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.disclaimer-title{font-size:.95rem;font-weight:700;color:#f59e0b;margin-bottom:.75rem;margin-top:0}.disclaimer-list{font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0;padding-left:1.2rem;line-height:1.7}.disclaimer-list li{margin-bottom:.35rem}.disclaimer-list li:last-child{margin-bottom:0}.landing-container{width:100%;min-height:100vh;background:var(--bg)}.lp-section-inner{max-width:1100px;margin:0 auto;padding:5rem 2rem}.lp-section-header{text-align:center;max-width:640px;margin:0 auto 3rem}.lp-section-header h2{font-size:2.2rem;font-weight:700;color:var(--text);margin:0 0 .75rem}.lp-section-header p{font-size:1.1rem;color:var(--text-secondary);margin:0;line-height:1.6}.lp-section-header-light h2{color:#fff}.lp-section-header-light p{color:#ffffffd9}.lp-btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1.05rem;font-weight:600;border-radius:12px;border:none;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;transition:all .3s ease}.lp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea59}.lp-btn-primary.lp-btn-lg{padding:1.1rem 2.8rem;font-size:1.15rem}.lp-btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1.05rem;font-weight:600;border-radius:12px;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:all .3s ease}.lp-btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.lp-btn-ghost{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1.05rem;font-weight:600;border-radius:12px;background:transparent;color:var(--primary);border:2px solid var(--primary);cursor:pointer;transition:all .3s ease}.lp-btn-ghost:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.lp-btn-link{display:inline-flex;align-items:center;background:none;border:none;color:var(--primary);font-size:.95rem;font-weight:600;cursor:pointer;padding:.5rem 0;transition:color .2s}.lp-btn-link:hover{color:var(--primary-dark)}.lp-hero{background:linear-gradient(135deg,#6366f1,#8b5cf6);min-height:80vh;display:flex;align-items:center;justify-content:center}[data-theme=dark] .lp-hero{background:linear-gradient(135deg,#4a5fc1,#5a3a82)}.lp-hero-inner{max-width:720px;margin:0 auto;padding:6rem 2rem;text-align:center;color:#fff}.lp-hero-eyebrow{font-size:1.15rem;opacity:.9;margin:0 0 1.5rem;letter-spacing:.02em}.lp-hero-title{font-size:3rem;font-weight:800;line-height:1.25;margin:0 0 1.5rem}.lp-gradient-text{background:linear-gradient(135deg,#fff,#ffd89b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-hero-sub{font-size:1.15rem;line-height:1.8;opacity:.92;margin:0 0 2.5rem}.lp-hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.lp-hero .lp-btn-primary{background:#fff;color:var(--primary)}.lp-hero .lp-btn-primary:hover{box-shadow:0 10px 30px #0003}.lp-problems{background:var(--bg)}.lp-problems-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.lp-problem-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2.5rem 2rem;text-align:center;transition:all .3s ease}.lp-problem-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--primary)}.lp-problem-icon{font-size:2.5rem;margin-bottom:1.25rem}.lp-problem-text{font-size:1.05rem;line-height:1.7;color:var(--text);margin:0;font-weight:500}.lp-diagnosis{background:var(--card)}.lp-diagnosis-widget{max-width:600px;margin:0 auto}.lp-diagnosis-questions{display:flex;flex-direction:column;gap:1rem}.lp-q-card{background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:2rem;transition:all .3s}.lp-q-card:not(.active){opacity:.4;pointer-events:none}.lp-q-card.done{opacity:.6}.lp-q-number{font-size:.85rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.lp-q-text{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 1rem}.lp-q-options{display:flex;flex-direction:column;gap:.75rem}.lp-q-option{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;cursor:pointer;text-align:left;transition:all .2s;color:var(--text);font-size:.95rem}.lp-q-option:hover{border-color:var(--primary);background:#667eea14}[data-theme=dark] .lp-q-option:hover{background:#667eea26}.lp-diagnosis-result{text-align:center;background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:3rem}.lp-result-icon{font-size:4rem;margin-bottom:1rem}.lp-diagnosis-result h3{font-size:1.8rem;font-weight:700;color:var(--text);margin:0 0 1rem}.lp-diagnosis-result p{font-size:1.05rem;color:var(--text-secondary);line-height:1.6;margin:0 0 2rem}.lp-disclaimer-text{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--text-muted)}.lp-playground{background:var(--bg)}.lp-playground-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:3rem}.lp-playground-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem 1.5rem;text-align:center;transition:all .3s ease}.lp-playground-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--primary)}.lp-playground-icon{font-size:2.2rem;margin-bottom:1rem}.lp-playground-step-num{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:1rem}.lp-playground-card h3{font-size:1.05rem;font-weight:700;color:var(--text);margin:0 0 .5rem}.lp-playground-card p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1.25rem;line-height:1.5;flex:1}.lp-card-cta{display:inline-flex;align-items:center;gap:4px;background:none;border:1.5px solid var(--primary);color:var(--primary);font-size:.85rem;font-weight:600;padding:.5rem 1.25rem;border-radius:8px;cursor:pointer;transition:all .2s}.lp-card-cta:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.lp-playground-connected{position:relative}.lp-playground-connected .lp-playground-card{display:flex;flex-direction:column;align-items:center;position:relative}.lp-playground-connected .lp-playground-card:not(:last-child):after{content:"→";position:absolute;right:-1.1rem;top:2.2rem;font-size:1.2rem;color:var(--primary);font-weight:700;z-index:1}.lp-compass-mini{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem}.lp-compass-mini-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 1.25rem;text-align:center}.lp-compass-mini-list{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem}.lp-compass-mini-card{display:flex;align-items:center;gap:.75rem;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:.875rem 1.25rem;min-width:180px;flex-shrink:0}.lp-compass-mini-name{font-size:.9rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.lp-compass-mini-score{font-size:1rem;font-weight:800;color:var(--primary);flex-shrink:0}.lp-compass-mini-grade{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.75rem;font-weight:700;flex-shrink:0}.lp-compass-mini-grade.grade-s{background:#eab30826;color:#b45309}[data-theme=dark] .lp-compass-mini-grade.grade-s{background:#eab30833;color:#fbbf24}.lp-compass-mini-grade.grade-aplus{background:#3b82f61f;color:#2563eb}[data-theme=dark] .lp-compass-mini-grade.grade-aplus{background:#3b82f633;color:#93c5fd}.lp-compass-mini-grade.grade-a{background:#22c55e1f;color:#16a34a}[data-theme=dark] .lp-compass-mini-grade.grade-a{background:#22c55e33;color:#86efac}.lp-compass-mini-grade.grade-bplus{background:#f973161f;color:#ea580c}[data-theme=dark] .lp-compass-mini-grade.grade-bplus{background:#f9731633;color:#fdba74}.lp-compass-mini-grade.grade-b,.lp-compass-mini-grade.grade-cplus,.lp-compass-mini-grade.grade-c{background:#6b72801f;color:var(--text-secondary)}.lp-compass-mini-grade.grade-d,.lp-compass-mini-grade.grade-f{background:#dc26261a;color:var(--stock-down)}.lp-compass-mini .lp-btn-link{display:block;text-align:center;margin-top:1rem}.lp-ai{background:linear-gradient(135deg,#6366f1,#8b5cf6)}[data-theme=dark] .lp-ai{background:linear-gradient(135deg,#4a5fc1,#5a3a82)}.lp-ai-features{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3rem}.lp-ai-card{background:#ffffff1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:2rem;transition:all .3s ease}.lp-ai-card:hover{background:#fff3;transform:translateY(-4px)}.lp-ai-card-icon{font-size:2rem;margin-bottom:1rem}.lp-ai-card h3{font-size:1.05rem;font-weight:700;color:#fff;margin:0 0 .75rem}.lp-ai-card p{font-size:.9rem;color:#ffffffd9;margin:0;line-height:1.6}.lp-ai-mock{max-width:560px;margin:0 auto;background:#0003;border-radius:16px;padding:1.5rem}.lp-ai-mock-header{font-size:.8rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.lp-ai-mock-bubble{background:#ffffff1a;border-radius:12px;padding:1.25rem;position:relative}.lp-ai-mock-label{display:inline-block;background:var(--primary);color:#fff;font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:6px;margin-bottom:.5rem}.lp-ai-mock-bubble p{font-size:.9rem;color:#ffffffe6;line-height:1.7;margin:0}.lp-ai-mock-note{font-size:.75rem;color:#ffffff80;margin:.75rem 0 0;text-align:center}.lp-safety{background:var(--card)}.lp-safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem}.lp-safety-card{background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:2rem;text-align:center;transition:all .3s ease}.lp-safety-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}.lp-safety-icon{font-size:2.2rem;margin-bottom:1rem}.lp-safety-card h3{font-size:1.05rem;font-weight:700;color:var(--text);margin:0 0 .5rem}.lp-safety-card p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}.lp-safety-disclaimer{max-width:640px;margin:0 auto}.lp-api-banner{background:var(--bg)}.lp-api-banner-card{display:flex;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:2rem 2.5rem;gap:2rem}.lp-api-banner-text h3{font-size:1.25rem;font-weight:700;color:var(--text);margin:0 0 .375rem}.lp-api-banner-text p{font-size:.95rem;color:var(--text-secondary);margin:0;line-height:1.5}.lp-final-cta{background:var(--bg)}.lp-final-cta .lp-section-inner{text-align:center;padding:6rem 2rem}.lp-final-cta-title{font-size:2.4rem;font-weight:700;color:var(--text);margin:0 0 1rem}.lp-final-cta-sub{font-size:1.15rem;color:var(--text-secondary);margin:0 0 2.5rem;line-height:1.6}.lp-final-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media(max-width:1024px){.lp-hero-title{font-size:2.4rem}.lp-section-header h2{font-size:1.9rem}.lp-problems-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto}.lp-playground-grid{grid-template-columns:repeat(2,1fr)}.lp-playground-connected .lp-playground-card:not(:last-child):after{display:none}.lp-ai-features{grid-template-columns:1fr;max-width:480px;margin:0 auto 3rem}.lp-safety-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto 2.5rem}.lp-final-cta-title{font-size:2rem}}@media(max-width:640px){.lp-section-inner{padding:3.5rem 1.25rem}.lp-hero-inner{padding:4rem 1.25rem}.lp-hero{min-height:70vh}.lp-hero-eyebrow{font-size:1rem}.lp-hero-title{font-size:1.9rem}.lp-hero-sub{font-size:1rem}.lp-hero-actions{flex-direction:column}.lp-section-header h2{font-size:1.6rem}.lp-playground-grid{grid-template-columns:1fr}.lp-playground-connected .lp-playground-card:not(:last-child):after{content:"↓";display:block;position:static;text-align:center;font-size:1.2rem;color:var(--primary);font-weight:700;margin:-.5rem auto}.lp-compass-mini-list{flex-direction:column}.lp-compass-mini-card{min-width:unset}.lp-api-banner-card{flex-direction:column;text-align:center;padding:1.5rem}.lp-final-cta-title{font-size:1.7rem}.lp-final-cta-actions{flex-direction:column;align-items:center}.lp-final-cta-actions .lp-btn-primary,.lp-final-cta-actions .lp-btn-ghost{width:100%;max-width:320px}}.auth-container{display:flex;align-items:center;justify-content:center;min-height:80vh;padding:2rem 1rem}.auth-container .auth-card{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);box-shadow:var(--shadow-sm);padding:2.5rem;width:100%;max-width:450px}.auth-container .auth-card h1{font-size:1.6rem;font-weight:700;margin-bottom:.5rem;color:var(--text, #1f2937)}.auth-container .subtitle{color:var(--text-secondary, #6b7280);margin-bottom:1.75rem;font-size:.95rem}.auth-container .auth-card form{margin-bottom:1.25rem}.auth-container .error-message{background:#dc262614;border:1px solid var(--stock-down, #dc2626);border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;color:var(--stock-down, #dc2626);font-size:.9rem}[data-theme=dark] .auth-container .error-message{color:#fca5a5;border-color:#991b1b;background:#991b1b26}.auth-container .form-group{margin-bottom:1.25rem}.auth-container .form-group label{display:block;margin-bottom:.4rem;font-weight:600;color:var(--text, #1f2937);font-size:.9rem}.auth-container .form-group input,.auth-container .form-group select,.auth-container .form-group textarea{width:100%;padding:.7rem .85rem;border:1px solid var(--border, #e5e7eb);border-radius:8px;font-size:.95rem;background:var(--card, #ffffff);color:var(--text, #1f2937);transition:border-color .2s;outline:none}.auth-container .form-group input::placeholder{color:var(--text-muted, #9ca3af)}.auth-container .form-group input:focus,.auth-container .form-group select:focus,.auth-container .form-group textarea:focus{border-color:var(--primary, #6366f1);box-shadow:0 0 0 3px #667eea1f}[data-theme=dark] .auth-container .form-group input:focus,[data-theme=dark] .auth-container .form-group select:focus{box-shadow:0 0 0 3px #667eea40}.auth-container .form-group input:disabled,.auth-container .form-group select:disabled{opacity:.6;cursor:not-allowed}.auth-container .form-group small{display:block;margin-top:.4rem;font-size:.85rem;color:var(--text-muted, #9ca3af)}.auth-container .form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.auth-container .form-actions button{flex:1}.auth-container .btn-primary{width:100%;padding:.7rem 1.25rem;background:var(--primary, #6366f1);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s;margin-top:.5rem}.auth-container .btn-primary:hover:not(:disabled){opacity:.9}.auth-container .btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-container .auth-footer{text-align:center;padding-top:1.25rem;border-top:1px solid var(--border, #e5e7eb)}.auth-container .auth-footer p{margin:0;color:var(--text-secondary, #6b7280);font-size:.9rem}.auth-container .link{color:var(--primary, #6366f1);text-decoration:none;font-weight:600}.auth-container .link:hover{text-decoration:underline}.signup-card{max-width:460px!important}.signup-hint{text-align:center;margin-top:.75rem;font-size:.85rem;color:var(--text-muted, #9ca3af)}.auth-container .info-box{background:var(--card-inner, #fafbfc);border:1px solid var(--border, #e5e7eb);border-left:4px solid var(--primary, #6366f1);padding:.75rem 1rem;border-radius:8px;margin-top:1.25rem}.auth-container .info-box p{margin:0;font-size:.9rem;color:var(--text-secondary, #6b7280);line-height:1.6}.auth-container .info-box p:first-child{margin-bottom:.4rem}.auth-container .info-box strong{color:var(--primary, #6366f1)}.verification-icon{text-align:center;margin-bottom:1.5rem;font-size:4rem}.verification-icon .loading-spinner{font-size:4rem;animation:auth-spin 1s linear infinite}.verification-icon .success-icon{color:var(--stock-up, #16a34a);font-size:4rem}.verification-icon .error-icon{color:var(--stock-down, #dc2626);font-size:4rem}[data-theme=dark] .verification-icon .error-icon{color:#fca5a5}.verification-message{text-align:center;padding:2rem 1rem}.verification-message.success{color:var(--stock-up, #16a34a)}[data-theme=dark] .verification-message.success{color:#86efac}.verification-message.error{color:var(--stock-down, #dc2626)}[data-theme=dark] .verification-message.error{color:#fca5a5}.verification-message p{margin-bottom:1rem;font-size:1.1rem}.verification-message .subtitle{color:var(--text-secondary, #6b7280);font-size:.95rem;margin-bottom:1.5rem}.verification-message .btn{margin-top:1rem;min-width:200px}@keyframes auth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:640px){.auth-container .auth-card{padding:1.5rem}.signup-card{padding:1.5rem!important}}@media(max-width:480px){.auth-container .auth-card{padding:1.25rem}.auth-container .auth-card h1{font-size:1.35rem}}.guest-screener-page{max-width:1200px;margin:0 auto;padding:2rem}.guest-screener-header{margin-bottom:2rem}.guest-screener-header h1{font-size:1.75rem;font-weight:700;color:var(--text, #1f2937);margin:0 0 .5rem}.guest-screener-header p{color:var(--text-secondary, #6b7280);margin:0;font-size:1rem}.guest-screener-filters{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.guest-screener-search{flex:1;min-width:200px;padding:.75rem 1rem;border:1px solid var(--border, #e5e7eb);border-radius:8px;font-size:.95rem;background:var(--card, #ffffff);color:var(--text, #1f2937);transition:border-color .2s}.guest-screener-search:focus{outline:none;border-color:var(--primary, #6366f1);box-shadow:0 0 0 3px #667eea1a}.guest-screener-select{padding:.75rem 1rem;border:1px solid var(--border, #e5e7eb);border-radius:8px;font-size:.95rem;background:var(--card, #ffffff);color:var(--text, #1f2937);min-width:140px}.guest-screener-select:focus{outline:none;border-color:var(--primary, #6366f1)}.guest-screener-loading{text-align:center;padding:4rem 2rem;color:var(--text-muted, #9ca3af)}.guest-screener-count{font-size:.9rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem}.guest-screener-table-wrap{overflow-x:auto;margin-bottom:2rem;border:1px solid var(--border, #e5e7eb);border-radius:12px;background:var(--card, #ffffff);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .1))}.guest-screener-table{width:100%;border-collapse:collapse;font-size:.9rem}.guest-screener-table thead{background:var(--card-inner, #fafbfc)}[data-theme=dark] .guest-screener-table thead{background:var(--card-hover, #1e293b)}.guest-screener-table th{padding:.875rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #6b7280);border-bottom:1px solid var(--border, #e5e7eb);white-space:nowrap}.guest-screener-table td{padding:.875rem 1rem;color:var(--text, #1f2937);border-bottom:1px solid var(--border-light, #f3f4f6)}.guest-screener-table tbody tr:last-child td{border-bottom:none}.guest-screener-table tbody tr:hover{background:#667eea0a}[data-theme=dark] .guest-screener-table tbody tr:hover{background:#667eea14}.guest-screener-ticker{font-family:monospace;font-weight:600;color:var(--primary, #6366f1)}.guest-screener-name{font-weight:500}.guest-screener-price{font-variant-numeric:tabular-nums;text-align:right}.guest-screener-score{font-weight:700;color:var(--primary, #6366f1);font-variant-numeric:tabular-nums;text-align:center}.guest-screener-grade{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.8rem;font-weight:700}.guest-screener-grade.grade-s{background:#eab30826;color:#b45309}[data-theme=dark] .guest-screener-grade.grade-s{background:#eab30833;color:#fbbf24}.guest-screener-grade.grade-aplus{background:#3b82f61f;color:#2563eb}[data-theme=dark] .guest-screener-grade.grade-aplus{background:#3b82f633;color:#93c5fd}.guest-screener-grade.grade-a{background:#22c55e1f;color:#16a34a}[data-theme=dark] .guest-screener-grade.grade-a{background:#22c55e33;color:#86efac}.guest-screener-grade.grade-bplus{background:#f973161f;color:#ea580c}[data-theme=dark] .guest-screener-grade.grade-bplus{background:#f9731633;color:#fdba74}.guest-screener-grade.grade-b,.guest-screener-grade.grade-cplus,.guest-screener-grade.grade-c{background:#6b72801f;color:var(--text-secondary, #6b7280)}.guest-screener-grade.grade-d,.guest-screener-grade.grade-f{background:#dc26261a;color:var(--stock-down, #dc2626)}.guest-screener-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted, #9ca3af)}.guest-screener-cta{text-align:center;padding:2rem;background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;margin-bottom:1.5rem}.guest-screener-cta p{color:var(--text-secondary, #6b7280);margin:0 0 1rem}.guest-screener-cta-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:.875rem 2rem;font-size:1rem;font-weight:600;border-radius:10px;border:none;cursor:pointer;transition:all .3s ease}.guest-screener-cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.guest-52w-cell{min-width:120px;max-width:160px;padding:2px 0}.guest-52w-labels{display:flex;justify-content:space-between;font-size:.625rem;color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums;line-height:1;margin-bottom:2px}.guest-52w-track{position:relative;height:6px;background:var(--border-light, #f3f4f6);border-radius:3px;overflow:visible}.guest-52w-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--grade-a, #16a34a),var(--primary, #6366f1),var(--stock-up, #e53935))}.guest-52w-marker{position:absolute;top:-2px;width:10px;height:10px;background:var(--text, #1f2937);border:2px solid var(--card, #ffffff);border-radius:50%;transform:translate(-50%);box-shadow:0 0 2px #0003}.guest-52w-pct{font-size:.625rem;color:var(--text-secondary, #6b7280);text-align:center;margin-top:1px;line-height:1}@media(max-width:768px){.guest-screener-filters{flex-direction:column}.guest-screener-search{min-width:auto}.guest-screener-table{font-size:.8rem}.guest-screener-table th,.guest-screener-table td{padding:.625rem .5rem}}.ug-page{max-width:820px;margin:0 auto;padding:2rem 1.5rem 3rem}.ug-error{color:var(--stock-down, #dc2626);font-size:.9rem;text-align:center;margin-top:2rem}[data-theme=dark] .ug-error{color:#fca5a5}.ug-article{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);padding:2rem 2.5rem;box-shadow:var(--shadow-sm);color:var(--text, #1f2937);line-height:1.8;font-size:.925rem;word-break:keep-all;overflow-wrap:break-word}.ug-article h1{font-size:1.75rem;font-weight:800;margin:0 0 .5rem;color:var(--text, #1f2937);letter-spacing:-.01em}.ug-article h2{font-size:1.3rem;font-weight:700;margin:2.5rem 0 .75rem;padding-bottom:.4rem;border-bottom:2px solid var(--primary, #6366f1);color:var(--text, #1f2937)}.ug-article h3{font-size:1.1rem;font-weight:700;margin:2rem 0 .5rem;color:var(--text, #1f2937)}.ug-article h4{font-size:1rem;font-weight:600;margin:1.5rem 0 .4rem;color:var(--text, #1f2937)}.ug-article p{margin:.6rem 0;color:var(--text-secondary, #6b7280)}.ug-article strong{color:var(--text, #1f2937);font-weight:600}.ug-article a{color:var(--primary, #6366f1);text-decoration:none}.ug-article a:hover{text-decoration:underline}.ug-article em{font-style:italic;color:var(--text-secondary, #6b7280)}.ug-article ul,.ug-article ol{padding-left:1.4rem;margin:.5rem 0 1rem;color:var(--text-secondary, #6b7280)}.ug-article li{margin:.3rem 0;line-height:1.7}.ug-article li::marker{color:var(--primary, #6366f1)}.ug-article table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.85rem;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.ug-article thead,.ug-article tbody{display:table;width:100%;table-layout:fixed}.ug-article th{background:var(--card-inner, #fafbfc);font-weight:600;color:var(--text, #1f2937);text-align:left;padding:.55rem .75rem;border:1px solid var(--border, #e5e7eb);white-space:nowrap}.ug-article td{padding:.5rem .75rem;border:1px solid var(--border, #e5e7eb);color:var(--text-secondary, #6b7280);vertical-align:top}.ug-article tr:nth-child(2n) td{background:var(--card-inner, #fafbfc)}[data-theme=dark] .ug-article th{background:var(--card-inner, #1a2332)}[data-theme=dark] .ug-article tr:nth-child(2n) td{background:var(--card-inner, #1a2332)}.ug-article blockquote{margin:1rem 0;padding:.75rem 1.25rem;border-left:4px solid var(--primary, #6366f1);background:var(--card-inner, #fafbfc);border-radius:0 8px 8px 0;color:var(--text-secondary, #6b7280)}.ug-article blockquote p{margin:.3rem 0}.ug-article code{background:var(--card-inner, #fafbfc);color:var(--accent, #8b5cf6);padding:.15rem .4rem;border-radius:4px;font-size:.85em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.ug-article pre{background:var(--card-inner, #fafbfc);border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:1rem 1.25rem;overflow-x:auto;margin:1rem 0;font-size:.825rem;line-height:1.6}.ug-article pre code{background:transparent;padding:0;color:var(--text, #1f2937)}[data-theme=dark] .ug-article pre{background:var(--card-inner, #1a2332)}.ug-article img{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--border, #e5e7eb);margin:1rem 0;display:block}.ug-article hr{border:none;border-top:1px solid var(--border, #e5e7eb);margin:2rem 0}@media(max-width:1024px){.ug-article{padding:1.5rem}}@media(max-width:640px){.ug-page{padding:1rem .75rem 2rem}.ug-article{padding:1.25rem 1rem;font-size:.875rem}.ug-article h1{font-size:1.35rem}.ug-article h2{font-size:1.1rem}.ug-article h3{font-size:1rem}.ug-article table{font-size:.8rem}.ug-article th,.ug-article td{padding:.4rem .5rem}}.b2b-docs-layout{display:flex;max-width:1280px;margin:0 auto;padding:2rem 1rem;gap:2rem}.b2b-docs-sidebar{position:sticky;top:5rem;width:220px;min-width:220px;height:fit-content;max-height:calc(100vh - 6rem);overflow-y:auto;padding:1rem 0}.b2b-docs-sidebar nav{display:flex;flex-direction:column;gap:.125rem}.b2b-docs-sidebar-link{display:block;padding:.5rem .75rem;font-size:.8125rem;color:var(--text-secondary, #6b7280);text-decoration:none;border-left:2px solid transparent;border-radius:0 4px 4px 0;transition:color .15s,border-color .15s,background .15s;cursor:pointer;background:none;border-top:none;border-right:none;border-bottom:none;text-align:left;width:100%;font-family:inherit}.b2b-docs-sidebar-link:hover{color:var(--primary, #6366f1);background:var(--card-hover, #f8f9ff)}.b2b-docs-sidebar-link.active{color:var(--primary, #6366f1);border-left-color:var(--primary, #6366f1);font-weight:600;background:var(--card-hover, #f8f9ff)}.b2b-docs-content{flex:1;min-width:0}.b2b-docs-hero{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);padding:2.5rem 2rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.b2b-docs-hero h1{font-size:2rem;font-weight:800;color:var(--text, #1f2937);margin:0 0 .5rem}.b2b-docs-hero-subtitle{color:var(--text-secondary, #6b7280);font-size:1.0625rem;margin:0 0 1.25rem;line-height:1.6}.b2b-docs-base-url{display:inline-flex;align-items:center;gap:.5rem;background:var(--card-inner, #fafbfc);border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:.625rem 1rem;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875rem;color:var(--primary, #6366f1);font-weight:600}.b2b-docs-base-url-label{color:var(--text-muted, #9ca3af);font-weight:400;font-family:inherit}.b2b-docs-section{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);padding:2rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.b2b-docs-section h2{font-size:1.375rem;font-weight:700;color:var(--text, #1f2937);margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light, #f3f4f6)}.b2b-docs-section h3{font-size:1.125rem;font-weight:600;color:var(--text, #1f2937);margin:1.5rem 0 .75rem}.b2b-docs-section h3:first-of-type{margin-top:.5rem}.b2b-docs-section p{color:var(--text-secondary, #6b7280);line-height:1.7;margin:0 0 1rem;font-size:.9375rem}.b2b-docs-steps{display:flex;flex-direction:column;gap:1.25rem;margin:1rem 0}.b2b-docs-step{display:flex;gap:1rem;align-items:flex-start}.b2b-docs-step-num{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:700;font-size:.875rem}.b2b-docs-step-body h4{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:var(--text, #1f2937)}.b2b-docs-step-body p{margin:0;font-size:.875rem}.b2b-docs-code-wrap{position:relative;margin:.75rem 0 1rem;border-radius:8px;overflow:hidden;border:1px solid var(--border, #e5e7eb)}.b2b-docs-code-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--card-inner, #fafbfc);border-bottom:1px solid var(--border, #e5e7eb)}.b2b-docs-code-lang{font-size:.75rem;font-weight:600;color:var(--text-muted, #9ca3af);text-transform:uppercase;letter-spacing:.05em}.b2b-docs-copy-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.75rem;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border, #e5e7eb);border-radius:4px;cursor:pointer;transition:color .15s,border-color .15s;font-family:inherit}.b2b-docs-copy-btn:hover{color:var(--primary, #6366f1);border-color:var(--primary, #6366f1)}.b2b-docs-copy-btn.copied{color:var(--grade-a, #16a34a);border-color:var(--grade-a, #16a34a)}.b2b-docs-code-block{margin:0;padding:1rem;overflow-x:auto;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8125rem;line-height:1.6;color:var(--text, #1f2937);background:var(--bg, #f0f2f7);white-space:pre;tab-size:2}[data-theme=dark] .b2b-docs-code-block{background:#0c1222}.b2b-docs-section code:not(.b2b-docs-code-block code){background:var(--card-inner, #fafbfc);border:1px solid var(--border-light, #f3f4f6);border-radius:4px;padding:.125rem .375rem;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8125rem;color:var(--primary, #6366f1)}.b2b-docs-endpoint{border:1px solid var(--border, #e5e7eb);border-radius:8px;margin:1.25rem 0;overflow:hidden}.b2b-docs-endpoint-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--card-inner, #fafbfc);border-bottom:1px solid var(--border-light, #f3f4f6);cursor:pointer;-webkit-user-select:none;user-select:none}.b2b-docs-endpoint-header:hover{background:var(--card-hover, #f8f9ff)}.b2b-docs-method{display:inline-block;padding:.1875rem .5rem;border-radius:4px;font-size:.75rem;font-weight:700;letter-spacing:.03em;font-family:SF Mono,Fira Code,Consolas,monospace;min-width:3.25rem;text-align:center}.b2b-docs-method-get{background:#dbeafe;color:#1d4ed8}.b2b-docs-method-post{background:#dcfce7;color:#15803d}[data-theme=dark] .b2b-docs-method-get{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .b2b-docs-method-post{background:#14532d;color:#86efac}.b2b-docs-endpoint-path{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.875rem;font-weight:600;color:var(--text, #1f2937)}.b2b-docs-endpoint-desc{margin-left:auto;font-size:.8125rem;color:var(--text-secondary, #6b7280)}.b2b-docs-endpoint-toggle{font-size:.75rem;color:var(--text-muted, #9ca3af);transition:transform .2s}.b2b-docs-endpoint-toggle.open{transform:rotate(180deg)}.b2b-docs-endpoint-body{padding:1.25rem 1rem}.b2b-docs-endpoint-body h4{font-size:.8125rem;font-weight:600;color:var(--text, #1f2937);margin:1rem 0 .5rem;text-transform:uppercase;letter-spacing:.05em}.b2b-docs-endpoint-body h4:first-child{margin-top:0}.b2b-docs-scope{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;background:var(--card-inner, #fafbfc);border:1px solid var(--border, #e5e7eb);color:var(--accent, #8b5cf6);font-family:SF Mono,Fira Code,Consolas,monospace}.b2b-docs-param-table{width:100%;border-collapse:collapse;font-size:.8125rem;margin:.5rem 0 1rem}.b2b-docs-param-table th{text-align:left;padding:.5rem .75rem;background:var(--card-inner, #fafbfc);border-bottom:1px solid var(--border, #e5e7eb);color:var(--text-muted, #9ca3af);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.b2b-docs-param-table td{padding:.5rem .75rem;border-bottom:1px solid var(--border-light, #f3f4f6);color:var(--text, #1f2937);vertical-align:top}.b2b-docs-param-table td:first-child{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600;color:var(--primary, #6366f1);white-space:nowrap}.b2b-docs-required{color:var(--stock-up, #e53935);font-size:.6875rem;font-weight:600;margin-left:.25rem}.b2b-docs-optional{color:var(--text-muted, #9ca3af);font-size:.6875rem;font-weight:400;margin-left:.25rem}.b2b-docs-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:1.25rem 0}.b2b-docs-pricing-card{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius, 12px);padding:1.5rem;text-align:center;transition:box-shadow .2s,border-color .2s}.b2b-docs-pricing-card:hover{box-shadow:var(--shadow-md)}.b2b-docs-pricing-card.featured{border-color:var(--primary, #6366f1);box-shadow:0 0 0 1px var(--primary, #6366f1)}.b2b-docs-pricing-name{font-size:1.125rem;font-weight:700;color:var(--text, #1f2937);margin:0 0 .25rem}.b2b-docs-pricing-price{font-size:1.5rem;font-weight:800;color:var(--primary, #6366f1);margin:.75rem 0 .5rem}.b2b-docs-pricing-price span{font-size:.875rem;font-weight:400;color:var(--text-muted, #9ca3af)}.b2b-docs-pricing-features{list-style:none;padding:0;margin:1rem 0 0;text-align:left}.b2b-docs-pricing-features li{padding:.375rem 0;font-size:.8125rem;color:var(--text-secondary, #6b7280);border-bottom:1px solid var(--border-light, #f3f4f6)}.b2b-docs-pricing-features li:last-child{border-bottom:none}.b2b-docs-error-table{width:100%;border-collapse:collapse;font-size:.8125rem;margin:.75rem 0}.b2b-docs-error-table th{text-align:left;padding:.625rem .75rem;background:var(--card-inner, #fafbfc);border-bottom:1px solid var(--border, #e5e7eb);color:var(--text-muted, #9ca3af);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.b2b-docs-error-table td{padding:.625rem .75rem;border-bottom:1px solid var(--border-light, #f3f4f6);color:var(--text, #1f2937);vertical-align:top}.b2b-docs-status-code{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:700;font-size:.8125rem}.b2b-docs-status-4xx{color:var(--stock-up, #e53935)}.b2b-docs-status-5xx{color:var(--grade-d, #dc2626)}.b2b-docs-tab-group{display:flex;gap:0;border-bottom:1px solid var(--border, #e5e7eb);margin-bottom:-1px}.b2b-docs-tab{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:var(--text-muted, #9ca3af);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s;font-family:inherit}.b2b-docs-tab:hover{color:var(--text-secondary, #6b7280)}.b2b-docs-tab.active{color:var(--primary, #6366f1);border-bottom-color:var(--primary, #6366f1)}.b2b-docs-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1rem 0}.b2b-docs-tier-card{background:var(--card-inner, #fafbfc);border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:1rem}.b2b-docs-tier-card h4{margin:0 0 .5rem;font-size:.9375rem;font-weight:600;color:var(--text, #1f2937)}.b2b-docs-tier-card p{margin:0;font-size:.8125rem;color:var(--text-secondary, #6b7280);line-height:1.5}.b2b-docs-note{background:var(--banner-bg, #fffbeb);border:1px solid var(--banner-border, #fde68a);border-radius:8px;padding:.75rem 1rem;margin:.75rem 0;font-size:.8125rem;color:var(--banner-text, #78350f);line-height:1.5}[data-theme=dark] .b2b-docs-note{background:#fbbf2414;border-color:#fbbf2433;color:#fbbf24}.b2b-docs-back-top{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;font-size:.8125rem;color:var(--text-muted, #9ca3af);background:transparent;border:1px solid var(--border, #e5e7eb);border-radius:8px;cursor:pointer;transition:color .15s,border-color .15s;margin-top:2rem;font-family:inherit}.b2b-docs-back-top:hover{color:var(--primary, #6366f1);border-color:var(--primary, #6366f1)}@media(max-width:960px){.b2b-docs-tier-grid,.b2b-docs-pricing-grid{grid-template-columns:1fr}}@media(max-width:768px){.b2b-docs-sidebar{display:none}.b2b-docs-layout{padding:1rem .75rem}.b2b-docs-hero{padding:1.5rem 1.25rem}.b2b-docs-hero h1{font-size:1.5rem}.b2b-docs-section{padding:1.25rem 1rem}.b2b-docs-endpoint-header{flex-wrap:wrap}.b2b-docs-endpoint-desc{margin-left:0;width:100%;margin-top:.25rem}.b2b-docs-param-table,.b2b-docs-error-table{display:block;overflow-x:auto}.b2b-docs-base-url{font-size:.75rem;flex-wrap:wrap}}.public-stock-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.public-stock-header{margin-bottom:2rem}.public-stock-title-row{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.public-stock-name{font-size:1.75rem;font-weight:700;color:var(--text);margin:0}.public-stock-ticker{font-size:1rem;color:var(--text-muted)}.public-stock-badges{display:flex;gap:.5rem;margin-top:.5rem}.public-stock-badge{display:inline-block;padding:.2rem .6rem;border-radius:var(--radius);font-size:.75rem;font-weight:500;background:var(--card);border:1px solid var(--border);color:var(--text-secondary)}.public-stock-price-section{display:flex;align-items:baseline;gap:1rem;margin-top:1rem}.public-stock-price{font-size:2rem;font-weight:700;color:var(--text)}.public-stock-change{font-size:1rem;font-weight:500}.public-stock-change.up{color:var(--stock-up)}.public-stock-change.down{color:var(--stock-down)}.public-stock-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}@media(max-width:768px){.public-stock-grid{grid-template-columns:1fr}}.public-stock-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.public-stock-card h3{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 1rem}.public-stock-score-main{text-align:center;padding:1.5rem 0}.public-stock-score-value{font-size:3rem;font-weight:800;color:var(--primary)}.public-stock-score-grade{display:inline-block;margin-left:.5rem;padding:.25rem .75rem;border-radius:var(--radius);font-size:1.25rem;font-weight:700;background:var(--primary);color:#fff}.public-stock-score-summary{margin-top:.75rem;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.public-stock-axes{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.public-stock-axis-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.public-stock-axis-label{color:var(--text-secondary);font-size:.85rem}.public-stock-axis-value{font-weight:600;color:var(--text)}.public-stock-metrics{display:grid;gap:.5rem}.public-stock-metric-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.public-stock-metric-label{color:var(--text-secondary);font-size:.85rem}.public-stock-metric-value{font-weight:600;color:var(--text);font-size:.9rem}.public-stock-sector-rank{text-align:center;padding:1rem 0}.public-stock-sector-rank-value{font-size:2rem;font-weight:700;color:var(--primary)}.public-stock-sector-rank-total{color:var(--text-muted);font-size:.9rem}.public-stock-52w{margin-top:1rem}.public-stock-52w-bar{position:relative;height:8px;background:var(--border-light);border-radius:4px;margin:.5rem 0}.public-stock-52w-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--stock-down),var(--primary),var(--stock-up))}.public-stock-52w-marker{position:absolute;top:-4px;width:16px;height:16px;background:var(--primary);border:2px solid white;border-radius:50%;transform:translate(-50%);box-shadow:var(--shadow-sm)}.public-stock-52w-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted)}.public-stock-chart-wrap{grid-column:1 / -1}.public-stock-chart-inner{height:300px}.public-stock-cta{grid-column:1 / -1;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:var(--radius);padding:2rem;text-align:center;color:#fff}.public-stock-cta h3{color:#fff;font-size:1.25rem;margin-bottom:.5rem}.public-stock-cta p{opacity:.9;margin-bottom:1.5rem;font-size:.9rem}.public-stock-cta-btn{background:#fff;color:#6366f1;border:none;padding:.75rem 2rem;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.public-stock-cta-btn:hover{transform:translateY(-2px)}.blurred-section-wrap{position:relative;overflow:hidden;border-radius:var(--radius)}.blurred-section-content{filter:blur(6px);pointer-events:none;-webkit-user-select:none;user-select:none}.blurred-section-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#ffffff4d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}[data-theme=dark] .blurred-section-overlay{background:#0000004d}.blurred-section-cta{text-align:center;padding:1.5rem}.blurred-section-cta p{color:var(--text);font-weight:600;margin-bottom:.75rem}.blurred-section-btn{background:var(--primary);color:#fff;border:none;padding:.5rem 1.5rem;border-radius:var(--radius);font-size:.9rem;font-weight:600;cursor:pointer}.blurred-section-btn:hover{background:var(--primary-dark)}.public-stock-loading{text-align:center;padding:4rem 0;color:var(--text-muted)}.public-stock-not-found{text-align:center;padding:4rem 0}.public-stock-not-found h2{color:var(--text);margin-bottom:.5rem}.public-stock-not-found p{color:var(--text-muted)}.dividend-cal-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.dividend-cal-header{margin-bottom:2rem}.dividend-cal-header h1{font-size:1.75rem;font-weight:700;color:var(--text);margin:0 0 .5rem}.dividend-cal-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.dividend-cal-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.dividend-cal-nav-btn{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem 1rem;color:var(--text);cursor:pointer;font-size:.9rem;transition:background .2s}.dividend-cal-nav-btn:hover{background:var(--bg-hover)}.dividend-cal-nav-label{font-size:1.25rem;font-weight:600;color:var(--text);min-width:140px;text-align:center}.dividend-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:2rem}.dividend-cal-weekday{background:var(--bg-hover);padding:.5rem;text-align:center;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.dividend-cal-day{background:var(--card);min-height:80px;padding:.4rem;position:relative}.dividend-cal-day.empty{background:var(--bg)}.dividend-cal-day.today{background:color-mix(in srgb,var(--primary) 8%,var(--card))}.dividend-cal-day-num{font-size:.75rem;font-weight:500;color:var(--text-muted);margin-bottom:.25rem}.dividend-cal-day-items{display:flex;flex-direction:column;gap:2px}.dividend-cal-day-item{font-size:.65rem;padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--primary) 15%,var(--card));color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.dividend-cal-day-item:hover{background:color-mix(in srgb,var(--primary) 25%,var(--card))}.dividend-cal-day-more{font-size:.6rem;color:var(--text-muted);text-align:center}.dividend-cal-day.heat-1{background:color-mix(in srgb,var(--primary) 6%,var(--card))}.dividend-cal-day.heat-2{background:color-mix(in srgb,var(--primary) 12%,var(--card))}.dividend-cal-day.heat-3{background:color-mix(in srgb,var(--primary) 20%,var(--card))}.dividend-cal-day.heat-4{background:color-mix(in srgb,var(--primary) 28%,var(--card))}[data-theme=dark] .dividend-cal-day.heat-1{background:color-mix(in srgb,var(--primary) 8%,var(--card))}[data-theme=dark] .dividend-cal-day.heat-2{background:color-mix(in srgb,var(--primary) 15%,var(--card))}[data-theme=dark] .dividend-cal-day.heat-3{background:color-mix(in srgb,var(--primary) 22%,var(--card))}[data-theme=dark] .dividend-cal-day.heat-4{background:color-mix(in srgb,var(--primary) 30%,var(--card))}.dividend-cal-heat-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:.65rem;color:var(--text-muted);margin-bottom:.5rem}.dividend-cal-heat-legend-box{width:14px;height:14px;border-radius:2px;border:1px solid var(--border-light, #f3f4f6)}.dividend-cal-list{display:grid;gap:.5rem}.dividend-cal-list-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s}.dividend-cal-list-item:hover{border-color:var(--primary)}.dividend-cal-list-date{min-width:60px;text-align:center}.dividend-cal-list-date-day{font-size:1.5rem;font-weight:700;color:var(--text);line-height:1}.dividend-cal-list-date-month{font-size:.7rem;color:var(--text-muted)}.dividend-cal-list-info{flex:1}.dividend-cal-list-name{font-weight:600;color:var(--text);font-size:.9rem}.dividend-cal-list-ticker{color:var(--text-muted);font-size:.8rem}.dividend-cal-list-amount{text-align:right}.dividend-cal-list-dps{font-weight:600;color:var(--stock-up);font-size:.9rem}.dividend-cal-list-yield{color:var(--text-secondary);font-size:.75rem}.dividend-cal-top-table{width:100%;border-collapse:collapse}.dividend-cal-top-table th{text-align:left;padding:.75rem .5rem;border-bottom:2px solid var(--border);font-size:.8rem;font-weight:600;color:var(--text-secondary)}.dividend-cal-top-table th:last-child,.dividend-cal-top-table td:last-child{text-align:right}.dividend-cal-top-table td{padding:.6rem .5rem;border-bottom:1px solid var(--border-light);font-size:.85rem;color:var(--text)}.dividend-cal-top-table tr:hover td{background:var(--bg-hover)}.dividend-cal-yield-highlight{font-weight:600;color:var(--stock-up)}.dividend-cal-income-section{margin-top:2rem}.dividend-cal-income-total{text-align:center;padding:1.5rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem}.dividend-cal-income-total-label{font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.dividend-cal-income-total-value{font-size:2.5rem;font-weight:800;color:var(--primary)}.dividend-cal-income-total-unit{font-size:1rem;font-weight:500;color:var(--text-muted);margin-left:.25rem}.dividend-cal-monthly-chart{display:grid;grid-template-columns:repeat(12,1fr);gap:.25rem;align-items:end;height:150px;padding:1rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem}.dividend-cal-monthly-bar-wrap{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.dividend-cal-monthly-bar{width:100%;max-width:32px;background:var(--primary);border-radius:3px 3px 0 0;min-height:2px;transition:height .3s}.dividend-cal-monthly-label{font-size:.65rem;color:var(--text-muted);margin-top:4px}.dividend-cal-holdings{display:grid;gap:.5rem;margin-bottom:1rem}.dividend-cal-holding-row{display:flex;gap:.5rem;align-items:center}.dividend-cal-holding-row input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);font-size:.85rem}.dividend-cal-holding-row input:focus{outline:none;border-color:var(--primary)}.dividend-cal-holding-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.2rem;padding:.25rem}.dividend-cal-holding-remove:hover{color:var(--stock-down)}.dividend-cal-add-btn{background:var(--card);border:1px dashed var(--border);border-radius:var(--radius);padding:.5rem;color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:border-color .2s}.dividend-cal-add-btn:hover{border-color:var(--primary);color:var(--primary)}.dividend-cal-calc-btn{background:var(--primary);color:#fff;border:none;padding:.75rem 2rem;border-radius:var(--radius);font-size:.9rem;font-weight:600;cursor:pointer;width:100%;margin-top:.5rem;transition:background .2s}.dividend-cal-calc-btn:hover{background:var(--primary-dark)}.dividend-cal-calc-btn:disabled{opacity:.5;cursor:not-allowed}.dividend-cal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem}.dividend-cal-card h2{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 1rem}.dividend-cal-tabs{display:flex;gap:.25rem;background:var(--bg);border-radius:var(--radius);padding:3px;margin-bottom:1.5rem}.dividend-cal-tab{flex:1;padding:.5rem 1rem;border:none;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.dividend-cal-tab.active{background:var(--card);color:var(--text);box-shadow:var(--shadow-sm)}.dividend-cal-cta{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:var(--radius);padding:2rem;text-align:center;color:#fff;margin-top:2rem}.dividend-cal-cta h3{font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.dividend-cal-cta p{opacity:.9;font-size:.9rem;margin:0 0 1.5rem}.dividend-cal-cta-btn{background:#fff;color:#6366f1;border:none;padding:.75rem 2rem;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.dividend-cal-cta-btn:hover{transform:translateY(-2px)}.dividend-cal-notice{background:var(--warning-surface);border:1px solid var(--warning);border-radius:8px;padding:10px 16px;font-size:.85rem;color:var(--text-secondary);margin-bottom:16px}.dividend-cal-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.dividend-cal-empty p{font-size:.9rem}.dividend-cal-loading{text-align:center;padding:4rem 0;color:var(--text-muted)}@media(max-width:768px){.dividend-cal-grid{display:none}.dividend-cal-monthly-chart{grid-template-columns:repeat(6,1fr);height:120px}.dividend-cal-holding-row{flex-wrap:wrap}}.flow-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.flow-header{margin-bottom:2rem}.flow-header h1{font-size:1.75rem;font-weight:700;color:var(--text);margin:0 0 .5rem}.flow-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.flow-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem}.flow-card h2{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 1rem}.flow-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.flow-overview-left,.flow-overview-right{min-width:0}.flow-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.flow-summary-item{text-align:center;padding:.75rem .5rem;background:var(--bg);border-radius:var(--radius)}.flow-summary-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.flow-summary-value{font-size:1.25rem;font-weight:700}.flow-summary-value.positive{color:var(--stock-up)}.flow-summary-value.negative{color:var(--stock-down)}.flow-summary-value.neutral{color:var(--text-muted)}.flow-summary-tag{display:inline-block;font-size:.65rem;font-weight:600;padding:.1rem .4rem;border-radius:4px;margin-top:.25rem}.flow-summary-tag.positive{color:var(--stock-up);background:#dc35451a}.flow-summary-tag.negative{color:var(--stock-down);background:#2563eb1a}.flow-summary-tag.neutral{color:var(--text-muted);background:var(--bg)}.flow-summary-period{text-align:center;font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.flow-daily-change{margin-top:.75rem;padding:.75rem;background:var(--bg);border-radius:var(--radius)}.flow-daily-change-title{font-size:.7rem;color:var(--text-muted);margin-bottom:.4rem;font-weight:500}.flow-daily-change-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;padding:.2rem 0}.flow-daily-change-row span:first-child{color:var(--text-secondary);font-weight:500}.flow-daily-change-row .positive{color:var(--stock-up);font-weight:600}.flow-daily-change-row .negative{color:var(--stock-down);font-weight:600}.flow-daily-change-row .neutral{color:var(--text-muted)}.flow-mini-movers{display:grid;gap:1rem}.flow-mini-movers-section h4{font-size:.8rem;font-weight:600;color:var(--text);margin:0 0 .4rem}.flow-mini-movers-item{display:flex;align-items:center;gap:.4rem;padding:.3rem .4rem;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:background .15s;font-size:.8rem}.flow-mini-movers-item:hover{background:var(--bg-hover)}.flow-mini-movers-rank{font-size:.7rem;font-weight:700;color:var(--text-muted);min-width:1rem;text-align:center}.flow-mini-movers-name{flex:1;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-mini-movers-value{font-weight:600;font-size:.8rem}.flow-mini-movers-value.buy{color:var(--stock-up)}.flow-mini-movers-value.sell{color:var(--stock-down)}.flow-heatmap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:4px}.flow-treemap{display:flex;flex-wrap:wrap;gap:3px;min-height:280px}.flow-treemap-cell{border-radius:var(--radius-md, 8px);padding:.75rem .5rem;text-align:center;cursor:pointer;transition:transform var(--transition-fast, .15s ease),box-shadow var(--transition-fast, .15s ease);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:70px;min-width:80px;overflow:hidden}.flow-treemap-cell:hover{transform:scale(1.03);box-shadow:var(--shadow-md);z-index:1}.flow-treemap-cell-name{font-size:.7rem;font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.flow-treemap-cell-lg .flow-treemap-cell-name{font-size:.85rem}.flow-treemap-cell-value{font-size:.8rem;font-weight:700}.flow-treemap-cell-lg .flow-treemap-cell-value{font-size:1rem}.flow-treemap-cell-count{font-size:.6rem;opacity:.7;margin-top:2px}.flow-treemap-cell-lg .flow-treemap-cell-count{font-size:.7rem}.flow-heatmap-cell{padding:.75rem .5rem;border-radius:var(--radius);text-align:center;cursor:pointer;transition:transform .15s,box-shadow .15s;min-height:70px;display:flex;flex-direction:column;justify-content:center}.flow-heatmap-cell:hover{transform:scale(1.03);box-shadow:var(--shadow)}.flow-heatmap-cell-name{font-size:.75rem;font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-heatmap-cell-value{font-size:.85rem;font-weight:700}.flow-heatmap-cell-count{font-size:.6rem;opacity:.7;margin-top:2px}.flow-heatmap-empty{text-align:center;padding:2rem;color:var(--text-muted)}.flow-mode-toggle{display:flex;gap:.25rem;background:var(--bg);border-radius:var(--radius);padding:3px;margin-bottom:1rem}.flow-mode-btn{flex:1;padding:.4rem .75rem;border:none;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.flow-mode-btn.active{background:var(--card);color:var(--text);box-shadow:var(--shadow-sm)}.flow-period-selector{display:flex;gap:.5rem;margin-bottom:1rem}.flow-period-btn{padding:.3rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--text-secondary);cursor:pointer;font-size:.8rem;transition:all .2s}.flow-period-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.flow-movers-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.flow-movers-section h3{font-size:.9rem;font-weight:600;color:var(--text);margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.flow-movers-list{display:grid;gap:.25rem}.flow-movers-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem .5rem;border-radius:calc(var(--radius) - 2px);font-size:.8rem;cursor:pointer;transition:background .15s}.flow-movers-item:hover{background:var(--bg-hover)}.flow-movers-item-name{color:var(--text);font-weight:500}.flow-movers-item-ticker{color:var(--text-muted);font-size:.7rem;margin-left:.25rem}.flow-movers-item-value{font-weight:600;font-size:.8rem}.flow-movers-item-value.buy{color:var(--stock-up)}.flow-movers-item-value.sell{color:var(--stock-down)}.flow-trend-chart{height:250px;margin-top:.5rem}.flow-legend{display:flex;justify-content:center;gap:1.5rem;margin-top:.75rem;font-size:.75rem;color:var(--text-secondary)}.flow-legend-item{display:flex;align-items:center;gap:.3rem}.flow-legend-dot{width:10px;height:10px;border-radius:2px}.flow-legend-dot.buy{background:var(--stock-up)}.flow-legend-dot.sell{background:var(--stock-down)}.flow-legend-dot.neutral{background:var(--text-muted)}.flow-cta{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:var(--radius);padding:2rem;text-align:center;color:#fff;margin-top:2rem}.flow-cta h3{font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.flow-cta p{opacity:.9;font-size:.9rem;margin:0 0 1.5rem}.flow-cta-btn{background:#fff;color:#6366f1;border:none;padding:.75rem 2rem;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.flow-cta-btn:hover{transform:translateY(-2px)}.flow-loading{text-align:center;padding:4rem 0;color:var(--text-muted)}@media(max-width:768px){.flow-overview-grid{grid-template-columns:1fr}.flow-summary-grid{grid-template-columns:repeat(3,1fr)}.flow-heatmap-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.flow-treemap{min-height:200px}.flow-treemap-cell{min-width:60px;min-height:56px;padding:.5rem .25rem}.flow-movers-grid{grid-template-columns:1fr}}.pricing-page{max-width:1100px;margin:0 auto;padding:3rem 1.5rem}.pricing-header{text-align:center;margin-bottom:3rem}.pricing-header h1{font-size:var(--text-3xl, 1.875rem);font-weight:800;color:var(--text, #1f2937);margin:0 0 .5rem}.pricing-header p{font-size:var(--text-base, 1rem);color:var(--text-secondary, #6b7280);margin:0}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start;margin-bottom:3rem}.pricing-card{position:relative;background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-xl, 16px);padding:2rem 1.5rem;display:flex;flex-direction:column;transition:all var(--transition-base, .2s ease)}.pricing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.pricing-card-highlight{border-color:var(--primary, #6366f1);border-width:2px;box-shadow:var(--shadow-md)}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem 1rem;border-radius:var(--radius-full, 9999px)}.pricing-card-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-light, #f3f4f6)}.pricing-plan-name{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--text, #1f2937);margin:0 0 .25rem}.pricing-plan-desc{font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6b7280);margin:0 0 1rem}.pricing-price{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.pricing-price-amount{font-size:var(--text-4xl, 2.25rem);font-weight:800;color:var(--text, #1f2937)}.pricing-price-unit{font-size:var(--text-sm, .875rem);color:var(--text-muted, #9ca3af)}.pricing-features{list-style:none;padding:0;margin:0 0 1.5rem;flex:1}.pricing-feature{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;font-size:var(--text-sm, .875rem);color:var(--text, #1f2937);line-height:1.5}.pricing-feature-check{color:var(--success, #22c55e);font-weight:700;flex-shrink:0;margin-top:1px}.pricing-cta{width:100%;padding:.75rem;border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-md, 8px);background:var(--card, #ffffff);color:var(--text, #1f2937);font-size:var(--text-base, 1rem);font-weight:600;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.pricing-cta:hover{border-color:var(--primary, #6366f1);color:var(--primary, #6366f1)}.pricing-cta-primary{background:var(--primary, #6366f1);color:#fff;border-color:var(--primary, #6366f1);box-shadow:0 2px 8px #6366f140}.pricing-cta-primary:hover{background:var(--primary-dark, #4f46e5);border-color:var(--primary-dark, #4f46e5);color:#fff;box-shadow:0 4px 16px #6366f159;transform:translateY(-1px)}.pricing-faq{max-width:700px;margin:0 auto}.pricing-faq h2{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--text, #1f2937);text-align:center;margin:0 0 1.5rem}.pricing-faq-list{display:grid;gap:1rem}.pricing-faq-item{background:var(--card, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-lg, 12px);padding:1.25rem}.pricing-faq-item h3{font-size:var(--text-sm, .875rem);font-weight:600;color:var(--text, #1f2937);margin:0 0 .5rem}.pricing-faq-item p{font-size:var(--text-sm, .875rem);color:var(--text-secondary, #6b7280);margin:0;line-height:1.6}@media(max-width:768px){.pricing-grid{grid-template-columns:1fr;max-width:400px;margin-left:auto;margin-right:auto}.pricing-card-highlight{order:-1}.pricing-header h1{font-size:var(--text-2xl, 1.5rem)}}.notfound-container{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:2rem}.notfound-card{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:3rem 2.5rem;box-shadow:var(--shadow-md);max-width:480px;width:100%}.notfound-code{display:block;font-size:6rem;font-weight:800;line-height:1;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.notfound-title{font-size:1.5rem;font-weight:700;color:var(--text);margin:0 0 .75rem}.notfound-description{font-size:1rem;color:var(--text-secondary);margin:0 0 2rem;line-height:1.6}.notfound-home-btn{display:inline-block;padding:.75rem 2rem;background:var(--primary);color:#fff;border-radius:8px;text-decoration:none;font-weight:600;font-size:.95rem;transition:background .2s}.notfound-home-btn:hover{background:var(--primary-dark)}
