@import"https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--bg-body-1: #F1F5F9;--bg-body-2: #E2E8F0;--bg-sidebar-1: rgba(255, 255, 255, .95);--bg-sidebar-2: rgba(241, 245, 249, .95);--color-text: #0F172A;--color-text-muted: #475569;--color-heading: #0F172A;--bg-card: #FFFFFF;--border-card: rgba(226, 232, 240, .8);--bg-code: #F8FAFC;--border-code: #E2E8F0;--bg-input: #FFFFFF;--color-input: #0F172A;--border-input: #CBD5E1;--bg-stat-box: rgba(255, 255, 255, .55);--border-stat-box: rgba(226, 232, 240, .8);--bg-check-normal: #F8FAFC;--border-check-normal: #E2E8F0;--color-text-link: #2563EB;--color-text-link-hover: #1D4ED8;--bg-auth-overlay: rgba(241, 245, 249, .45);--bg-auth-card: rgba(255, 255, 255, .85);--border-auth-card: rgba(15, 23, 42, .08);--color-auth-text: #0F172A;--color-auth-text-muted: #475569;--bg-auth-input: #FFFFFF;--border-auth-input: #CBD5E1;--color-auth-label: #475569;--border-auth-btn-secondary: rgba(15, 23, 42, .15);--color-auth-btn-secondary: #0F172A;--bg-auth-btn-secondary-hover: rgba(15, 23, 42, .05);--bg-archive-item: #FFFFFF;--bg-archive-item-hover: rgba(37, 99, 235, .08);--bg-archive-item-active: rgba(37, 99, 235, .15);--bg-sidebar-card: #FFFFFF}[data-theme=dark]{--bg-body-1: #0F172A;--bg-body-2: #1E293B;--bg-sidebar-1: rgba(15, 23, 42, .85);--bg-sidebar-2: rgba(30, 41, 59, .85);--color-text: #E2E8F0;--color-text-muted: #94A3B8;--color-heading: #F8FAFC;--bg-card: #1E293B;--border-card: rgba(148, 163, 184, .1);--bg-code: #1E293B;--border-code: #334155;--bg-input: #0F172A;--color-input: #F8FAFC;--border-input: #334155;--bg-stat-box: rgba(15, 23, 42, .55);--border-stat-box: rgba(51, 65, 85, .8);--bg-check-normal: rgba(30, 41, 59, .5);--border-check-normal: #334155;--color-text-link: #60A5FA;--color-text-link-hover: #93C5FD;--bg-auth-overlay: rgba(15, 23, 42, .6);--bg-auth-card: rgba(30, 41, 59, .7);--border-auth-card: rgba(255, 255, 255, .1);--color-auth-text: #F8FAFC;--color-auth-text-muted: #94A3B8;--bg-auth-input: rgba(15, 23, 42, .6);--border-auth-input: rgba(148, 163, 184, .2);--color-auth-label: #CBD5E1;--border-auth-btn-secondary: rgba(255, 255, 255, .15);--color-auth-btn-secondary: #E2E8F0;--bg-auth-btn-secondary-hover: rgba(255, 255, 255, .05);--bg-archive-item: rgba(30, 41, 59, .4);--bg-archive-item-hover: rgba(37, 99, 235, .15);--bg-archive-item-active: rgba(37, 99, 235, .25);--bg-sidebar-card: rgba(30, 41, 59, .4)}*,*:before,*:after{box-sizing:border-box}html,body{min-height:100vh;max-width:100%;overflow-x:clip}body{font-family:Golos Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text);background-color:var(--bg-body-1);background:linear-gradient(135deg,var(--bg-body-1) 0%,var(--bg-body-2) 100%) no-repeat fixed;background-size:cover;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;margin:0;padding:0;display:flex;min-height:100vh;scroll-behavior:smooth;overflow-x:clip;transition:color .3s ease,background-color .3s ease}img{max-width:100%;height:auto}.task-desc img{content-visibility:auto}details>summary{flex-wrap:wrap;row-gap:8px}details>summary h3,details>summary h2,details>summary h4{min-width:0;flex:1 1 auto;overflow-wrap:anywhere}details>summary>span{flex:0 1 auto;min-width:0}@media(max-width:900px){details>summary h3{font-size:20px!important}}.task-desc,.task-card .task-text,.task-card p,.task-card pre{overflow-wrap:anywhere;word-break:break-word}.task-desc pre,.task-card pre{white-space:pre-wrap}.ui-icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;vertical-align:-.14em;stroke:currentColor;stroke-width:0}.ui-icon+.ui-label{margin-left:.45em}.sidebar-toggle{position:fixed;top:20px;right:20px;width:45px;height:45px;background-color:var(--color-text-link);color:#fff;border:none;border-radius:50%;cursor:pointer;z-index:101;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #00000026;transition:all .2s ease,background-color .3s ease}.sidebar-toggle:hover{background-color:var(--color-text-link-hover);transform:scale(1.05)}.sidebar-toggle:active{transform:scale(.95)}.toggle-icon{font-size:20px;font-weight:700;line-height:1}body:not(.sidebar-collapsed) .sidebar-toggle{left:322px;right:auto;width:36px;height:36px;top:24px}body:not(.sidebar-collapsed) .sidebar-toggle .toggle-icon{font-size:17px}@media(max-width:850px){body:not(.sidebar-collapsed) .sidebar-toggle{left:calc(min(320px,86vw) - 20px);width:40px;height:40px}}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99;opacity:0;transition:opacity .3s ease;pointer-events:none}body.sidebar-open .sidebar-overlay{display:block;opacity:1;pointer-events:auto}.sidebar{position:fixed;width:340px;height:100vh;top:0;left:0;background:linear-gradient(180deg,var(--bg-sidebar-1) 0%,var(--bg-sidebar-2) 100%);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);color:var(--color-text);padding:16px 14px;box-sizing:border-box;border-right:3px solid var(--color-text-link);display:flex;flex-direction:column;justify-content:flex-start;align-items:center;z-index:100;text-align:center;box-shadow:4px 0 15px #0f172a0d;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;transform:translate(0);transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s ease,border-color .3s ease}.sidebar::-webkit-scrollbar{display:none;width:0;height:0}body.sidebar-collapsed .sidebar{transform:translate(-340px)}.sidebar-top{width:100%}.sidebar-section{width:100%;margin-bottom:5px}.section-chevron{font-size:10px;opacity:.5;transition:transform .25s ease}.sidebar-section.collapsed .section-chevron{transform:rotate(-90deg)}.sidebar-title{font-size:20px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin:0 0 2px;color:var(--color-heading);line-height:1.15;transition:color .3s ease}.stat-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;color:var(--color-text-muted);transition:color .3s ease}.stat-row:last-child{margin-bottom:0}.stat-row span.val{font-weight:700;color:var(--color-text-link);transition:color .3s ease}.progress-bar-container{width:100%;height:8px;background:var(--border-code);border-radius:10px;overflow:hidden;margin-top:10px;transition:background .3s ease}.progress-bar-fill{height:100%;width:0%;background:var(--color-text-link);transition:width .3s ease,background-color .3s ease;box-shadow:0 0 8px #2563eb4d}.btn-generate{background-color:var(--color-text-link);color:#fff;border:none;padding:12px 20px;font-size:16px;font-weight:800;border-radius:12px;cursor:pointer;width:100%;text-transform:none;box-shadow:0 4px 6px #2563eb26;transition:all .25s ease;margin-top:5px;animation:subtlePulse 2.5s infinite ease-in-out}.btn-generate:hover{background-color:var(--color-text-link-hover);animation:none;transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px #2563eb59}.btn-generate:active{transform:translateY(0) scale(.98)}.main-content{margin-left:340px;width:calc(100% - 340px);max-width:calc(100% - 340px);min-width:0;padding:60px 35px 40px;flex-grow:1;box-sizing:border-box;transition:margin-left .3s cubic-bezier(.16,1,.3,1),width .3s cubic-bezier(.16,1,.3,1),max-width .3s cubic-bezier(.16,1,.3,1),padding .3s ease}body.sidebar-collapsed .main-content{margin-left:60px;width:calc(100% - 60px);max-width:calc(100% - 60px)}.app-container{display:flex;gap:30px;align-items:flex-start;width:100%;box-sizing:border-box}.tasks-column{flex:1;min-width:0;box-sizing:border-box}.compiler-column{display:none;width:610px;flex-shrink:0;position:-webkit-sticky;position:sticky;top:75px;align-self:flex-start!important;z-index:90;box-sizing:border-box;flex-direction:column;gap:20px}body.variant-generated .compiler-column,body.catalog-active .compiler-column{display:flex}.compiler-column{transition:border-color .15s ease}.compiler-column.resizing-width{border-left:3px solid #2563EB!important}.compiler-column.resizing-height{border-bottom:3px solid #2563EB!important}.compiler-column.resizing-both{border-left:3px solid #2563EB!important;border-bottom:3px solid #2563EB!important}#python-sandbox-wrapper{height:100%;display:flex;flex-direction:column}#python-sandbox-wrapper .compiler-card{height:100%;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}#main-sandbox-content-python,#main-sandbox-content-calc,#main-sandbox-content-paint{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}#monaco-editor{flex:1;min-height:220px;height:100%!important}body.exam-mode{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.exam-mode input,body.exam-mode textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.sidebar-catalog-section{margin-bottom:20px;border-top:1px solid var(--border-card);padding-top:15px}.sidebar-catalog-title{border-bottom:1px solid var(--border-card);padding-bottom:8px;margin-bottom:12px;font-size:16px;font-weight:700;color:var(--color-heading);text-align:left}details.sidebar-section summary::-webkit-details-marker{display:none}details.sidebar-section summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none}details.sidebar-section[open]>summary .arrow{transform:rotate(90deg);display:inline-block}.sidebar-catalog-select{flex:1.2;padding:9px 11px;border-radius:8px;background:var(--bg-input);border:1.5px solid var(--border-input);color:var(--color-text);font-size:15px;font-weight:600;cursor:pointer;outline:none;transition:border-color .2s ease}.sidebar-catalog-select:focus{border-color:var(--color-text-link)}.sidebar-catalog-combo{display:flex;gap:6px;align-items:center}.sidebar-kimscanner-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 15px;margin-top:10px;border-radius:10px;color:#fff!important;text-decoration:none!important;font-weight:800;font-size:16px;border:1px solid rgba(255,255,255,.35);cursor:pointer;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease}.sidebar-kimscanner-btn:hover{transform:translateY(-1.5px);box-shadow:0 6px 20px #0ea5e98c}.sidebar-kimscanner-btn .kimscanner-badge{background:#ffffff40;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:900;letter-spacing:.5px;text-transform:uppercase}.task-favorite-btn{padding:4px 8px;font-size:15px;border-radius:6px;border:1px solid var(--border-input);background:transparent;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;color:var(--color-text-muted)}.task-favorite-btn:hover{border-color:var(--color-text-link);background:var(--bg-code)}.task-favorite-btn.active{color:#fbbf24!important;border-color:#fbbf244d}.favorites-card,.student-gamification-grid .card,#student-achievements-card,#student-leaderboard-card{border-left:1px solid var(--border-card)!important;animation-delay:.08s}.header-box{text-align:center;margin-bottom:40px;padding:25px;background:linear-gradient(135deg,var(--color-text-link) 0%,#475569 100%);color:#fff;border-radius:12px;box-shadow:0 4px 15px #2563eb26;animation:fadeInUp .6s cubic-bezier(.16,1,.3,1) forwards;transition:background .3s ease}.header-box h1{margin:0;font-size:28px;font-weight:700}.header-box p{margin:10px 0 0;opacity:.9;font-size:16px}.card{background:var(--bg-card);border-radius:10px;box-shadow:0 4px 15px #0f172a08;border:1px solid var(--border-card);padding:28px;margin-bottom:30px;border-left:6px solid var(--color-text-link);position:relative;opacity:1;transform:translateY(0);transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s ease,background .2s ease;box-sizing:border-box;width:100%}.card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0f172a14;background:#ffffffeb}[data-theme=dark] .card:hover{background:#1e293be6}.card h3{margin-top:0;color:var(--color-heading);border-bottom:1.5px solid var(--border-card);padding-bottom:10px;font-size:18px;transition:color .3s ease,border-color .3s ease}pre,code,tt{background-color:var(--bg-code);padding:2px 6px;border-radius:4px;border:1px solid var(--border-code);font-family:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13.5px;transition:background-color .3s ease,border-color .3s ease}pre{padding:14px;overflow-x:auto;display:block;border:1px solid var(--border-code);line-height:1.4}table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}th,td{border:1px solid var(--border-code);padding:12px;vertical-align:top;transition:border-color .3s ease}th{background-color:var(--bg-code);color:var(--color-heading);font-weight:700;transition:background-color .3s ease,color .3s ease}table.code th{background-color:var(--bg-code)}table.code td.pre{font-family:monospace;white-space:pre-wrap}table.varanswer{width:100%;border-collapse:collapse;box-shadow:0 4px 6px #00000005;border-radius:8px;overflow:hidden}table.varanswer th{background-color:var(--color-text-link);color:#fff;font-weight:600;transition:background-color .3s ease}table.varanswer td{text-align:center}a{color:var(--color-text-link);text-decoration:none;font-weight:600;transition:color .3s ease}a:hover{color:var(--color-text-link-hover);text-decoration:underline}img{max-width:100%!important;height:auto!important;box-sizing:border-box!important;margin:20px 0;border:1.5px solid var(--border-code);border-radius:8px;padding:6px;background:#fff;box-shadow:0 2px 4px #00000005;transition:border-color .3s ease}#student-page-view,#student-profile-details,#student-variant-tasks-container,.card,.header-box{max-width:100%!important;box-sizing:border-box!important;overflow-wrap:break-word}.task-files{background-color:#eff6ff;border:1px solid #BFDBFE;color:#2563eb;padding:10px 16px;border-radius:8px;margin-bottom:20px;display:inline-block;font-size:13.5px;transition:all .25s ease}[data-theme=dark] .task-files{background-color:#60a5fa26;border-color:#60a5fa4d;color:#93c5fd}.task-files:hover{background-color:#dbeafe;transform:translate(3px)}[data-theme=dark] .task-files:hover{background-color:#60a5fa40}.task-files a{color:inherit;text-decoration:underline}.overview-table{background:var(--bg-card);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #00000003;border:1px solid var(--border-code);transition:background .3s ease,border-color .3s ease}.overview-table th{background-color:var(--color-text-link);color:#fff;transition:background-color .3s ease}.check-container{margin-top:20px;padding:15px;background:var(--bg-check-normal);border:1.5px solid var(--border-check-normal);border-radius:8px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;transition:all .3s ease}.check-container.correct{border-color:#10b981;background-color:#10b9811a;box-shadow:0 0 10px #10b98126}.check-container.incorrect{border-color:#ef4444;background-color:#ef44441a;box-shadow:0 0 10px #ef444426}.ans-input{padding:8px 12px;border:1.5px solid var(--border-input);border-radius:6px;font-size:14px;outline:none;width:180px;font-family:inherit;background:var(--bg-input);color:var(--color-input);transition:all .25s ease}.ans-input:focus{border-color:var(--color-text-link);box-shadow:0 0 0 3px #2563eb1a}.correct .ans-input{border-color:#10b981}.incorrect .ans-input{border-color:#ef4444}.btn-check{background-color:var(--color-text-link);color:#fff;border:none;padding:8px 16px;font-size:14px;font-weight:700;border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-check:hover{background-color:var(--color-text-link-hover);transform:translateY(-1px);box-shadow:0 4px 8px #2563eb33}.btn-check:active{transform:translateY(0) scale(.96)}.status-badge{font-weight:800;font-size:14px;animation:fadeInUp .3s ease}.status-badge.ok{color:#059669}.status-badge.err{color:#dc2626}.reveal-link{font-size:13px;color:var(--color-text-muted);text-decoration:underline;cursor:pointer;margin-left:auto;-webkit-user-select:none;user-select:none;transition:color .2s ease}.reveal-link:hover{color:var(--color-text-link)}.ai-link{color:var(--color-text-link);font-weight:700}.ai-link:hover{color:var(--color-text-link-hover)}.answer-key-box{font-size:13.5px;color:var(--color-text-muted);width:100%;margin-top:10px;border-top:1px dashed var(--border-code);padding-top:10px;animation:fadeInUp .3s ease}.answer-key-box b{color:var(--color-text);font-family:monospace;font-size:14.5px}.templates-row{display:flex;flex-direction:column;gap:12px;box-sizing:border-box}details.templates-dropdown{background:var(--bg-code);border:1px solid var(--border-card);border-radius:8px;overflow:hidden;box-sizing:border-box;transition:all .3s ease;margin-bottom:16px;width:100%}details.templates-dropdown[open]{border-color:var(--color-text-link);box-shadow:0 4px 12px #2563eb14;background:var(--bg-code)}summary.templates-dropdown-summary{padding:10px 14px;font-size:13px;font-weight:700;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center;outline:none;list-style:none;transition:background-color .25s ease}summary.templates-dropdown-summary::-webkit-details-marker{display:none}summary.templates-dropdown-summary:hover{background-color:var(--border-card)}summary.templates-dropdown-summary:after{content:"▾";font-size:14px;color:var(--color-text-muted);transition:transform .2s ease}details.templates-dropdown[open] summary.templates-dropdown-summary:after{transform:rotate(180deg)}.template-category{background:var(--bg-card);border:1px solid var(--border-card);border-radius:8px;padding:12px;box-sizing:border-box;transition:border-color .3s ease,background-color .3s ease}.template-category-title{font-size:11px;font-weight:800;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;display:flex;align-items:center;gap:6px}.template-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-tmpl{background:var(--bg-code);border:1px solid var(--border-input);color:var(--color-text);padding:8px 12px;font-size:12px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #0000000a}.btn-tmpl:hover{background:var(--color-text-link);color:#fff;border-color:var(--color-text-link);transform:translateY(-1px);box-shadow:0 4px 8px #2563eb26}.terminal-console{background:#020617;border-top:1.5px solid #1E293B;height:190px;min-height:110px;max-height:50vh;resize:vertical;overflow-y:auto;font-family:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12.5px;padding:16px 12px 10px;box-sizing:border-box;color:#10b981;white-space:pre-wrap;word-break:break-all;line-height:1.4}.btn-run{background-color:#059669;color:#fff;border:none;padding:10px 16px;font-size:13px;font-weight:800;border-radius:6px;cursor:pointer;flex-grow:2;transition:all .2s ease}.btn-run:hover{background-color:#047857;box-shadow:0 4px 10px #05966933}.btn-save-py{background-color:var(--color-text-link);color:#fff;border:none;padding:10px 16px;font-size:13px;font-weight:700;border-radius:6px;cursor:pointer;flex-grow:1.2;transition:all .2s ease}.btn-save-py:hover{background-color:var(--color-text-link-hover);box-shadow:0 4px 10px #2563eb33}.btn-clear-console{background-color:var(--border-code);color:var(--color-text);border:1px solid var(--border-code);padding:10px 16px;font-size:13px;font-weight:700;border-radius:6px;cursor:pointer;flex-grow:1;transition:all .2s ease}.btn-clear-console:hover{background-color:var(--bg-code)}body.exam-mode .templates-dropdown,body.exam-mode .sidebar-catalog-section,body.exam-mode .task-favorite-btn,body.exam-mode .btn-save-py,body.exam-mode #variant-live-score-card,body.exam-mode .card .reveal-link,body.exam-mode .card a[onclick*=revealAnswer]{display:none!important}body.exam-mode .btn-generate{animation:none!important}body.exam-mode .header-box{background:linear-gradient(135deg,#dc2626,#d97706)!important}body.exam-mode.retake-mode .header-box{background:repeating-linear-gradient(135deg,#991b1b,#991b1b 16px,#b91c1c 16px 32px)!important;border-bottom:2px solid #DC2626!important}body.exam-mode .header-box.exam-header-box{display:block!important}.exam-notification{display:none;position:fixed;top:0;left:0;right:0;z-index:999;background:linear-gradient(135deg,#dc2626,#d97706);color:#fff;text-align:center;padding:8px 20px;font-size:13px;font-weight:700;box-shadow:0 4px 20px #dc26264d}body.exam-mode.retake-mode .exam-notification{background:repeating-linear-gradient(45deg,#991b1b,#991b1b 14px,#b91c1c 14px 28px)!important;box-shadow:0 4px 20px #b91c1c73!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.2)!important}body.exam-mode.retake-mode .check-container{border:2px dashed #B91C1C!important;background:repeating-linear-gradient(45deg,#b91c1c0f,#b91c1c0f 12px,#ffffff05 12px 24px)!important}body.exam-mode.retake-mode button[onclick*=submitExam],body.exam-mode.retake-mode .btn-finish-exam{background:repeating-linear-gradient(45deg,#b91c1c,#b91c1c 14px,#d97706 14px 28px)!important;color:#fff!important;box-shadow:0 4px 16px #b91c1c73!important}body.exam-mode .exam-notification{display:block}body.exam-mode{padding-top:40px}body.exam-mode .sidebar-toggle{display:none}body.exam-mode .sidebar{transform:translate(-340px)!important}body.exam-mode .sidebar-overlay{display:none!important}body.exam-mode .main-content{margin-left:60px!important;width:calc(100% - 60px)!important;max-width:calc(100% - 60px)!important}body.exam-mode #sidebar-avatar{pointer-events:none;opacity:.4}body.exam-mode .archive-item{pointer-events:none;opacity:.5}#exam-timer{transition:color .5s ease}#exam-timer.urgent{color:#dc2626;animation:pulse 1s infinite}.terminal-console::-webkit-scrollbar,.templates-row::-webkit-scrollbar,.compiler-column::-webkit-scrollbar,.sidebar::-webkit-scrollbar{display:none}.terminal-console,.templates-row,.compiler-column,.sidebar{-ms-overflow-style:none;scrollbar-width:none}details.answers-dropdown{margin-top:50px;background:var(--bg-code);border:2px dashed var(--color-text-link);border-radius:12px;padding:20px;box-shadow:0 4px 10px #00000005;color:var(--color-heading);opacity:0;animation:fadeInUp .5s ease forwards;transition:all .25s ease}details.answers-dropdown:hover{box-shadow:0 8px 20px #2563eb14;background:var(--bg-card)}details.answers-dropdown summary{font-weight:800;font-size:18px;color:var(--color-heading);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}details.answers-dropdown summary:hover{color:var(--color-text-link)}details.answers-dropdown[open]{border-style:solid;background:var(--bg-card)}details.answers-dropdown[open] summary{border-bottom:1.5px solid var(--border-code);padding-bottom:10px;margin-bottom:15px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes viewEnter{0%{opacity:.7;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes tabEnter{0%{opacity:.15;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tab-anim-enter,.teacher-tab-content{animation:tabEnter .28s cubic-bezier(.16,1,.3,1) forwards}#content-container>div{animation:viewEnter .22s cubic-bezier(.16,1,.3,1)}.works-bar-pill,.btn-class,.class-chip,.teacher-class-pill,.tab-btn,.nav-tab,.sidebar-exam-tab,.btn-auth-primary,.btn-auth-secondary,.btn-generate,.btn-theme,.btn-tutorials-nav{transition:all .2s cubic-bezier(.16,1,.3,1)!important}details.card[open]>div,details.sidebar-section[open]>div{animation:tabEnter .25s cubic-bezier(.16,1,.3,1) forwards}#dashboard-heatmap,#dashboard-metrics,#dashboard-charts,#student-stats-results,#class-management-content>div,#student-list-content>div{animation:tabEnter .25s cubic-bezier(.16,1,.3,1) forwards}#student-action-menu-modal>div,#retake-overlay>div,.sp-animate-in,.stat-card-lg{animation:popIn .2s cubic-bezier(.16,1,.3,1) forwards}.assignment-card,tr,td,button,select,input{transition:background-color .18s ease,border-color .18s ease,transform .12s ease,box-shadow .18s ease}@keyframes subtlePulse{0%{box-shadow:0 4px 6px #2563eb26;transform:scale(1)}50%{box-shadow:0 4px 20px #2563eb66;transform:scale(1.02)}to{box-shadow:0 4px 6px #2563eb26;transform:scale(1)}}@media(max-width:1250px){.compiler-column{width:500px}}@media(max-width:1100px){.app-container{flex-direction:column;width:100%}.tasks-column{width:100%!important;margin:0!important}.compiler-column{width:100%!important;position:relative;top:0;z-index:10;margin-top:30px;max-height:none;overflow-y:visible;display:none}body.variant-generated .compiler-column,body.catalog-active .compiler-column{display:flex}}@media(max-width:850px){body{flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.sidebar-toggle{top:max(12px,env(safe-area-inset-top,12px));left:max(12px,env(safe-area-inset-left,12px));width:44px;height:44px;box-shadow:0 4px 14px #00000040;z-index:105;touch-action:manipulation}.sidebar{position:fixed;width:min(320px,86vw);height:100vh;height:100dvh;border-right:2px solid var(--border-card);border-bottom:none;padding:16px 14px;padding-top:max(68px,calc(env(safe-area-inset-top,0px) + 56px));padding-bottom:max(20px,env(safe-area-inset-bottom,20px));transform:translate(-100%);will-change:transform;transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:102;box-shadow:6px 0 25px #00000059;box-sizing:border-box}body.sidebar-open .sidebar{transform:translate(0)}.sidebar-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#020617a6}.main-content{margin-left:0!important;padding:12px 10px;padding-top:max(64px,calc(env(safe-area-inset-top,0px) + 52px));padding-bottom:max(24px,env(safe-area-inset-bottom,24px));width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box}.header-box{padding:14px 12px;margin-bottom:14px;border-radius:14px}.header-box h1{font-size:19px}.header-box p{font-size:13px}.card{padding:14px 12px;margin-bottom:14px;border-radius:14px}.check-container{flex-direction:column;align-items:stretch;gap:10px}.ans-input{width:100%;font-size:16px!important;min-height:44px;box-sizing:border-box;touch-action:manipulation}.btn-check{width:100%;font-size:15px;min-height:44px;padding:12px;border-radius:10px;touch-action:manipulation}.reveal-link{margin-left:0;text-align:center;margin-top:6px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}.overview-table-wrapper,.varanswer-wrapper,.task-desc-table-wrapper,.table-shell{overflow-x:auto!important;width:100%;margin:12px 0;-webkit-overflow-scrolling:touch;border-radius:10px}table{margin:0}.control-work-wrapper{flex-direction:column;gap:12px}.control-work-sidebar{width:100%;position:sticky;top:max(10px,env(safe-area-inset-top,10px));z-index:30;max-height:none;padding:10px;border-radius:14px;background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px #00000026;border:1px solid var(--border-card);box-sizing:border-box}.task-circles-grid{display:flex!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scroll-snap-type:x mandatory;padding:4px 2px;gap:8px;scrollbar-width:thin}.task-circles-grid::-webkit-scrollbar{height:4px}.task-circle-btn{flex:0 0 42px;min-width:42px;height:42px;font-size:14px;font-weight:700;border-radius:10px;scroll-snap-align:center;touch-action:manipulation}.control-work-nav-bar{flex-wrap:wrap;gap:8px;position:sticky;bottom:max(10px,env(safe-area-inset-bottom,10px));z-index:25;background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-card);border-radius:14px;padding:8px 10px;box-shadow:0 -4px 18px #0000001f}.control-work-nav-btn{flex:1;min-height:44px;justify-content:center;padding:10px 12px;font-size:14px;touch-action:manipulation}.task-files{padding:10px 12px;font-size:13px;word-break:break-word}input,select,textarea{font-size:16px!important}.btn-generate,.btn-tutorials-nav,.sidebar-catalog-select{min-height:44px;touch-action:manipulation}}@media(max-width:600px){#custom-modal-backdrop,.modal-overlay,#kimscanner-modal,#class-modal-overlay{align-items:flex-end!important;padding:0!important}.custom-modal-card,.modal-card,#kimscanner-modal>div,#class-modal-overlay>div{width:100%!important;max-width:100%!important;border-radius:22px 22px 0 0!important;max-height:88vh!important;max-height:88dvh!important;overflow-y:auto!important;padding:22px 16px max(24px,env(safe-area-inset-bottom,24px)) 16px!important;margin:0!important;box-shadow:0 -12px 40px #00000080!important;animation:mobileSheetSlideUp .28s cubic-bezier(.16,1,.3,1) forwards!important}@keyframes mobileSheetSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}}.task-desc table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;margin:10px 0;border-radius:8px}.auth-overlay{position:fixed;inset:0;width:100%;height:100%;background:#0f172a66;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;justify-content:center;align-items:center;z-index:9999;box-sizing:border-box;padding:20px;overflow-y:auto;transition:opacity .25s ease}.auth-overlay{position:fixed;inset:0;width:100%;height:100%;background:var(--bg-auth-overlay);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;justify-content:center;align-items:center;z-index:9999;box-sizing:border-box;padding:20px;overflow-y:auto;transition:opacity .3s ease,visibility .3s ease}.auth-card{background:var(--bg-auth-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-auth-card);border-radius:16px;width:100%;max-width:420px;padding:40px 30px;box-shadow:0 20px 50px #00000040;box-sizing:border-box;color:var(--color-auth-text);animation:scaleIn .4s cubic-bezier(.16,1,.3,1) forwards;position:relative}@keyframes scaleIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.auth-header{text-align:center;margin-bottom:30px}.auth-header h2{margin:0;font-size:26px;font-weight:800;background:linear-gradient(135deg,#38bdf8,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px}.auth-header p{margin:8px 0 0;font-size:13px;color:var(--color-auth-text-muted)}.auth-input-group{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.auth-input-group label{font-size:11px;font-weight:700;color:var(--color-auth-label);text-transform:uppercase;letter-spacing:.5px;text-align:left}.auth-input-group input{background:var(--bg-auth-input);border:1.5px solid var(--border-auth-input);border-radius:8px;padding:12px 14px;font-size:14px;color:var(--color-auth-text);outline:none;transition:border-color .25s ease,box-shadow .25s ease}.auth-input-group input:focus{border-color:#38bdf8;box-shadow:0 0 10px #38bdf833}.auth-error-msg{color:#f87171;font-size:13px;margin-bottom:15px;min-height:18px;text-align:center;font-weight:600}.btn-auth-primary{width:100%;background:linear-gradient(135deg,#38bdf8,#a78bfa);border:none;border-radius:8px;color:#fff;padding:12px;font-size:15px;font-weight:700;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 15px #a78bfa40}.btn-auth-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #a78bfa59}.auth-divider{display:flex;align-items:center;text-align:center;margin:20px 0;color:var(--color-auth-text-muted)}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid var(--border-auth-card)}.auth-divider:not(:empty):before{margin-right:.25em}.auth-divider:not(:empty):after{margin-left:.25em}.auth-divider span{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--color-auth-text-muted)}.btn-auth-secondary{width:100%;background:transparent;border:1.5px solid var(--border-auth-btn-secondary);border-radius:8px;color:var(--color-auth-btn-secondary);padding:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .25s ease}.btn-auth-secondary:hover{background:var(--bg-auth-btn-secondary-hover);border-color:var(--border-auth-btn-secondary);color:var(--color-auth-text)}.auth-card a{color:#38bdf8;text-decoration:none;font-weight:600;transition:color .2s ease}.auth-card a:hover{color:#7dd3fc}[data-theme=dark] .auth-card{background:#1e293bd1;border-color:#ffffff1f;box-shadow:0 30px 70px #00000073,0 0 0 1px #ffffff14 inset;color:#f8fafc}.badge-pulse{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 #10b981b3;animation:pulseDot 1.8s infinite}@keyframes pulseDot{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.demo-label{font-size:12px;font-weight:600;color:var(--color-text-muted)}@keyframes scaleIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.auth-header{text-align:center;margin-bottom:24px}.auth-header h2{margin:0;font-size:46px;font-weight:900;font-family:Golos Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#2563eb,#3b82f6 28%,#7c3aed 78%,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1.2px;line-height:1.1}.auth-header p,.auth-header div{margin:6px 0 0;font-size:11px;font-weight:800;color:#64748b;letter-spacing:2px;text-transform:uppercase}.auth-input-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.auth-input-group label{font-size:11.5px;font-weight:800;color:#334155;text-transform:uppercase;letter-spacing:.6px;text-align:left}[data-theme=dark] .auth-input-group label{color:#cbd5e1}.auth-input-group input[type=text],.auth-input-group input[type=password]{width:100%;height:42px;background:#ffffff73;border:1.5px solid #94A3B8;border-radius:6px;padding:0 12px;font-size:14.5px;font-family:inherit;color:#0f172a;outline:none;box-sizing:border-box;transition:all .2s ease}[data-theme=dark] .auth-input-group input[type=text],[data-theme=dark] .auth-input-group input[type=password]{background:#0f172aa6;border-color:#475569;color:#f8fafc}.auth-input-group input:focus{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb29}[data-theme=dark] .auth-input-group input:focus{border-color:#60a5fa;background:#0f172af2;box-shadow:0 0 0 3px #60a5fa33}.auth-input-group input::placeholder{color:#64748b;opacity:.85;font-size:14px}.auth-error-msg{color:#ef4444;font-size:12.5px;margin-top:4px;margin-bottom:8px;min-height:16px;text-align:center;font-weight:600;line-height:1.4}.btn-auth-primary{width:100%;height:48px;background:linear-gradient(90deg,#0ea5e9,#3b82f6 35%,#7c3aed 85%,#8b5cf6);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 6px 20px #3b82f652;margin-top:10px;font-family:inherit;display:flex;align-items:center;justify-content:center}.btn-auth-primary:hover{transform:translateY(-1.5px);box-shadow:0 8px 26px #3b82f673}.btn-auth-primary:active{transform:translateY(0)}.auth-divider{display:flex;align-items:center;text-align:center;margin:20px 0 16px;color:#64748b}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid rgba(148,163,184,.35)}.auth-divider span{padding:0 14px;font-size:13.5px;text-transform:lowercase;font-weight:500;color:#475569}[data-theme=dark] .auth-divider span{color:#94a3b8}.btn-auth-secondary{width:100%;height:46px;background:#e2e8f073;border:1.5px solid rgba(148,163,184,.55);border-radius:12px;color:#1e293b;padding:0 18px;font-size:14.5px;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit;display:flex;align-items:center;justify-content:center}[data-theme=dark] .btn-auth-secondary{background:#0f172a73;border-color:#475569;color:#f8fafc}.btn-auth-secondary:hover{background:#ffffffb3;border-color:#64748b;color:#0f172a}[data-theme=dark] .btn-auth-secondary:hover{background:#0f172ad9;border-color:#64748b;color:#fff}.auth-card a{color:#1d4ed8;text-decoration:none;font-weight:700;transition:color .15s ease}[data-theme=dark] .auth-card a{color:#60a5fa}.auth-card a:hover{color:#7c3aed;text-decoration:underline}.cookie-consent-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(120%);width:calc(100% - 40px);max-width:580px;background:var(--bg-auth-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-card);border-radius:16px;padding:18px 22px;box-shadow:0 20px 50px #00000059;z-index:10000;display:none;align-items:center;gap:16px;box-sizing:border-box;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .35s ease;opacity:0}.cookie-consent-banner.cookie-banner-visible{transform:translate(-50%) translateY(0);opacity:1}.cookie-consent-icon{font-size:28px;flex-shrink:0;line-height:1}.cookie-consent-content{flex:1;font-size:13px;line-height:1.5;color:var(--color-text);text-align:left}.cookie-consent-content b{color:var(--color-heading)}.cookie-consent-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.btn-cookie-accept{background:linear-gradient(135deg,var(--color-text-link) 0%,#A78BFA 100%);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:12.5px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}.btn-cookie-accept:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.btn-cookie-essential{background:transparent;color:var(--color-text-muted);border:1px solid var(--border-input);padding:6px 12px;border-radius:8px;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn-cookie-essential:hover{color:var(--color-text);background:var(--bg-input)}@media(max-width:600px){.cookie-consent-banner{flex-direction:column;align-items:stretch;bottom:14px;padding:16px}.cookie-consent-actions{flex-direction:row}.btn-cookie-accept,.btn-cookie-essential{flex:1;text-align:center}}.archive-item{display:flex;align-items:center;gap:10px;background:var(--bg-archive-item);border:1px solid var(--border-card);border-radius:8px;padding:10px 12px;margin-bottom:8px;cursor:pointer;transition:all .25s ease;text-align:left}.archive-item:hover{background:var(--bg-archive-item-hover);border-color:var(--color-text-link);transform:translate(3px);box-shadow:0 4px 12px #2563eb1a}.archive-item.active-archive-link{background:var(--bg-archive-item-active);border-color:var(--color-text-link);box-shadow:0 0 10px #2563eb33;position:relative}.archive-item.active-archive-link:before{content:"";position:absolute;left:0;top:25%;height:50%;width:3px;background:var(--color-text-link);border-radius:0 4px 4px 0}.archive-item-icon{font-size:14px}.archive-item-title{font-size:12.5px;font-weight:600;color:var(--color-text)}.control-work-wrapper{display:flex;gap:24px;align-items:flex-start;width:100%;margin-top:10px}@media(max-width:900px){.control-work-wrapper{flex-direction:column;gap:16px}}.control-work-sidebar{width:260px;flex-shrink:0;position:sticky;top:20px;background:var(--bg-card);border:1.5px solid var(--border-card);border-radius:16px;padding:18px;box-shadow:0 10px 30px #0000000f;display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - 40px);overflow-y:auto;z-index:10}@media(max-width:900px){.control-work-sidebar{width:100%;position:static;max-height:none}}.control-work-sidebar-header{text-align:center;border-bottom:1.5px solid var(--border-card);padding-bottom:12px}.control-work-sidebar-title{font-size:17px;font-weight:900;color:var(--color-heading);margin:0 0 4px}.control-work-sidebar-sub{font-size:12.5px;font-weight:700;color:var(--color-text-link)}.task-circles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;padding:4px 0}@media(max-width:900px){.task-circles-grid{grid-template-columns:repeat(auto-fill,minmax(42px,1fr))}}.task-circle-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--border-input);background:var(--bg-input);color:var(--color-text);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;-webkit-user-select:none;user-select:none;margin:0 auto}.task-circle-btn:hover{transform:translateY(-2px) scale(1.06);border-color:var(--color-text-link);box-shadow:0 4px 12px #2563eb40}.task-circle-btn.active{border-color:#7c3aed;background:linear-gradient(135deg,#7c3aed26,#2563eb26);color:#7c3aed;box-shadow:0 0 0 3px #7c3aed40,0 4px 12px #7c3aed33;transform:scale(1.08);z-index:2}.task-circle-btn.answered{background:linear-gradient(135deg,#059669,#047857);border-color:#059669;color:#fff;box-shadow:0 3px 10px #0596694d}.task-circle-btn.answered.active{border-color:#a78bfa;box-shadow:0 0 0 3px #a78bfa66,0 4px 14px #05966966}.control-work-finish-btn{width:100%;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;padding:12px;border-radius:12px;font-size:14.5px;font-weight:800;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #dc26264d;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:auto}.control-work-finish-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #dc262673;background:linear-gradient(135deg,#ef4444,#b91c1c)}.control-work-main{flex:1;min-width:0;width:100%}.control-work-nav-bar{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;border-top:1.5px solid var(--border-card)}.control-work-nav-btn{background:var(--bg-input);border:1.5px solid var(--border-input);color:var(--color-text);padding:10px 18px;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.control-work-nav-btn:hover:not(:disabled){border-color:var(--color-text-link);color:var(--color-text-link);background:var(--bg-card);transform:translateY(-1px)}.control-work-nav-btn:disabled{opacity:.4;cursor:not-allowed}.c-error{color:#dc2626}.c-success{color:#059669}.c-muted{color:var(--color-text-muted)}.c-text{color:var(--color-text)}.c-success-sm{color:#059669;font-size:14px}.auth-box{background:var(--bg-input);border-radius:10px;padding:14px;text-align:center;border:1px solid var(--border-card)}.stat-card{padding:8px;border:1px solid rgba(255,255,255,.2)}.section-label{font-size:16px;color:var(--color-text-muted);font-weight:700;text-transform:uppercase}.empty-state{text-align:center;padding:20px;color:var(--color-text-muted)}.chip-ghost{padding:4px 6px;border:1px solid var(--border-input)}.empty-state-lg{padding:30px;text-align:center;color:var(--color-text-muted);font-size:16px}.stat-box{background:var(--bg-input);border:1px solid var(--border-card);border-radius:12px;padding:12px 10px;text-align:center}.title-row{font-weight:700;font-size:15px;color:var(--color-text);margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.table-shell{max-height:none;width:100%;overflow-x:auto;overflow-y:visible;border:1.5px solid var(--border-card);border-radius:12px;background:var(--bg-card);box-shadow:0 4px 15px #0000000a;box-sizing:border-box}.full-table{width:100%;border-collapse:collapse;font-size:16px;box-sizing:border-box}.full-table-2{width:100%;border-collapse:collapse;font-size:16px}.sticky-head{position:sticky;top:0;background:var(--bg-code);color:var(--color-heading);z-index:5}[data-theme=dark] .sticky-head{background:#1e293b;color:#f8fafc}:root:not([data-theme=dark]) .sticky-head{background:#e2e8f0;color:#0f172a}.stat-cell{background:var(--bg-input);border:1px solid rgba(100,116,139,.15);padding:10px;border-radius:8px;text-align:center}.metric-lg{font-size:26px;font-weight:700;color:var(--color-heading)}.text-xs{font-size:15px;font-weight:500;color:var(--color-text-muted)}.stat-card-lg{background:var(--bg-input);border-radius:14px;padding:18px 16px;text-align:center;border:1px solid var(--border-card)}.label-xs{font-size:14px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.pad-8{padding:8px}.text-md-muted{font-size:17px;color:var(--color-text-muted)}.btn-student-action{background:var(--bg-card);border:1.5px solid var(--border-input);color:var(--color-text);padding:13px 18px;border-radius:12px;font-weight:800;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 8px #0000000d;transition:all .18s ease}.btn-student-action:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;border-color:#2563eb!important;box-shadow:0 4px 14px #2563eb59!important;transform:translateY(-1px)}.btn-back-arrow,.btn-back-arrow-light{width:38px;height:38px;min-width:38px;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;cursor:pointer;outline:none;line-height:1;font-size:19px;font-weight:800;-webkit-user-select:none;user-select:none;transition:transform .18s cubic-bezier(.4,0,.2,1),background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.btn-back-arrow{border:1.5px solid var(--border-input);background:var(--bg-card);color:var(--color-text);box-shadow:0 2px 8px #0000000d}.btn-back-arrow:hover{background:var(--bg-input);border-color:var(--color-text-link, #2563EB);color:var(--color-text-link, #2563EB);transform:translate(-3px);box-shadow:0 4px 12px #00000017}.btn-back-arrow:active{transform:translate(-1px) scale(.96)}.btn-back-arrow-light{border:1.5px solid rgba(255,255,255,.35);background:#ffffff2e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;box-shadow:0 4px 12px #0000001f}.btn-back-arrow-light:hover{background:#ffffff52;border-color:#fff9;color:#fff;transform:translate(-3px);box-shadow:0 6px 16px #0000002e}.btn-back-arrow-light:active{transform:translate(-1px) scale(.96);background:#fff6}svg circle{transition:transform .2s ease}.table-shell table tbody tr{transition:background-color .15s ease,filter .15s ease}.table-shell table tbody tr:hover{filter:brightness(1.03)}.btn-tutorials-nav{width:100%;background:linear-gradient(135deg,var(--color-text-link) 0%,#A78BFA 100%);border:none;color:#fff;padding:12px 16px;border-radius:12px;font-size:16px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center;gap:8px;box-shadow:0 4px 16px #2563eb40;transition:all .22s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-tutorials-nav:hover{background:linear-gradient(135deg,var(--color-text-link-hover) 0%,#8B5CF6 100%);transform:translateY(-2px);box-shadow:0 6px 22px #2563eb61;color:#fff}.btn-tutorials-nav:active{transform:translateY(0) scale(.98)}.btn-tutorials-nav .badge-new{background:#ffffff40;color:#fff;border:1px solid rgba(255,255,255,.45);font-size:10px;font-weight:900;padding:3px 8px;border-radius:8px;letter-spacing:.5px}.tutorial-code-box{background:var(--bg-card);border:1px solid var(--border-card);border-radius:10px;overflow:hidden;margin-top:14px}.tutorial-code-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;background:var(--bg-input);padding:10px 16px;border-bottom:1px solid var(--border-card)}.tutorial-code-pre{margin:0;padding:16px 18px;font-family:JetBrains Mono,Fira Code,monospace;font-size:14px;font-weight:600;color:#e2e8f0;background:#0f172a;line-height:1.6;white-space:pre-wrap}.tutorial-code-pre,.tutorial-code-pre code{background:transparent;border:0;box-shadow:none;padding:0;color:#e2e8f0}.tutorial-code-pre{background:#0f172a;padding:16px 18px}.tk-kw{color:#a78bfa;font-weight:700}.tk-bi{color:#38bdf8;font-weight:600}.tk-fn{color:#fbbf24;font-weight:600}.tk-str{color:#34d399;font-weight:600}.tk-num{color:#f87171;font-weight:700}.tk-op{color:#93c5fd;font-weight:600}.tk-cm{color:#64748b;font-style:italic;font-weight:500}.class-chip,.btn-class,.teacher-class-pill{padding:7px 16px!important;border-radius:9px!important;font-size:15.5px!important;font-weight:600!important}.class-chip:not(.class-chip-active):hover{border-color:var(--color-text-link)!important}.ta-root{--ta-blue: #2563EB;--ta-green: #059669;--ta-grey: #64748B;--ta-red: #DC2626;--ta-track: color-mix(in srgb, var(--color-text-muted) 16%, transparent);--ta-hover: color-mix(in srgb, var(--color-text-link) 6%, transparent);--ta-ease: cubic-bezier(.16, 1, .3, 1);display:flex;flex-direction:column;gap:12px}.ta-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.ta-tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}.ta-tab,.ta-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid var(--border-input);border-radius:9px;background:var(--bg-card);color:var(--color-text);font:inherit;font-size:15.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.ta-tab:hover,.ta-chip:hover{border-color:var(--color-text-link)}.ta-tab.is-selected,.ta-chip.is-selected{background:color-mix(in srgb,var(--color-text-link) 9%,transparent);border-color:var(--color-text-link);box-shadow:inset 0 0 0 1px var(--color-text-link);color:var(--color-text-link)}.ta-tab-count,.ta-chip-count{min-width:22px;padding:0 7px;border-radius:999px;background:var(--ta-track);font-size:14px;line-height:22px;text-align:center}.ta-tab.is-selected .ta-tab-count,.ta-chip.is-selected .ta-chip-count{background:color-mix(in srgb,var(--color-text-link) 16%,transparent)}.ta-chips{display:flex;flex-wrap:wrap;gap:8px}.ta-list{display:flex;flex-direction:column;border:1px solid var(--border-card);border-radius:12px;overflow:hidden;background:var(--bg-card)}.ta-row{display:grid;grid-template-columns:10px minmax(0,1fr) 150px auto;align-items:center;gap:14px;padding:14px 14px 14px 16px;border-bottom:1px solid var(--border-card);transition:background-color .18s ease,opacity .18s ease}.ta-row:last-child{border-bottom:none}.ta-list-collapsed .ta-row-peek{max-height:34px;overflow:hidden;align-items:start;cursor:pointer;opacity:.55;-webkit-mask-image:linear-gradient(to bottom,#000 0%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,transparent 100%)}.ta-list-collapsed .ta-row-peek *{pointer-events:none}.ta-row[data-ta-open]{cursor:pointer}.ta-row[data-ta-open]:hover{background:var(--ta-hover)}.ta-row[data-ta-open]:focus-visible{outline:2px solid var(--color-text-link);outline-offset:-2px}.ta-row.is-busy{opacity:.6}.ta-dot{width:10px;height:10px;border-radius:50%;background:var(--ta-blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--ta-blue) 20%,transparent)}.ta-row.is-paused .ta-dot{background:var(--ta-grey);box-shadow:0 0 0 3px color-mix(in srgb,var(--ta-grey) 20%,transparent)}.ta-row.is-done .ta-dot{background:var(--ta-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--ta-green) 20%,transparent)}.ta-row.is-archived .ta-dot{background:transparent;box-shadow:inset 0 0 0 2px var(--ta-grey)}.ta-main{min-width:0}.ta-title{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--color-heading);font-size:16.5px;font-weight:600;line-height:1.3}.ta-row.is-archived .ta-title{color:var(--color-text-muted)}.ta-meta{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;margin-top:3px;color:var(--color-text-muted);font-size:15px}.ta-meta-classes{color:var(--color-text);font-weight:600}.ta-sep{opacity:.5}.ta-tag{display:inline-flex;align-items:center;gap:3px;padding:0 6px;border-radius:5px;font-weight:800;font-size:13.5px;line-height:20px}.ta-tag-paused{background:color-mix(in srgb,var(--ta-grey) 18%,transparent);color:var(--color-text)}.ta-tag-retake{background:color-mix(in srgb,#D97706 16%,transparent);color:#b45309}[data-theme=dark] .ta-tag-retake{color:#fbbf24}.ta-progress{display:flex;align-items:center;gap:8px}.ta-bar{flex:1;height:8px;border-radius:999px;background:var(--ta-track);overflow:hidden}.ta-bar>span{display:block;height:100%;border-radius:inherit;background:var(--color-text-link);transform-origin:left center;transition:width .5s var(--ta-ease)}.ta-row.is-done .ta-bar>span{background:var(--ta-green)}.ta-row.is-paused .ta-bar>span,.ta-row.is-archived .ta-bar>span{background:var(--ta-grey)}.ta-count{min-width:50px;color:var(--color-text);font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;text-align:right}.ta-actions{display:flex;align-items:center;gap:4px}.ta-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:40px;padding:0 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text-muted);font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.ta-btn-icon{width:36px;height:36px;padding:0}.ta-btn-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ta-btn:hover:not(:disabled){background:var(--ta-track);color:var(--color-text)}.ta-btn:focus-visible{outline:2px solid var(--color-text-link);outline-offset:1px}.ta-btn:disabled{cursor:progress;opacity:.5}.ta-btn-resume{color:var(--ta-green);border-color:color-mix(in srgb,var(--ta-green) 40%,transparent)}.ta-btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--ta-red) 10%,transparent);color:var(--ta-red)}.ta-btn-restore{border-color:var(--border-input);color:var(--color-text-link)}.ta-btn-restore:hover:not(:disabled){border-color:var(--color-text-link);color:var(--color-text-link)}.ta-undo{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:8px 8px 8px 14px;border:1px solid var(--border-card);border-radius:10px;background:var(--ta-hover);color:var(--color-text);font-size:15px;font-weight:600;animation:taFadeDown .28s var(--ta-ease) both}.ta-undo-leaving{animation:taFadeOut .2s ease forwards}.ta-empty{padding:26px 20px;border:1.5px dashed var(--border-card);border-radius:12px;color:var(--color-text-muted);font-size:16px;text-align:center;animation:taFadeIn .3s ease both}.ta-empty-title{margin-bottom:4px;color:var(--color-heading);font-size:18px;font-weight:700}.ta-error{color:var(--ta-red, #DC2626)}.ta-more-wrap{margin-top:-6px;text-align:center}.ta-more{padding:4px 10px;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:color .15s ease,background-color .15s ease}.ta-more:hover{color:var(--color-text-link);background:var(--ta-hover)}.ta-animate .ta-row{animation:taRowIn .34s var(--ta-ease) both;animation-delay:calc(var(--i, 0) * 22ms)}.ta-animate .ta-bar>span{animation:taBarIn .6s var(--ta-ease) both;animation-delay:calc(var(--i, 0) * 22ms + 80ms)}.ta-row-leaving{overflow:hidden;opacity:0;height:0!important;padding-top:0;padding-bottom:0;border-bottom-width:0;transform:translate(12px);transition:height .24s var(--ta-ease),padding .24s var(--ta-ease),opacity .18s ease,transform .24s var(--ta-ease),border-bottom-width .24s ease}.ta-skeleton .ta-dot{background:var(--ta-track);box-shadow:none}.ta-sk-line{height:12px;width:55%;border-radius:6px;background:linear-gradient(90deg,var(--ta-track) 0%,color-mix(in srgb,var(--color-text-muted) 6%,transparent) 50%,var(--ta-track) 100%);background-size:200% 100%;animation:taShimmer 1.2s ease-in-out infinite}.ta-sk-short{width:30%;margin-top:6px}.ta-skeleton{--ta-track: color-mix(in srgb, var(--color-text-muted) 16%, transparent);grid-template-columns:10px minmax(0,1fr)}@keyframes taRowIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes taBarIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes taFadeIn{0%{opacity:0}to{opacity:1}}@keyframes taFadeDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes taFadeOut{to{opacity:0;transform:translateY(-4px)}}@keyframes taShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:720px){.ta-row{grid-template-columns:10px minmax(0,1fr) auto;grid-template-areas:"dot main actions" "dot progress progress";row-gap:8px}.ta-dot{grid-area:dot;align-self:start;margin-top:5px}.ta-main{grid-area:main}.ta-progress{grid-area:progress}.ta-actions{grid-area:actions}.ta-skeleton{grid-template-areas:"dot main"}.ta-tabs{display:flex;width:100%;box-sizing:border-box}.ta-tab{flex:1;justify-content:center;padding:9px 10px}}.sk-reveal>*{animation:skRevealBlock .38s cubic-bezier(.16,1,.3,1) both}.sk-reveal>*:nth-child(2){animation-delay:.05s}.sk-reveal>*:nth-child(3){animation-delay:.1s}.sk-reveal>*:nth-child(n+4){animation-delay:.14s}.sk-reveal tbody tr{animation:skRevealRow .42s ease both;animation-delay:.34s}.sk-reveal tbody tr:nth-child(1){animation-delay:58ms}.sk-reveal tbody tr:nth-child(2){animation-delay:76ms}.sk-reveal tbody tr:nth-child(3){animation-delay:94ms}.sk-reveal tbody tr:nth-child(4){animation-delay:.112s}.sk-reveal tbody tr:nth-child(5){animation-delay:.13s}.sk-reveal tbody tr:nth-child(6){animation-delay:.148s}.sk-reveal tbody tr:nth-child(7){animation-delay:.166s}.sk-reveal tbody tr:nth-child(8){animation-delay:.184s}.sk-reveal tbody tr:nth-child(9){animation-delay:.202s}.sk-reveal tbody tr:nth-child(10){animation-delay:.22s}.sk-reveal tbody tr:nth-child(11){animation-delay:.238s}.sk-reveal tbody tr:nth-child(12){animation-delay:.256s}.sk-reveal tbody tr:nth-child(13){animation-delay:.274s}.sk-reveal tbody tr:nth-child(14){animation-delay:.292s}.sk-reveal tbody tr:nth-child(15){animation-delay:.31s}.sk-reveal tbody tr:nth-child(16){animation-delay:.328s}@keyframes skRevealBlock{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes skRevealRow{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.ta-animate .ta-row,.ta-animate .ta-bar>span,.ta-undo,.ta-empty,.ta-sk-line,.sk-reveal>*,.sk-reveal tbody tr{animation:none!important}.ta-row-leaving,.ta-bar>span{transition:none!important}}.sr-card{margin-top:24px;padding:24px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:16px}.sr-title{font-size:22px;font-weight:800;color:var(--color-heading)}.sr-sub{margin-top:4px;font-size:14px;line-height:1.45;color:var(--color-text-muted);max-width:720px}.sr-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(300px,1fr);gap:28px;align-items:start;margin-top:20px}@media(max-width:900px){.sr-grid{grid-template-columns:1fr}}.sr-legend{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;margin-top:8px;font-size:12.5px;color:var(--color-text-muted)}.sr-list{display:flex;flex-direction:column}.sr-row{padding:12px 0;border-bottom:1px solid var(--border-card)}.sr-row:first-child{padding-top:0}.sr-row:last-child{border-bottom:none;padding-bottom:0}.sr-row-head{display:flex;align-items:baseline;gap:10px;width:100%;padding:0;background:none;border:none;font:inherit;color:var(--color-heading);text-align:left;cursor:pointer}.sr-name{flex:1;font-size:16px;font-weight:700}.sr-val{font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}.sr-delta{font-size:13px;font-weight:700;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.sr-delta.sr-up{color:#059669}.sr-delta.sr-down{color:#dc2626}.sr-caret{width:12px;font-size:12px;color:var(--color-text-muted)}.sr-bar{height:6px;margin-top:8px;background:var(--border-card);border-radius:3px;overflow:hidden}.sr-bar>span{display:block;height:100%;background:#2563eb;border-radius:3px}.sr-bar-weak>span{background:var(--color-text-muted);opacity:.6}.sr-meta{margin-top:6px;font-size:13px;color:var(--color-text-muted)}.sr-open{margin-top:12px}.sr-chips{display:flex;flex-wrap:wrap;gap:6px}.sr-chip{display:inline-flex;gap:6px;align-items:baseline;padding:5px 10px;font:inherit;font-size:14px;color:var(--color-text);background:var(--bg-input);border:1px solid var(--border-card);border-radius:8px;cursor:pointer}.sr-chip span{font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.sr-chip-low span{color:#dc2626;font-weight:700}.sr-chip.active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.sr-detail{margin-top:12px;padding:12px 14px;background:var(--bg-input);border:1px solid var(--border-card);border-radius:10px}.sr-detail-name{font-size:14.5px;font-weight:700;color:var(--color-heading);line-height:1.35}.sr-detail-meta{margin-top:2px;font-size:13px;color:var(--color-text-muted)}.sr-detail-actions{display:flex;gap:8px;margin-top:10px}.sr-btn{padding:6px 14px;font:inherit;font-size:13.5px;font-weight:600;color:var(--color-text);background:var(--bg-card);border:1px solid var(--border-card);border-radius:8px;cursor:pointer}.sr-btn:hover,.sr-chip:hover{border-color:#2563eb}.sr-row-head:focus-visible,.sr-chip:focus-visible,.sr-btn:focus-visible{outline:2px solid #2563EB;outline-offset:2px}.student-gamification-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:0}.student-gamification-grid.single-col{grid-template-columns:1fr}@media(max-width:960px){.student-gamification-grid{grid-template-columns:1fr!important;gap:16px}}.achievement-grid-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.student-gamification-grid.single-col .achievement-grid-preview{grid-template-columns:repeat(3,1fr);gap:14px;max-width:900px}@media(max-width:600px){.achievement-grid-preview,.student-gamification-grid.single-col .achievement-grid-preview{grid-template-columns:repeat(2,1fr)}}.achievement-item-preview{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 6px;border-radius:12px;transition:all .15s ease;-webkit-user-select:none;user-select:none;min-width:0}.achievement-item-preview.unlocked{background:linear-gradient(135deg,#f59e0b24,#d9770614);border:1.5px solid rgba(245,158,11,.45);box-shadow:0 2px 8px #f59e0b1a}.achievement-item-preview.unlocked:hover{transform:translateY(-2px);border-color:#f59e0b}.achievement-item-preview.locked{background:var(--bg-input);border:1.5px dashed var(--border-input);opacity:.6;filter:grayscale(.85)}.achievement-item-preview .preview-icon{font-size:30px;margin-bottom:6px;line-height:1}.achievement-item-preview .preview-title{font-size:14px;font-weight:800;color:var(--color-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:1.25}.achievement-item-preview .preview-status{font-size:12.5px;margin-top:4px;line-height:1.15}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:16px}.achievement-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px 10px;border-radius:14px;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;-webkit-user-select:none;user-select:none}.achievement-item.unlocked{background:linear-gradient(135deg,#f59e0b1f,#d9770614);border:1.5px solid rgba(245,158,11,.4);box-shadow:0 4px 14px #f59e0b1f}.achievement-item.unlocked:hover{transform:translateY(-3px) scale(1.03);border-color:#f59e0b;box-shadow:0 8px 20px #f59e0b47}.achievement-item.locked{background:var(--bg-input);border:1.5px dashed var(--border-input);opacity:.6;filter:grayscale(.85)}.achievement-item.locked:hover{opacity:.85;filter:grayscale(.3);transform:translateY(-2px)}.achievement-icon{font-size:32px;margin-bottom:8px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.achievement-title{font-size:13px;font-weight:800;color:var(--color-heading);margin-bottom:4px;line-height:1.3}.achievement-desc{font-size:11px;color:var(--color-text-muted);line-height:1.25}.leaderboard-list{display:flex;flex-direction:column;gap:8px;margin-top:14px;max-height:380px;overflow-y:auto;padding-right:4px}.leaderboard-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:12px;background:var(--bg-input);border:1px solid var(--border-card);transition:transform .15s ease,background .15s ease}.leaderboard-row:hover{background:var(--bg-card-hover, var(--bg-input));transform:translate(3px)}.leaderboard-row.rank-1{background:linear-gradient(135deg,#f59e0b38,#d9770626);border:1.5px solid #F59E0B;box-shadow:0 3px 12px #f59e0b33}.leaderboard-row.rank-2{background:linear-gradient(135deg,#cbd5e138,#94a3b826);border:1.5px solid #94A3B8}.leaderboard-row.rank-3{background:linear-gradient(135deg,#d977062e,#b453091f);border:1.5px solid #D97706}.leaderboard-row.current-user{border:2px solid var(--color-text-link, #2563EB);background:linear-gradient(135deg,#2563eb2e,#60a5fa1a)}.leaderboard-rank-badge{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;border-radius:50%;margin-right:10px;flex-shrink:0}#achievement-toast-container{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:99999;display:flex;flex-direction:column;gap:12px;align-items:center;pointer-events:none;max-width:90vw;width:440px}.achievement-toast{pointer-events:auto;position:relative;width:100%;background:linear-gradient(135deg,#1e293b,#0f172a);border:2px solid #F59E0B;border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 12px 36px #00000073,0 0 24px #f59e0b59;cursor:pointer;overflow:hidden;animation:toastBounceIn .5s cubic-bezier(.175,.885,.32,1.275);transition:transform .2s ease,box-shadow .2s ease}.achievement-toast:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 16px 42px #0000008c,0 0 32px #f59e0b8c}.achievement-toast-shine{position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:skew(-25deg);animation:toastShine 2.5s infinite}.achievement-toast-icon{font-size:38px;line-height:1;flex-shrink:0;filter:drop-shadow(0 4px 10px rgba(245,158,11,.5));animation:iconPop .6s cubic-bezier(.175,.885,.32,1.275)}.achievement-toast-body{flex:1;min-width:0;text-align:left}.achievement-toast-header{font-size:12px;font-weight:800;color:#f59e0b;text-transform:uppercase;letter-spacing:.8px;margin-bottom:2px}.achievement-toast-title{font-size:16px;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.achievement-toast-desc{font-size:13px;color:#cbd5e1;margin-top:2px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.achievement-toast-close{background:#ffffff1f;border:none;color:#94a3b8;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;flex-shrink:0;transition:all .15s ease}.achievement-toast-close:hover{background:#ffffff40;color:#fff}@keyframes toastBounceIn{0%{opacity:0;transform:translateY(-50px) scale(.85)}70%{transform:translateY(6px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastShine{0%{left:-100%}40%,to{left:150%}}@keyframes iconPop{0%{transform:scale(.5) rotate(-15deg)}70%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0)}}#sk-toast-container{position:fixed;bottom:24px;right:24px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:90vw;width:380px}.sk-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:13px 18px;border-radius:12px;background:#0f172af0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:13.5px;font-weight:600;box-shadow:0 10px 30px #0006;animation:skToastSlideIn .35s cubic-bezier(.16,1,.3,1);transition:all .25s ease}.sk-toast.sk-toast-info{border-left:4px solid #38BDF8}.sk-toast.sk-toast-success{border-left:4px solid #10B981}.sk-toast.sk-toast-warning{border-left:4px solid #F59E0B}.sk-toast.sk-toast-error{border-left:4px solid #EF4444}@keyframes skToastSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sidebar-exam-switcher{display:flex;gap:6px;background:var(--bg-input);padding:4px;border-radius:12px;border:1px solid var(--border-card);margin-bottom:14px}.sidebar-exam-tab{flex:1;padding:8px 12px;border-radius:8px;font-size:15px;font-weight:800;border:none;cursor:pointer;background:transparent;color:var(--color-text-muted);transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.sidebar-exam-tab.active-ege{background:var(--color-text-link);color:#fff;box-shadow:0 3px 10px #2563eb4d}.sidebar-exam-tab.active-oge{background:#10b981;color:#fff;box-shadow:0 3px 10px #10b9814d}.kimscan-result-card:hover{transform:translateY(-2px);border-color:var(--color-text-link)!important;box-shadow:0 6px 18px #00000014}.btn-kimscan-solve:hover{transform:translateY(-1px);filter:brightness(1.1);box-shadow:0 4px 14px #2563eb59}#kimscan-dropzone:hover{background:#38bdf80a!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar-brand-box{text-align:center;padding:0 4px;margin-bottom:20px;background:transparent;border:none;box-shadow:none;position:relative;-webkit-user-select:none;user-select:none}.lite-device *,.lite-device *:before,.lite-device *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.lite-device .sidebar-kimscanner-btn,.lite-device .exam-notification{animation:none!important;filter:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:600px){.landing-navbar{flex-wrap:wrap;gap:10px 12px;padding:12px 14px}.landing-nav-actions{flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap;gap:8px}.landing-nav-actions .btn-landing-login{display:none}.btn-landing-login,.btn-landing-start{padding:8px 14px;font-size:13px}.btn-theme-toggle-landing{padding:7px 10px;font-size:14px}.landing-brand-name{font-size:17px}.landing-version-tag{font-size:9px}}.gradient-text{background:linear-gradient(135deg,#2563eb,#7c3aed,#f87171);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-pill{display:flex;flex-direction:column;align-items:center}.stat-num{font-size:22px;font-weight:900;color:#2563eb}.stat-desc{font-size:12.5px;color:var(--color-text-muted)}.stat-divider{width:1px;height:28px;background:var(--border-card)}.window-bar{display:flex;align-items:center;gap:8px;padding:12px 18px;background:#1e293b;border-bottom:1px solid #334155}.window-dot{width:11px;height:11px;border-radius:50%}.window-dot.red{background:#ef4444}.window-dot.yellow{background:#f59e0b}.window-dot.green{background:#10b981}.window-title{font-size:12.5px;color:#94a3b8;margin-left:8px;font-family:JetBrains Mono,monospace}.window-body{display:grid;grid-template-columns:3fr 2fr;min-height:200px}@media(max-width:768px){.window-body{grid-template-columns:1fr}}.preview-code-pane{padding:20px;font-family:JetBrains Mono,monospace;font-size:13.5px;line-height:1.6;background:#020617}.code-line{margin-bottom:2px}.code-line.indent{padding-left:20px}.code-line.indent2{padding-left:40px}.c-kw{color:#fca5a5;font-weight:700}.c-fn{color:#60a5fa}.c-comment{color:#64748b;font-style:italic}.preview-ai-pane{padding:20px;background:#1e293b;border-left:1px solid #334155;display:flex;flex-direction:column;gap:12px}.ai-badge{font-size:13px;font-weight:800;color:#38bdf8}.ai-msg{font-size:13px;line-height:1.5;color:#e2e8f0;background:#0f172a99;padding:12px;border-radius:12px;border:1px solid #334155}.section-tag{font-size:13px;font-weight:800;color:#2563eb;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.section-title{font-size:36px;font-weight:900;margin:0 0 40px;color:var(--color-heading)}.feature-icon{font-size:32px;margin-bottom:14px}.footer-links{display:flex;gap:16px}.footer-links a{color:var(--color-text-link);text-decoration:none;font-weight:600}.lp{--lp-accent: var(--color-text-link);--lp-max: 1120px;width:100%;flex:1 0 100%;position:relative;z-index:10;min-height:100vh;overflow-x:hidden;background:var(--bg-body-1);color:var(--color-text);font-family:Golos Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}.lp *,.lp *:before,.lp *:after{box-sizing:border-box}.lp-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;padding:14px max(20px,calc((100% - var(--lp-max)) / 2));padding-top:calc(14px + env(safe-area-inset-top,0px));background:var(--bg-body-1);background:color-mix(in srgb,var(--bg-body-1) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-card)}.lp-brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:18px;color:var(--color-heading);text-decoration:none}.lp-brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--lp-accent);color:#fff;font-size:16px}.lp-nav-links{display:flex;gap:22px;margin-left:12px}.lp-nav-links a{color:var(--color-text-muted);text-decoration:none;font-weight:600;font-size:15px}.lp-nav-links a:hover{color:var(--color-heading)}.lp-nav-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.lp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border-radius:10px;border:1.5px solid transparent;font:inherit;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.lp-btn:active{transform:translateY(1px)}.lp-btn:focus-visible,.lp-link:focus-visible,.lp-icon-btn:focus-visible{outline:2px solid var(--lp-accent);outline-offset:2px}.lp-btn-primary{background:var(--lp-accent);color:#fff}.lp-btn-primary:hover{background:var(--color-text-link-hover, var(--lp-accent))}.lp-btn-outline{background:transparent;border-color:var(--border-input);color:var(--color-heading)}.lp-btn-outline:hover{border-color:var(--lp-accent)}.lp-btn-ghost{background:transparent;color:var(--color-heading)}.lp-btn-ghost:hover{background:var(--bg-card)}.lp-btn-lg{min-height:50px;padding:12px 22px;font-size:16px}.lp-icon-btn{display:grid;place-items:center;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:var(--color-text-muted);cursor:pointer}.lp-icon-btn:hover{background:var(--bg-card);color:var(--color-heading)}.lp-link{padding:0;border:none;background:none;font:inherit;font-weight:700;color:var(--lp-accent);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.lp main>section{width:100%;max-width:var(--lp-max);margin:0 auto;padding-inline:20px}.lp-eyebrow{margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--lp-accent)}.lp-title{margin:0 0 20px;font-size:clamp(34px,5vw,56px);line-height:1.08;letter-spacing:-.02em;font-weight:800;color:var(--color-heading);text-wrap:balance}.lp-h2{margin:0 0 28px;font-size:clamp(26px,3.4vw,38px);line-height:1.15;letter-spacing:-.015em;font-weight:800;color:var(--color-heading);text-wrap:balance}.lp-h3{margin:0 0 10px;font-size:22px;font-weight:800;color:var(--color-heading)}.lp-lead{margin:0 0 28px;font-size:19px;color:var(--color-text-muted);max-width:36em}.lp-lead-sm{font-size:17px}.lp-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;padding-block:72px 56px}.lp-cta{display:flex;flex-wrap:wrap;gap:12px}.lp-cta-center{justify-content:center}.lp-cta-note{margin:18px 0 0;font-size:15px;color:var(--color-text-muted)}.lp-preview{margin:0;padding:20px;border-radius:16px;background:var(--bg-card);border:1px solid var(--border-card);box-shadow:0 24px 48px -24px #0f172a40}.lp-preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.lp-preview-title{font-weight:800;color:var(--color-heading)}.lp-preview-sub{font-size:13px;color:var(--color-text-muted)}.lp-live{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#0596691f;color:#047857;font-size:13px;font-weight:700}.lp-live-dot{width:8px;height:8px;border-radius:50%;background:#059669;animation:lpPulse 2s ease-in-out infinite}@keyframes lpPulse{50%{opacity:.35}}.lp-heat{display:grid;gap:6px;overflow-x:auto}.lp-heat-row{display:grid;grid-template-columns:84px repeat(6,minmax(36px,1fr));gap:6px;align-items:center}.lp-heat-row>span{display:grid;place-items:center;height:34px;border-radius:7px;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.lp-heat-headrow>span{height:22px;font-size:12px;color:var(--color-text-muted)}.lp-heat-row>.lp-heat-name{place-items:center start;font-size:13px;font-weight:600;color:var(--color-text);white-space:nowrap}.lp-heat .h0{background:var(--bg-input);color:var(--color-text-muted)}.lp-heat .h1{background:#c6f6d5;color:#22543d}.lp-heat .h2{background:#fefcbf;color:#744210}.lp-heat .h3{background:#feebc8;color:#7b341e}.lp-heat .h4{background:#fed7d7;color:#822727}.lp-preview-foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--border-card);font-size:14px;color:var(--color-text-muted)}.lp-preview-foot b{color:#b91c1c}.lp-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;width:calc(100% - 40px)!important;max-width:calc(var(--lp-max) - 40px)!important;margin:8px auto 24px!important;padding:0!important;border-radius:14px;overflow:hidden;background:var(--border-card);border:1px solid var(--border-card)}.lp-facts>div{display:flex;flex-direction:column;gap:2px;padding:20px 22px;background:var(--bg-card)}.lp-facts b{font-size:26px;font-weight:800;color:var(--color-heading);font-variant-numeric:tabular-nums}.lp-facts span{font-size:14px;color:var(--color-text-muted)}.lp-section{padding-block:72px}.lp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}.lp-steps li{padding:24px;border-radius:14px;background:var(--bg-card);border:1px solid var(--border-card)}.lp-steps h3{margin:14px 0 8px;font-size:19px;color:var(--color-heading)}.lp-steps p{margin:0;color:var(--color-text-muted)}.lp-step-num{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--lp-accent);color:var(--lp-accent);font-weight:800}.lp-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}.lp-list{margin:0;padding:0;list-style:none;display:grid;gap:4px}.lp-list li{padding:16px 0;border-bottom:1px solid var(--border-card);color:var(--color-text-muted)}.lp-list li:first-child{padding-top:0}.lp-list b{color:var(--color-heading)}.lp-note>*{max-width:760px}.lp-note{padding-block:40px;border-block:1px solid var(--border-card)}.lp-note p{margin:0;font-size:17px;color:var(--color-text-muted)}.lp-author-text{margin:0;max-width:760px;font-size:19px;color:var(--color-text)}.lp-author-text a{color:var(--lp-accent);font-weight:700}.lp-final{padding-block:72px 88px;text-align:center}.lp-final p{margin:-12px 0 28px;color:var(--color-text-muted);font-size:17px}.lp-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:24px max(20px,calc((100% - var(--lp-max)) / 2));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-card);font-size:14px;color:var(--color-text-muted)}.lp-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}.lp-footer a{color:var(--color-text-muted);text-decoration:none}.lp-footer a:hover{color:var(--color-heading)}[data-theme=dark] .lp-heat .h1{background:#48bb7838;color:#9ae6b4}[data-theme=dark] .lp-heat .h2{background:#ecc94b33;color:#faf089}[data-theme=dark] .lp-heat .h3{background:#ed893638;color:#fbd38d}[data-theme=dark] .lp-heat .h4{background:#f565653d;color:#feb2b2}[data-theme=dark] .lp-btn-primary,[data-theme=dark] .lp-brand-mark{color:#0f172a}[data-theme=dark] .lp-preview-foot b{color:#f87171}[data-theme=dark] .lp-live{color:#a7f3d0;background:#10b98129}[data-theme=dark] .lp-preview{box-shadow:0 24px 48px -24px #0009}@media(max-width:900px){.lp-hero,.lp-split{grid-template-columns:minmax(0,1fr);gap:36px}.lp-hero{padding-block:44px 36px}.lp-steps{grid-template-columns:minmax(0,1fr)}.lp-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-section{padding-block:52px}.lp-nav-links{display:none}}@media(max-width:480px){.lp-hide-sm{display:none}.lp-cta .lp-btn{width:100%}.lp-lead{font-size:17px}.lp-facts b{font-size:22px}.lp-heat-row{grid-template-columns:70px repeat(6,minmax(30px,1fr));gap:4px}}@media(prefers-reduced-motion:reduce){.lp-live-dot{animation:none}.lp-btn{transition:none}}.tutorial-theory{font-size:16px;line-height:1.75;color:var(--color-text)}.tutorial-theory h3{font-size:18px;font-weight:700;color:var(--color-heading);margin:28px 0 8px}.tutorial-theory p{margin:10px 0}.tutorial-theory ul,.tutorial-theory ol{padding-left:22px;margin:10px 0}.tutorial-theory li{margin:6px 0}.tutorial-theory code,.subtype-desc code,.anti-card code,.grob-card code,.hacks-list code{background:var(--bg-input);color:var(--color-heading);border:1px solid var(--border-card);border-radius:5px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:.88em;font-weight:600}.tutorial-theory table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14.5px}.tutorial-theory th{color:var(--color-heading);font-weight:700;padding:8px 12px;border-bottom:1px solid var(--border-input);text-align:left}.tutorial-theory td{padding:8px 12px;border-bottom:1px solid var(--border-card);vertical-align:top}.tutorial-theory tr:last-child td{border-bottom:0}.tutorial-theory .example-task{background:var(--bg-input);border:1px solid var(--border-card);border-radius:10px;padding:12px 16px}.callout{margin:16px 0;padding:10px 16px;border-radius:8px;line-height:1.65;background:var(--bg-input);border-left:3px solid var(--border-input)}.callout-warn{border-left-color:#d97706}.callout-tip{border-left-color:#059669}.callout-fun{border-left-color:#2563eb}.insert-heading{font-size:18px;font-weight:700;color:var(--color-heading);margin:0 0 14px;border:0!important;padding:0!important}.anti-list{display:flex;flex-direction:column;gap:12px}.anti-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px}.anti-card{border-radius:8px;padding:12px 16px;line-height:1.6;background:var(--bg-input);border-left:3px solid var(--border-input)}.anti-bad{border-left-color:#dc2626}.anti-good{border-left-color:#059669}.anti-pill{display:block;font-size:12px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-bottom:6px;color:var(--color-text-muted)}.anti-bad .anti-pill{color:#dc2626}.anti-good .anti-pill{color:#059669}.anti-title{font-weight:700;font-size:15px;margin-bottom:4px;color:var(--color-heading)}.anti-text{font-size:14.5px;color:var(--color-text)}.grob-card{margin-top:24px;border-radius:10px;border:1px solid var(--border-card);background:var(--bg-card)}.grob-head{display:flex;align-items:baseline;gap:10px;padding:14px 18px 0}.grob-head h3{margin:0;font-size:16px;font-weight:700;color:var(--color-heading);border:0!important;padding:0!important}.grob-tag{font-weight:700;font-size:12px;letter-spacing:1px;color:var(--color-text-muted)}.grob-desc{margin:0;padding:8px 18px 4px;font-size:15px;line-height:1.7;color:var(--color-text)}.grob-fix{margin:10px 18px 16px;padding:10px 14px;background:var(--bg-input);border-radius:8px;font-size:14.5px;line-height:1.65;color:var(--color-text)}.grob-fix-label{display:block;font-size:12px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px}.hacks-box{margin-top:28px}.hacks-list{list-style:none;counter-reset:hack;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.hacks-list li{counter-increment:hack;display:flex;gap:12px;align-items:baseline;font-size:15px;line-height:1.7;color:var(--color-text)}.hacks-list li:before{content:counter(hack) ".";flex-shrink:0;min-width:20px;font-weight:700;color:var(--color-text-muted)}.ta-wrap{width:100%;max-width:none}.ta-wrap .ta-card{width:100%;box-sizing:border-box}.ta-topbar{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ta-crumb{font-size:14px;color:var(--color-text-muted)}.ta-card{padding:28px 32px}.ta-head{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--border-card)}.ta-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ta-tags .ta-tag{font-size:12.5px;font-weight:600;color:var(--color-text-muted);background:var(--bg-input);border:1px solid var(--border-card);border-radius:6px;padding:2px 8px}.ta-head .ta-title{font-size:24px;font-weight:700;margin:0;color:var(--color-heading);line-height:1.3}.ta-topic{font-size:15px;color:var(--color-text-muted);margin-top:4px}.ta-body{margin-bottom:20px}.ta-summary{padding:12px 16px;margin-bottom:16px;background:var(--bg-input);border-left:3px solid var(--border-input);border-radius:8px;line-height:1.65;font-size:15.5px}.ta-subtypes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px}.ta-subtype{display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:10px;cursor:pointer;transition:border-color .15s}.ta-subtype:hover{border-color:#2563eb}.ta-subtype-name{font-weight:700;font-size:15px;color:var(--color-heading)}.subtype-desc{font-size:14px;color:var(--color-text-muted);line-height:1.55}.ta-subtype-go{margin-top:auto;font-size:13px;font-weight:600;color:#2563eb}.ta-gen{margin-top:20px;padding:18px 20px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:10px}.ta-gen-loading{text-align:center;color:var(--color-text-muted)}.ta-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px}.ta-actions-main{display:flex;flex-wrap:wrap;gap:10px}.ta-pager{display:flex;justify-content:space-between;gap:10px;margin:14px 0 28px}.ta-pager-btn{border:0;background:none;font:inherit;font-size:14px;color:var(--color-text-muted);cursor:pointer;padding:6px 2px}.ta-pager-btn:hover{color:var(--color-heading)}.ta-credit{margin-top:14px;padding:18px 20px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:10px}.ta-credit-title{margin:0 0 8px;font-size:17px;font-weight:700;color:var(--color-heading)}.ta-credit-rules{margin:0 0 14px;padding-left:20px;line-height:1.7;font-size:15px}.ta-credit-foot{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.ta-credit-note{font-size:13.5px;color:var(--color-text-muted)}.tt-btn{padding:9px 16px;border:1px solid var(--border-input);border-radius:8px;background:var(--bg-card);color:var(--color-text);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.tt-btn:hover:not(:disabled){border-color:#2563eb}.tt-btn-primary{background:#2563eb;border-color:#2563eb;color:#fff}.tt-btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.tt-btn-sm{padding:5px 12px;font-size:13px}.tt-btn:disabled{opacity:.5;cursor:not-allowed}.tt-btn:focus-visible,.ta-pager-btn:focus-visible{outline:2px solid #2563EB;outline-offset:2px}.tutorial-code-title{font-size:14px;font-weight:700;color:var(--color-heading)}.tutorial-code-btns{display:flex;gap:8px}@media(max-width:760px){.ta-card{padding:20px 16px}.ta-head .ta-title{font-size:21px}}.code-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}.code-row .tutorial-code-box{display:flex;flex-direction:column;margin-top:14px;min-width:0}.code-row .tutorial-code-header{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px}.code-row .tutorial-code-header>div:first-child{min-height:2.8em;line-height:1.4}.code-row .tutorial-code-pre{flex:1;font-size:12.5px;white-space:pre;overflow-x:auto}@media(max-width:760px){.code-row{grid-template-columns:1fr}}.skills-window{margin-top:14px;padding:12px 16px;background:#0f172a;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px}.skill-chip{font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:600;color:#e2e8f0;background:#1e293b;border:1px solid #334155;border-radius:8px;padding:4px 10px}.grob-head h3,.insight-heading{border:0!important;padding:0!important}@media(max-width:640px){.table-shell td:first-child,.table-shell th:first-child{font-size:15px!important;max-width:118px;overflow:hidden;text-overflow:ellipsis}.table-shell td:first-child span+span{display:none}.table-shell td:not(:first-child),.table-shell th:not(:first-child){font-size:13px!important;min-width:46px}.table-shell .full-table{font-size:13px}.mc-chart{overflow-x:auto;-webkit-overflow-scrolling:touch}.mc-chart>svg{min-width:560px}select,#student-works-select{max-width:100%;box-sizing:border-box}.sr-radar svg text{font-size:15px}.sr-sub{font-size:13px}div:has(>.btn-run){flex-wrap:wrap}.btn-run,.btn-save-py,.btn-clear-console{white-space:nowrap;flex:1 1 auto;min-height:40px}}@media(max-width:850px){.sidebar-toggle{transition:transform .25s ease,opacity .25s ease,background-color .3s ease}.sidebar-toggle.toggle-away{transform:translateY(-140%);opacity:0;pointer-events:none}}.tt-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:14px 20px;margin-bottom:18px}.tt-title{margin:0;font-size:38px;font-weight:800;color:var(--color-heading);line-height:1.15}.tt-sub{margin:8px 0 0;font-size:18px;color:var(--color-text-muted)}.tt-seg{display:inline-flex;padding:3px;background:var(--bg-input);border:1px solid var(--border-card);border-radius:12px}.tt-seg-btn{padding:10px 24px;border:none;border-radius:9px;background:none;font:inherit;font-size:17px;font-weight:700;color:var(--color-text-muted);cursor:pointer}.tt-seg-btn:hover{color:var(--color-heading)}.tt-seg-btn.active{background:var(--bg-card);color:var(--color-heading);box-shadow:0 1px 3px #0f172a29}.tt-picker{margin-bottom:20px;padding:18px 20px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:16px}.tt-picker-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:14px}.tt-picker-label{font-size:18px;font-weight:700;color:var(--color-heading)}.tt-search{flex:1;min-width:200px;max-width:380px;padding:11px 14px;border:1px solid var(--border-card);border-radius:10px;background:var(--bg-input);color:var(--color-text);font:inherit;font-size:16px}.tt-search:focus{outline:none;border-color:#2563eb}.tt-groups{display:flex;flex-direction:column;gap:4px}.tt-group+.tt-group{border-top:1px solid var(--border-card);padding-top:4px}.tt-group-head{display:flex;align-items:center;gap:8px;width:100%;padding:12px 4px;border:none;background:none;font:inherit;font-size:19px;font-weight:700;color:var(--color-heading);cursor:pointer;text-align:left}.tt-group-caret{width:14px;color:var(--color-text-muted)}.tt-group-count{font-size:15px;font-weight:600;color:var(--color-text-muted)}.tt-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;padding:4px 0 14px}.tt-item{--h: 207;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:150px;padding:18px 20px;border:1px solid hsl(var(--h) 95% 78%);border-radius:20px;background:linear-gradient(160deg,hsl(var(--h) 100% 94%),hsl(var(--h) 100% 88%));font:inherit;text-align:left;color:var(--color-text-muted);cursor:pointer;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.tt-item-num{font-size:34px;font-weight:800;line-height:1}.tt-item-name{font-size:17px;font-weight:600;line-height:1.3}.tt-item-skill{margin-top:auto;padding:2px 9px;border-radius:999px;background:#ffffffbf;color:hsl(var(--h) 100% 32%);font-size:11.5px;font-weight:700;line-height:1.4;white-space:nowrap}.tt-item.active .tt-item-skill{background:#ffffff38;color:#fff}.tt-item.ready{color:var(--color-text)}.tt-item.ready:after{content:"";position:absolute;top:16px;right:16px;width:9px;height:9px;border-radius:50%;background:#2563eb}.tt-item:hover{border-color:hsl(var(--h) 100% 50%);transform:translateY(-2px);box-shadow:0 6px 16px #2563eb24}.tt-item.active{background:hsl(var(--h) 100% 45%);border-color:hsl(var(--h) 100% 45%);color:#fff}.tt-item.active:after{background:#fff}.tt-chips{display:flex;flex-wrap:wrap;gap:8px}.tt-chip{position:relative;border:1px solid var(--border-card);background:var(--bg-input);color:var(--color-text-muted);font:inherit;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.tt-chip{padding:8px 14px;border-radius:10px;font-size:14px}.tt-chip.ready{color:var(--color-text)}.tt-chip.ready:after{content:"";position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:#2563eb}.tt-chip:hover{border-color:#2563eb}.tt-chip.active{background:#2563eb;border-color:#2563eb;color:#fff}.tt-chip.active:after{background:#fff}.tt-chip:focus-visible,.tt-item:focus-visible,.tt-group-head:focus-visible,.tt-seg-btn:focus-visible{outline:2px solid #2563EB;outline-offset:2px}.tt-legend{display:flex;align-items:center;gap:6px;margin-top:14px;font-size:15px;color:var(--color-text-muted)}.tt-legend-dot{width:6px;height:6px;border-radius:50%;background:#2563eb}@media(max-width:640px){.tt-title{font-size:24px}.tt-seg{width:100%}.tt-seg-btn{flex:1;padding:9px 8px}.tt-search{max-width:none;width:100%}}.ta-sandbox-btn{margin-left:auto}.ta-sandbox-btn[aria-pressed=true]{background:#2563eb;border-color:#2563eb;color:#fff}body.tutorial-sandbox-open:has(.ta-wrap) .compiler-column{display:flex;position:fixed;top:64px;right:0;bottom:0;width:min(640px,100vw);margin:0;padding:16px;overflow-y:auto;z-index:300;box-sizing:border-box;background:var(--bg-card);border-left:1px solid var(--border-card);box-shadow:-12px 0 32px #0f172a2e}[data-theme=dark] .tt-item{border-color:hsl(var(--h) 70% 36%);background:linear-gradient(160deg,hsl(var(--h) 65% 22%),hsl(var(--h) 65% 16%))}[data-theme=dark] .tt-item-skill{background:#ffffff1f;color:hsl(var(--h) 100% 78%)}[data-theme=dark] .tt-item.ready{color:#e2e8f0}[data-theme=dark] .tt-item.active{background:hsl(var(--h) 75% 42%);border-color:hsl(var(--h) 75% 55%)}.tutorial-code-pre,.skill-chip{font-variant-ligatures:none}.answer-grid{width:100%;box-sizing:border-box}.answer-grid-scroll{overflow-x:auto;max-width:100%;padding-bottom:2px}.answer-grid-table{border-collapse:separate;border-spacing:4px;width:auto;margin:0;background:none;border:none}.answer-grid-table tr{background:none}.answer-grid-table td,.answer-grid-table th{border:none;background:none;padding:0;box-shadow:none}.answer-grid-table th{font-size:11.5px;font-weight:700;color:var(--color-text-muted);padding:0 6px;text-align:center;white-space:nowrap}.answer-grid-table th.ag-rowhead{text-align:right;font-size:12.5px;color:var(--color-heading)}.ag-cell{box-sizing:content-box;min-width:8ch;padding:8px 10px;border:1.5px solid var(--border-input);border-radius:8px;background:var(--bg-input);color:var(--color-input);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:15px;text-align:center;outline:none;transition:border-color .15s,box-shadow .15s,width .12s}.ag-cell:focus{border-color:var(--color-text-link);box-shadow:0 0 0 3px #2563eb24}.correct .ag-cell{border-color:#10b981}.incorrect .ag-cell{border-color:#ef4444}.answer-grid-hint{margin-top:4px;font-size:12px;color:var(--color-text-muted)}.answer-grid-table.ag-single .ag-rowhead,.answer-grid-table.ag-single .ag-corner{display:none}@media(min-width:1101px){#teacher-send-panel{max-height:calc(100vh - 95px);overflow-y:auto;overscroll-behavior:contain}#send-assignment-btn{position:sticky;bottom:0;z-index:2}}.sk-confirm-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .15s ease}.sk-confirm{width:min(440px,100%);background:var(--bg-card);color:var(--color-text);border:1px solid var(--border-card);border-radius:16px;padding:22px 22px 18px;box-shadow:0 24px 60px #0f172a47}.sk-confirm-title{margin:0 0 10px;font-size:19px;font-weight:800;color:var(--color-heading)}.sk-confirm-text{white-space:pre-line;font-size:15px;line-height:1.55;color:var(--color-text-muted)}.sk-confirm-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}.sk-confirm-actions button{border-radius:10px;padding:10px 16px;font-size:15px;font-weight:800;cursor:pointer;font-family:inherit}.sk-confirm-cancel{background:var(--bg-input);color:var(--color-text);border:1.5px solid var(--border-input)}.sk-confirm-ok{background:#2563eb;color:#fff;border:1.5px solid #2563EB}.sk-confirm-ok.danger{background:#dc2626;border-color:#dc2626}.sk-confirm-actions button:focus-visible{outline:2px solid #2563EB;outline-offset:2px}body.exam-mode .compiler-column{display:none!important}.task-ide-editor{height:240px}body.exam-mode .task-ide-editor{height:360px}.sidebar{--sb-accent: var(--color-text-link);--sb-hover: color-mix(in srgb, var(--color-text) 6%, transparent);--sb-active: color-mix(in srgb, var(--color-text-link) 12%, transparent);background:var(--bg-card);border-right:1px solid var(--border-card);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:14px 12px;align-items:stretch;text-align:left;font-family:Golos Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.sidebar .sidebar-top{width:100%;display:flex;flex-direction:column;gap:6px}.sidebar svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar .sb-brand{margin:2px 4px 10px;padding:0;text-align:left}.sidebar .sb-brand-link{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:800;color:var(--color-heading);text-decoration:none;letter-spacing:-.01em}.sidebar .sb-brand-link .lp-brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--sb-accent);color:#fff;font-size:16px}.sidebar .sb-user{align-items:center;gap:10px;padding:8px;margin-bottom:4px;border-radius:10px;border:1px solid var(--border-card);background:transparent}.sidebar .sb-avatar{width:36px;height:36px;min-width:36px;border-radius:50%;display:grid;place-items:center;background:var(--sb-active);color:var(--sb-accent);cursor:pointer;overflow:hidden}.sidebar .sb-avatar span{font-size:15px!important;font-weight:700!important;color:var(--sb-accent)!important}.sidebar .sb-avatar img{width:100%;height:100%;object-fit:cover}.sidebar .sb-user-text{min-width:0;display:flex;flex-direction:column;gap:1px}.sidebar .sb-user-name{font-size:15px;font-weight:700;color:var(--color-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .sb-user-role{font-size:13px;color:var(--color-text-muted);font-weight:500}.sidebar .sb-user-role a{font-weight:600!important}.sidebar .sb-nav{display:flex;flex-direction:column;gap:2px}.sidebar .sb-nav-group{flex-direction:column;gap:2px;width:100%;margin:0!important}.sidebar .sb-nav-item,.sidebar .btn-tutorials-nav.sb-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;margin:0;border:0;border-radius:8px;background:transparent!important;box-shadow:none!important;transform:none!important;color:var(--color-text)!important;font:inherit;font-size:15px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease}.sidebar .sb-nav-item svg{color:var(--color-text-muted)}.sidebar .sb-nav-item:hover{background:var(--sb-hover)!important}.sidebar .sb-nav-item.active{background:var(--sb-active)!important;color:var(--sb-accent)!important;font-weight:600}.sidebar .sb-nav-item.active svg{color:var(--sb-accent)}.sidebar .btn-generate.sb-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:6px 0 2px;padding:10px 14px;border:0;border-radius:10px;background:var(--sb-accent)!important;color:#fff!important;box-shadow:none!important;font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:filter .12s ease}.sidebar .btn-generate.sb-primary:hover{filter:brightness(1.08)}.sidebar .btn-generate.sb-primary svg{stroke-width:2.2}.sidebar .sidebar-section{width:100%}.sidebar .sb-section{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-card)}.sidebar .sb-section-title,.sidebar #sidebar-teacher-assignment summary{list-style:none;display:flex;align-items:center;gap:6px;padding:2px 4px 6px!important;margin:0!important;border:0!important;font-size:12px!important;font-weight:700!important;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)!important;cursor:pointer}.sidebar .sb-section-title::-webkit-details-marker{display:none}.sidebar #sidebar-teacher-assignment{margin-top:6px!important}.sidebar #sidebar-teacher-assignment summary .arrow{display:none}.sidebar .sb-section-body{display:flex;flex-direction:column;gap:8px;margin-top:4px}.sidebar .sidebar-exam-switcher{display:flex;gap:2px;padding:3px;border-radius:9px;background:var(--bg-input);border:0;margin:0}.sidebar .sidebar-exam-tab{flex:1;padding:6px 8px;border:0!important;border-radius:7px;background:transparent!important;color:var(--color-text-muted)!important;box-shadow:none!important;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.sidebar .sidebar-exam-tab.active-ege,.sidebar .sidebar-exam-tab.active-oge{background:var(--bg-card)!important;color:var(--color-heading)!important;box-shadow:0 1px 2px #0f172a1f!important}.sidebar .sidebar-catalog-select,.sidebar .sb-input{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:8px;background:var(--bg-card);border:1px solid var(--border-input);color:var(--color-text);font:inherit;font-size:14px;font-weight:500;outline:none;transition:border-color .12s ease,box-shadow .12s ease}.sidebar .sidebar-catalog-select:focus,.sidebar .sb-input:focus{border-color:var(--sb-accent);box-shadow:0 0 0 3px var(--sb-active)}.sidebar .sidebar-catalog-combo{gap:6px}.sidebar .sidebar-catalog-combo>*{flex:1;min-width:0}.sidebar .sidebar-kimscanner-btn.sb-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:2px 0 0;padding:9px 12px;border-radius:8px;border:1px solid var(--border-input);background:transparent!important;animation:none!important;color:var(--color-text)!important;box-shadow:none!important;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.sidebar .sidebar-kimscanner-btn.sb-secondary:hover{background:var(--sb-hover)!important}.sidebar .sb-footer{width:100%;margin-top:auto;padding-top:14px;display:flex;flex-direction:column;gap:10px}.sidebar .sb-footer-row{display:flex;align-items:center;gap:6px}.sidebar .sb-icon-btn{display:grid;place-items:center;width:36px;height:36px;padding:0!important;border-radius:8px!important;border:1px solid var(--border-input)!important;background:transparent!important;color:var(--color-text)!important;cursor:pointer}.sidebar .sb-icon-btn:hover{background:var(--sb-hover)!important}.sidebar #theme-icon{display:grid;place-items:center}.sidebar #sidebar-logout-container{flex:1;margin:0!important;padding:0!important;border:0!important}.sidebar .sb-logout{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--color-text-muted);font:inherit;font-size:14px;font-weight:500;cursor:pointer}.sidebar .sb-logout:hover{background:color-mix(in srgb,#DC2626 10%,transparent);color:#dc2626}.sidebar .sb-credits{font-size:12px;line-height:1.6;color:var(--color-text-muted);padding:0 4px}.sidebar .sb-credits a{color:inherit;text-decoration:none;font-weight:600}.sidebar .sb-credits a:hover{color:var(--sb-accent)}.sidebar .sb-credits-links{display:inline-flex;gap:10px;margin-left:8px}.sidebar .btn-tutorials-nav.sb-nav-item{justify-content:flex-start!important;padding:9px 10px!important;height:auto!important;min-height:0!important}.sidebar .sb-avatar{background:var(--sb-active)!important;box-shadow:none!important}[data-theme=dark] .sidebar .btn-generate.sb-primary{color:#0f172a!important}.sidebar-toggle{width:34px;height:34px;border-radius:8px;background-color:var(--bg-card);color:var(--color-text-muted);border:1px solid var(--border-card);box-shadow:0 1px 2px #0f172a0f}.sidebar-toggle:hover{background-color:var(--bg-input);color:var(--color-heading);transform:none}.sidebar-toggle svg{width:16px;height:16px;stroke-width:2}@media(max-width:850px){.sidebar-toggle{width:44px;height:44px;border-radius:10px;box-shadow:0 2px 8px #0f172a1f}}.sidebar .btn-generate.sb-primary{width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box}.sidebar .sb-nav{position:relative}.sidebar .sb-nav-indicator{position:absolute;left:0;right:0;top:0;height:0;z-index:0;border-radius:8px;background:var(--sb-active);opacity:0;pointer-events:none;transition:transform .28s cubic-bezier(.22,1,.36,1),height .28s cubic-bezier(.22,1,.36,1),opacity .18s ease}.sidebar .sb-nav-item,.sidebar .btn-tutorials-nav.sb-nav-item{position:relative;z-index:1}.sidebar .sb-nav-item.active{background:transparent!important}@media(prefers-reduced-motion:reduce){.sidebar .sb-nav-indicator{transition:opacity .18s ease}}.sidebar .sb-brand-link{font-size:20px}.sidebar .sb-brand-link .lp-brand-mark{width:32px;height:32px;font-size:17px}.sidebar .sb-user-name{font-size:16.5px}.sidebar .sb-user-role{font-size:14px}.sidebar .sb-avatar{width:40px;height:40px;min-width:40px}.sidebar .sb-avatar span{font-size:16px!important}.sidebar .sb-nav-item,.sidebar .btn-tutorials-nav.sb-nav-item{font-size:16.5px!important;padding:10px 12px!important}.sidebar svg{width:20px;height:20px}.sidebar .btn-generate.sb-primary{font-size:16.5px;padding:11px 14px}.sidebar .sb-section-title,.sidebar #sidebar-teacher-assignment summary{font-size:13px!important}.sidebar .sidebar-exam-tab{font-size:15px;padding:7px 8px}.sidebar .sidebar-catalog-select,.sidebar .sb-input{font-size:15.5px;padding:9px 11px}.sidebar .sidebar-kimscanner-btn.sb-secondary{font-size:15.5px;padding:10px 12px}.sidebar .sb-logout{font-size:15.5px}.sidebar .sb-icon-btn{width:40px;height:40px}.sidebar .sb-credits{font-size:13px}.header-box.page-head{background:none!important;box-shadow:none;color:var(--color-heading);text-align:left;padding:4px 2px 0;margin-bottom:20px;border-radius:0}.header-box.page-head h1{font-size:30px!important;font-weight:800;letter-spacing:-.02em;color:var(--color-heading)}.header-box.page-head p{font-size:16px!important;margin-top:6px;color:var(--color-text-muted);opacity:1}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;border-radius:8px;border:1px solid transparent;font:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.ui-btn svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.ui-btn-primary{background:var(--color-text-link);color:#fff}.ui-btn-primary:hover{filter:brightness(1.08)}[data-theme=dark] .ui-btn-primary{color:#0f172a}.ui-btn-secondary{background:var(--bg-card);border-color:var(--border-input);color:var(--color-text)}.ui-btn-secondary:hover,.ui-btn-ghost:hover{background:var(--bg-input)}.ui-btn-ghost{background:transparent;color:var(--color-text-muted)}.ui-btn-danger:hover{background:color-mix(in srgb,#DC2626 10%,transparent);color:#dc2626}.ui-btn:focus-visible,.ui-link:focus-visible,.cl-tile:focus-visible{outline:2px solid var(--color-text-link);outline-offset:2px}.ui-input{flex:1;min-width:160px;padding:8px 11px;border-radius:8px;border:1px solid var(--border-input);background:var(--bg-card);color:var(--color-text);font:inherit;font-size:15px}.ui-input:focus{outline:none;border-color:var(--color-text-link);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-text-link) 15%,transparent)}.ui-link{background:none;border:0;padding:4px 6px;border-radius:6px;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-link);cursor:pointer}.ui-link:hover{background:var(--bg-input)}.ui-link-danger{color:var(--color-text-muted)}.ui-link-danger:hover{color:#dc2626;background:color-mix(in srgb,#DC2626 10%,transparent)}.cl-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:14px;padding:22px 24px;text-align:left}.cl-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.cl-card-title{margin:0;font-size:20px;font-weight:700;color:var(--color-heading)}.st-block{margin-bottom:20px}.st-select{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border-input);color:var(--color-text);font-size:15.5px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .12s}.st-select:hover{border-color:var(--color-text-link)}.st-chevron{display:inline-grid;place-items:center;flex-shrink:0;color:var(--color-text-muted);transition:transform .2s}.st-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.st-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 14px;font-size:15px;font-weight:500;color:var(--color-text);cursor:pointer}.st-opt:hover{background:var(--bg-input)}.st-opt-view{font-weight:600}.st-opt-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-opt .ui-icon-btn{width:30px;height:30px;opacity:.5}.st-opt:hover .ui-icon-btn{opacity:1}.st-opt-group{padding:10px 14px 4px;border-top:1px solid var(--border-card);font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.st-fold{padding:0;overflow:hidden}.st-fold-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.st-fold-head::-webkit-details-marker{display:none}.st-fold-head:hover .st-chevron{color:var(--color-heading)}.st-fold[open]>.st-fold-head .st-chevron{transform:rotate(180deg)}.st-fold-title{display:flex;align-items:center;gap:10px}.st-count{min-width:24px;padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--color-text-muted) 14%,transparent);color:var(--color-text-muted);font-size:13.5px;font-weight:600;line-height:24px;text-align:center}.st-fold-body{padding:4px 24px 22px}.st-name{cursor:pointer;transition:color .12s}.st-name:hover{color:var(--color-text-link);text-decoration:underline;text-underline-offset:3px}.mx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.7fr);gap:12px;margin-bottom:18px}.mx-card{display:flex;flex-direction:column;gap:4px;min-width:0;padding:16px 18px;border:1px solid var(--border-card);border-radius:12px;background:var(--bg-card);color:inherit;font:inherit;text-align:left}.mx-label{margin-bottom:2px;font-size:13.5px;font-weight:600;color:var(--color-text-muted)}.mx-value{display:flex;align-items:baseline;gap:2px;font-size:30px;font-weight:700;line-height:1.15;color:var(--color-heading);font-variant-numeric:tabular-nums}.mx-of{font-size:15px;font-weight:500;color:var(--color-text-muted)}.mx-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-bottom:8px;font-size:13.5px;line-height:1.35;color:var(--color-text-muted)}.mx-meter{height:6px;margin-top:auto;flex-shrink:0;border-radius:99px;background:color-mix(in srgb,var(--color-text-muted) 16%,transparent);overflow:hidden}.mx-meter span{display:block;height:100%;border-radius:inherit;transition:width .5s cubic-bezier(.16,1,.3,1)}.mx-click{cursor:pointer;transition:border-color .12s,background .12s}.mx-click:hover:not(:disabled){border-color:#dc2626}.mx-click.is-on{border-color:#dc2626;background:color-mix(in srgb,#DC2626 6%,var(--bg-card));box-shadow:inset 0 0 0 1px #dc2626}.mx-click:disabled{cursor:default}.mx-hint{margin-top:auto;font-size:13px;font-weight:600;color:#dc2626}.mx-only-low tbody tr:not(.mx-low){display:none}.mx-trend{gap:4px}.mx-trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mx-trend-note{max-width:170px;white-space:normal;text-align:right;line-height:1.35}.mx-arrow{width:22px;height:22px;margin-right:2px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;align-self:center}.mx-spark-wrap{position:relative;height:76px;margin-top:auto}.mx-spark{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.mx-spark stop{stop-color:var(--color-text-link)}.mx-line{fill:none;stroke:var(--color-text-link);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.mx-guide{stroke:#dc2626;stroke-opacity:.35;stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.mx-node{position:absolute;width:20px;height:20px;transform:translate(-50%,-50%);display:grid;place-items:center}.mx-node i{width:7px;height:7px;border-radius:50%;background:var(--bg-card);box-shadow:0 0 0 2px var(--color-text-link);transition:transform .15s}.mx-node.is-last i{width:9px;height:9px;background:var(--color-text-link);box-shadow:0 0 0 5px color-mix(in srgb,var(--color-text-link) 18%,transparent)}.mx-node:hover i{transform:scale(1.35)}.mx-node b{position:absolute;bottom:100%;left:50%;transform:translate(-50%);font-size:12px;font-weight:700;color:var(--color-heading);white-space:nowrap;opacity:0;transition:opacity .12s;pointer-events:none}.mx-node.is-first b{left:0;transform:none}.mx-node.is-end b{left:auto;right:0;transform:none}.mx-node:hover b,.mx-node.is-last b{opacity:1}.mx-spark-wrap:hover .mx-node.is-last:not(:hover) b{opacity:0}@media(max-width:1100px){.mx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mx-trend{grid-column:1 / -1}}@media(max-width:640px){.mx-grid{grid-template-columns:1fr 1fr}.mx-value{font-size:26px}}.cl-loading{padding:14px 0;color:var(--color-text-muted);font-size:15px}.cl-tiles{display:flex;flex-wrap:wrap;gap:8px}.cl-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:120px;padding:10px 14px;border-radius:10px;border:1px solid var(--border-input);background:var(--bg-card);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.cl-tile:hover{border-color:var(--color-text-link)}.cl-tile.active{border-color:var(--color-text-link);background:color-mix(in srgb,var(--color-text-link) 9%,transparent);box-shadow:inset 0 0 0 1px var(--color-text-link)}.cl-tile-name{font-size:17px;font-weight:700;color:var(--color-heading)}.cl-tile-count{font-size:13.5px;color:var(--color-text-muted)}.cl-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:22px 0 12px;padding-top:18px;border-top:1px solid var(--border-card)}.cl-toolbar-title{display:flex;align-items:baseline;gap:10px}.cl-toolbar-name{font-size:18px;font-weight:700;color:var(--color-heading)}.cl-toolbar-count{font-size:14px;color:var(--color-text-muted)}.cl-toolbar-actions{display:flex;flex-wrap:wrap;gap:6px}.cl-empty{padding:28px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.cl-empty-small{padding:18px 12px;border:1px dashed var(--border-input);border-radius:10px}.cl-empty-title{font-size:17px;font-weight:700;color:var(--color-heading)}.cl-empty-text{font-size:15px;color:var(--color-text-muted);max-width:440px}.cl-assign{margin-top:18px}.cl-assign-label{display:block;margin-bottom:6px;font-size:14px;font-weight:600;color:var(--color-text-muted)}.cl-assign-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.cl-assign-class{font-size:14px;color:var(--color-text-muted);white-space:nowrap}.cl-assign-msg{margin-top:6px;font-size:14px;font-weight:600}.sk-table-wrap{max-height:520px;overflow:auto;border:1px solid var(--border-card);border-radius:10px}.sk-table{width:100%;border-collapse:collapse;font-size:15px}.sk-table th{position:sticky;top:0;z-index:1;padding:9px 14px;background:var(--bg-input);color:var(--color-text-muted);font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border-card)}.sk-table td{padding:9px 14px;border-bottom:1px solid var(--border-card);vertical-align:middle}.sk-table tr:last-child td{border-bottom:0}.sk-table tbody tr:hover{background:color-mix(in srgb,var(--color-text) 3%,transparent)}.sk-table-actions{text-align:right!important;white-space:nowrap}.sk-person{display:flex;flex-direction:column;gap:1px}.sk-person-name{font-weight:600;color:var(--color-heading)}.sk-person-login{font-size:13px;color:var(--color-text-muted)}.sk-form-fields{display:flex;flex-direction:column;gap:12px;margin-top:14px}.sk-form-field{display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:600;color:var(--color-text-muted)}.sk-form-field input,.sk-form-field select{padding:9px 11px;border-radius:8px;border:1px solid var(--border-input);background:var(--bg-card);color:var(--color-text);font:inherit;font-size:15px;font-weight:500}.sk-form-field input:focus,.sk-form-field select:focus{outline:none;border-color:var(--color-text-link)}.sk-creds{max-height:260px;overflow:auto;margin-top:10px;border:1px solid var(--border-card);border-radius:8px}.sk-creds table{width:100%;border-collapse:collapse;font-size:14px}.sk-creds th,.sk-creds td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border-card)}.sk-creds th{color:var(--color-text-muted);font-size:12.5px}.sk-creds code{font-family:JetBrains Mono,Consolas,monospace;color:var(--color-heading)}@media(max-width:640px){.cl-card{padding:16px}.sk-table-actions{white-space:normal}.cl-toolbar-actions .ui-btn span{display:none}}.sk-table{margin:0;border:0}.sk-table th,.sk-table td{border-left:0!important;border-right:0!important}.ui-icon-btn{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;margin-left:2px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer;opacity:.65;transition:opacity .12s,background .12s,color .12s}.ui-icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sk-table tr:hover .ui-icon-btn,.ui-icon-btn:focus-visible{opacity:1}.ui-icon-btn:hover{background:var(--bg-input);color:var(--color-heading)}.ui-icon-btn-danger:hover{background:color-mix(in srgb,#DC2626 10%,transparent);color:#dc2626}.ui-icon-btn:focus-visible{outline:2px solid var(--color-text-link);outline-offset:1px}.ui-icon-btn[data-tip]:after{content:attr(data-tip);position:absolute;right:calc(100% + 4px);top:50%;transform:translate(4px,-50%);padding:5px 8px;border-radius:6px;background:#0f172a;color:#fff;font-size:12.5px;font-weight:500;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s,transform .12s;z-index:5}.ui-icon-btn:hover:after,.ui-icon-btn:focus-visible:after{opacity:1;transform:translateY(-50%)}[data-theme=dark] .ui-icon-btn[data-tip]:after{background:#e2e8f0;color:#0f172a}
