:root{--color-olive-base: #8f9b6b;--color-olive-dark: #6f7b52;--color-olive-light: #b7a66a;--color-olive-pale: #c9c1a8;--color-olive-muted: #8a8d7a;--color-olive-deep: #5a6447;--color-beige-lightest: #faf8f3;--color-beige-warm: #f6f4ee;--color-beige-light: #e8e2d0;--color-beige-medium: #e2dcc9;--color-beige-dark: #d4ccb4;--color-beige-darker: #c4bca4;--color-beige-deepest: #b0a890;--color-brown-dark: #2f2f2a;--color-brown-medium: #6f735f;--color-brown-light: #888;--primary-blue: var(--color-olive-base);--primary-blue-dark: var(--color-olive-dark);--primary-blue-light: var(--color-olive-light);--bg-dark: var(--color-beige-warm);--bg-card: var(--color-beige-medium);--bg-card-hover: var(--color-beige-dark);--bg-gradient-card: linear-gradient(145deg, var(--color-beige-medium) 0%, var(--color-beige-warm) 100%);--bg-gradient-card-hover: linear-gradient(145deg, var(--color-beige-dark) 0%, var(--color-beige-medium) 100%);--border-color: rgba(111, 123, 82, .25);--border-color-hover: rgba(111, 123, 82, .45);--border-color-light: rgba(143, 155, 107, .2);--border-color-focus: rgba(143, 155, 107, .5);--text-primary: var(--color-brown-dark);--text-secondary: var(--color-brown-medium);--text-muted: var(--color-olive-muted);--text-white: #ffffff;--text-bright: var(--color-brown-dark);--shadow-base-color: rgba(90, 90, 60, .15);--shadow-medium-color: rgba(90, 90, 60, .25);--shadow-large-color: rgba(90, 90, 60, .35);--shadow-glow-color: rgba(143, 155, 107, .35);--shadow-sm: 0 2px 8px var(--shadow-base-color);--shadow-md: 0 8px 24px var(--shadow-medium-color);--shadow-lg: 0 16px 48px var(--shadow-large-color);--shadow-glow: 0 0 20px var(--shadow-glow-color);--shadow-inner-light: inset 0 1px 0 rgba(255, 255, 255, .15);--shadow-inner-dark: inset 0 2px 4px rgba(90, 90, 60, .2);--overlay-light: rgba(255, 255, 255, .05);--overlay-medium: rgba(255, 255, 255, .1);--overlay-accent: rgba(143, 155, 107, .12);--overlay-accent-hover: rgba(143, 155, 107, .18);--overlay-accent-active: rgba(143, 155, 107, .25);--gradient-accent: linear-gradient(90deg, rgba(143, 155, 107, .12), rgba(143, 155, 107, .06));--gradient-accent-strong: linear-gradient(90deg, rgba(143, 155, 107, .2) 0%, rgba(143, 155, 107, .12) 100%);--gradient-vertical-accent: linear-gradient(180deg, var(--color-olive-base), var(--color-olive-dark));--gradient-bar: linear-gradient(90deg, var(--color-olive-base) 0%, var(--color-olive-dark) 30%, transparent 100%);--gradient-scrollbar: linear-gradient(180deg, var(--color-olive-base), var(--color-olive-dark));--gradient-checkbox-bg: linear-gradient(145deg, var(--color-beige-warm), var(--color-beige-light));--gradient-checkbox-checked: linear-gradient(135deg, var(--color-olive-base), var(--color-olive-dark));--checkbox-border: var(--color-olive-pale);--checkbox-border-hover: var(--color-olive-light);--transition-fast: .3s ease;--transition-smooth: .4s cubic-bezier(.16, 1, .3, 1);--transition-elastic: .5s cubic-bezier(.68, -.55, .265, 1.55);--gap-sidebar: 36px;--gap-section: 20px;--gap-checkbox: 14px;--gap-icon: 12px;--padding-sidebar: 32px;--padding-checkbox: 14px 16px;--padding-button: 12px 14px;--padding-count: 4px 10px;--checkbox-size: 20px;--checkbox-size-small: 18px;--border-width-accent: 3px;--scrollbar-width: 6px;--scrollbar-width-small: 5px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;--font-xs: 11px;--font-sm: 13px;--font-base: 14px;--font-md: 15px;--font-lg: 16px;--font-icon: 20px;--font-check: 14px;--font-check-small: 12px;--z-overlay: 0;--z-content: 1;--anim-slide: .7s;--anim-check: .5s;--anim-pulse: 2s}.dark{--color-olive-base: #a8b58a;--color-olive-dark: #7c875c;--color-olive-light: #c1cf9a;--color-olive-pale: #d4d8b2;--color-olive-muted: #a3a88f;--color-olive-deep: #6b7554;--color-beige-lightest: #1c1f17;--color-beige-warm: #12140f;--color-beige-light: #1a2013;--color-beige-medium: #1c2215;--color-beige-dark: #222816;--color-beige-darker: #1e2415;--color-beige-deepest: #1b2012;--color-brown-dark: #e7e9dd;--color-brown-medium: #a3a88f;--color-brown-light: #bfc3a8;--primary-blue: #a8b58a;--primary-blue-dark: #7c875c;--primary-blue-light: #c1cf9a;--bg-dark: #12140f;--bg-card: #1c2215;--bg-card-hover: #222816;--bg-gradient-card: linear-gradient(145deg, #1c2215 0%, #12140f 100%);--bg-gradient-card-hover: linear-gradient(145deg, #222816 0%, #1c2215 100%);--border-color: rgba(168, 181, 138, .25);--border-color-hover: rgba(168, 181, 138, .45);--border-color-light: rgba(168, 181, 138, .2);--border-color-focus: rgba(168, 181, 138, .5);--text-primary: #e7e9dd;--text-secondary: #a3a88f;--text-muted: #a3a88f;--text-white: #ffffff;--text-bright: #e7e9dd;--shadow-base-color: rgba(0, 0, 0, .6);--shadow-medium-color: rgba(0, 0, 0, .7);--shadow-large-color: rgba(0, 0, 0, .75);--shadow-glow-color: rgba(168, 181, 138, .45);--shadow-sm: 0 2px 8px rgba(0,0,0,.6);--shadow-md: 0 8px 24px rgba(0,0,0,.7);--shadow-lg: 0 16px 48px rgba(0,0,0,.75);--shadow-glow: 0 0 20px rgba(168, 181, 138, .45);--shadow-inner-light: inset 0 1px 0 rgba(255, 255, 255, .05);--shadow-inner-dark: inset 0 2px 4px rgba(0,0,0,.5);--overlay-light: rgba(255, 255, 255, .02);--overlay-medium: rgba(255, 255, 255, .05);--overlay-accent: rgba(168, 181, 138, .08);--overlay-accent-hover: rgba(168, 181, 138, .12);--overlay-accent-active: rgba(168, 181, 138, .18);--gradient-accent: linear-gradient(90deg, rgba(168, 181, 138, .12), rgba(168, 181, 138, .06));--gradient-accent-strong: linear-gradient(90deg, rgba(168, 181, 138, .2) 0%, rgba(168, 181, 138, .12) 100%);--gradient-vertical-accent: linear-gradient(180deg, #a8b58a, #7c875c);--gradient-bar: linear-gradient(90deg, #a8b58a 0%, #7c875c 30%, transparent 100%);--gradient-scrollbar: linear-gradient(180deg, #a8b58a, #7c875c);--gradient-checkbox-bg: linear-gradient(145deg, #12140f, #1a2013);--gradient-checkbox-checked: linear-gradient(135deg, #a8b58a, #7c875c);--checkbox-border: #d4d8b2;--checkbox-border-hover: #c1cf9a}.supports-layout{display:flex;gap:20px;width:100%}.supports-layout>:first-child{flex:0 0 20%;min-width:200px}.supports-layout>:last-child{flex:1;min-width:0}.sidebar{background:var(--bg-gradient-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--padding-sidebar);color:var(--text-primary);box-shadow:var(--shadow-md),var(--shadow-inner-light);display:flex;flex-direction:column;gap:var(--gap-sidebar);position:sticky;top:104px;max-height:calc(100vh - 250px);overflow:auto;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideInLeft var(--anim-slide) var(--transition-smooth)}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.section{display:flex;flex-direction:column}.section h3{flex-shrink:0;font-size:var(--font-lg);font-weight:700;margin-bottom:var(--gap-section);color:var(--text-bright);letter-spacing:-.3px;text-transform:uppercase;position:relative;padding-bottom:16px;display:flex;align-items:center;gap:var(--gap-icon)}.section h3:before{content:"▸";color:var(--primary-blue);font-size:var(--font-icon);text-shadow:var(--shadow-glow);animation:pulseIcon var(--anim-pulse) ease-in-out infinite}@keyframes pulseIcon{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.section h3:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gradient-bar);border-radius:var(--radius-pill);box-shadow:var(--shadow-glow)}.filters-scroll{max-height:312px;overflow-y:auto;padding-right:var(--scrollbar-width);scrollbar-width:thin;scrollbar-color:var(--primary-blue) var(--overlay-light)}.filters-scroll::-webkit-scrollbar{width:var(--scrollbar-width)}.filters-scroll::-webkit-scrollbar-track{background:var(--overlay-light);border-radius:var(--radius-pill)}.filters-scroll::-webkit-scrollbar-thumb{background:var(--gradient-scrollbar);border-radius:var(--radius-pill)}.checkbox{display:flex;align-items:center;gap:var(--gap-checkbox);padding:var(--padding-checkbox);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-smooth);position:relative;overflow:hidden;border:1px solid transparent;background:var(--overlay-light);margin-bottom:8px}.checkbox:before{content:"";position:absolute;left:0;top:0;width:0;height:100%;background:var(--gradient-accent);transition:width var(--transition-elastic);border-radius:var(--radius-md);z-index:var(--z-overlay)}.checkbox:hover:before{width:100%}.checkbox:after{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:var(--border-width-accent);height:0;background:var(--gradient-vertical-accent);border-radius:0 var(--radius-pill) var(--radius-pill) 0;transition:height var(--transition-fast);box-shadow:0 0 12px var(--primary-blue)}.checkbox:hover{background:var(--overlay-accent-hover);transform:translate(8px);border-color:var(--border-color-light);box-shadow:var(--shadow-sm),-6px 0 0 var(--border-color-light)}.checkbox:hover:after{height:70%}.checkbox:active{transform:translate(6px) scale(.98)}.checkbox input:checked~*{position:relative;z-index:var(--z-content)}.checkbox:has(input:checked){background:var(--gradient-accent-strong);border-color:var(--border-color-focus);box-shadow:var(--shadow-inner-light),0 4px 12px var(--shadow-glow-color)}.checkbox input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--checkbox-size);height:var(--checkbox-size);min-width:var(--checkbox-size);border-radius:var(--radius-sm);border:2px solid var(--checkbox-border);background:var(--gradient-checkbox-bg);position:relative;cursor:pointer;transition:all var(--transition-smooth);z-index:var(--z-content);box-shadow:var(--shadow-inner-dark)}.checkbox input:hover{border-color:var(--checkbox-border-hover);box-shadow:var(--shadow-inner-dark),0 0 16px var(--shadow-glow-color);transform:scale(1.05)}.checkbox input:checked{background:var(--gradient-checkbox-checked);border-color:var(--primary-blue);box-shadow:0 0 20px var(--shadow-glow-color),inset 0 1px #ffffff4d,var(--shadow-inner-dark);transform:scale(1.1) rotate(360deg)}.checkbox input:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);font-size:var(--font-check);font-weight:900;color:var(--text-white);text-shadow:0 1px 3px var(--shadow-large-color);animation:checkPop var(--anim-check) var(--transition-elastic)}@keyframes checkPop{0%{transform:translate(-50%,-52%) scale(0) rotate(-180deg);opacity:0}50%{transform:translate(-50%,-52%) scale(1.3) rotate(0)}to{transform:translate(-50%,-52%) scale(1) rotate(0);opacity:1}}.checkbox span{font-size:var(--font-base);color:var(--text-secondary);transition:all var(--transition-fast);z-index:var(--z-content);-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:500;position:relative}.checkbox:hover span{color:var(--text-primary)}.checkbox input:checked+span{color:var(--text-bright);font-weight:600}.checkbox .count{margin-left:auto;font-size:var(--font-xs);color:var(--text-muted);background:var(--overlay-light);padding:var(--padding-count);border-radius:var(--radius-pill);transition:all var(--transition-fast);z-index:var(--z-content);font-weight:600;border:1px solid var(--overlay-medium)}.checkbox:hover .count{background:var(--overlay-accent);color:var(--primary-blue);border-color:var(--border-color-focus);transform:scale(1.1)}.checkbox input:checked~.count{background:var(--overlay-accent-active);color:var(--primary-blue);font-weight:700;border-color:var(--primary-blue);box-shadow:0 0 12px var(--shadow-glow-color)}.add-course-btn{display:block;padding:var(--padding-button);font-size:var(--font-sm);font-weight:600;text-align:center;color:var(--text-secondary);background:var(--overlay-light);border:1px dashed var(--border-color-light);border-radius:var(--radius-md);text-decoration:none;transition:all .35s var(--transition-smooth);box-shadow:var(--shadow-inner-light)}.add-course-btn:hover{color:var(--text-bright);background:var(--overlay-accent);border-color:var(--primary-blue);box-shadow:0 4px 12px var(--shadow-glow-color),var(--shadow-inner-light)}.add-course-btn:active{transform:translateY(0) scale(.98)}.section-tools .search{padding:var(--padding-button);background:var(--overlay-medium);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-base);transition:all var(--transition-fast);margin-top:2em}.section-tools .search:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px var(--overlay-accent)}.section-tools .search::-moz-placeholder{color:var(--text-muted)}.section-tools .search::placeholder{color:var(--text-muted)}@media(max-width:1400px){.supports-layout{flex-direction:column;gap:16px}.supports-layout>:first-child,.supports-layout>:last-child{flex:1 1 100%;width:100%}.sidebar{position:static;max-height:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-section);padding:20px;border-radius:16px;margin-bottom:16px;overflow:visible;margin-top:auto}.add-course-btn{grid-column:1 / -1}.section{display:flex;flex-direction:column;min-width:0}.filters-scroll,.section form{max-height:220px;overflow-y:auto;overflow-x:hidden;padding-right:var(--scrollbar-width);scrollbar-width:thin;scrollbar-color:var(--primary-blue) var(--overlay-light)}.filters-scroll::-webkit-scrollbar,.section form::-webkit-scrollbar{width:var(--scrollbar-width-small)}.filters-scroll::-webkit-scrollbar-track,.section form::-webkit-scrollbar-track{background:var(--overlay-medium);border-radius:var(--radius-pill)}.filters-scroll::-webkit-scrollbar-thumb,.section form::-webkit-scrollbar-thumb{background:var(--primary-blue);border-radius:var(--radius-pill)}.section h3{font-size:var(--font-base);margin-bottom:12px;padding-bottom:10px}.checkbox{padding:10px 12px;margin-bottom:6px}.checkbox span{font-size:var(--font-sm)}.checkbox .count{font-size:10px;padding:3px 8px}}@media(max-width:1400px)and (min-width:701px){.sidebar{display:flex;flex-direction:column;padding:24px;gap:16px}.filters-categories{display:flex;gap:24px}.filters-categories .section{flex:1;min-width:0}.section-tools,.add-course-btn{margin-top:16px}}@media(max-width:700px){.sidebar{display:flex;flex-direction:column;padding:16px;gap:12px}.filters-categories{display:flex;flex-direction:column;gap:12px}.filters-categories .section{width:100%;flex:1 1 auto}.section-tools,.add-course-btn{width:100%;margin-top:12px}.supports-layout{flex-direction:column;gap:12px}.supports-layout>:first-child,.supports-layout>:last-child{width:100%}.filters-scroll,.section form{max-height:180px;overflow-y:auto;overflow-x:hidden;padding-right:var(--scrollbar-width)}.section h3{font-size:var(--font-sm);margin-bottom:8px;padding-bottom:6px}.checkbox{padding:8px 10px;margin-bottom:4px}.checkbox span{font-size:.85rem}.checkbox .count{font-size:9px;padding:2px 6px}}
