:root{--color-bg-deep: #2d3436;--color-bg-surface: #353b48;--color-bg-elevated: #2f3640;--color-bg-overlay: #3d4655;--color-text-primary: #dfe6e9;--color-text-secondary: #b2bec3;--color-text-muted: #636e72;--color-text-inverse: #2d3436;--color-accent-primary: #a29bfe;--color-accent-primary-hover: #6c5ce7;--color-accent-primary-active: #5849be;--color-accent-text-hover: #ff69b4;--color-accent-primary-rgb: 162, 155, 254;--color-accent-secondary: #55efc4;--color-accent-secondary-hover: #00b894;--color-accent-secondary-rgb: 85, 239, 196;--color-success: #55efc4;--color-success-subtle: #00b894;--color-error: #ff7675;--color-error-subtle: #d63031;--color-warning: #ffeaa7;--color-warning-subtle: #fdcb6e;--color-border-default: #464f5b;--color-border-muted: #3d4655;--color-border-emphasis: #576574;--space-xs: 6px;--space-sm: 12px;--space-md: 20px;--space-lg: 32px;--space-xl: 48px;--space-2xl: 64px;--space-3xl: 96px;--font-logo: "Fredoka", "Quicksand", "Varela Round", sans-serif;--font-display: "Nunito", "Quicksand", "Varela Round", "Segoe UI Rounded", system-ui, sans-serif;--font-sans: "Nunito", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-heading: var(--font-display);--font-body: var(--font-sans);--font-size-xs: .875rem;--font-size-sm: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 3rem;--font-weight-light: 400;--font-weight-normal: 500;--font-weight-medium: 600;--font-weight-semibold: 700;--font-weight-bold: 800;--line-height-tight: 1.2;--line-height-normal: 1.6;--line-height-relaxed: 1.8;--sidebar-width: 300px;--content-max-width: 840px;--content-wide-max-width: 1200px;--header-height: 70px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(0,0,0,.1);--shadow-md: 0 4px 12px rgba(0,0,0,.15);--shadow-lg: 0 8px 24px rgba(0,0,0,.2);--transition-fast: .15s cubic-bezier(.25, .8, .25, 1);--transition-base: .3s cubic-bezier(.25, .8, .25, 1);--transition-slow: .5s cubic-bezier(.25, .8, .25, 1);--z-base: 1;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-overlay: 40;--z-modal: 50;--z-toast: 60;--color-progress-bg: var(--color-bg-elevated);--color-progress-fill: var(--color-accent-secondary);--code-bg: #2d3436;--code-fg: #dfe6e9;--code-comment: #636e72;--code-keyword: #a29bfe;--code-string: #55efc4;--code-function: #74b9ff;--code-variable: #ffeaa7;--code-number: #fd79a8;--code-operator: #fab1a0;--code-punctuation: #b2bec3;--brick-body-fill: rgba(162, 155, 254, .15);--brick-body-stroke: #a29bfe;--brick-glasses: #ff69b4;--brick-pupils: #dfe6e9;--brick-mouth: #a29bfe;--brick-glint: rgba(255, 255, 255, .6)}[data-theme=light]{--color-bg-deep: #fdfbf7;--color-bg-surface: #ffffff;--color-bg-elevated: #f4f4f0;--color-bg-overlay: #eaeae5;--color-text-primary: #2d3436;--color-text-secondary: #636e72;--color-text-muted: #b2bec3;--color-text-inverse: #ffffff;--color-accent-primary: #6c5ce7;--color-accent-primary-hover: #5849be;--color-accent-primary-active: #4834d4;--color-accent-text-hover: #ff69b4;--color-accent-primary-rgb: 108, 92, 231;--color-accent-secondary: #00b894;--color-accent-secondary-hover: #00a884;--color-accent-secondary-rgb: 0, 184, 148;--color-success: #00b894;--color-success-subtle: #55efc4;--color-error: #d63031;--color-error-subtle: #ff7675;--color-warning: #fdcb6e;--color-warning-subtle: #ffeaa7;--color-border-default: #dfe6e9;--color-border-muted: #f4f4f0;--color-border-emphasis: #b2bec3;--shadow-sm: 0 2px 8px rgba(108, 92, 231, .08);--shadow-md: 0 8px 24px rgba(108, 92, 231, .12);--shadow-lg: 0 16px 48px rgba(108, 92, 231, .16);--code-bg: #f4f4f0;--code-fg: #2d3436;--code-comment: #b2bec3;--code-keyword: #6c5ce7;--code-string: #00b894;--code-function: #0984e3;--code-variable: #d63031;--code-number: #e17055;--code-operator: #fdcb6e;--code-punctuation: #636e72;--brick-body-fill: rgba(108, 92, 231, .1);--brick-body-stroke: #6c5ce7;--brick-glasses: #e84393;--brick-pupils: #2d3436;--brick-mouth: #6c5ce7;--brick-glint: rgba(255, 255, 255, .8)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-deep);min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--color-text-primary);margin-bottom:var(--space-md);letter-spacing:0;text-transform:none}h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-light);margin-bottom:var(--space-lg)}h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-light);margin-top:var(--space-xl)}h3{font-size:var(--font-size-xl);margin-top:var(--space-lg)}h4{font-family:var(--font-body);font-size:var(--font-size-lg);margin-top:var(--space-lg)}h5,h6{font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-normal)}p{margin-bottom:var(--space-md);color:var(--color-text-primary);line-height:var(--line-height-relaxed)}strong,b{font-weight:var(--font-weight-normal)}em,i{font-style:italic}small{font-size:var(--font-size-sm);color:var(--color-text-muted)}ul,ol{margin-bottom:var(--space-md);padding-left:var(--space-lg);color:var(--color-text-secondary)}ul{list-style-type:disc}ol{list-style-type:decimal}li{margin-bottom:var(--space-sm);line-height:var(--line-height-relaxed)}li::marker{color:var(--color-text-muted)}a{color:var(--color-accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-text-hover);text-decoration:underline}a:active{color:var(--color-accent-primary-active)}code{font-family:var(--font-mono);font-size:.9em;padding:2px 6px;background-color:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);color:var(--code-fg)}pre{font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);background-color:var(--code-bg);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md);overflow-x:auto;tab-size:2}pre code{padding:0;background:transparent;border:none;font-size:inherit;color:inherit}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--code-comment);font-style:italic}.token.keyword,.token.tag,.token.boolean,.token.important{color:var(--code-keyword)}.token.string,.token.attr-value{color:var(--code-string)}.token.function,.token.class-name{color:var(--code-function)}.token.variable,.token.property{color:var(--code-variable)}.token.number{color:var(--code-number)}.token.operator{color:var(--code-operator)}.token.punctuation{color:var(--code-punctuation)}blockquote{margin:var(--space-lg) 0;padding:var(--space-md) var(--space-lg);border-left:3px solid var(--color-accent-primary);color:var(--color-text-secondary);font-style:italic;background:var(--color-bg-surface)}hr{border:none;border-top:1px solid var(--color-border-default);margin:var(--space-xl) 0}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}::selection{background-color:var(--color-accent-primary);color:var(--color-text-inverse)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-bg-deep)}::-webkit-scrollbar-thumb{background:var(--color-border-default);border:2px solid var(--color-bg-deep)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-primary)}img,video{max-width:100%;height:auto;display:block}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-md)}th,td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--color-border-default)}th{font-weight:var(--font-weight-normal);color:var(--color-text-primary);background-color:var(--color-bg-elevated)}td{color:var(--color-text-secondary)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.bg-deep{background-color:var(--color-bg-deep)}.bg-surface{background-color:var(--color-bg-surface)}.bg-elevated{background-color:var(--color-bg-elevated)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}#app,.app-container{display:flex;min-height:100vh;background-color:var(--color-bg-deep)}.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:linear-gradient(180deg,#22c55e1f,#22c55e0a),var(--color-bg-surface);border-right:1px solid var(--color-border-default);overflow-y:auto;padding:var(--space-md);z-index:var(--z-fixed)}.sidebar-header{margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-default)}.sidebar-title{font-family:var(--font-body);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-xs);letter-spacing:-.01em}.sidebar-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted)}.sidebar-nav{list-style:none;padding:0;margin:0 0 var(--space-md) 0}.sidebar-nav-item{margin-bottom:var(--space-xs)}.sidebar-nav-link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);transition:all var(--transition-fast);text-decoration:none}.sidebar-nav-link:hover{background-color:var(--color-bg-elevated);color:var(--color-accent-text-hover);text-decoration:none}.sidebar-nav-link.active{background-color:var(--color-accent-primary);color:var(--color-text-inverse);font-weight:var(--font-weight-normal)}.sidebar-section{margin-bottom:0}.sidebar-section-title{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding:0 var(--space-sm)}.sidebar-subjects{display:flex;flex-direction:column;gap:var(--space-xs)}.sidebar-subject-link{display:block;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:background var(--transition-fast)}.sidebar-subject-link:hover{background:var(--color-bg-elevated);text-decoration:none}.sidebar-subject-link:hover .sidebar-subject-title,.sidebar-subject-link:hover .sidebar-subject-code{color:var(--color-accent-text-hover)}.sidebar-subject-link.active{background:var(--color-accent-primary)}.sidebar-subject-link.active .sidebar-subject-title{color:var(--color-text-inverse)}.sidebar-subject-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs)}.sidebar-subject-title{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-subject-code{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted)}.sidebar-subject-progress{height:3px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);overflow:hidden}.sidebar-subject-progress-fill{height:100%;background:var(--color-accent-primary);border-radius:var(--radius-sm);transition:width var(--transition-slow)}.sidebar-logo{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-xs) 0;text-decoration:none;border-radius:var(--radius-md);transition:opacity var(--transition-fast)}.sidebar-logo:hover{text-decoration:none;background-color:transparent}.logo-icon{display:flex;align-items:center;justify-content:center;color:var(--color-accent-primary)}.sidebar-logo .logo-icon{width:120px;height:120px;flex-shrink:0}.logo-icon svg{display:block;width:100%;height:100%}.sidebar-logo .logo-icon svg{margin-top:0}.mobile-header .logo-icon svg{width:48px;height:48px;margin-top:0}.logo-text{font-family:var(--font-mono);font-size:2.5rem;font-weight:300;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1;border-bottom:2px solid transparent;transition:border-color var(--transition-fast),color var(--transition-fast)}.sidebar-logo:hover .logo-icon{animation:logo-bounce .4s ease}.sidebar-logo:hover .logo-text{color:var(--color-accent-primary);border-color:var(--color-accent-text-hover)}.subjects-section{margin-top:var(--space-sm)}.subjects-header{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding:0 var(--space-sm)}.subjects-list{display:flex;flex-direction:column;gap:var(--space-xs)}.subject-group-header{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);padding:var(--space-md) var(--space-sm) var(--space-xs);margin-top:var(--space-sm)}.subject-item{position:relative;margin-bottom:var(--space-xs)}.subject-link{display:block;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:background var(--transition-fast)}.subject-link:hover{background:var(--color-bg-elevated);text-decoration:none}.subject-link:hover .subject-title,.subject-link:hover .subject-subtitle{color:var(--color-accent-text-hover)}.subject-link.active{background:var(--color-accent-primary)}.subject-link.active .subject-title,.subject-link.active .subject-subtitle{color:var(--color-text-inverse)}.subject-link .subject-header{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-xs)}.subject-icon{font-size:var(--font-size-sm);flex-shrink:0}.subject-info{flex:1;min-width:0}.subject-link .subject-title{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.subject-link .subject-subtitle{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subject-progress-bar{height:3px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);overflow:hidden}.subject-progress-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--transition-slow)}.subject-hover-menu{position:absolute;top:50%;left:calc(100% + var(--space-sm));transform:translateY(-50%) translate(8px);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-sm);opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast);min-width:240px;z-index:var(--z-overlay)}.subject-item.menu-open .subject-hover-menu,.subject-item:focus-within .subject-hover-menu{opacity:1;pointer-events:auto;transform:translateY(-50%) translate(0)}.subject-hover-menu .menu-action{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-sm);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.subject-hover-menu .menu-action:hover,.subject-hover-menu .menu-action:focus-visible{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.subject-hover-menu .menu-icon svg{width:16px;height:16px}.subject-hover-menu .menu-section{border-top:1px solid var(--color-border-default);padding-top:var(--space-sm);margin-top:var(--space-sm)}.subject-hover-menu .menu-section-title{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-xs)}.subject-hover-menu .menu-condensed{padding:var(--space-xs) var(--space-sm)}.subject-hover-menu .menu-footnote{font-size:var(--font-size-xs);color:var(--color-text-muted);padding:0 var(--space-xs)}.subject-hover-menu .menu-text{flex:1;text-align:left;display:flex;flex-direction:column;gap:2px}.subject-hover-menu .menu-title{font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.subject-hover-menu .menu-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted)}.subject-hover-menu .menu-chevron svg{width:14px;height:14px;color:var(--color-text-muted)}.subject-submenu{position:fixed;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-xs);min-width:220px;opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast);transform:translate(6px);z-index:var(--z-overlay)}.subject-submenu:before{content:"";position:absolute;top:0;left:-12px;width:12px;height:100%}.subject-submenu.open{opacity:1;pointer-events:auto;transform:translate(0)}.subject-submenu .menu-action{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-sm);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.subject-submenu .menu-action:hover,.subject-submenu .menu-action:focus-visible{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.subject-submenu .menu-condensed{padding:var(--space-xs) var(--space-sm)}.subject-submenu .menu-text{flex:1;text-align:left;display:flex;flex-direction:column;gap:2px}.subject-submenu .menu-title{font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.subject-submenu .menu-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted)}.subject-submenu .menu-chevron svg{width:14px;height:14px;color:var(--color-text-muted)}.current-subject-section{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}.current-subject-header{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.current-subject-card{padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md)}.current-subject-card .subject-code{font-size:var(--font-size-xs);color:var(--color-accent-primary);font-weight:var(--font-weight-normal);margin-bottom:var(--space-xs)}.current-subject-card .subject-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.current-subject-card .subject-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-md)}.progress-container{margin-top:var(--space-sm)}.progress-container .progress-label{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-xs)}.progress-bar-track{height:4px;background:var(--color-bg-surface);border-radius:var(--radius-sm);overflow:hidden}.progress-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--transition-slow)}.nav-icon{flex-shrink:0}.nav-label{flex:1}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;background-color:var(--color-bg-deep);padding:var(--space-2xl) var(--space-xl);overflow-x:clip;transition:margin-left var(--transition-base)}.sidebar-toggle{position:fixed;top:var(--space-md);left:var(--sidebar-width);transform:translate(calc(-100% - var(--space-sm)));z-index:var(--z-fixed);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sidebar-toggle:hover{color:var(--color-accent-text-hover);background:var(--color-bg-elevated)}.sidebar-toggle svg{width:18px;height:18px;transition:transform var(--transition-fast)}.sidebar.collapsed,.app-container.sidebar-collapsed .sidebar{transform:translate(-100%)}.sidebar.collapsed+.main-content,.app-container.sidebar-collapsed .main-content{margin-left:0}.app-container.sidebar-collapsed .sidebar-toggle{left:0;transform:translate(var(--space-md))}.app-container.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}@media (max-width: 768px){.sidebar-toggle{display:none}}.grid{display:grid;gap:var(--space-lg)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.flex{display:flex;gap:var(--space-md)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column;gap:var(--space-md)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:0 var(--space-lg)}.container.wide{max-width:var(--content-wide-max-width)}.divider{height:1px;background-color:var(--color-border-default);margin:var(--space-xl) 0}.stack{display:flex;flex-direction:column}.stack>*+*{margin-top:var(--space-md)}.stack.tight>*+*{margin-top:var(--space-sm)}.stack.loose>*+*{margin-top:var(--space-lg)}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:var(--mobile-header-height, 56px);background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);padding:0 var(--space-md);align-items:center;justify-content:space-between;z-index:var(--z-fixed)}.mobile-header .mobile-logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none}.mobile-header .mobile-logo span:not(.logo-icon){font-family:var(--font-logo);font-size:1.4rem;font-weight:600;color:var(--color-text-primary);letter-spacing:.02em}@keyframes logo-squash{0%,to{transform:scale(1) rotate(0)}15%{transform:scale(1.08,.92) rotate(-6deg)}35%{transform:scale(.94,1.12) rotate(7deg)}55%{transform:scale(1.12,.9) rotate(-8deg)}75%{transform:scale(.96,1.08) rotate(4deg)}}@keyframes logo-color{0%,to{color:var(--color-accent-primary)}50%{color:var(--color-text-primary)}}@media (prefers-reduced-motion: reduce){.logo-icon svg{animation:none}}@media (prefers-reduced-motion: reduce){.logo-icon{animation:none}}.hamburger-btn{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;padding:var(--space-sm);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;gap:5px;transition:background-color var(--transition-fast)}.hamburger-btn:hover,.hamburger-btn:focus-visible{background-color:var(--color-bg-elevated)}.hamburger-btn span{display:block;width:22px;height:2px;background-color:var(--color-text-primary);border-radius:1px;transition:transform var(--transition-fast),opacity var(--transition-fast)}.hamburger-btn.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:calc(var(--z-fixed) + 5);opacity:0;transition:opacity var(--transition-base);backdrop-filter:blur(2px)}.mobile-overlay.active{opacity:1}.sidebar-close-btn{display:none;position:absolute;top:var(--space-md);right:var(--space-md);width:40px;height:40px;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sidebar-close-btn:hover{background:var(--color-bg-overlay);color:var(--color-accent-text-hover)}@media (max-width: 1024px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){:root{--mobile-header-height: 56px}.mobile-header{display:flex}.mobile-overlay{display:block;pointer-events:none}.mobile-overlay.active{pointer-events:auto}.sidebar{position:fixed;top:0;left:0;width:min(280px,85vw);height:100vh;height:100dvh;transform:translate(-100%);transition:transform var(--transition-base);z-index:calc(var(--z-fixed) + 10);border-right:1px solid var(--color-border-default);border-bottom:none;padding:var(--space-lg);padding-top:calc(var(--space-lg) + 48px);overflow-y:auto;overscroll-behavior:contain}.sidebar.open{transform:translate(0)}.sidebar-close-btn{display:flex}#app,.app-container{flex-direction:column}.main-content{margin-left:0;margin-top:var(--mobile-header-height);padding:var(--space-lg) var(--space-md);min-height:calc(100vh - var(--mobile-header-height));min-height:calc(100dvh - var(--mobile-header-height))}.grid-2,.grid-3{grid-template-columns:1fr}.sidebar-nav-link,.subject-link{padding:var(--space-md);min-height:44px}.flex{flex-wrap:wrap}}@media (max-width: 480px){.main-content{padding:var(--space-md)}.sidebar{width:100vw}}@media (min-width: 481px) and (max-width: 600px){.grid-auto{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.sidebar,.mobile-overlay{transition:none}}.sidebar-content{display:flex;flex-direction:column;height:100%}.sidebar-search-container{margin-bottom:var(--space-sm)}.sidebar-search{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text-primary);font-family:var(--font-sans);font-size:var(--font-size-sm);transition:border-color var(--transition-fast)}.sidebar-search:focus{outline:none;border-color:var(--color-accent-primary)}.sidebar-search::placeholder{color:var(--color-text-muted)}.sidebar-filters{display:flex;gap:var(--space-xs);margin-bottom:var(--space-md);flex-wrap:wrap}.filter-btn{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.filter-btn:hover{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.filter-btn.active{background:var(--color-text-primary);border-color:var(--color-text-primary);color:var(--color-bg-deep)}.subject-list-container{flex:1;overflow-y:auto}.subjects-list-new{display:flex;flex-direction:column;gap:var(--space-xs)}.no-subjects-message{padding:var(--space-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.subject-group{margin-bottom:var(--space-sm)}.subject-group-header-new{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-xs);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--transition-fast)}.subject-group-header-new:hover{color:var(--color-accent-text-hover);background:var(--color-bg-elevated)}.subject-group-header-new .group-title{flex:1;text-align:left}.subject-group-header-new .group-count{font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.subject-group-header-new .group-chevron{transition:transform var(--transition-fast)}.subject-group-header-new .group-chevron.collapsed{transform:rotate(-90deg)}.subject-group-content{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease-out}.subject-group-content.collapsed{grid-template-rows:0fr}.subject-group-content>*{overflow:hidden}.subject-item-new{margin-bottom:var(--space-xs)}.subject-header-new{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);cursor:pointer;border-radius:var(--radius-md);background:transparent;border:1px solid transparent;transition:background var(--transition-fast),border-color var(--transition-fast);position:relative;overflow:hidden}.subject-header-new:hover{background:var(--color-bg-hover);border-color:var(--color-border-default)}.subject-header-new:hover .subject-title-new,.subject-header-new:hover .subject-code-new{color:var(--color-accent-text-hover)}.subject-item-new.active .subject-header-new{background:color-mix(in srgb,var(--color-accent-primary) 5%,transparent)}.subject-header-new:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:-2px}.subject-progress-bar{position:absolute;bottom:0;left:0;height:3px;width:var(--progress, 0%);background:var(--progress-color, var(--color-text-muted));border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:width var(--transition-base)}.subject-info-new{flex:1;min-width:0}.subject-code-new{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-accent-primary);margin-bottom:2px}.subject-title-new{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subject-stats{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.expand-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.expand-btn:hover{background:var(--color-bg-surface);color:var(--color-accent-text-hover)}.expand-btn svg{transition:transform var(--transition-fast)}.expand-btn.expanded svg{transform:rotate(180deg)}.topic-list{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease-out}.topic-list.expanded{grid-template-rows:1fr}.topic-list-inner{overflow:hidden;padding:var(--space-xs) var(--space-md) var(--space-sm)}.topic-list-inner .topic-section{margin-bottom:var(--space-sm)}.topic-list-inner .topic-section:last-child{margin-bottom:0}.topic-list-inner .topic-section-header{display:flex;align-items:center;gap:var(--space-xs);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:4px;padding-left:2px}.topic-list-inner .topic-section-header .section-icon{display:flex;align-items:center;opacity:.7}.topic-list-inner .topic-section-header .section-icon svg{width:12px;height:12px}.topic-list-inner .topic-section-header .section-count{margin-left:auto;font-size:9px;font-weight:500;color:var(--color-text-muted);opacity:.7}.topic-list-inner .topic-items{display:flex;flex-direction:column;gap:1px}.topic-list-inner .topic-item{display:flex;align-items:center;gap:6px;padding:4px 6px;margin-left:-6px;color:var(--color-text-secondary);font-size:var(--font-size-xs);text-decoration:none;transition:all var(--transition-fast);line-height:1.4;background:none;border:none;border-radius:0;border-left:2px solid transparent}.topic-list-inner .topic-item:hover{color:var(--color-accent-text-hover);background:var(--color-bg-hover);text-decoration:none;border-left-color:var(--color-border-default)}.topic-list-inner .topic-item.completed{color:var(--color-text-muted)}.topic-list-inner .topic-item.completed:hover{color:var(--color-accent-text-hover)}.topic-list-inner .topic-item.current{color:var(--color-accent-primary);background:color-mix(in srgb,var(--color-accent-primary) 8%,transparent)}.topic-list-inner .topic-item.more{color:var(--color-text-muted);font-style:italic;font-size:11px}.topic-list-inner .topic-item.more.expand-toggle{cursor:pointer;font-style:normal;color:var(--color-accent-primary);opacity:.8}.topic-list-inner .topic-item.more.expand-toggle:hover{opacity:1;color:var(--color-accent-text-hover);background:var(--color-bg-hover);border-left-color:var(--color-accent-primary)}.topic-list-inner .topic-item.more:not(.expand-toggle):hover{background:none;border-left-color:transparent;cursor:default}.topic-list-inner .topic-number{font-size:10px;color:var(--color-text-muted);min-width:14px;text-align:right;font-weight:500;font-variant-numeric:tabular-nums}.topic-list-inner .topic-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-list-inner .topic-check{display:flex;align-items:center;color:var(--color-status-success);flex-shrink:0}.topic-list-inner .topic-check svg{width:12px;height:12px}.topic-list-inner .current-indicator{display:none}.progress-ring{display:block}@media (max-width: 768px){.sidebar-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-xs);-webkit-overflow-scrolling:touch}.filter-btn{flex-shrink:0}.subject-header-new{padding:var(--space-md);min-height:44px}.topic-item{padding:var(--space-sm) var(--space-sm);min-height:40px}}.page-container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding-bottom:var(--space-2xl)}.page-container.wide{max-width:var(--content-wide-max-width)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-2xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border-default)}.page-header-content{flex:1}.page-header h1{margin:0 0 var(--space-xs) 0;font-size:clamp(1.5rem,4vw,2rem);line-height:1.2}.page-header .subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0;line-height:var(--line-height-relaxed)}.page-header-actions{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0}@media (max-width: 768px){.page-header{flex-direction:column;gap:var(--space-md);align-items:stretch}.page-header-actions{width:100%;flex-wrap:wrap}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:1;border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-text-primary);color:var(--color-bg-deep);border-color:var(--color-text-primary)}.btn-primary:hover:not(:disabled){background-color:transparent;color:var(--color-accent-text-hover);border-color:var(--color-text-primary);text-decoration:none}.btn-primary:active:not(:disabled){background-color:var(--color-text-secondary);border-color:var(--color-text-secondary);color:var(--color-bg-deep)}.btn-secondary{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-default)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-overlay);border-color:var(--color-border-emphasis);color:var(--color-accent-text-hover);text-decoration:none}.btn-ghost{background-color:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-elevated);color:var(--color-accent-text-hover);text-decoration:none}.btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-md)}.card{background-color:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);transition:border-color var(--transition-fast)}.card:hover{border-color:var(--color-border-emphasis)}.card-header{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border-default)}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.card-body{color:var(--color-text-secondary)}.card-footer{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border-default)}.card-interactive{cursor:pointer;text-decoration:none;color:inherit}.card-interactive:hover{border-color:var(--color-accent-primary);background-color:var(--color-bg-elevated)}.progress{width:100%;height:6px;background-color:var(--color-bg-overlay);overflow:hidden;position:relative}.progress-bar{height:100%;background-color:var(--color-accent-primary);transition:width var(--transition-slow);position:relative}.progress-label{display:flex;justify-content:space-between;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.badge{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);line-height:1;border-radius:var(--radius-lg);white-space:nowrap}.badge-default{background-color:var(--color-bg-elevated);color:var(--color-text-secondary)}.badge-primary{background-color:rgba(var(--color-accent-primary-rgb),.15);color:var(--color-accent-primary)}.badge-success{background-color:#4ade8026;color:var(--color-success)}.badge-error{background-color:#f8717126;color:var(--color-error)}.badge-warning{background-color:#fbbf2426;color:var(--color-warning)}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;margin-bottom:var(--space-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-accent-primary)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-textarea{min-height:100px;resize:vertical}.form-hint{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-muted)}.form-error{display:block;margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-error)}.form-checkbox,.form-radio{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;margin-bottom:var(--space-sm)}.form-checkbox input,.form-radio input{width:16px;height:16px;cursor:pointer}.quiz-question{background-color:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.quiz-question-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-md)}.quiz-question-number{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.quiz-question-text{font-size:var(--font-size-md);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-md)}.quiz-options{display:flex;flex-direction:column;gap:var(--space-sm)}.quiz-option{padding:var(--space-md);background-color:var(--color-bg-elevated);border:2px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.quiz-option:hover{border-color:var(--color-border-emphasis);background-color:var(--color-bg-overlay);color:var(--color-accent-text-hover)}.quiz-option.selected{border-color:var(--color-accent-primary);background-color:#58a6ff1a}.quiz-option.correct{border-color:var(--color-success);background-color:#56d3641a}.quiz-option.incorrect{border-color:var(--color-error);background-color:#f851491a}.quiz-feedback{margin-top:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.quiz-feedback.correct{background-color:#56d3641a;border:1px solid var(--color-success);color:var(--color-success)}.quiz-feedback.incorrect{background-color:#f851491a;border:1px solid var(--color-error);color:var(--color-error)}.form-hint.text-success{color:var(--color-success)}.quiz-container{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);padding:var(--space-xl)}.quiz-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.quiz-title{margin:0;font-size:var(--font-size-xl)}.quiz-info{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.quiz-info .info-item{display:inline-flex;align-items:center;gap:var(--space-xs);padding:6px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-elevated)}.quiz-info .icon svg{width:14px;height:14px}.quiz-timer{display:flex;align-items:center;gap:var(--space-xs);padding:8px 14px;border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);font-weight:var(--font-weight-normal);font-variant-numeric:tabular-nums;transition:all .3s ease}.quiz-timer .timer-icon svg{width:16px;height:16px}.quiz-timer .timer-value{font-size:var(--font-size-md);min-width:4ch}.quiz-timer.timer-warning{background:var(--color-bg-warning);border-color:var(--color-warning);color:var(--color-warning-text, #92400e)}.quiz-timer.timer-critical{background:var(--color-bg-danger);border-color:var(--color-danger);color:var(--color-danger);animation:timer-pulse 1s ease-in-out infinite}.quiz-timer.timer-finished{background:var(--color-bg-muted);border-color:var(--color-border-default);color:var(--color-text-muted);animation:none}@keyframes timer-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.questions-container{display:flex;flex-direction:column}.question-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-sm)}.question-number{padding:2px 8px;background:var(--color-bg-elevated);border-radius:999px;font-weight:var(--font-weight-normal)}.question-prompt{font-size:var(--font-size-md);color:var(--color-text-primary);margin-bottom:var(--space-md)}.code-snippet{background:var(--code-bg);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-md);overflow:auto;margin-bottom:var(--space-md)}.answer-container{display:flex;flex-direction:column;gap:var(--space-sm)}.option-label{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-elevated);cursor:pointer;transition:all var(--transition-fast)}.option-label:hover{border-color:var(--color-accent-primary);background:var(--color-bg-overlay);color:var(--color-accent-text-hover)}.option-label.correct{border-color:var(--color-success);background:#56d36414}.option-label.incorrect{border-color:var(--color-error);background:#f8514914}.option-label input{width:16px;height:16px}.text-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text-primary)}.text-input.correct{border-color:var(--color-success);background:#56d36414}.text-input.incorrect{border-color:var(--color-error);background:#f8514914}.feedback{margin-top:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border-default);background:var(--color-bg-elevated)}.feedback.correct{border-color:var(--color-success);background:#56d36414}.feedback.incorrect{border-color:var(--color-error);background:#f8514914}.feedback-header{display:flex;align-items:center;gap:var(--space-xs);font-weight:var(--font-weight-normal);margin-bottom:var(--space-xs)}.ai-evaluation-section{margin-top:var(--space-md);border:1px solid rgba(163,113,247,.3);border-radius:var(--radius-md);overflow:hidden}.ai-evaluation-header{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:#a371f71a;font-weight:var(--font-weight-normal);font-size:var(--font-size-sm);color:var(--color-accent-secondary)}.ai-evaluation-header .ai-icon{display:flex;align-items:center}.ai-evaluation-content{padding:var(--space-md);background:var(--color-bg-elevated)}.ai-evaluation-content.loading{text-align:center;color:var(--color-text-secondary);font-style:italic}.ai-evaluation-content.error{color:var(--color-error)}.quiz-summary{margin-bottom:var(--space-lg);padding:var(--space-lg);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-elevated)}.summary-header{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);margin-bottom:var(--space-md)}.summary-score{display:flex;align-items:center;gap:var(--space-lg)}.score-circle{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;font-weight:var(--font-weight-normal);border:6px solid var(--color-border-default);color:var(--color-text-primary)}.score-circle.pass{border-color:var(--color-success);color:var(--color-success)}.score-circle.fail{border-color:var(--color-error);color:var(--color-error)}.score-details{display:flex;flex-direction:column;gap:var(--space-xs)}.question-nav{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);margin-top:var(--space-md)}.code-editor-container{position:relative;background-color:var(--code-bg);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-lg)}.code-editor-container.fullscreen{position:fixed;inset:0;z-index:9999;border-radius:0;margin:0;display:flex;flex-direction:column}.code-editor-container.fullscreen .editor-wrapper{flex:1;display:flex;flex-direction:column}.code-editor-container.fullscreen .editor-element{flex:1;height:auto!important}.code-editor-container.light-theme{background-color:#fff;border-color:#d0d7de}.editor-wrapper{display:flex;flex-direction:column}.editor-toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-deep);border-bottom:1px solid var(--color-border-default);flex-wrap:wrap;gap:var(--space-sm)}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.editor-toolbar .toolbar-right{gap:var(--space-xs)}.editor-toolbar .toolbar-right .btn{padding:4px 10px;font-size:var(--font-size-xs);gap:var(--space-xs)}.editor-toolbar .toolbar-right .btn-icon svg{width:12px;height:12px}.toolbar-separator{width:1px;height:16px;background-color:var(--color-border-default);margin:0 4px}.font-controls{display:flex;align-items:center;gap:4px}.font-size-display{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);min-width:30px;text-align:center}.btn-font{padding:4px 8px;min-width:28px}.btn-icon{display:inline-flex;align-items:center;vertical-align:middle}.btn-icon svg{width:14px;height:14px}.panel-icon{display:inline-flex;align-items:center;vertical-align:middle;margin-right:var(--space-xs)}.panel-icon svg{width:16px;height:16px}.editor-element{width:100%;min-height:200px}.btn-vim{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);padding:var(--space-xs) var(--space-sm);letter-spacing:.5px}.btn-vim.active{background-color:var(--color-success);color:var(--color-text-inverse)}.btn-vim.active:hover{background-color:var(--color-success);opacity:.9}.vim-status-bar{padding:var(--space-xs) var(--space-md);background-color:var(--color-bg-deep);border-top:1px solid var(--color-border-default);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);min-height:24px}.vim-status-bar input{background:transparent;border:none;color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--font-size-xs);outline:none}.output-panel{display:none;border-top:1px solid var(--color-border-default);background-color:var(--color-bg-deep)}.output-panel.show{display:block}.output-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.execution-time{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.output-content{padding:var(--space-md);margin:0;font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto}.output-panel.error .output-content{color:var(--color-error)}.test-results-panel{display:none;border-top:1px solid var(--color-border-default);background-color:var(--color-bg-surface)}.test-results-panel.show{display:block}.test-results-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.test-results-content{padding:var(--space-md);max-height:400px;overflow-y:auto}.test-result{padding:var(--space-md);margin-bottom:var(--space-sm);border-radius:var(--radius-md);border:1px solid var(--color-border-default)}.test-result:last-child{margin-bottom:0}.test-result.passed{background-color:#56d3641a;border-color:var(--color-success)}.test-result.failed{background-color:#f851491a;border-color:var(--color-error)}.test-result-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.test-badge{width:24px;height:24px;min-width:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.test-badge svg{width:14px;height:14px}.test-badge.passed{background-color:var(--color-success);color:#fff}.test-badge.failed{background-color:var(--color-error);color:#fff}.test-name{flex:1;font-weight:var(--font-weight-normal);color:var(--color-text-primary);line-height:1.4}.test-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);text-transform:uppercase;letter-spacing:.5px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);white-space:nowrap}.test-status.passed{color:var(--color-success);background-color:#56d36426}.test-status.failed{color:var(--color-error);background-color:#f8514926}.test-details{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.test-details>div{margin-bottom:var(--space-xs)}.test-details code{background-color:var(--color-bg-elevated);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs)}.hints-panel{border-top:1px solid var(--color-border-default);background-color:var(--color-bg-surface)}.hints-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:#d299221a;border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-warning)}.hints-title{display:flex;align-items:center}.hints-content{padding:var(--space-md)}.hints-content:empty{display:none}.hint-item{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);background-color:var(--color-bg-elevated);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.hint-item:last-child{margin-bottom:0}.hint-number{font-weight:var(--font-weight-normal);color:var(--color-warning);margin-right:var(--space-sm)}.solution-panel{border-top:1px solid var(--color-border-default);background-color:var(--color-bg-surface)}.solution-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:#58a6ff1a;border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.solution-title{display:flex;align-items:center}.solution-content{padding:var(--space-md)}.solution-content.hidden{display:none}.solution-code{margin:0;padding:var(--space-md);background-color:var(--color-bg-deep);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:pre-wrap;overflow-x:auto}.preview-panel{border-top:1px solid var(--color-border-default);background-color:var(--color-bg-surface)}.preview-panel.hidden{display:none}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:#58a6ff1a;border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.preview-title{display:flex;align-items:center}.preview-content{padding:var(--space-md);background:var(--color-bg-elevated);border-radius:0 0 var(--radius-lg) var(--radius-lg);color:var(--color-text-primary);line-height:var(--line-height-relaxed)}.preview-content>*:first-child{margin-top:0}.preview-content>*:last-child{margin-bottom:0}.evaluation-panel{border-top:1px solid var(--color-border-default);background-color:var(--color-bg-surface)}.evaluation-panel.hidden{display:none}.evaluation-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:#a371f71a;border-bottom:1px solid var(--color-border-default);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-accent-secondary)}.evaluation-title{display:flex;align-items:center}.evaluation-content{padding:var(--space-md)}.evaluation-loading{text-align:center;color:var(--color-text-secondary);padding:var(--space-lg);font-style:italic}.evaluation-error{color:var(--color-error);padding:var(--space-md);background-color:#f851491a;border-radius:var(--radius-md)}.evaluation-result{padding:var(--space-md);border-radius:var(--radius-md)}.evaluation-result.passed{background-color:#3fb9501a;border:1px solid rgba(63,185,80,.3)}.evaluation-result.not-passed{background-color:#f8a6491a;border:1px solid rgba(248,166,73,.3)}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.result-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-normal);font-size:var(--font-size-sm)}.result-badge.passed{background-color:#3fb95033;color:var(--color-success)}.result-badge.not-passed{background-color:#f8a64933;color:#f8a649}.result-score{font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.result-feedback{margin-bottom:var(--space-md);line-height:1.6}.result-section{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border-muted)}.result-section h4{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.result-section.strengths h4{color:var(--color-success)}.result-section.improvements h4{color:#f8a649}.result-section ul{margin:0;padding-left:var(--space-lg)}.result-section li{margin-bottom:var(--space-xs);color:var(--color-text-secondary);line-height:1.5}.btn-evaluate{background-color:#a371f726;color:var(--color-accent-secondary);border:1px solid rgba(163,113,247,.3)}.btn-evaluate:hover:not(:disabled){background-color:#a371f740}.btn-evaluate:disabled{opacity:.6;cursor:not-allowed}.error-line-highlight{background-color:#f8514933!important}.error-glyph{background-color:var(--color-error);border-radius:50%;margin-left:3px}.code-editor{position:relative;background-color:var(--code-bg);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-lg)}.code-editor-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-deep);border-bottom:1px solid var(--color-border-default)}.code-editor-lang{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);text-transform:uppercase}.code-editor-actions{display:flex;gap:var(--space-sm)}.code-editor-body{padding:0;overflow-x:auto}.code-editor-body pre{margin:0;background:transparent;border:none;padding:0}.rubric-table{width:100%;border-collapse:collapse;background-color:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-lg)}.rubric-table thead{background-color:var(--color-bg-elevated)}.rubric-table th{padding:var(--space-md);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);border-bottom:2px solid var(--color-border-default)}.rubric-table td{padding:var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-muted)}.rubric-table tbody tr:last-child td{border-bottom:none}.rubric-table tbody tr:hover{background-color:var(--color-bg-elevated)}.rubric-criteria{font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.rubric-points{text-align:center;font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.alert{padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border-left:3px solid}.alert-info{background-color:var(--color-bg-elevated);border-left-color:var(--color-accent-primary);color:var(--color-text-secondary)}.alert-success{background-color:var(--color-bg-elevated);border-left-color:var(--color-success);color:var(--color-text-secondary)}.alert-warning{background-color:var(--color-bg-elevated);border-left-color:var(--color-warning);color:var(--color-text-secondary)}.alert-error{background-color:var(--color-bg-elevated);border-left-color:var(--color-error);color:var(--color-text-secondary)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}.tooltip{position:relative;display:inline-block}.tooltip-text{visibility:hidden;background-color:var(--color-bg-overlay);color:var(--color-text-primary);text-align:center;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);position:absolute;z-index:var(--z-tooltip);bottom:125%;left:50%;transform:translate(-50%);white-space:nowrap;opacity:0;transition:opacity var(--transition-fast)}.tooltip:hover .tooltip-text{visibility:visible;opacity:1}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:var(--space-2xl);text-align:center}.error-boundary .error-icon{font-size:4rem;margin-bottom:var(--space-lg)}.error-boundary h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-md)}.error-boundary .error-message{font-size:var(--font-size-md);color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.error-boundary .error-details{width:100%;max-width:600px;text-align:left;margin-bottom:var(--space-xl);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md)}.error-boundary .error-details summary{cursor:pointer;font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.error-boundary .error-details p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.error-boundary .error-details code{background-color:var(--color-bg-deep);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-error)}.error-boundary .error-stack{background-color:var(--color-bg-deep);padding:var(--space-md);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.error-boundary .error-actions{display:flex;gap:var(--space-md)}.proof-editor-container{position:relative;background-color:var(--code-bg);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-lg)}.proof-editor-container.fullscreen{position:fixed;inset:0;z-index:9999;border-radius:0;margin:0;display:flex;flex-direction:column}.proof-editor-container.fullscreen .editor-wrapper{flex:1;display:flex;flex-direction:column}.proof-editor-container.fullscreen .editor-element{flex:1;height:auto!important}.proof-editor-container.light-theme{background-color:#fff;border-color:#d0d7de}.save-status{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm)}.save-status.saved{color:var(--color-success);background-color:#56d3641a}.save-status.saved svg{width:12px;height:12px}.save-status.unsaved{color:var(--color-warning);background-color:#d299221a}.proof-instructions{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-md);line-height:var(--line-height-relaxed)}.proof-instructions code{background-color:var(--color-bg-elevated);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs)}.completion-badge.saved{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);border-radius:var(--radius-sm);background-color:#56d36426;color:var(--color-success)}.completion-badge.saved svg{width:12px;height:12px}@media (max-width: 768px){.btn{min-height:44px;padding:var(--space-md) var(--space-lg)}.btn-sm{min-height:36px;padding:var(--space-sm) var(--space-md)}.btn-lg{min-height:52px;padding:var(--space-lg) var(--space-xl)}.quiz-option,.option-label{padding:var(--space-lg);min-height:56px}.quiz-header{flex-direction:column;align-items:flex-start}.quiz-info{width:100%;justify-content:flex-start}.quiz-timer{width:100%;justify-content:center}.editor-toolbar{padding:var(--space-sm)}.toolbar-left,.toolbar-right{gap:var(--space-xs)}.toolbar-separator,.font-controls{display:none}.editor-element{min-height:250px}.output-content{max-height:200px;font-size:var(--font-size-xs)}.test-result{padding:var(--space-sm)}.test-result-header{flex-wrap:wrap}.test-name{flex:1 1 100%;margin-bottom:var(--space-xs)}.form-input,.form-textarea,.form-select{min-height:44px;font-size:16px}.form-checkbox,.form-radio{min-height:44px;padding:var(--space-sm) 0}.form-checkbox input,.form-radio input{width:20px;height:20px}.card{padding:var(--space-md)}.question-nav{flex-direction:column;gap:var(--space-md)}.question-nav .btn{width:100%}.summary-score{flex-direction:column;align-items:center;text-align:center}.score-circle{width:80px;height:80px}.quiz-question{padding:var(--space-md)}.quiz-question-header{flex-direction:column;gap:var(--space-xs)}.alert{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm)}.rubric-table th,.rubric-table td{padding:var(--space-sm);font-size:var(--font-size-xs)}}@media (max-width: 480px){.btn{padding:var(--space-sm) var(--space-md)}.quiz-timer{padding:6px 10px;font-size:var(--font-size-sm)}.code-editor-container{border-radius:var(--radius-md)}.editor-element{min-height:200px}.btn-vim{display:none}.quiz-option,.option-label{padding:var(--space-md)}.badge{font-size:10px;padding:2px var(--space-xs)}}.subtopic-navigator{display:grid;grid-template-columns:260px 1fr;gap:var(--space-xl);min-height:calc(100vh - 250px)}.subtopic-sidebar{position:sticky;top:var(--space-xl);height:fit-content;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:var(--space-md)}.subtopic-section{margin-bottom:var(--space-lg)}.subtopic-section-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.subtopic-section-header .section-icon{display:flex;align-items:center}.subtopic-section-header .section-icon svg{width:14px;height:14px}.subtopic-section-header .section-count{margin-left:auto;font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.subtopic-tabs{display:flex;flex-direction:column;gap:2px}.subtopic-tab{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast);position:relative}.subtopic-tab:hover{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.subtopic-tab.active{background:rgba(var(--color-accent-primary-rgb),.1);color:var(--color-accent-primary)}.subtopic-tab.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--color-accent-primary);border-radius:0 2px 2px 0}.subtopic-tab.viewed:not(.active){color:var(--color-text-muted)}.tab-indicator{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--color-bg-overlay);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);flex-shrink:0}.subtopic-tab.active .tab-indicator{background:var(--color-accent-primary);color:var(--color-text-inverse)}.subtopic-tab.viewed .tab-indicator{background:var(--color-status-success);color:var(--color-text-inverse)}.tab-indicator .tab-check svg{width:12px;height:12px}.tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-section{padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}.practice-group{margin-bottom:var(--space-md)}.practice-group-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-xs);padding:0 var(--space-sm)}.practice-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-xs) var(--space-sm);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.practice-item:hover{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.practice-item.completed{color:var(--color-text-muted)}.practice-check{color:var(--color-status-success);display:flex;align-items:center}.practice-check svg{width:14px;height:14px}.practice-more{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.subtopic-content{max-width:var(--content-max-width);min-width:0}.subtopic-content .content-body{padding-bottom:var(--space-xl)}.subtopic-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default);gap:var(--space-md)}.pagination-left,.pagination-right{flex:1;min-width:0}.pagination-right{display:flex;justify-content:flex-end}.pagination-link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text-primary);text-decoration:none;transition:all var(--transition-fast);max-width:100%}.pagination-link:hover{background:var(--color-bg-overlay);color:var(--color-accent-text-hover);text-decoration:none}.pagination-link .pagination-icon{display:flex;align-items:center;flex-shrink:0}.pagination-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pagination-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.pagination-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagination-center{flex-shrink:0}.pagination-counter{font-size:var(--font-size-sm);color:var(--color-text-muted)}.topic-page.with-subtopics{max-width:none}.topic-page.with-subtopics .page-header{margin-bottom:var(--space-xl)}@media (max-width: 900px){.subtopic-navigator{grid-template-columns:1fr}.subtopic-sidebar{position:static;max-height:none;padding-right:0;padding-bottom:var(--space-lg);margin-bottom:var(--space-lg);border-bottom:1px solid var(--color-border-default)}.subtopic-tabs{flex-direction:row;flex-wrap:wrap;gap:var(--space-xs)}.subtopic-tab{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);background:var(--color-bg-elevated)}.subtopic-tab.active:before{display:none}.tab-title{white-space:nowrap}.subtopic-sidebar .practice-section{display:none}.pagination-link{padding:var(--space-sm)}.pagination-title{display:none}}@media (max-width: 600px){.subtopic-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:var(--space-sm);margin:0 calc(-1 * var(--space-md));padding:0 var(--space-md) var(--space-sm)}.subtopic-pagination{flex-direction:column;gap:var(--space-sm)}.pagination-left,.pagination-right{width:100%}.pagination-link{width:100%;justify-content:center}.pagination-center{order:-1}}.content-navigator{display:grid;grid-template-columns:1fr 280px;gap:var(--space-xl);min-height:calc(100vh - 200px);max-width:1200px;margin:0 auto;align-items:start}.content-navigator .content-sidebar{order:2;position:sticky;top:var(--space-lg);align-self:start;max-height:calc(100vh - 100px);overflow-y:auto;padding-right:var(--space-md)}.content-navigator .content-sidebar-tabs{display:none}.content-navigator .content-sidebar-tab{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.content-navigator .content-sidebar-tab:hover{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.content-navigator .content-sidebar-tab.active{border-color:var(--color-border-default);background:var(--color-bg-default);color:var(--color-accent-primary);font-weight:var(--font-weight-normal)}.content-navigator .content-sidebar-tab .tab-icon{display:inline-flex;align-items:center}.content-navigator .content-sidebar-tab .tab-icon svg{width:14px;height:14px}.content-navigator .sidebar-section{margin-bottom:var(--space-xl)}.content-navigator .sidebar-section-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xs);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.content-navigator .sidebar-section-header .section-icon{display:flex;align-items:center}.content-navigator .sidebar-section-header .section-icon svg{width:14px;height:14px}.content-navigator .topic-list{display:flex;flex-direction:column;gap:2px}.content-navigator .topic-group{border-radius:var(--radius-md)}.content-navigator .topic-group.active{background:transparent}.content-navigator .topic-item{display:flex;flex-direction:row;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-xs) var(--space-sm);border:none;border-radius:var(--radius-md);background:transparent;border:1px solid transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.content-navigator .topic-item:hover{background:var(--color-bg-elevated);border-color:var(--color-border-default);color:var(--color-accent-text-hover)}.content-navigator .topic-item.active{color:var(--color-accent-primary);font-weight:var(--font-weight-normal);background:rgba(var(--color-accent-primary-rgb),.05)}.content-navigator .topic-item.completed:not(.active){color:var(--color-text-muted)}.content-navigator .topic-indicator{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--color-bg-overlay);border:1px solid var(--color-border-default);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);flex-shrink:0}.content-navigator .topic-item.active .topic-indicator{background:var(--color-accent-primary);border-color:transparent;color:var(--color-text-inverse)}.content-navigator .topic-item.completed .topic-indicator{background:var(--color-status-success);border-color:transparent;color:var(--color-text-inverse)}.content-navigator .topic-indicator .indicator-check svg{width:12px;height:12px}.content-navigator .topic-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-navigator .topic-progress{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-bg-overlay);border:1px solid var(--color-border-default)}.content-navigator .subtopic-list{display:flex;flex-direction:column;gap:1px;padding:var(--space-xs) 0 var(--space-sm) calc(var(--space-md) + 12px);margin-left:var(--space-md);border-left:1px solid var(--color-border-muted)}.content-navigator .subtopic-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-xs) var(--space-sm);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.content-navigator .subtopic-item:hover{background:var(--color-bg-overlay);color:var(--color-accent-text-hover)}.content-navigator .subtopic-item.active{color:var(--color-accent-primary);background:rgba(var(--color-accent-primary-rgb),.05)}.content-navigator .subtopic-item.viewed:not(.active){color:var(--color-text-muted)}.content-navigator .subtopic-indicator{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.content-navigator .subtopic-indicator .indicator-dot{width:6px;height:6px;border-radius:50%;background:var(--color-border-default)}.content-navigator .subtopic-item.active .indicator-dot{background:var(--color-accent-primary)}.content-navigator .subtopic-indicator .indicator-check{color:var(--color-status-success)}.content-navigator .subtopic-indicator .indicator-check svg{width:12px;height:12px}.content-navigator .subtopic-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-navigator .content-sidebar .practice-section{padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}.content-navigator .practice-group{margin-bottom:var(--space-md)}.content-navigator .practice-group-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-sm);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.content-navigator .practice-count{font-weight:var(--font-weight-normal)}.content-navigator .practice-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-xs) var(--space-sm);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.content-navigator .practice-item:hover{background:var(--color-bg-elevated);color:var(--color-accent-text-hover)}.content-navigator .practice-item.completed{color:var(--color-text-muted)}.content-navigator .practice-item.active{background:rgba(var(--color-accent-primary-rgb),.05);color:var(--color-primary);font-weight:var(--font-weight-normal)}.content-navigator .practice-item.active.completed{color:var(--color-primary)}.content-navigator .practice-check{color:var(--color-status-success);display:flex;align-items:center}.content-navigator .practice-check svg{width:14px;height:14px}.content-navigator .practice-toggle{display:block;width:100%;padding:var(--space-xs) var(--space-sm);border:none;background:transparent;color:var(--color-accent-primary);font-family:var(--font-body);font-size:var(--font-size-xs);text-align:left;cursor:pointer;transition:color var(--transition-fast)}.content-navigator .practice-toggle:hover{color:var(--color-accent-primary-hover)}.content-navigator .practice-empty{padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-bg-overlay);border:1px solid var(--color-border-default);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm)}.content-navigator .content-area{order:1;min-width:0}.content-navigator .breadcrumb{margin-bottom:var(--space-md)}.content-navigator .content-header{margin-bottom:var(--space-xl)}.content-navigator .content-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg)}.content-navigator .content-title-row h1{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary);line-height:1.2}.content-navigator .content-title-row .subject-code{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-accent-primary);margin-bottom:var(--space-xs)}.content-navigator .content-title-row .topic-counter{flex-shrink:0;padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-muted)}.content-navigator .content-body{padding-bottom:var(--space-xl)}.function-plot{margin:var(--space-lg) auto;max-width:100%;overflow-x:auto}.function-plot svg{display:block;margin:0 auto;background:transparent!important}.function-plot svg text{fill:var(--color-text-secondary)!important;font-size:var(--font-size-sm)}.function-plot svg .axis path,.function-plot svg .axis line{stroke:var(--color-border-default)}.function-plot svg .grid line{stroke:var(--color-border-subtle);opacity:.5}.plot-error{padding:var(--space-md);background:var(--color-bg-error);color:var(--color-text-error);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center}.content-navigator .content-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default);gap:var(--space-md)}.content-navigator .content-overview{padding:var(--space-lg) 0}.content-navigator .overview-section{margin-bottom:var(--space-2xl)}.content-navigator .overview-section h2{font-family:var(--font-body);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);margin-bottom:var(--space-md);color:var(--color-text-primary)}.content-navigator .overview-description{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6}.content-navigator .overview-meta{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-top:var(--space-md)}.content-navigator .overview-meta .meta-item{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-muted)}.content-navigator .overview-meta .meta-icon{display:flex;align-items:center}.content-navigator .overview-meta .meta-icon svg{width:16px;height:16px}.content-navigator .objectives-list{list-style:none;padding:0;margin:0}.content-navigator .objectives-list li{position:relative;padding-left:var(--space-lg);margin-bottom:var(--space-sm);font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.5}.content-navigator .objectives-list li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--color-accent-primary)}.content-navigator .overview-actions{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-top:var(--space-lg)}.content-navigator .overview-actions .btn{flex-shrink:0}.content-navigator .overview-actions .btn svg{width:16px;height:16px;flex-shrink:0}@media (max-width: 480px){.content-navigator .overview-actions{flex-direction:column}.content-navigator .overview-actions .btn{width:100%;justify-content:center}}.mobile-menu-toggle{display:none;width:100%;align-items:center;justify-content:space-between;padding:var(--space-md);margin-bottom:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-md);cursor:pointer;transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--color-bg-overlay);border-color:var(--color-border-emphasis);color:var(--color-accent-text-hover)}.mobile-menu-toggle .toggle-label{font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-toggle .toggle-icon svg{width:16px;height:16px}@media (max-width: 900px){.content-navigator{grid-template-columns:1fr}.content-navigator .content-sidebar{order:unset;position:static;max-height:none;padding-right:0;padding-bottom:0;margin-bottom:var(--space-md);border-bottom:none}.mobile-menu-toggle{display:flex}.sidebar-content-wrapper{display:none}.sidebar-content-wrapper.open{display:block;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.content-navigator .content-sidebar-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);margin-bottom:var(--space-md);padding:3px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-elevated)}.content-navigator[data-mobile-panel=topics] .content-sidebar .practice-section,.content-navigator[data-mobile-panel=practice] .content-sidebar .topics-section{display:none}.content-navigator .topic-list{gap:2px}.content-navigator .topic-item,.content-navigator .subtopic-item{white-space:normal}.content-navigator .subtopic-list{margin-left:var(--space-md);padding:var(--space-xs) 0 var(--space-sm) var(--space-md);border-left:1px solid var(--color-border-muted)}}@media (max-width: 600px){.content-navigator .content-title-row{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.content-navigator .content-title-row h1{font-size:var(--font-size-xl)}.content-navigator .content-title-row .topic-counter{width:100%}.content-navigator .content-pagination{flex-direction:column;gap:var(--space-sm)}.content-navigator .pagination-left,.content-navigator .pagination-right{width:100%}.content-navigator .pagination-link{width:100%;justify-content:center}.content-navigator .pagination-center{order:-1}}.reading-list{margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default)}.reading-list-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.reading-list-header h2{font-family:var(--font-body);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin:0}.reading-list-icon{display:flex;align-items:center;color:var(--color-accent-primary)}.reading-list-icon svg{width:20px;height:20px}.reading-list-context{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-left:auto}.reading-group{margin-bottom:var(--space-xl)}.reading-group:last-child{margin-bottom:0}.reading-group-title{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border-default)}.reading-group-title.required{color:var(--color-accent-primary)}.reading-group-title.optional{color:var(--color-text-muted)}.reading-count{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);padding:2px 8px;background:var(--color-bg-overlay);border-radius:var(--radius-full)}.reading-items{display:flex;flex-direction:column;gap:var(--space-sm)}.reading-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:all var(--transition-fast)}.reading-item:hover{border-color:var(--color-accent-primary);background:var(--color-bg-overlay);text-decoration:none}.reading-item:hover .reading-title{color:var(--color-accent-text-hover)}.reading-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-bg-overlay);color:var(--color-text-muted);flex-shrink:0}.reading-item:hover .reading-icon{background:rgba(var(--color-accent-primary-rgb),.1);color:var(--color-accent-text-hover)}.reading-icon svg{width:18px;height:18px}.reading-item.reading-type-paper .reading-icon{background:rgba(var(--color-accent-primary-rgb),.1);color:var(--color-accent-primary)}.reading-item.reading-type-documentation .reading-icon{background:#56d3641a;color:var(--color-success)}.reading-item.reading-type-textbook .reading-icon{background:#d299221a;color:var(--color-warning)}.reading-item.reading-type-video .reading-icon{background:#f851491a;color:var(--color-error)}.reading-content{flex:1;min-width:0}.reading-header{display:flex;align-items:flex-start;gap:var(--space-sm);margin-bottom:var(--space-xs)}.reading-title{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--color-text-primary);line-height:1.4}.reading-external{display:flex;align-items:center;color:var(--color-text-muted);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;margin-top:2px}.reading-item:hover .reading-external{opacity:1;color:var(--color-accent-text-hover)}.reading-external svg{width:14px;height:14px}.reading-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-xs)}.reading-authors{font-style:italic}.reading-year{color:var(--color-text-muted)}.reading-type-badge{display:inline-block;padding:2px 8px;background:var(--color-bg-overlay);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:capitalize}.reading-time{display:inline-flex;align-items:center;gap:4px}.reading-time .time-icon{display:flex;align-items:center}.reading-time .time-icon svg{width:12px;height:12px}.reading-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5;margin:0}@media (max-width: 600px){.reading-item{flex-direction:column;gap:var(--space-sm)}.reading-icon{width:32px;height:32px}.reading-icon svg{width:16px;height:16px}.reading-meta{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.reading-list-header{flex-wrap:wrap}.reading-list-context{width:100%;margin-left:0}}.toast-container{position:fixed;bottom:var(--space-xl);left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none}.toast{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-default);color:var(--color-text-primary);box-shadow:var(--shadow-lg);opacity:0;transform:translateY(10px);transition:opacity var(--transition-normal),transform var(--transition-normal);pointer-events:auto}.toast-visible{opacity:1;transform:translateY(0)}.toast-hiding{opacity:0;transform:translateY(-10px)}.toast-success{border-color:var(--color-success);background-color:var(--color-bg-surface)}.toast-error{border-color:var(--color-error);background-color:var(--color-bg-surface)}.toast-info{border-color:var(--color-border-emphasis);background-color:var(--color-bg-surface)}.brick-fill{fill:var(--brick-body-fill);stroke:var(--brick-body-stroke);stroke-width:2.2}.brick-stroke{stroke:var(--brick-body-stroke);stroke-width:2.2;fill:none}.brick-glasses{stroke:var(--brick-glasses);stroke-width:2.2;fill:none}.brick-glasses-thick{stroke-width:2.5}.brick-pupils{fill:var(--brick-pupils);stroke:none}.brick-glint{fill:var(--brick-glint);stroke:none;opacity:0}.brick-blink{transform-origin:center}.brick-kinetic{transform-origin:32px 48px}.brick-kinetic .brick-face{transform-origin:32px 38px}.brick-kinetic-once{transform-origin:32px 48px}.brick-kinetic-once .brick-face,.brick-zen,.brick-pondering,.brick-delighted{transform-origin:32px 38px}.home-header h1{display:flex;align-items:center;gap:var(--space-md)}.home-header h1 svg{width:120px;height:120px;margin-top:-16px}.breadcrumb{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-xl)}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--color-accent-text-hover)}.breadcrumb .separator{color:var(--color-text-muted)}.breadcrumb .current{color:var(--color-text-primary)}.page-header{margin-bottom:var(--space-2xl)}.page-header h1{margin-bottom:var(--space-sm)}.page-actions{margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default)}.section{margin-bottom:var(--space-2xl)}.section h2{margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-default)}.home-header{margin-bottom:var(--space-2xl)}.home-header h1{margin-bottom:var(--space-sm);font-family:JetBrains Mono,monospace;font-size:clamp(2rem,3.2vw,3rem);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-primary);line-height:1.05}.home-header .subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary)}.progress-summary{margin-bottom:var(--space-2xl)}.progress-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.progress-bar-container{position:relative;height:12px;background:var(--color-bg-elevated);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-lg)}.progress-bar-container .progress-bar{height:100%;background:linear-gradient(90deg,var(--color-accent-primary),var(--color-accent-primary-hover));border-radius:var(--radius-lg);transition:width var(--transition-slow)}.progress-bar-container .progress-percentage{position:absolute;right:var(--space-md);top:50%;transform:translateY(-50%);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.progress-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg);text-align:center}.progress-stats .stat{display:flex;flex-direction:column;gap:var(--space-xs)}.progress-stats .stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.progress-stats .stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.current-subject{margin-bottom:var(--space-2xl)}.subject-card.featured{background:var(--color-bg-surface);border:2px solid var(--color-accent-primary);border-radius:var(--radius-lg);padding:var(--space-xl)}.completion-message{text-align:center;padding:var(--space-2xl);background:var(--color-bg-surface);border-radius:var(--radius-lg)}.recent-subjects,.quick-stats,.quick-actions{margin-bottom:var(--space-2xl)}.subjects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.subject-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);cursor:pointer;transition:all var(--transition-base)}.subject-card:hover{border-color:var(--color-accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.subject-card:not(.locked):hover h3,.subject-card:not(.locked):hover h4,.subject-card:not(.locked):hover .subject-code{color:var(--color-accent-text-hover)}.subject-card.locked{opacity:.6;cursor:not-allowed;position:relative}.subject-card.locked:hover{transform:none;border-color:var(--color-border-default)}.subject-card .subject-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md)}.subject-card h3,.subject-card h4{font-size:var(--font-size-md);margin:0 0 var(--space-xs) 0}.subject-card .subject-code{font-size:var(--font-size-sm);color:var(--color-accent-primary);font-weight:var(--font-weight-normal)}.subject-card .subject-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-md);line-height:var(--line-height-relaxed)}.subject-card .subject-meta{display:flex;gap:var(--space-lg);font-size:var(--font-size-xs);color:var(--color-text-muted)}.subject-card .meta-item{display:flex;align-items:center;gap:var(--space-xs)}.subject-card .meta-icon{font-size:var(--font-size-sm)}.subject-card .subject-progress{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.progress-bar-small{flex:1;height:6px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);overflow:hidden}.progress-bar-small .progress-bar{height:100%;background:var(--color-accent-primary);border-radius:var(--radius-sm)}.progress-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.subject-prerequisites{margin-bottom:var(--space-md)}.prereq-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-right:var(--space-sm)}.prereq-list{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-xs)}.prereq-tag{font-size:var(--font-size-xs);padding:2px var(--space-sm);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text-muted)}.prereq-tag.met{background:#56d36426;color:var(--color-success)}.prereq-tag.unmet{background:#d2992226;color:var(--color-warning)}.locked-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);background:#0d1117b3;border-radius:var(--radius-lg)}.lock-icon{font-size:var(--font-size-2xl)}.lock-text{font-size:var(--font-size-xs);color:var(--color-text-muted)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-lg)}.stat-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.stat-card .stat-icon{font-size:var(--font-size-2xl)}.stat-card .stat-content{display:flex;flex-direction:column}.stat-card .stat-number{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.stat-card .stat-description{font-size:var(--font-size-sm);color:var(--color-text-muted)}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-md)}.action-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-xl) var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);font-family:inherit;font-size:inherit}.action-card:hover{background:var(--color-bg-elevated);border-color:var(--color-accent-primary);color:var(--color-accent-text-hover)}.action-card .action-icon{font-size:var(--font-size-2xl)}.action-card .action-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.daily-review{margin-bottom:var(--space-2xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg)}.daily-review h2{display:flex;align-items:center;gap:var(--space-sm);margin:0 0 var(--space-xs) 0;font-size:var(--font-size-lg)}.daily-review .review-count{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted);background:var(--color-bg-elevated);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-full)}.daily-review .review-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--space-lg) 0}.review-list{display:flex;flex-direction:column;gap:var(--space-sm)}.review-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:all var(--transition-fast)}.review-item:hover{border-color:var(--color-accent-primary);transform:translate(4px)}.review-item:hover .review-item-title{color:var(--color-accent-text-hover)}.review-item-icon{font-size:var(--font-size-xl);opacity:.8}.review-item-content{flex:1;display:flex;flex-direction:column;gap:var(--space-2xs)}.review-item-title{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.review-item-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.review-item-arrow{color:var(--color-text-muted);font-size:var(--font-size-lg);transition:transform var(--transition-fast)}.review-item:hover .review-item-arrow{transform:translate(4px);color:var(--color-accent-text-hover)}.review-more{margin:var(--space-md) 0 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center}.curriculum-page{margin:0 auto}.curriculum-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--space-lg);margin-bottom:var(--space-xl)}.curriculum-header h1{margin-bottom:var(--space-xs)}.curriculum-header .subtitle{color:var(--color-text-secondary)}.curriculum-filters{display:flex;gap:var(--space-lg);align-items:center}.filter-group{display:flex;align-items:center;gap:var(--space-sm)}.filter-group label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.filter-select{padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm)}.checkbox-label{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.curriculum-legend{display:flex;gap:var(--space-xl);margin-bottom:var(--space-xl);padding:var(--space-md) var(--space-lg);background:var(--color-bg-surface);border-radius:var(--radius-md)}.status-badge{width:12px;height:12px;border-radius:50%}.status-badge.status-not-started,.subject-status-badge.status-not-started{background:var(--color-text-muted)}.status-badge.status-locked{background:var(--color-bg-overlay);border:2px solid var(--color-text-muted)}.status-badge.status-in-progress,.subject-status-badge.status-in-progress{background:var(--color-warning)}.status-badge.status-completed,.subject-status-badge.status-completed{background:var(--color-success)}.year-section{margin-bottom:var(--space-2xl)}.year-title{font-size:var(--font-size-xl);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-border-default)}.semester-section{margin-bottom:var(--space-xl)}.semester-title{font-size:var(--font-size-md);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.subject-status{position:absolute;top:var(--space-md);right:var(--space-md)}.subject-card .subject-content{position:relative}.subject-header{margin-bottom:var(--space-2xl)}.subject-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-lg)}.subject-title-row .subject-code{font-size:var(--font-size-sm);color:var(--color-accent-primary);font-weight:var(--font-weight-normal);margin-bottom:var(--space-xs);display:block}.subject-title-row h1{margin:0}.subject-status-badge{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.subject-status-badge.status-not-started{background:var(--color-bg-elevated);color:var(--color-text-muted)}.subject-status-badge.status-in-progress{background:#d2992226;color:var(--color-warning)}.subject-status-badge.status-completed{background:#56d36426;color:var(--color-success)}.subject-page .subject-description{font-size:var(--font-size-md);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-lg)}.subject-page .subject-meta{display:flex;flex-wrap:wrap;gap:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted)}.prerequisites-warning{padding:var(--space-lg);background:#d299221a;border:1px solid var(--color-warning);border-radius:var(--radius-lg);margin-bottom:var(--space-2xl)}.prerequisites-warning h3{color:var(--color-warning);margin:0 0 var(--space-sm) 0}.prerequisites-warning p{margin-bottom:var(--space-md);color:var(--color-text-secondary)}.prerequisite-list{list-style:none;padding:0;margin:0}.prerequisite-list li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;font-size:var(--font-size-sm)}.prerequisite-list li .checkbox{color:var(--color-text-muted)}.prerequisite-list li.completed .checkbox{color:var(--color-success)}.subject-dependencies{margin-bottom:var(--space-lg)}.subject-dependencies h3{color:var(--color-text-muted);margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.subject-dependency-graph{overflow-x:auto;padding:var(--space-sm) 0}.objectives-list{padding-left:var(--space-lg)}.objectives-list li{color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.topics-list{display:flex;flex-direction:column;gap:var(--space-md)}.topics-list .topic-item{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-fast)}.topics-list .topic-item:hover{border-color:var(--color-border-emphasis)}.topics-list .topic-item:hover .topic-info h3{color:var(--color-accent-text-hover)}.topics-list .topic-item.completed{border-color:var(--color-success)}.topic-number{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-elevated);border-radius:var(--radius-md);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);flex-shrink:0}.topics-list .topic-item.completed .topic-number{background:#56d36426;color:var(--color-success)}.topic-info{flex:1;min-width:0}.topic-info h3{font-size:var(--font-size-md);margin:0 0 var(--space-xs) 0}.topic-meta{display:flex;gap:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted)}.completed-tag{color:var(--color-success);font-weight:var(--font-weight-normal)}.projects-list{display:flex;flex-direction:column;gap:var(--space-md)}.project-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-fast)}.project-item:hover{border-color:var(--color-border-emphasis)}.project-item:hover .project-info h3{color:var(--color-accent-text-hover)}.project-item.submitted{border-color:var(--color-success)}.project-info{flex:1;min-width:0}.project-info h3{font-size:var(--font-size-md);margin:0 0 var(--space-xs) 0}.project-info p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.project-meta{display:flex;gap:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-muted)}.submitted-tag{color:var(--color-success);font-weight:var(--font-weight-normal)}.topic-page{max-width:var(--content-max-width);margin:0 auto}.content-section{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-2xl)}.content-section p{margin-bottom:var(--space-md)}.content-section pre{margin:var(--space-lg) 0}.content-section ul,.content-section ol{margin-bottom:var(--space-md)}.practice-quick-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-xl);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.practice-quick-title{display:inline-flex;align-items:center;gap:var(--space-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.practice-quick-title .icon svg{width:18px;height:18px}.practice-quick-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.exams-list{display:flex;flex-direction:column;gap:var(--space-md)}.exam-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.exam-item.passed{border-color:var(--color-success)}.exam-info h3{margin-bottom:var(--space-xs)}.exam-info p{margin:0 0 var(--space-sm) 0;color:var(--color-text-secondary)}.exam-meta{display:flex;gap:var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.assessment-list{display:flex;flex-direction:column;gap:var(--space-md)}.assessment-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.assessment-item.passed{border-color:var(--color-success)}.assessment-info{display:flex;align-items:center;gap:var(--space-md)}.assessment-type{padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);text-transform:uppercase}.assessment-title{font-weight:var(--font-weight-normal)}.assessment-score{font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.assessment-score.passed{color:var(--color-success)}.quiz-page,.exercise-page,.project-page{max-width:var(--content-max-width);margin:0 auto}.quiz-header,.exercise-header,.project-header{margin-bottom:var(--space-2xl)}.exercise-header h1{margin-bottom:var(--space-sm)}.exercise-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.exercise-meta-row .meta-separator{width:1px;height:16px;background:var(--color-border-default);margin:0 var(--space-xs)}.exercise-meta-row .info-item{display:inline-flex;align-items:center;gap:var(--space-xs)}.exercise-meta-row .info-item .icon{display:inline-flex;color:var(--color-text-muted)}.exercise-meta-row .info-item .icon svg{width:14px;height:14px}.exercise-meta-row .completion-group{margin-left:auto;display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.exercise-meta-row .ai-score-history{font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-bg-elevated);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm)}.quiz-progress{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.best-score{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.best-score .label{color:var(--color-text-muted)}.best-score .score{font-weight:var(--font-weight-normal)}.best-score .score.passed{color:var(--color-success)}.exercise-type-badge{padding:var(--space-xs) var(--space-sm);background:var(--color-bg-elevated);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase}.exercise-hints,.exercise-solution{margin-top:var(--space-lg)}.exercise-hints details,.exercise-solution details{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md)}.exercise-hints summary,.exercise-solution summary{cursor:pointer;font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.hints-list{margin-top:var(--space-md);padding-left:var(--space-lg)}.solution-content{margin-top:var(--space-md)}.project-scaffolding{margin-top:var(--space-xl);margin-bottom:var(--space-xl);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.project-scaffolding-header h2{margin:0 0 var(--space-xs) 0}.scaffolding-overview{color:var(--color-text-secondary);margin:0 0 var(--space-md) 0;line-height:var(--line-height-relaxed)}.scaffolding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-md)}.scaffolding-card{padding:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.scaffolding-card h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm)}.scaffolding-card ul{margin:0;padding-left:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-xs);color:var(--color-text-secondary)}.resource-list{list-style:none;padding-left:0}.resource-list li{padding-left:0}.resource-label a{font-size:var(--font-size-xs);margin-left:var(--space-xs);color:var(--color-accent-primary)}.resource-description{color:var(--color-text-secondary);font-size:var(--font-size-xs);margin-top:var(--space-xs)}.editor-container{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-default)}.language-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-accent-primary);text-transform:uppercase;letter-spacing:.05em}.editor-actions{display:flex;gap:var(--space-sm)}.btn-small{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-xs)}textarea.code-editor{width:100%;min-height:400px;padding:var(--space-md);font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background:var(--code-bg);border:none;resize:vertical;tab-size:2}textarea.code-editor:focus{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent-primary)}textarea.code-editor::placeholder{color:var(--color-text-muted)}.test-results{margin-top:var(--space-xl)}.test-results h2{margin-bottom:var(--space-lg)}.test-result-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);margin-bottom:var(--space-sm)}.test-result-item.passed{border-color:var(--color-success);background:#56d3640d}.test-result-item.failed{border-color:var(--color-error);background:#f851490d}.test-result-item .test-status{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:var(--font-size-sm)}.test-result-item.passed .test-status{background:#56d36433;color:var(--color-success)}.test-result-item.failed .test-status{background:#f8514933;color:var(--color-error)}.test-details{flex:1;min-width:0}.test-name{font-weight:var(--font-weight-normal);margin-bottom:var(--space-xs)}.test-expected,.test-actual{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.test-expected code,.test-actual code{background:var(--color-bg-elevated);padding:2px var(--space-xs);border-radius:var(--radius-sm);font-family:var(--font-mono)}.hints-modal{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-lg)}.hints-modal .modal-content{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);max-width:500px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.hints-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border-default)}.hints-modal .modal-header h3{margin:0}.hints-modal .modal-close{background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;padding:var(--space-xs);line-height:1}.hints-modal .modal-close:hover{color:var(--color-accent-text-hover)}.hints-modal .modal-body{padding:var(--space-lg);overflow-y:auto}.hints-modal .hints-list{margin:0;padding-left:var(--space-lg)}.hints-modal .hints-list li{margin-bottom:var(--space-md);color:var(--color-text-secondary)}.completion-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.completion-badge.passed{background:#56d36426;color:var(--color-success)}.completion-badge.partial{background:#d2992226;color:var(--color-warning)}.project-rubric{margin-bottom:var(--space-2xl)}.rubric-table{display:flex;flex-direction:column;gap:var(--space-lg)}.rubric-criterion{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.criterion-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-default)}.criterion-header h3{margin:0;font-size:var(--font-size-md)}.criterion-weight{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-accent-primary);background:#58a6ff1a;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md)}.criterion-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--color-border-default)}@media (max-width: 768px){.criterion-levels{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.rubric-level{display:flex;flex-direction:column;background:var(--color-bg-surface);padding:var(--space-md);height:100%}.exercise-page .exercise-description{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-xl)}.exercise-page .description-content{background:transparent;border:none;padding:0}.topic-title-section{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.topic-title-section h1{margin:0}.topic-counter{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted);background:var(--color-bg-elevated);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm)}.topic-navigation{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default);gap:var(--space-md)}.topic-navigation .nav-left,.topic-navigation .nav-right{flex:1;min-width:0}.topic-navigation .nav-left{text-align:left}.topic-navigation .nav-right{text-align:right}.topic-navigation .nav-center{flex:0 0 auto}.topic-navigation .nav-counter{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);background:var(--color-bg-elevated);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg)}.topic-navigation .btn{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-counter{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-muted);background:var(--color-bg-elevated);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm)}.exercise-navigation{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-default);gap:var(--space-md)}.exercise-navigation .nav-left,.exercise-navigation .nav-right{flex:1}.exercise-navigation .nav-left{text-align:left}.exercise-navigation .nav-right{text-align:right}.exercise-navigation .nav-center{flex:0 0 auto}.exercise-navigation .nav-counter{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);background:var(--color-bg-elevated);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg)}.exercise-workspace{margin-bottom:var(--space-xl)}.exercise-workspace h2{display:flex;align-items:center;justify-content:space-between}.test-results{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);margin-top:var(--space-xl);font-family:var(--font-mono)}.test-results h2{font-family:var(--font-body);font-size:var(--font-size-md);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border-default);padding-bottom:var(--space-sm);margin-bottom:var(--space-md)}.test-result-item{background:var(--color-bg-surface);border:1px solid var(--color-border-default);margin-bottom:var(--space-xs);border-radius:var(--radius-sm);transition:transform var(--transition-fast)}.test-result-item:hover{transform:translate(4px)}.test-result-item.passed{border-left:4px solid var(--color-success)}.test-result-item.failed{border-left:4px solid var(--color-error)}.level-score{font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);color:var(--color-accent-primary);margin-bottom:var(--space-sm)}.level-content{flex:1}.level-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.level-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.project-description,.project-requirements{margin-bottom:var(--space-2xl)}.description-content{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg)}.description-content p{margin-bottom:var(--space-md)}.description-content p:last-child{margin-bottom:0}.requirements-list{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-lg) var(--space-lg) var(--space-2xl);margin:0}.requirements-list li{margin-bottom:var(--space-sm);color:var(--color-text-secondary)}.requirements-list li:last-child{margin-bottom:0}.submission-form{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.submission-form .form-group{margin-bottom:var(--space-lg)}.submission-form label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.submission-form input[type=url],.submission-form textarea{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.submission-form input[type=url]:focus,.submission-form textarea:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px #58a6ff1a}.submission-form textarea{min-height:120px;resize:vertical}.submission-form input::placeholder,.submission-form textarea::placeholder{color:var(--color-text-muted)}.self-assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.self-assessment-grid .assessment-item{display:flex;flex-direction:column;gap:var(--space-xs)}.self-assessment-grid .assessment-item label{font-size:var(--font-size-xs);margin-bottom:0}.self-assessment-select{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer}.self-assessment-select:focus{outline:none;border-color:var(--color-accent-primary)}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}.latest-submission{margin-bottom:var(--space-2xl)}.submission-card{background:var(--color-bg-surface);border:1px solid var(--color-success);border-radius:var(--radius-lg);padding:var(--space-lg)}.submission-meta{margin-bottom:var(--space-md)}.submission-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.submission-link{margin-bottom:var(--space-sm)}.submission-link .label{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-right:var(--space-sm)}.submission-link a{font-size:var(--font-size-sm);word-break:break-all}.submission-description,.submission-notes{margin-top:var(--space-md)}.submission-description .label,.submission-notes .label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.submission-description p,.submission-notes p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-primary)}.submission-count{font-size:var(--font-size-sm);color:var(--color-text-muted);background:var(--color-bg-elevated);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md)}.file-upload-group{border-top:1px solid var(--color-border-default);padding-top:var(--space-lg);margin-top:var(--space-lg)}.form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-sm)}.submission-form input[type=file]{padding:var(--space-sm);font-size:var(--font-size-sm);background:var(--color-bg-elevated);border:1px dashed var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;width:100%}.submission-form input[type=file]:hover{border-color:var(--color-accent-primary)}.file-list{margin-top:var(--space-sm)}.selected-files{font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-bg-elevated);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md)}.selected-files ul{margin:var(--space-xs) 0 0 var(--space-lg);padding:0}.selected-files li{color:var(--color-text-muted)}.file-error{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--space-sm)}.ai-score{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);margin-left:var(--space-md)}.ai-score.score-excellent,.ai-score.score-good{background:var(--color-success-bg, rgba(46, 160, 67, .15));color:var(--color-success)}.ai-score.score-satisfactory{background:var(--color-warning-bg, rgba(210, 153, 34, .15));color:var(--color-warning)}.ai-score.score-needs-improvement{background:var(--color-error-bg, rgba(248, 81, 73, .15));color:var(--color-error)}.ai-evaluation{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}.ai-evaluation h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-md)}.ai-evaluation h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin:var(--space-lg) 0 var(--space-sm) 0}.evaluation-feedback{background:var(--color-bg-elevated);padding:var(--space-md);border-radius:var(--radius-md);border-left:3px solid var(--color-accent-primary)}.evaluation-feedback p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:var(--line-height-relaxed)}.rubric-scores{margin-top:var(--space-lg)}.rubric-score-item{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-sm)}.rubric-score-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.rubric-score-header .criterion-name{font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.rubric-score-header .criterion-weight{font-size:var(--font-size-xs);color:var(--color-text-muted)}.rubric-score-header .criterion-score{margin-left:auto;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm)}.criterion-score.score-excellent,.criterion-score.score-good{background:var(--color-success-bg, rgba(46, 160, 67, .15));color:var(--color-success)}.criterion-score.score-satisfactory{background:var(--color-warning-bg, rgba(210, 153, 34, .15));color:var(--color-warning)}.criterion-score.score-needs-improvement{background:var(--color-error-bg, rgba(248, 81, 73, .15));color:var(--color-error)}.criterion-justification{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:var(--line-height-relaxed)}.evaluation-strengths,.evaluation-improvements{margin-top:var(--space-md)}.evaluation-strengths ul,.evaluation-improvements ul{margin:0;padding-left:var(--space-lg)}.evaluation-strengths li{color:var(--color-success);font-size:var(--font-size-sm);margin-bottom:var(--space-xs)}.evaluation-improvements li{color:var(--color-warning);font-size:var(--font-size-sm);margin-bottom:var(--space-xs)}.previous-attempts{margin-bottom:var(--space-2xl)}.attempts-list{display:flex;flex-direction:column;gap:var(--space-sm)}.attempt-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.attempt-card.passed{border-color:var(--color-success)}.attempt-card.failed{border-color:var(--color-error)}.attempt-info{display:flex;flex-direction:column;gap:var(--space-xs)}.attempt-number{font-weight:var(--font-weight-normal)}.attempt-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.attempt-score{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal)}.attempt-card.passed .attempt-score{color:var(--color-success)}.attempt-card.failed .attempt-score{color:var(--color-error)}.quiz-start{text-align:center;padding:var(--space-2xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.quiz-start h2{margin-bottom:var(--space-md);border:none;padding:0}.quiz-start p{margin-bottom:var(--space-xl);color:var(--color-text-secondary)}.btn-large{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-md)}.exam-start-buttons{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap}.practice-mode{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.practice-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border-default)}.practice-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-accent-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.practice-badge svg{width:16px;height:16px}.practice-count{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.practice-header #exit-practice-btn{margin-left:auto}#practice-question-container{min-height:200px}#practice-actions,#practice-next-actions{display:flex;gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border-default)}#practice-feedback{margin-top:var(--space-lg)}.practice-loading,.practice-evaluating{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);text-align:center;color:var(--color-text-secondary)}.practice-loading p,.practice-evaluating p{margin-top:var(--space-md);margin-bottom:0}.loading-mascot{width:80px;height:80px}.loading-mascot svg{width:100%;height:100%}.empty-state-mascot{width:64px;height:64px;margin:0 auto var(--space-md)}.empty-state-mascot svg{width:100%;height:100%}.practice-error{padding:var(--space-xl);text-align:center;background:var(--color-bg-elevated);border-radius:var(--radius-md)}.practice-error p{color:var(--color-text-secondary);margin-bottom:var(--space-md)}.practice-error a{color:var(--color-accent-primary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.test-results{margin:var(--space-md) 0;display:flex;flex-direction:column;gap:var(--space-sm)}.test-result{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:var(--color-bg-elevated);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.test-result.passed{border-left:3px solid var(--color-success)}.test-result.failed{border-left:3px solid var(--color-error)}.test-icon svg{width:16px;height:16px}.test-result.passed .test-icon svg{color:var(--color-success)}.test-result.failed .test-icon svg{color:var(--color-error)}.test-desc{flex:1}.test-error{color:var(--color-error);font-size:var(--font-size-xs)}.solution-details{margin-top:var(--space-md)}.solution-details summary{cursor:pointer;color:var(--color-accent-primary);font-weight:var(--font-weight-normal)}.solution-details pre{margin-top:var(--space-sm);padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);overflow-x:auto}.correct-answer{margin:var(--space-md) 0;padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.progress-header{margin-bottom:var(--space-2xl)}.progress-header h1{margin-bottom:var(--space-sm)}.progress-header .subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary)}.progress-overview-card{display:flex;flex-direction:column;gap:var(--space-xl);padding:var(--space-xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);margin-bottom:var(--space-2xl)}@media (min-width: 768px){.progress-overview-card{flex-direction:row;align-items:center}}.circular-progress{display:flex;justify-content:center;flex-shrink:0;position:relative}.progress-ring-circle-bg{stroke:var(--color-bg-elevated)}.progress-ring-circle{stroke:var(--color-accent-primary);transition:stroke-dashoffset 1s ease-in-out;transform-origin:50% 50%}.progress-text{font-size:var(--font-size-3xl);font-weight:var(--font-weight-normal);fill:var(--color-text-primary)}.progress-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg);flex:1;width:100%}.stat-box{padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);text-align:center}.stat-box .stat-value{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.stat-box .stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.year-breakdown{margin-bottom:var(--space-2xl)}.year-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.year-card{padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.year-card-header{margin-bottom:var(--space-md)}.year-card h3{font-size:var(--font-size-md);margin-bottom:var(--space-sm)}.year-progress-bar{height:6px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);overflow:hidden}.year-card-stats{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.year-percentage{font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.subject-breakdown{margin-bottom:var(--space-2xl)}.year-breakdown-section{margin-bottom:var(--space-md);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.year-breakdown-header{padding:var(--space-md) var(--space-lg);background:var(--color-bg-surface);cursor:pointer;transition:background-color var(--transition-fast)}.year-breakdown-header:hover{background:var(--color-bg-elevated)}.year-breakdown-header:hover h3{color:var(--color-accent-text-hover)}.year-breakdown-header h3{margin:0;font-size:var(--font-size-md);display:flex;align-items:center;gap:var(--space-sm)}.expand-icon{font-size:var(--font-size-sm);color:var(--color-text-muted)}.year-breakdown-content{padding:var(--space-lg);border-top:1px solid var(--color-border-default);background:var(--color-bg-deep)}.semester-breakdown{margin-bottom:var(--space-lg)}.semester-breakdown:last-child{margin-bottom:0}.semester-breakdown h4{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.subjects-breakdown-list{display:flex;flex-direction:column;gap:var(--space-sm)}.subject-breakdown-item{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.subject-breakdown-item:hover{border-color:var(--color-accent-primary);transform:translate(4px)}.subject-breakdown-item:hover .subject-info h5{color:var(--color-accent-text-hover)}.subject-breakdown-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-xs)}.subject-info{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.subject-info h5{margin:0;font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.3;word-break:break-word}.subject-info .subject-code{font-size:var(--font-size-xs);color:var(--color-text-muted)}.subject-status-pill{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg);border:1px solid transparent;font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);white-space:nowrap}.subject-status-pill.status-not-started{color:var(--color-text-secondary);background:var(--color-bg-elevated);border-color:var(--color-border-default)}.subject-status-pill.status-in-progress{color:var(--color-warning);background:#d299221f;border-color:#d2992259}.subject-status-pill.status-completed{color:var(--color-success);background:#56d36424;border-color:#56d36459}.subject-breakdown-progress{margin-top:var(--space-sm)}.subject-breakdown-progress .progress-bar-container{margin-bottom:var(--space-xs)}.progress-details{display:flex;justify-content:flex-start;gap:var(--space-lg);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs);flex-wrap:wrap}.achievements{margin-bottom:var(--space-2xl)}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.achievement-card{display:flex;gap:var(--space-md);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);transition:all var(--transition-base)}.achievement-card.locked{opacity:.6;filter:grayscale(1)}.achievement-card.unlocked{border-color:var(--color-accent-primary);background:linear-gradient(to bottom right,var(--color-bg-surface),rgba(88,166,255,.05))}.achievement-icon{font-size:var(--font-size-2xl)}.achievement-content h3{font-size:var(--font-size-md);margin-bottom:var(--space-xs)}.achievement-content p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-sm);line-height:1.4}.achievement-date{font-size:var(--font-size-xs);color:var(--color-success);font-weight:var(--font-weight-normal)}.achievement-progress{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.data-management{margin-bottom:var(--space-2xl)}.data-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg)}.action-group{padding:var(--space-xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);text-align:center}.action-group h3{font-size:var(--font-size-lg);margin-bottom:var(--space-xs)}.action-group p{color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.action-group .btn{width:100%}.settings-section{margin-bottom:var(--space-2xl)}.settings-section h2{margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-default)}.settings-group{display:flex;flex-direction:column;gap:var(--space-md)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-fast)}.setting-item:hover{border-color:var(--color-border-emphasis)}.setting-item:hover:not(.danger-zone) .setting-info h3{color:var(--color-accent-text-hover)}.setting-info{flex:1;padding-right:var(--space-lg)}.setting-info h3{font-size:var(--font-size-md);margin:0 0 var(--space-xs) 0;color:var(--color-text-primary)}.setting-info p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.theme-selector{display:flex;background:var(--color-bg-elevated);padding:4px;border-radius:var(--radius-md);border:1px solid var(--color-border-default)}.theme-option{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.theme-option:hover{color:var(--color-accent-text-hover)}.theme-option.active{background:var(--color-bg-surface);color:var(--color-accent-primary);box-shadow:var(--shadow-sm);font-weight:var(--font-weight-medium)}.theme-option .theme-icon svg{width:16px;height:16px}.font-size-control{display:flex;align-items:center;gap:var(--space-md)}.font-size-slider{width:120px;height:4px;background:var(--color-bg-elevated);border-radius:2px;appearance:none;outline:none}.font-size-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;background:var(--color-accent-primary);border-radius:50%;cursor:pointer;transition:transform var(--transition-fast)}.font-size-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.font-size-value{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);min-width:40px;text-align:center}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-bg-elevated);transition:.4s;border-radius:24px;border:1px solid var(--color-border-default)}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:var(--color-text-muted);transition:.4s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--color-accent-primary);border-color:var(--color-accent-primary)}input:checked+.toggle-slider:before{transform:translate(20px);background-color:#fff}.setting-item.danger-zone{border-color:#f8514966}.setting-item.danger-zone:hover{border-color:var(--color-error);background:#f8514905}.setting-item.danger-zone h3{color:var(--color-error)}.warning-message{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);padding:var(--space-sm);background:#f851491a;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-error)}.warning-message .warning-icon svg{width:16px;height:16px}.setting-stats{display:flex;gap:var(--space-xl);margin-top:var(--space-md)}.stat-row{display:flex;flex-direction:column;gap:2px}.stat-row .stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-row .stat-value{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-family:var(--font-mono)}.about-info{text-align:center;padding:var(--space-xl);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.version-info{display:inline-block;margin-top:var(--space-md);padding:var(--space-xs) var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--color-text-muted)}.font-preview{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-bg-deep);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.font-preview pre{margin:0}.font-preview code{font-family:var(--font-mono);color:var(--color-text-primary)}.setting-control.vertical{display:flex;flex-direction:column;width:100%;max-width:400px}.input-group{display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm)}.status-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--space-xs)}.status-message.success{color:var(--color-success)}.status-message svg{width:14px;height:14px}.help-text{margin-top:var(--space-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.help-text a{color:var(--color-accent-primary)}.error-page{max-width:var(--content-max-width);margin:0 auto;text-align:center;padding:var(--space-3xl) var(--space-xl)}.error-page h1{margin-bottom:var(--space-md)}.error-page p{margin-bottom:var(--space-xl)}@media (max-width: 768px){.curriculum-header{flex-direction:column}.curriculum-filters{width:100%}.curriculum-legend{flex-wrap:wrap;gap:var(--space-md)}.progress-stats{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}.subject-title-row{flex-direction:column;gap:var(--space-md)}.topics-list .topic-item{flex-direction:column;align-items:flex-start}.topics-list .topic-item .btn{width:100%;margin-top:var(--space-md)}.projects-list .project-item{flex-direction:column;align-items:flex-start}.projects-list .project-item .btn{width:100%;margin-top:var(--space-md)}.assessment-item{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.assessment-item .btn{width:100%}}@media (max-width: 480px){.subjects-grid,.actions-grid{grid-template-columns:1fr}}.export-page .page-description{color:var(--color-text-secondary);margin-bottom:var(--space-xl)}.export-container{display:grid;grid-template-columns:1fr 320px;gap:var(--space-xl);align-items:start}.export-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.export-section{margin-bottom:var(--space-xl)}.export-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.export-select{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-md);font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast)}.export-select:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px #58a6ff1a}.export-select:disabled{opacity:.6;cursor:not-allowed}.export-preview{padding:var(--space-lg);background:var(--color-bg-elevated);border-radius:var(--radius-md);margin-bottom:var(--space-xl)}.export-preview h3{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 var(--space-md) 0;text-transform:uppercase;letter-spacing:.05em}.preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-lg)}.stat-item{text-align:center}.stat-item .stat-value{display:block;font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);color:var(--color-accent-primary)}.stat-item .stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.preview-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.export-checkbox{display:flex;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);cursor:pointer}.export-checkbox input[type=checkbox]{width:20px;height:20px;margin:0;cursor:pointer;accent-color:var(--color-accent-primary);flex-shrink:0}.export-checkbox input[type=checkbox]:disabled{opacity:.6;cursor:not-allowed}.export-checkbox label{display:flex;flex-direction:column;gap:var(--space-xs);cursor:pointer}.checkbox-title{font-weight:var(--font-weight-normal);color:var(--color-text-primary)}.checkbox-description{font-size:var(--font-size-sm);color:var(--color-text-muted)}.export-actions{margin-top:var(--space-xl)}.export-actions .btn-large{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-size:var(--font-size-md)}.export-actions .btn-icon{font-size:var(--font-size-lg)}.export-actions .btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spinner .8s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}.export-progress{margin-top:var(--space-lg);text-align:center}.export-progress .progress-bar{height:4px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-sm)}.progress-bar-indeterminate{width:30%;height:100%;background:var(--color-accent-primary);border-radius:var(--radius-sm);animation:indeterminate 1.5s ease-in-out infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}.export-progress .progress-text{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.export-info{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.export-info h3{font-size:var(--font-size-md);margin:0 0 var(--space-lg) 0}.info-list{list-style:none;padding:0;margin:0 0 var(--space-xl) 0}.info-list li{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-md) 0;border-bottom:1px solid var(--color-border-default)}.info-list li:last-child{border-bottom:none}.info-list li strong{font-size:var(--font-size-sm);color:var(--color-text-primary)}.info-list li span{font-size:var(--font-size-sm);color:var(--color-text-muted)}.info-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md)}.info-note strong{color:var(--color-text-primary)}@media (max-width: 768px){.export-container{grid-template-columns:1fr}.preview-stats{grid-template-columns:repeat(2,1fr)}}.view-toggle{display:flex;background:var(--color-bg-elevated);padding:4px;border-radius:var(--radius-md);border:1px solid var(--color-border-default)}.toggle-btn{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;transition:all var(--transition-fast)}.toggle-btn:hover{color:var(--color-accent-text-hover)}.toggle-btn.active{background:var(--color-bg-surface);color:var(--color-accent-primary);box-shadow:var(--shadow-sm)}.toggle-btn svg{width:16px;height:16px}@media (max-width: 768px){.page-header h1,h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}.circular-progress svg{width:160px;height:160px}.progress-text{font-size:var(--font-size-2xl)}.progress-stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.stat-box{padding:var(--space-sm)}.stat-box .stat-value{font-size:var(--font-size-xl)}.year-cards{grid-template-columns:1fr}.breadcrumb{flex-wrap:wrap;font-size:var(--font-size-xs)}.subject-card{padding:var(--space-md)}.subject-card .subject-meta{flex-wrap:wrap;gap:var(--space-sm)}.topics-list .topic-item,.projects-list .project-item,.exams-list .exam-item{flex-direction:column;align-items:stretch;gap:var(--space-md)}.topics-list .topic-item .btn,.projects-list .project-item .btn,.exams-list .exam-item .btn{width:100%}.topic-number{width:32px;height:32px;font-size:var(--font-size-sm)}.topic-navigation,.exercise-navigation{flex-direction:column;gap:var(--space-md)}.topic-navigation .nav-left,.topic-navigation .nav-right,.exercise-navigation .nav-left,.exercise-navigation .nav-right{width:100%;text-align:center}.topic-navigation .btn,.exercise-navigation .btn{width:100%;max-width:none}.practice-quick-nav{flex-direction:column;align-items:stretch}.practice-quick-actions{justify-content:stretch}.practice-quick-actions .btn{flex:1}.setting-item{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.setting-item>*{width:100%}.achievements-grid,.data-actions{grid-template-columns:1fr}.subject-status-badge{font-size:var(--font-size-xs);padding:var(--space-xs) var(--space-sm)}.attempt-card{flex-direction:column;gap:var(--space-sm);text-align:center}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.self-assessment-grid,.scaffolding-grid{grid-template-columns:1fr}.topic-title-section{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}}@media (max-width: 480px){.circular-progress svg{width:120px;height:120px}.progress-text{font-size:var(--font-size-xl)}.progress-stats,.progress-stats-grid{grid-template-columns:1fr}.progress-card,.progress-overview-card{padding:var(--space-md)}.subject-breakdown-item{padding:var(--space-sm)}.subject-breakdown-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.content-section{padding:var(--space-md)}.topic-meta,.project-meta,.exam-meta{flex-direction:column;gap:var(--space-xs)}}.rubric-table,table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.rubric-table{min-width:500px}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--space-md));padding:0 var(--space-md)}}pre,.code-snippet{overflow-x:auto;-webkit-overflow-scrolling:touch}.main-content{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-word{word-break:break-word;overflow-wrap:break-word}img{max-width:100%;height:auto}@supports (padding: max(0px)){.mobile-header{padding-left:max(var(--space-md),env(safe-area-inset-left));padding-right:max(var(--space-md),env(safe-area-inset-right))}.sidebar{padding-left:max(var(--space-lg),env(safe-area-inset-left));padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom))}@media (max-width: 768px){.main-content{padding-left:max(var(--space-md),env(safe-area-inset-left));padding-right:max(var(--space-md),env(safe-area-inset-right));padding-bottom:max(var(--space-md),env(safe-area-inset-bottom))}}}.timeline-setup{display:flex;flex-direction:column;align-items:center;padding:var(--space-2xl) 0}.setup-welcome{text-align:center;margin-bottom:var(--space-2xl);max-width:500px}.setup-welcome h1{margin-bottom:var(--space-md)}.timeline-planner{width:100%;max-width:500px}.planner-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-xl)}.planner-header{display:flex;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-xl)}.planner-icon{color:var(--color-accent-primary);flex-shrink:0}.planner-icon svg{width:32px;height:32px}.planner-header h2{font-family:var(--font-body);margin:0 0 var(--space-xs);font-size:var(--font-size-lg)}.planner-form{display:flex;flex-direction:column;gap:var(--space-lg)}.planner-form .form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.planner-form label{font-weight:500;color:var(--color-text-primary)}.planner-form input[type=date]{padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-base)}.planner-form input[type=date]:focus{outline:none;border-color:var(--color-accent-primary)}.pace-options{display:flex;flex-direction:column;gap:var(--space-sm)}.pace-option{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-elevated);border:2px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.pace-option:hover{border-color:var(--color-border-strong)}.pace-option:hover .pace-label{color:var(--color-accent-text-hover)}.pace-option.selected{border-color:var(--color-accent-primary);background:#58a6ff1a}.pace-option input[type=radio]{margin-top:3px;accent-color:var(--color-accent-primary)}.pace-content{display:flex;flex-direction:column;gap:var(--space-2xs)}.pace-label{font-weight:500;color:var(--color-text-primary)}.pace-description{font-size:var(--font-size-sm);color:var(--color-text-muted)}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap}.timeline-title h1{display:flex;align-items:center;gap:var(--space-sm);margin:0 0 var(--space-xs)}.timeline-title h1 svg{width:28px;height:28px;color:var(--color-accent-primary)}.timeline-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.timeline-stats .stat-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md);text-align:center}.timeline-stats .stat-value{display:block;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.timeline-stats .stat-value.stat-completed{color:var(--color-success)}.timeline-stats .stat-value.stat-in-progress{color:var(--color-accent-primary)}.timeline-stats .stat-value.stat-scheduled{color:var(--color-text-muted)}.timeline-stats .stat-value.stat-behind{color:var(--color-error)}.timeline-stats .stat-card-warning{border-color:var(--color-error);background:#f851491a}.timeline-stats .stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.timeline-legend{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-bottom:var(--space-lg);padding:var(--space-md);background:var(--color-bg-surface);border-radius:var(--radius-md)}.legend-item{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.legend-color{width:16px;height:16px;border-radius:var(--radius-sm)}.legend-completed{background:var(--color-success)}.legend-in-progress{background:var(--color-accent-primary)}.legend-scheduled{background:var(--color-text-muted);background:repeating-linear-gradient(45deg,var(--color-text-muted),var(--color-text-muted) 2px,transparent 2px,transparent 4px)}.legend-blocked{background:var(--color-border-default);opacity:.5}.legend-overdue{background:var(--color-error);box-shadow:0 0 0 2px var(--color-error)}.timeline-gantt-wrapper{overflow-x:auto;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-surface)}.timeline-gantt-container{position:relative;min-height:400px}.timeline-tooltip{position:absolute;z-index:1000;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-lg);pointer-events:none;max-width:280px}.tooltip-title{font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-xs)}.tooltip-dates{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.tooltip-status{font-size:var(--font-size-sm);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);display:inline-block}.tooltip-status.status-completed{background:#56d36433;color:var(--color-success)}.tooltip-status.status-in-progress{background:#58a6ff33;color:var(--color-accent-primary)}.tooltip-status.status-scheduled{background:#6e768133;color:var(--color-text-muted)}.tooltip-status.status-blocked{background:#f8514933;color:var(--color-error)}.tooltip-progress{font-size:var(--font-size-sm);color:var(--color-success);margin-top:var(--space-sm)}.tooltip-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-sm);font-style:italic}.tooltip-override{font-size:var(--font-size-xs);color:var(--color-warning);margin-top:var(--space-xs)}.tooltip-overdue{font-size:var(--font-size-sm);color:var(--color-error);font-weight:600;margin-top:var(--space-sm)}.timeline-page .modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.timeline-page .modal-backdrop{position:absolute;inset:0;background:#000000b3}.timeline-page .modal-content{position:relative;background:var(--color-bg-deep);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.timeline-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);border-bottom:1px solid var(--color-border-default)}.timeline-page .modal-header h2{font-family:var(--font-body);margin:0;font-size:var(--font-size-lg)}.timeline-page .modal-close{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.timeline-page .modal-close:hover{color:var(--color-accent-text-hover)}.timeline-page #modal-planner{padding:var(--space-lg)}.timeline-page #modal-planner .planner-card{background:transparent;border:none;padding:0}.timeline-page #modal-planner .planner-header{display:none}@media (max-width: 768px){.timeline-header{flex-direction:column;align-items:stretch}.timeline-stats{grid-template-columns:repeat(2,1fr)}.timeline-legend{gap:var(--space-md)}}.course-builder-header{margin-bottom:var(--space-2xl)}.course-builder-header h1{font-size:var(--font-size-3xl);margin-bottom:var(--space-sm)}.course-builder-header .subtitle{color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.selection-summary{display:flex;gap:var(--space-xl)}.summary-stat{color:var(--color-text-secondary)}.summary-stat strong{color:var(--color-accent-primary)}.templates-section{margin-bottom:var(--space-3xl)}.templates-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-sm)}.section-description{color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-lg)}.template-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-lg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.template-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg)}.template-card:hover .template-name{color:var(--color-accent-text-hover)}.template-icon{font-size:2rem;margin-bottom:var(--space-md)}.template-name{font-size:var(--font-size-lg);margin-bottom:var(--space-sm)}.template-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-md);line-height:1.5}.template-meta{display:flex;gap:var(--space-lg);color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-md)}.apply-template-btn{width:100%}.catalog-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-sm)}.catalog-controls{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-lg);align-items:center}.search-box{flex:1;min-width:200px}.search-box input{width:100%;padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-base)}.search-box input:focus{outline:none;border-color:var(--color-accent-primary)}.filter-controls{display:flex;gap:var(--space-sm)}.filter-controls select{padding:var(--space-sm) var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm)}.bulk-actions{display:flex;gap:var(--space-sm)}.subject-list{display:flex;flex-direction:column;gap:var(--space-sm)}.subject-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.subject-item:hover{border-color:var(--color-border-hover)}.subject-item:hover .subject-title,.subject-item:hover .subject-code{color:var(--color-accent-text-hover)}.subject-item.selected{border-color:var(--color-accent-primary);background:color-mix(in srgb,var(--color-accent-primary) 10%,var(--color-bg-elevated))}.subject-item.has-warning{border-color:var(--color-warning)}.subject-checkbox{padding-top:var(--space-xs)}.subject-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent-primary)}.subject-info{flex:1}.subject-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs)}.subject-code{font-weight:600;font-family:var(--font-mono)}.category-badge{font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm);font-weight:500}.category-badge.category-cs{background:color-mix(in srgb,var(--color-accent-primary) 20%,transparent);color:var(--color-accent-primary)}.category-badge.category-math{background:color-mix(in srgb,var(--color-success) 20%,transparent);color:var(--color-success)}.year-badge{font-size:var(--font-size-xs);color:var(--color-text-muted)}.subject-title{font-size:var(--font-size-base);margin-bottom:var(--space-xs)}.subject-meta{display:flex;gap:var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-sm)}.prereq-count{color:var(--color-warning)}.prereq-warning{margin-top:var(--space-sm);padding:var(--space-sm);background:color-mix(in srgb,var(--color-warning) 15%,transparent);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-warning)}.course-builder-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg);margin-top:var(--space-xl);background:var(--color-bg-surface);border-top:1px solid var(--color-border-default)}.footer-summary{color:var(--color-text-secondary)}.footer-summary strong{color:var(--color-text-primary)}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--color-text-muted)}@media (max-width: 768px){.catalog-controls{flex-direction:column;align-items:stretch}.filter-controls{flex-direction:column}.bulk-actions{flex-wrap:wrap}.templates-grid{grid-template-columns:1fr}.course-builder-footer{flex-direction:column;gap:var(--space-md);text-align:center}}.brick-blink{animation:brick-blink 5s step-end infinite;transform-origin:center}@keyframes brick-blink{0%,92%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}.brick-kinetic{animation:brick-fall 4s ease-in infinite;transform-origin:32px 48px}.brick-kinetic .brick-face{animation:brick-face-wobble 4s linear infinite;transform-origin:32px 38px}@keyframes brick-fall{0%{transform:translateY(-120px);opacity:0}15%{opacity:1}20%{transform:translateY(0) scaleY(1)}25%{transform:scaleY(.6) scaleX(1.3)}30%{transform:scaleY(1.1) scaleX(.9)}35%{transform:scaleY(1) scaleX(1)}80%{transform:scaleY(1) scaleX(1);opacity:1}90%{opacity:0}to{opacity:0;transform:translateY(0)}}@keyframes brick-face-wobble{0%,35%{transform:translate(0)}40%{transform:translate(-2px)}45%{transform:translate(2px)}50%{transform:translate(0)}to{transform:translate(0)}}.brick-kinetic-once{animation:brick-fall-once 2.5s ease-out 1 forwards;transform-origin:32px 48px}.brick-kinetic-once .brick-face{animation:brick-face-wobble 2.5s linear 1 forwards;transform-origin:32px 38px}@keyframes brick-fall-once{0%{transform:translateY(-150px);opacity:0}10%{opacity:1}20%{transform:translateY(0) scaleY(1)}25%{transform:scaleY(.6) scaleX(1.3)}30%{transform:scaleY(1.1) scaleX(.9)}35%{transform:scaleY(1) scaleX(1)}to{transform:translateY(0) scaleY(1) scaleX(1);opacity:1}}.brick-zen,.brick-delighted,.brick-float{animation:brick-float 3s ease-in-out infinite;transform-origin:32px 38px}@keyframes brick-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(1deg)}}.brick-pondering,.brick-wobble{animation:brick-wobble 2.5s ease-in-out infinite;transform-origin:32px 38px}@keyframes brick-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.brick-eyes-scan,.eyes-scan{animation:brick-eyes-scan 3s ease-in-out infinite}@keyframes brick-eyes-scan{0%,to{transform:translate(0)}50%{transform:translate(2px)}}.brick-rotate-eyes{animation:brick-rotate-eyes 4s linear infinite;transform-origin:32px 37px}@keyframes brick-rotate-eyes{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.brick-glint{fill:var(--brick-glint);stroke:none;opacity:0;animation:brick-glint 4s ease-in-out infinite}@keyframes brick-glint{0%,to{opacity:0}50%{opacity:.6}}.brick-snooze{animation:brick-snooze 3s ease-in-out infinite;transform-origin:center}.brick-snooze-delay{animation-delay:1.2s}@keyframes brick-snooze{0%{transform:translate(0) scale(.8);opacity:0}20%{opacity:1}to{transform:translate(6px,-10px) scale(1.2);opacity:0}}.brick-shake{animation:brick-shake .5s cubic-bezier(.36,.07,.19,.97) infinite both;transform-origin:center}@keyframes brick-shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-2px,0,0)}40%,60%{transform:translate3d(2px,0,0)}}.brick-pulse{animation:brick-pulse 2s ease-in-out infinite;transform-origin:center}@keyframes brick-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes logo-bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.mascot-breathing{animation:mascot-breathe 3s ease-in-out infinite;transform-origin:32px 48px}.mascot-sleeping .mascot-body-group.mascot-breathing{animation:mascot-sleep-breathe 4.5s ease-in-out infinite}@keyframes mascot-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes mascot-sleep-breathe{0%,to{transform:scale(.98) translateY(0)}50%{transform:scale(1.01) translateY(1px)}}.mascot-entrance{animation:mascot-entrance .6s cubic-bezier(.34,1.56,.64,1) forwards;transform-origin:32px 48px}@keyframes mascot-entrance{0%{transform:translateY(-30px) scale(.8);opacity:0}50%{transform:translateY(4px) scale(1.05);opacity:1}70%{transform:translateY(-2px) scale(.98)}to{transform:translateY(0) scale(1)}}.mascot-blush{fill:#ffb8b8;opacity:0;transition:opacity .3s ease}.mascot-blush-active{opacity:.6}.mascot-reflection{fill:#fff;opacity:0;transition:opacity .3s ease,transform .1s ease;pointer-events:none}.mascot-reflection-active{opacity:.4}.mascot-lean{transition:transform .3s cubic-bezier(.34,1.56,.64,1);transform-origin:32px 48px}.mascot-squint .brick-blink{transform:scaleY(.6)!important}.mascot-spin{animation:mascot-spin .45s cubic-bezier(.34,1.1,.64,1);transform-origin:32px 48px}.mascot-jump{animation:mascot-jump .6s cubic-bezier(.34,1.4,.64,1)}@keyframes mascot-spin{0%{transform:translateY(0) rotate(0)}35%{transform:translateY(-6px) rotate(-8deg)}70%{transform:translateY(-2px) rotate(4deg)}to{transform:translateY(0) rotate(0)}}@keyframes mascot-jump{0%{transform:translateY(0)}40%{transform:translateY(-12px)}70%{transform:translateY(0)}85%{transform:translateY(-4px)}to{transform:translateY(0)}}.mascot-konami .mascot-sunglasses-drop{animation:sunglasses-drop .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes sunglasses-drop{0%{transform:translateY(-20px);opacity:0}60%{transform:translateY(2px)}to{transform:translateY(0);opacity:1}}.mascot-sparkle{opacity:0;transform-origin:center}.mascot-sparkle-active{animation:sparkle-burst 1s ease-out forwards}@keyframes sparkle-burst{0%{opacity:0;transform:scale(0)}20%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(.5) translateY(-10px)}}.sparkle-1{animation-delay:0s}.sparkle-2{animation-delay:.1s}.sparkle-3{animation-delay:.2s}.sparkle-4{animation-delay:.15s}.mascot-sweat-animated{animation:sweat-drip 2s ease-in infinite;transform-origin:top center}.mascot-sweat-animated:nth-child(2){animation-delay:1s}@keyframes sweat-drip{0%{transform:translateY(0) scale(1);opacity:0}10%{opacity:.8}80%{opacity:.8}to{transform:translateY(15px) scale(.6);opacity:0}}.snore-bubble{fill:#fff9;stroke:var(--brick-stroke, #2d3436);stroke-width:1;opacity:0}.snore-bubble-1{animation:snore-bubble 2.5s ease-in-out infinite}.snore-bubble-2{animation:snore-bubble 2.5s ease-in-out infinite .4s}.snore-bubble-3{animation:snore-bubble 2.5s ease-in-out infinite .8s}@keyframes snore-bubble{0%{opacity:0;transform:translateY(0) scale(.5)}20%{opacity:.8}80%{opacity:.6}to{opacity:0;transform:translateY(-15px) scale(1.2)}}.mascot-dream-bubble{animation:dream-float 3s ease-in-out infinite}.dream-trail{fill:#ffffff80;stroke:var(--brick-stroke, #2d3436);stroke-width:.8}.dream-trail-1{animation:dream-trail-pulse 2s ease-in-out infinite}.dream-trail-2{animation:dream-trail-pulse 2s ease-in-out infinite .3s}.dream-cloud{fill:#ffffffe6;stroke:var(--brick-stroke, #2d3436);stroke-width:1;animation:dream-cloud-pulse 4s ease-in-out infinite}.dream-icon{animation:dream-icon-fade 3s ease-in-out infinite;fill:#2d3436;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}@keyframes dream-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes dream-trail-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@keyframes dream-cloud-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes dream-icon-fade{0%,to{opacity:1}50%{opacity:.7}}.mascot-gone{animation:mascot-float-away 2s ease-in-out forwards}.mascot-gone .mascot-body-group{animation:mascot-drift 4s ease-in-out infinite}@keyframes mascot-float-away{0%{transform:translateY(0) translate(0);opacity:1}70%{transform:translateY(-20px) translate(30px);opacity:.6}to{transform:translateY(-30px) translate(50px);opacity:.3}}@keyframes mascot-drift{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-2px) rotate(2deg)}75%{transform:translateY(2px) rotate(-2deg)}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/study-program/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/study-program/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/study-program/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/study-program/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/study-program/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/study-program/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/study-program/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/study-program/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/study-program/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/study-program/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/study-program/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/study-program/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/study-program/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/study-program/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/study-program/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/study-program/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/study-program/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/study-program/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/study-program/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/study-program/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/study-program/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/study-program/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/study-program/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/study-program/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/study-program/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/study-program/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/study-program/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/study-program/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/study-program/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/study-program/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/study-program/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/study-program/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/study-program/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/study-program/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/study-program/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/study-program/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/study-program/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/study-program/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/study-program/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/study-program/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/study-program/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/study-program/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/study-program/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/study-program/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/study-program/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/study-program/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/study-program/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/study-program/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/study-program/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/study-program/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background)}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default;height:100%}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{opacity:.6}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-top-left-radius:5px;border-top-right-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 6px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;height:100%;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-highlighted-label .highlight{font-weight:700}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{font-weight:600;font-size:12px}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-diff-editor .diff-review{position:absolute;user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review-summary{padding-left:10px}.monaco-diff-editor .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-diff-editor .diff-review-row{white-space:pre}.monaco-diff-editor .diff-review-table{display:table;min-width:100%}.monaco-diff-editor .diff-review-row{display:table-row;width:100%}.monaco-diff-editor .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-diff-editor .diff-review-spacer>.codicon{font-size:9px!important}.monaco-diff-editor .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-diff-editor .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-diff-editor .revertButton{cursor:pointer}.monaco-component .multiDiffEntry{display:flex;flex-direction:column}.monaco-component .multiDiffEntry .editorParent{border-left:2px var(--vscode-tab-inactiveBackground) solid}.monaco-component .multiDiffEntry.focused .editorParent{border-left:2px var(--vscode-notebook-focusedCellBorder) solid}.monaco-component .multiDiffEntry .editorParent .editorContainer{border-left:17px var(--vscode-tab-inactiveBackground) solid}.monaco-component .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component .multiDiffEntry .collapse-button a{display:block}.monaco-component .multiDiffEntry .header{display:flex;align-items:center;padding:8px 5px;color:var(--vscode-foreground);background:var(--vscode-editor-background);z-index:1000;border-bottom:1px var(--vscode-sideBarSectionHeader-border) solid;border-top:1px var(--vscode-sideBarSectionHeader-border) solid;border-left:2px var(--vscode-editor-background) solid}.monaco-component .multiDiffEntry.focused .header{border-left:2px var(--vscode-notebook-focusedCellBorder) solid}.monaco-component .multiDiffEntry .header.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component .multiDiffEntry .header .title{flex:1;font-size:14px;line-height:22px}.monaco-component .multiDiffEntry .header .actions{padding:0 8px}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}@font-face{font-family:codicon;font-display:block;src:url(/study-program/assets/codicon-Hscy-R9e.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;background-color:var(--vscode-editor-background);z-index:1}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:2px;background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-quickInputList-focusBackground)!important;color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:6px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:""}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important}.monaco-editor .find-widget .monaco-sash{left:0!important}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:gray;margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input{padding:3px;border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor.hc-black .sticky-widget,.monaco-editor.hc-light .sticky-widget{border-bottom:1px solid var(--vscode-contrastBorder)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 3px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background)}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}
