:root,[data-theme=light]{--font-primary:"Segoe UI Variable", "Segoe UI", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"Cascadia Code", "Cascadia Mono", "Consolas", "Courier New", monospace;--fs-caption2:.625rem;--fs-caption1:.75rem;--fs-body1:.875rem;--fs-body2:1rem;--fs-subtitle2:1.125rem;--fs-subtitle1:1.25rem;--fs-title3:1.5rem;--fs-title2:1.75rem;--fs-title1:2rem;--fs-hero:2.5rem;--fs-display:3rem;--fs-xs:var(--fs-caption2);--fs-sm:var(--fs-caption1);--fs-base:var(--fs-body1);--fs-md:var(--fs-body2);--fs-lg:var(--fs-subtitle2);--fs-xl:var(--fs-subtitle1);--fs-2xl:var(--fs-title3);--fs-3xl:var(--fs-title2);--fs-4xl:var(--fs-title1);--fs-5xl:var(--fs-hero);--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:700;--lh-tight:1.2;--lh-normal:1.5;--lh-relaxed:1.6;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.04em;--colorNeutralBackground1:#fff;--colorNeutralBackground2:#fafafa;--colorNeutralBackground3:#f5f5f5;--colorNeutralBackground4:#f0f0f0;--colorNeutralBackground5:#e8e8e8;--colorNeutralBackgroundHover:#f5f5f5;--colorNeutralBackgroundActive:#ebebeb;--colorNeutralBackgroundSelected:#ebebeb;--colorSubtleBackgroundHover:#0000000a;--colorSubtleBackgroundActive:#0000000f;--bg-app:var(--colorNeutralBackground2);--bg-surface-1:var(--colorNeutralBackground1);--bg-surface-2:var(--colorNeutralBackground3);--bg-surface-3:var(--colorNeutralBackground4);--bg-surface-hover:var(--colorNeutralBackgroundHover);--bg-surface-active:var(--colorNeutralBackgroundSelected);--bg-overlay:#0006;--bg-glass:#ffffffc7;--colorNeutralForeground1:#242424;--colorNeutralForeground2:#424242;--colorNeutralForeground3:#616161;--colorNeutralForeground4:#707070;--colorNeutralForegroundDisabled:#bdbdbd;--text-primary:var(--colorNeutralForeground1);--text-secondary:var(--colorNeutralForeground2);--text-tertiary:var(--colorNeutralForeground3);--text-disabled:var(--colorNeutralForegroundDisabled);--text-inverse:#fff;--colorNeutralStroke1:#d1d1d1;--colorNeutralStroke2:#e0e0e0;--colorNeutralStroke3:#f0f0f0;--colorNeutralStrokeAccessible:#616161;--border-subtle:var(--colorNeutralStroke3);--border-default:var(--colorNeutralStroke2);--border-strong:var(--colorNeutralStroke1);--border-focus:#0f6cbd;--colorBrandBackground:#0f6cbd;--colorBrandBackgroundHover:#115ea3;--colorBrandBackgroundActive:#0c3b5e;--colorBrandForeground1:#0f6cbd;--colorBrandForeground2:#115ea3;--colorBrandStroke1:#0f6cbd;--line-azure:#0078d4;--line-ai:#1e3a8a;--line-data:#118d57;--line-security:#dc2626;--line-m365:#ea580c;--line-power:#742774;--line-dynamics:indigo;--line-devops:#005ead;--line-github:#24292f;--line-agentic:#e11d48;--line-retired:#6b7280;--glow-azure:color-mix(in srgb, var(--line-azure) 12%, transparent);--glow-ai:color-mix(in srgb, var(--line-ai) 12%, transparent);--glow-data:color-mix(in srgb, var(--line-data) 12%, transparent);--glow-security:color-mix(in srgb, var(--line-security) 12%, transparent);--glow-m365:color-mix(in srgb, var(--line-m365) 12%, transparent);--glow-power:color-mix(in srgb, var(--line-power) 12%, transparent);--glow-dynamics:color-mix(in srgb, var(--line-dynamics) 12%, transparent);--glow-devops:color-mix(in srgb, var(--line-devops) 12%, transparent);--glow-github:color-mix(in srgb, var(--line-github) 12%, transparent);--glow-agentic:color-mix(in srgb, var(--line-agentic) 12%, transparent);--glow-retired:color-mix(in srgb, var(--line-retired) 12%, transparent);--status-not-started:var(--colorNeutralForeground3);--status-in-progress:#c19c00;--status-completed:#0e7a0d;--status-retiring:#ca5010;--badge-fundamentals-bg:#0f6cbd14;--badge-fundamentals-fg:#0f6cbd;--badge-fundamentals-border:#0f6cbd4d;--badge-associate-bg:#7c3aed14;--badge-associate-fg:#7c3aed;--badge-associate-border:#7c3aed4d;--badge-expert-bg:#c19c0014;--badge-expert-fg:#986f0b;--badge-expert-border:#c19c004d;--badge-retiring-bg:#ca501014;--badge-retiring-fg:#ca5010;--badge-retiring-border:#ca50104d;--badge-completed-bg:#0e7a0d14;--badge-completed-fg:#0e7a0d;--badge-completed-border:#0e7a0d4d;--badge-inprogress-bg:#c19c0014;--badge-inprogress-fg:#986f0b;--badge-inprogress-border:#c19c004d;--badge-new-bg:#e11d4814;--badge-new-fg:#e11d48;--badge-new-border:#e11d484d;--badge-beta-bg:#0d948814;--badge-beta-fg:#0d9488;--badge-beta-border:#0d94884d;--shadow-2:0 0 2px #0000001f, 0 1px 2px #00000024;--shadow-4:0 0 2px #0000001f, 0 2px 4px #00000024;--shadow-8:0 0 2px #0000001f, 0 4px 8px #00000024;--shadow-16:0 0 2px #0000001f, 0 8px 16px #00000024;--shadow-28:0 0 8px #0000001f, 0 14px 28px #0000002e;--shadow-64:0 0 8px #0000001f, 0 32px 64px #00000038;--shadow-sm:var(--shadow-2);--shadow-md:var(--shadow-4);--shadow-lg:var(--shadow-8);--shadow-xl:var(--shadow-16);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-none:0;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--duration-ultra-fast:50ms;--duration-faster:.1s;--duration-fast:.15s;--duration-normal:.2s;--duration-gentle:.25s;--duration-slow:.3s;--duration-slower:.4s;--curve-decelerate:cubic-bezier(0, 0, 0, 1);--curve-accelerate:cubic-bezier(1, 0, 1, 1);--curve-easy-ease:cubic-bezier(.33, 0, .67, 1);--transition-fast:var(--duration-fast) var(--curve-easy-ease);--transition-base:var(--duration-normal) var(--curve-decelerate);--transition-slow:var(--duration-slower) var(--curve-decelerate);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--header-height:48px;--sidebar-width:280px;--sidebar-collapsed:64px;--content-max-width:1400px;--z-base:0;--z-dropdown:100;--z-sidebar:200;--z-header:300;--z-overlay:400;--z-modal:500;--z-toast:600;--scrollbar-thumb:#0003;--scrollbar-thumb-hover:#00000059}[data-theme=dark]{--colorNeutralBackground1:#292929;--colorNeutralBackground2:#1f1f1f;--colorNeutralBackground3:#141414;--colorNeutralBackground4:#0a0a0a;--colorNeutralBackground5:#000;--colorNeutralBackgroundHover:#383838;--colorNeutralBackgroundActive:#3d3d3d;--colorNeutralBackgroundSelected:#383838;--colorSubtleBackgroundHover:#ffffff0f;--colorSubtleBackgroundActive:#ffffff14;--bg-app:var(--colorNeutralBackground3);--bg-surface-1:var(--colorNeutralBackground1);--bg-surface-2:var(--colorNeutralBackground2);--bg-surface-3:#333;--bg-surface-hover:var(--colorNeutralBackgroundHover);--bg-surface-active:var(--colorNeutralBackgroundSelected);--bg-overlay:#0009;--bg-glass:#1f1f1fd1;--colorNeutralForeground1:#fff;--colorNeutralForeground2:#d6d6d6;--colorNeutralForeground3:#adadad;--colorNeutralForeground4:#8a8a8a;--colorNeutralForegroundDisabled:#5c5c5c;--text-primary:var(--colorNeutralForeground1);--text-secondary:var(--colorNeutralForeground2);--text-tertiary:var(--colorNeutralForeground3);--text-disabled:var(--colorNeutralForegroundDisabled);--text-inverse:#242424;--colorNeutralStroke1:#5c5c5c;--colorNeutralStroke2:#404040;--colorNeutralStroke3:#333;--colorNeutralStrokeAccessible:#adadad;--border-subtle:var(--colorNeutralStroke3);--border-default:var(--colorNeutralStroke2);--border-strong:var(--colorNeutralStroke1);--border-focus:#479ef5;--colorBrandBackground:#479ef5;--colorBrandBackgroundHover:#62abf5;--colorBrandBackgroundActive:#2886de;--colorBrandForeground1:#479ef5;--colorBrandForeground2:#62abf5;--colorBrandStroke1:#479ef5;--line-azure:#2899f5;--line-ai:#3b82f6;--line-data:#20b376;--line-security:#ef4444;--line-m365:#fb923c;--line-power:#a54ea5;--line-dynamics:#818cf8;--line-devops:#2899f5;--line-github:#f0f6fc;--line-agentic:#fb7185;--line-retired:#9ca3af;--glow-azure:color-mix(in srgb, var(--line-azure) 15%, transparent);--glow-ai:color-mix(in srgb, var(--line-ai) 15%, transparent);--glow-data:color-mix(in srgb, var(--line-data) 15%, transparent);--glow-security:color-mix(in srgb, var(--line-security) 15%, transparent);--glow-m365:color-mix(in srgb, var(--line-m365) 15%, transparent);--glow-power:color-mix(in srgb, var(--line-power) 15%, transparent);--glow-dynamics:color-mix(in srgb, var(--line-dynamics) 15%, transparent);--glow-devops:color-mix(in srgb, var(--line-devops) 15%, transparent);--glow-github:color-mix(in srgb, var(--line-github) 15%, transparent);--glow-agentic:color-mix(in srgb, var(--line-agentic) 15%, transparent);--glow-retired:color-mix(in srgb, var(--line-retired) 15%, transparent);--status-not-started:var(--colorNeutralForeground3);--status-in-progress:#fbbf24;--status-completed:#34d399;--status-retiring:#fb923c;--badge-fundamentals-bg:#479ef51f;--badge-fundamentals-fg:#479ef5;--badge-fundamentals-border:#479ef54d;--badge-associate-bg:#a78bfa1f;--badge-associate-fg:#a78bfa;--badge-associate-border:#a78bfa4d;--badge-expert-bg:#fbbf241f;--badge-expert-fg:#fbbf24;--badge-expert-border:#fbbf244d;--badge-retiring-bg:#fb923c1f;--badge-retiring-fg:#fb923c;--badge-retiring-border:#fb923c4d;--badge-completed-bg:#34d3991f;--badge-completed-fg:#34d399;--badge-completed-border:#34d3994d;--badge-inprogress-bg:#fbbf241f;--badge-inprogress-fg:#fbbf24;--badge-inprogress-border:#fbbf244d;--badge-new-bg:#fb71851f;--badge-new-fg:#fb7185;--badge-new-border:#fb71854d;--badge-beta-bg:#2dd4bf1f;--badge-beta-fg:#2dd4bf;--badge-beta-border:#2dd4bf4d;--shadow-2:0 0 2px #0000003d, 0 1px 2px #00000047;--shadow-4:0 0 2px #0000003d, 0 2px 4px #00000047;--shadow-8:0 0 2px #0000003d, 0 4px 8px #00000047;--shadow-16:0 0 2px #0000003d, 0 8px 16px #00000047;--shadow-28:0 0 8px #0000003d, 0 14px 28px #0000005c;--shadow-64:0 0 8px #0000003d, 0 32px 64px #00000070;--shadow-sm:var(--shadow-2);--shadow-md:var(--shadow-4);--shadow-lg:var(--shadow-8);--shadow-xl:var(--shadow-16);--scrollbar-thumb:#fff3;--scrollbar-thumb-hover:#ffffff59}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-primary);font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--text-primary);background-color:var(--bg-app);height:100dvh;transition:background-color var(--duration-slow) var(--curve-easy-ease), color var(--duration-slow) var(--curve-easy-ease);overflow:hidden}#root{flex-direction:column;height:100dvh;display:flex;overflow:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:content-box}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes cert-nodePulse{0%,to{box-shadow:0 0 0 0 var(--pulse-color,#fbbf2466)}50%{box-shadow:0 0 0 8px var(--pulse-color,#fbbf2400)}}@keyframes glowPulse{0%,to{filter:drop-shadow(0 0 3px var(--glow-color,#0078d44d))}50%{filter:drop-shadow(0 0 10px var(--glow-color,#0078d480))}}@keyframes drawLine{0%{stroke-dashoffset:var(--line-length,1000)}to{stroke-dashoffset:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes progressFill{0%{width:0}to{width:var(--progress,0%)}}@keyframes countUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px)saturate(1.2);border:1px solid var(--border-subtle)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-md)}.app,.app *{transition-property:background-color,border-color,color,box-shadow;transition-duration:var(--duration-normal);transition-timing-function:var(--curve-easy-ease)}.cert-node,.cert-node *,.progress-ring *,.path-map__connection-line,.path-map__progress-fill,.dashboard__hero-line{transition-property:none}.toast-container{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;background:var(--colorNeutralBackground1);border:1px solid var(--colorNeutralStroke1);box-shadow:var(--shadow-8);border-radius:8px;align-items:center;gap:12px;min-width:250px;padding:12px 16px;animation:.3s cubic-bezier(.2,.8,.2,1) forwards slideInRight;display:flex}.toast--closing{animation:.3s cubic-bezier(.2,.8,.2,1) forwards slideOutRight}.toast__icon{flex-shrink:0}.toast--success .toast__icon{color:var(--status-completed)}.toast--error .toast__icon{color:var(--line-security)}.toast__message{color:var(--colorNeutralForeground1);flex:1;font-size:14px;font-weight:500}.toast__close{color:var(--colorNeutralForeground3);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.toast__action-btn{background:var(--colorBrandBackground);color:var(--text-inverse);border-radius:var(--radius-md);font-size:var(--fs-caption1);font-weight:var(--fw-semibold);cursor:pointer;transition:all var(--duration-fast) var(--curve-easy-ease);border:none;margin-left:8px;padding:4px 12px}.toast__action-btn:hover{background:var(--colorBrandBackgroundHover);transform:scale(.96)}.toast__close:hover{background:var(--colorNeutralBackground1Hover);color:var(--colorNeutralForeground1)}@keyframes slideInRight{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(120%)}}.search-bar{width:100%;max-width:360px;position:relative}.search-bar__input-wrapper{padding:4px var(--space-2);background:var(--bg-surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:6px;display:flex}.search-bar__input-wrapper:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 1px var(--border-focus)}.search-bar__icon{color:var(--text-tertiary);flex-shrink:0}.search-bar__input{color:var(--text-primary);font-size:var(--fs-caption1);background:0 0;border:none;outline:none;flex:1}.search-bar__input::placeholder{color:var(--text-disabled)}.search-bar__clear{border-radius:var(--radius-md);width:20px;height:20px;color:var(--text-tertiary);transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.search-bar__clear:hover{background:var(--colorSubtleBackgroundHover);color:var(--text-primary)}.search-bar__shortcut{color:var(--text-disabled);font-size:var(--fs-caption2);background:var(--bg-surface-3);border-radius:var(--radius-sm);pointer-events:none;border:1px solid var(--border-subtle);flex-shrink:0;align-items:center;padding:2px 6px;display:flex}.search-bar__spinner{color:var(--text-tertiary);flex-shrink:0;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-bar__dropdown{top:calc(100% + var(--space-1));background:var(--bg-surface-1);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);animation:.15s ease-out fadeInUp;position:absolute;left:0;right:0;overflow:hidden}.search-bar__result{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);text-align:left;transition:background var(--transition-fast);display:flex}.search-bar__result:hover{background:var(--colorSubtleBackgroundHover)}.search-bar__result-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.search-bar__result-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.search-bar__result-code{font-size:var(--fs-caption2);font-weight:var(--fw-semibold);color:var(--text-tertiary);font-family:var(--font-mono)}.search-bar__result-name{font-size:var(--fs-body1);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-bar__result-path{font-size:var(--fs-caption2);color:var(--text-tertiary);white-space:nowrap}.search-bar__empty{padding:var(--space-5) var(--space-4);text-align:center;color:var(--text-tertiary);font-size:var(--fs-body1)}.data-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);padding:var(--space-4);animation:fadeIn var(--duration-fast) var(--curve-easy-ease);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.data-modal{background-color:var(--colorNeutralBackground1);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%;max-width:520px;box-shadow:var(--shadow-8);animation:scaleUp var(--duration-fast) var(--curve-easy-ease);flex-direction:column;display:flex;overflow:hidden}.data-modal__header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.data-modal__title-group{align-items:center;gap:var(--space-3);display:flex}.data-modal__icon{border-radius:var(--radius-md);background-color:var(--colorBrandBackground2);width:32px;height:32px;color:var(--colorBrandForeground1);justify-content:center;align-items:center;display:flex}.data-modal__title{font-size:var(--fs-subtitle2);font-weight:var(--fw-semibold);color:var(--text-primary);margin:0}.data-modal__close-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--curve-easy-ease);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.data-modal__close-btn:hover{background-color:var(--colorNeutralBackground1Hover);color:var(--text-primary)}.data-modal__close-btn:active{transform:scale(.95)}.data-modal__body{padding:var(--space-6);gap:var(--space-6);flex-direction:column;display:flex}.data-modal__section{gap:var(--space-2);flex-direction:column;display:flex}.data-modal__section-title{font-size:var(--fs-body1);font-weight:var(--fw-semibold);color:var(--text-primary);margin:0}.data-modal__section-desc{font-size:var(--fs-caption1);color:var(--text-secondary);margin:0;line-height:1.4}.data-modal__actions-row{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.data-modal__btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-body1);font-weight:var(--fw-medium);cursor:pointer;transition:all var(--duration-fast) var(--curve-easy-ease);border:1px solid #0000;display:inline-flex}.data-modal__btn:active{transform:scale(.96)}.data-modal__btn--primary{background-color:var(--colorBrandBackground);color:var(--text-inverse)}.data-modal__btn--primary:hover{background-color:var(--colorBrandBackgroundHover)}.data-modal__btn--secondary{background-color:var(--bg-surface-2);border-color:var(--border-default);color:var(--text-primary)}.data-modal__btn--secondary:hover{background-color:var(--colorNeutralBackground1Hover);border-color:var(--border-focus)}.data-modal__btn--subtle-danger{border-color:var(--badge-retiring-border);color:var(--badge-retiring-fg);background-color:#0000}.data-modal__btn--subtle-danger:hover{background-color:var(--badge-retiring-bg)}.data-modal__btn--danger{background-color:var(--line-security);color:#fff}.data-modal__btn--danger:hover{background-color:color-mix(in srgb, var(--line-security) 85%, black)}.data-modal__currency-group{gap:var(--space-2);margin-top:var(--space-2);display:flex}.data-modal__currency-btn{justify-content:center;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-default);background-color:var(--bg-surface-2);color:var(--text-secondary);font-size:var(--fs-body1);cursor:pointer;transition:all var(--duration-fast) var(--curve-easy-ease);flex:1;display:flex}.data-modal__currency-btn:hover{background-color:var(--colorNeutralBackground1Hover);color:var(--text-primary)}.data-modal__currency-btn:active{transform:scale(.96)}.data-modal__currency-btn--active{background-color:var(--colorBrandBackground2);border-color:var(--colorBrandForeground1);color:var(--colorBrandForeground1);font-weight:var(--fw-semibold)}.data-modal__currency-symbol{font-weight:var(--fw-semibold)}@media (width<=640px){.data-modal{margin:var(--space-2)}.data-modal__actions-row{flex-direction:column}.data-modal__btn{width:100%}.data-modal__currency-group{flex-direction:column}}.header{height:48px;z-index:var(--z-header);background-color:var(--colorBrandBackground);color:var(--text-inverse);box-shadow:var(--shadow-4);transition:background-color var(--duration-normal) var(--curve-easy-ease), border-bottom-color var(--duration-normal) var(--curve-easy-ease);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}[data-theme=dark] .header{background-color:var(--colorNeutralBackground5);border-bottom:1px solid var(--border-default);color:var(--colorNeutralForeground1);box-shadow:none}.header__left,.header__center,.header__right{align-items:center;min-width:0;display:flex}.header__left{flex:1;gap:8px}.header__center{flex:1;justify-content:center;max-width:420px}.header__right{flex:1;justify-content:flex-end}.header__menu-btn{border-radius:var(--radius-md);color:inherit;transition:background var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;margin-left:-4px;padding:6px;display:none}.header__menu-btn:hover{background:#ffffff26}[data-theme=dark] .header__menu-btn:hover{background:var(--colorSubtleBackgroundHover)}.header__brand{min-width:0;color:inherit;align-items:baseline;gap:12px;text-decoration:none;display:flex}.header__brand-prefix{letter-spacing:-.25px;color:inherit;transition:opacity var(--duration-fast) var(--curve-easy-ease);flex-shrink:0;font-size:18px;font-weight:600;text-decoration:none}.header__brand-prefix:hover{opacity:.8}.header__brand-divider{font-size:var(--fs-body1,14px);opacity:.4;margin:0 8px;display:none}.header__brand-title{font-size:var(--fs-body1,14px);opacity:.8;letter-spacing:.25px;white-space:nowrap;text-overflow:ellipsis;color:inherit;transition:opacity var(--duration-fast) var(--curve-easy-ease);text-decoration:none;display:none;overflow:hidden}.header__brand-title:hover{opacity:1}@media (width>=640px){.header__brand-divider,.header__brand-title{display:inline}}.header__data-btn{border-radius:var(--radius-md);width:32px;height:32px;color:inherit;cursor:pointer;transition:background var(--duration-fast) var(--curve-easy-ease), transform var(--duration-fast) var(--curve-easy-ease);margin-right:var(--space-2);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.header__data-btn:hover{background:#ffffff26}[data-theme=dark] .header__data-btn:hover{background:var(--colorSubtleBackgroundHover)}.header__data-btn:active{transform:scale(.95)}.header__data-btn:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.header__theme-group{border-radius:var(--radius-lg);background:var(--colorNeutralBackground1);box-shadow:var(--shadow-2);border:1px solid #0000;flex-shrink:0;align-items:center;padding:2px;display:flex}[data-theme=dark] .header__theme-group{background:var(--colorNeutralBackground3)}.header__theme-btn{border-radius:var(--radius-sm);width:32px;height:28px;transition:all var(--duration-fast) var(--curve-easy-ease);color:var(--colorNeutralForeground2);opacity:.7;background-color:#0000;border:none;outline:none;justify-content:center;align-items:center;display:flex}.header__theme-btn:hover{opacity:1;background-color:var(--colorNeutralBackground1Hover);color:var(--colorNeutralForeground1)}.header__theme-btn:active{transform:scale(.95)}.header__theme-btn:focus-visible{box-shadow:0 0 0 2px var(--border-focus);outline:none}.header__theme-btn--active{background-color:var(--colorNeutralBackground1);color:var(--colorBrandForeground1);opacity:1;box-shadow:var(--shadow-2)}.header__theme-btn--active:hover{background-color:var(--colorNeutralBackground1);color:var(--colorBrandForeground1);opacity:1}[data-theme=dark] .header__theme-btn{opacity:.5}[data-theme=dark] .header__theme-btn:hover{opacity:1;background-color:var(--colorNeutralBackground1);color:var(--colorNeutralForeground1)}[data-theme=dark] .header__theme-btn--active{background-color:var(--colorNeutralForeground4);color:var(--colorNeutralForeground1);opacity:1;box-shadow:none}[data-theme=dark] .header__theme-btn--active:hover{background-color:var(--colorNeutralForeground4);color:var(--colorNeutralForeground1);opacity:1}.header__theme-icon{transition:transform .2s ease-in-out}.header__theme-icon--rotate-0{transform:rotate(0)}.header__theme-icon--rotate-neg90{transform:rotate(-90deg)}.header__theme-icon--rotate-90{transform:rotate(90deg)}.header__theme-icon--scale-100{transform:scale(1)}.header__theme-icon--scale-90{transform:scale(.9)}@media (width>=769px){.header{padding:0 20px}.header__left{gap:16px}.header__menu-btn{display:none}}@media (width<=768px){.header__center{display:none}.header{gap:8px;padding:0 16px}.header__menu-btn{display:flex}}.sidebar-overlay{background:var(--bg-overlay);z-index:calc(var(--z-sidebar) - 1);display:none;position:fixed;inset:0}.sidebar{top:var(--header-height);background:var(--bg-surface-1);border-right:1px solid var(--border-default);width:280px;z-index:var(--z-sidebar);flex-direction:column;transition:width .3s ease-in-out;display:flex;position:fixed;bottom:0;left:0;overflow:hidden auto;box-shadow:0 2px 4px #0000000a,0 0 2px #0000000f}.sidebar__header{border-bottom:1px solid var(--border-default);white-space:nowrap;flex-shrink:0;align-items:center;height:48px;transition:all .3s ease-in-out;display:flex;overflow:hidden}.sidebar__header--open{justify-content:space-between;padding:0 16px}.sidebar__header--collapsed{justify-content:center;padding:0}.sidebar__header-title{letter-spacing:-.025em;color:var(--text-primary);padding-left:4px;font-size:16px;font-weight:600}.sidebar__toggle-btn{color:var(--text-secondary);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:background .2s,color .2s;display:flex}.sidebar__toggle-btn:hover{background:var(--colorNeutralBackgroundHover);color:var(--text-primary)}.sidebar__toggle-desktop{display:flex}.sidebar__toggle-mobile{display:none}.sidebar__nav{flex-direction:column;flex:1;gap:4px;padding:16px 0 0;display:flex}.sidebar__pillar-group{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.sidebar__pillar-title{font-size:var(--fs-caption1);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--text-tertiary);white-space:nowrap;opacity:1;margin-top:4px;padding:4px 20px;font-weight:600;transition:opacity .3s ease-in-out}.sidebar__link{color:var(--text-secondary);border-radius:4px;align-items:center;gap:12px;margin:0 8px;padding:10px 12px;font-size:15px;font-weight:500;text-decoration:none;transition:all .2s;display:flex;position:relative}.sidebar__link:hover{background:var(--colorNeutralBackgroundHover);color:var(--text-primary)}.sidebar__link--active{background:var(--colorNeutralBackground4);color:var(--colorBrandForeground1);font-weight:600}.sidebar__link-indicator{background:0 0;border-radius:9999px;flex-shrink:0;width:3px;height:16px;transition:background .2s;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar__link--active .sidebar__link-indicator{background:var(--colorBrandBackground)}.sidebar__link-icon{color:var(--line-color,currentColor);opacity:.7;flex-shrink:0;align-items:center;min-width:20px;transition:opacity .2s;display:flex}.sidebar__link:hover .sidebar__link-icon,.sidebar__link--active .sidebar__link-icon{opacity:1}.sidebar__link-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.sidebar__link-name{font-size:15px;font-weight:inherit;color:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__link-progress-bar{background:var(--border-subtle);border-radius:1px;width:100%;height:2px;overflow:hidden}.sidebar__link-progress-fill{background:var(--line-color);height:100%;transition:width .6s var(--curve-decelerate);border-radius:1px}.sidebar__link-count{font-size:var(--fs-caption2);color:var(--text-tertiary);font-weight:600;font-family:var(--font-mono);white-space:nowrap}.sidebar__footer{border-top:1px solid var(--border-default);flex-direction:column;gap:16px;padding:16px;display:flex}.sidebar__poster-link{font-size:var(--fs-caption1);color:var(--text-primary);background:var(--colorNeutralBackground4);border:1px solid var(--border-default);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 12px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.sidebar__poster-link:hover{background:var(--colorNeutralBackgroundHover);border-color:var(--border-strong);text-decoration:none}.sidebar__legend{flex-direction:column;gap:8px;display:flex}.sidebar__legend-item{font-size:var(--fs-caption2);color:var(--text-tertiary);white-space:nowrap;align-items:center;gap:8px;display:flex}.sidebar__legend-dot{border-radius:9999px;width:8px;height:8px}.sidebar__legend-dot--completed{background:var(--status-completed)}.sidebar__legend-dot--progress{background:var(--status-in-progress)}.sidebar__legend-dot--not-started{border:1.5px solid var(--text-tertiary);background:0 0;width:7px;height:7px}@media (width>=769px){.sidebar--collapsed{width:64px}.sidebar--collapsed .sidebar__pillar-group{margin-bottom:0}.sidebar--collapsed .sidebar__pillar-title,.sidebar--collapsed .sidebar__link-content,.sidebar--collapsed .sidebar__link-count,.sidebar--collapsed .sidebar__footer{display:none}.sidebar--collapsed .sidebar__link{justify-content:center;padding:10px 0}.sidebar--collapsed .sidebar__link-icon{margin:0 auto}}@media (width<=768px){.sidebar{width:280px;transition:transform .3s ease-in-out;transform:translate(-100%)}.sidebar--open{width:280px;transform:translate(0)}.sidebar--collapsed{width:280px;transform:translate(-100%)}.sidebar--open~.sidebar-overlay,.sidebar-overlay{display:block}.sidebar__toggle-desktop{display:none}.sidebar__toggle-mobile{display:flex}.sidebar__header--collapsed{justify-content:space-between;padding:0 16px}}.app{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app__body{padding-top:var(--header-height);flex:1;display:flex}.app__content{margin-left:var(--sidebar-width);height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));transition:margin-left var(--transition-base);flex:1;overflow:hidden scroll}.app__body--collapsed .app__content{margin-left:var(--sidebar-collapsed)}@media (width<=768px){.app__content,.app__body--collapsed .app__content{margin-left:0}}.loading-skeleton{flex-direction:column;gap:16px;padding:24px;animation:.3s ease-out fadeIn;display:flex}.loading-skeleton__bar{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--colorNeutralBackground4) 25%, var(--colorNeutralBackground3) 50%, var(--colorNeutralBackground4) 75%);background-size:200% 100%;height:20px;animation:1.8s ease-in-out infinite shimmer}.loading-skeleton__bar--wide{width:40%;height:28px}.loading-skeleton__bar--medium{opacity:.6;width:60%;height:16px}.loading-skeleton__row{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;display:grid}.loading-skeleton__card{border-radius:var(--radius-lg);background:linear-gradient(90deg, var(--colorNeutralBackground4) 25%, var(--colorNeutralBackground3) 50%, var(--colorNeutralBackground4) 75%);background-size:200% 100%;height:160px;animation:1.8s ease-in-out infinite shimmer}.loading-skeleton__card:nth-child(2){animation-delay:.15s}.loading-skeleton__card:nth-child(3){animation-delay:.3s}
