*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--blue: #2E75B6;--blue-dark: #1a5a9a;--green: #28a745;--red: #dc3545;--orange: #f59e0b;--gray-100: #f8f9fa;--gray-200: #e9ecef;--gray-300: #dee2e6;--gray-400: #ced4da;--gray-500: #adb5bd;--gray-600: #6c757d;--gray-700: #495057;--gray-800: #343a40;--gray-900: #212529;--white: #ffffff;--radius: 10px;--shadow: 0 2px 8px rgba(0,0,0,.08);--transition: .2s ease;--warn-bg: #fef9c3;--warn-border: #fde047;--warn-text: #713f12;--success-bg: #d4edda;--success-text: #155724;--info-bg: #eff6ff;--info-border: #bfdbfe;--info-text: #1e40af;--danger-bg: #fef2f2;--danger-border: #fecaca;--danger-text: #991b1b;--easy-bg: #d1fae5;--easy-text: #065f46;--medium-bg: #fef3c7;--medium-text: #92400e;--hard-bg: #fee2e2;--hard-text: #991b1b;--example-bg: #f0f9ff;--example-border: #bae6fd;--example-text: #0369a1;--tip-bg: #fef3c7;--tip-border: #fde68a;--tip-text: #92400e;--tip-body: #78350f;--text: var(--gray-900);--text-secondary: var(--gray-600);--bg: var(--white);--bg-card: var(--white)}[data-theme=dark]{--blue: #4a9fd4;--blue-dark: #2E75B6;--green: #34d058;--red: #f85149;--orange: #fbbf24;--gray-100: #161b22;--gray-200: #21262d;--gray-300: #30363d;--gray-400: #484f58;--gray-500: #6e7681;--gray-600: #8b949e;--gray-700: #b1bac4;--gray-800: #c9d1d9;--gray-900: #e6edf3;--white: #0d1117;--shadow: 0 2px 8px rgba(0,0,0,.3);color-scheme:dark;--warn-bg: #2e2714;--warn-border: #854d0e;--warn-text: #fbbf24;--success-bg: #1a2e1a;--success-text: #6fdd8b;--info-bg: #1c2a3a;--info-border: #1e3a5f;--info-text: #93c5fd;--danger-bg: #2e1a1a;--danger-border: #7f1d1d;--danger-text: #fca5a5;--easy-bg: #1a2e1a;--easy-text: #6fdd8b;--medium-bg: #2e2714;--medium-text: #fbbf24;--hard-bg: #2e1a1a;--hard-text: #fca5a5;--example-bg: #1c2a3a;--example-border: #1e3a5f;--example-text: #93c5fd;--tip-bg: #2e2714;--tip-border: #854d0e;--tip-text: #fbbf24;--tip-body: #fde68a;--text: var(--gray-900);--text-secondary: var(--gray-600);--bg: var(--gray-100);--bg-card: var(--gray-200)}[data-theme=dark] .auth-page{background:linear-gradient(135deg,#0d1117,#161b22)}[data-theme=dark] .form-control,[data-theme=dark] .cab-search,[data-theme=dark] .calc-conv-input,[data-theme=dark] .calc-conv-field select,[data-theme=dark] .calc-pt-field input{background:var(--gray-200);color:var(--gray-900)}[data-theme=dark] .option.correct .option-letter{background:var(--green)}[data-theme=dark] .option.incorrect .option-letter{background:var(--red)}[data-theme=dark] .explanation,[data-theme=dark] .cab-technical-explanation,[data-theme=dark] .cab-category-header:hover{background:var(--gray-200)}[data-theme=dark] .sidebar nav a:hover{background:var(--gray-200)}[data-theme=dark] .sidebar nav a.active{background:#4a9fd426}[data-theme=dark] .flashcard-front{background:var(--gray-200)}[data-theme=dark] .calc-btn{background:var(--gray-200);color:var(--gray-900);border-color:var(--gray-300)}[data-theme=dark] .calc-btn.func{background:var(--gray-200);color:var(--gray-900)}[data-theme=dark] .calc-btn.clear{background:var(--danger-bg)}[data-theme=dark] .calc-btn:hover{background:var(--gray-300)}[data-theme=dark] .mg-col-empty{color:var(--gray-300)}[data-theme=dark] .mg-tree-card{background:var(--gray-200)}[data-theme=dark] .mobile-nav{background:var(--white);border-top-color:var(--gray-200);box-shadow:0 -2px 8px #0000004d}[data-theme=dark] .theme-picker{background:var(--gray-200)}[data-theme=dark] .theme-picker-btn:hover{background:var(--gray-300)}[data-theme=dark] .theme-picker-btn.active{background:var(--blue)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--gray-100);color:var(--gray-900);line-height:1.6}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.spinner{width:40px;height:40px;border:4px solid var(--gray-200);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.app-layout{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--white);border-right:1px solid var(--gray-200);display:flex;flex-direction:column;padding:24px 0;position:fixed;top:0;left:0;height:100vh}.sidebar-logo{font-size:1.4rem;font-weight:700;color:var(--blue);padding:0 24px 24px;border-bottom:1px solid var(--gray-200)}.sidebar nav{flex:1;padding:16px 0;overflow-y:auto}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:12px 24px;color:var(--gray-600);font-weight:500;border-left:3px solid transparent;transition:var(--transition)}.sidebar nav a:hover,.sidebar nav a.active{color:var(--blue);background:var(--info-bg);border-left-color:var(--blue);text-decoration:none}.sidebar-footer{padding:16px 24px;border-top:1px solid var(--gray-200)}.sidebar-footer button{background:none;border:none;color:var(--gray-600);cursor:pointer;font-size:.9rem;padding:0}.sidebar-footer button:hover,.sidebar-footer button:focus-visible{color:var(--red)}.theme-picker{display:flex;background:var(--gray-100);border-radius:8px;padding:3px;gap:2px}.theme-picker-btn{flex:1;padding:6px 0;border:none;border-radius:6px;background:transparent;cursor:pointer;font-size:.85rem;color:var(--gray-600);transition:var(--transition);line-height:1}.theme-picker-btn:hover{background:var(--gray-200)}.theme-picker-btn.active{background:var(--blue);color:#fff;box-shadow:0 1px 3px #00000026}.main-content{margin-left:220px;flex:1;padding:32px}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:var(--radius);border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none}.btn:hover{text-decoration:none}.btn-primary{background:var(--blue);color:var(--white)}.btn-primary:hover{background:var(--blue-dark);color:var(--white)}.btn-secondary{background:var(--gray-200);color:var(--gray-900)}.btn-secondary:hover{background:var(--gray-300)}.btn-success{background:var(--green);color:var(--white)}.btn-danger{background:var(--red);color:var(--white)}.btn-outline{background:transparent;color:var(--blue);border:2px solid var(--blue)}.btn-outline:hover{background:var(--blue);color:var(--white)}.btn-block{width:100%}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:500;margin-bottom:6px;font-size:.9rem}.form-control{width:100%;padding:12px 16px;border:2px solid var(--gray-200);border-radius:var(--radius);font-size:1rem;transition:border-color var(--transition);outline:none}.form-control:focus{border-color:var(--blue);outline:2px solid var(--blue);outline-offset:-2px}.form-control:disabled{background:var(--gray-100);color:var(--gray-600);cursor:not-allowed;opacity:.6}.form-control::placeholder{color:var(--gray-600);opacity:.6}.form-error{color:var(--red);font-size:.85rem;margin-top:4px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0f7ff,#e8f4fd);padding:24px}.auth-card{width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{font-size:1.8rem;color:var(--blue);margin-bottom:4px}.auth-header p{color:var(--gray-600)}.auth-footer{text-align:center;margin-top:20px;color:var(--gray-600);font-size:.9rem}.welcome-page{min-height:100vh;background:linear-gradient(135deg,#1a5a9a,#2e75b6,#4a9fd4);color:#fff}.welcome-nav{display:flex;align-items:center;justify-content:space-between;padding:20px 48px;border-bottom:1px solid rgba(255,255,255,.15)}.welcome-nav .logo{font-size:1.5rem;font-weight:700}.welcome-nav .nav-links{display:flex;gap:12px}.welcome-hero{text-align:center;padding:80px 24px 60px;max-width:700px;margin:0 auto}.welcome-hero h1{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:20px}.welcome-hero p{font-size:1.2rem;opacity:.9;margin-bottom:36px}.welcome-hero .cta-group{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.welcome-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;padding:48px;background:#0000001a}.feature-card{background:#ffffff1a;border-radius:var(--radius);padding:24px;text-align:center}.feature-card .icon{font-size:2.5rem;margin-bottom:12px}.feature-card h3{margin-bottom:8px;font-size:1.1rem}.feature-card p{opacity:.85;font-size:.9rem}.page-title{font-size:1.6rem;font-weight:700;margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:var(--white);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);text-align:center}.stat-card .stat-value{font-size:2rem;font-weight:700;color:var(--blue)}.stat-card .stat-label{color:var(--gray-600);font-size:.85rem;margin-top:4px}.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.cert-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.cert-card h3{font-size:1.1rem;margin-bottom:8px}.cert-card p{color:var(--gray-600);font-size:.9rem;margin-bottom:16px}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:600;margin-bottom:12px}.badge-free{background:var(--info-bg);color:var(--info-text)}.quiz-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.quiz-progress{font-weight:600;color:var(--gray-600)}.progress-bar-wrap{background:var(--gray-200);border-radius:20px;height:8px;margin-bottom:24px}.progress-bar{background:var(--blue);border-radius:20px;height:8px;transition:width .4s ease}.category-badge{display:inline-block;background:var(--blue);color:#fff;padding:4px 14px;border-radius:20px;font-size:.8rem;font-weight:600;margin-bottom:16px}.question-text{font-size:1.15rem;line-height:1.6;margin-bottom:24px}.options{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.option{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-radius:var(--radius);border:2px solid var(--gray-200);cursor:pointer;transition:var(--transition);background:var(--white);font-size:.95rem;text-align:left}.option:hover:not(.disabled){border-color:var(--blue);background:var(--info-bg)}.option.selected{border-color:var(--blue);background:var(--info-bg)}.option.correct{border-color:var(--green);background:var(--success-bg)}.option.incorrect{border-color:var(--red);background:var(--danger-bg)}.option.disabled{cursor:default}.option-letter{width:28px;height:28px;border-radius:50%;background:var(--gray-200);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}.option.selected .option-letter{background:var(--blue);color:#fff}.option.correct .option-letter{background:var(--green);color:#fff}.option.incorrect .option-letter{background:var(--red);color:#fff}.explanation{background:var(--gray-100);border-left:6px solid var(--blue);border-radius:var(--radius);padding:16px 20px;margin-bottom:24px;color:var(--text)}.explanation .result-title{font-weight:700;font-size:1rem;margin-bottom:8px}.result-title.correct{color:var(--green)}.result-title.incorrect{color:var(--red)}.quiz-footer{display:flex;justify-content:space-between;align-items:center}.bookmark-btn{background:none;border:1px solid var(--gray-300);border-radius:var(--radius);padding:10px 16px;cursor:pointer;font-size:.9rem;color:var(--gray-600);transition:var(--transition)}.bookmark-btn:hover{border-color:var(--blue);color:var(--blue)}.bookmark-btn.bookmarked{border-color:var(--warn-border);color:var(--warn-text);background:var(--warn-bg)}.progress-table{width:100%;border-collapse:collapse}.progress-table th,.progress-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--gray-200)}.progress-table th{background:var(--gray-100);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.pct-bar{background:var(--gray-200);border-radius:20px;height:8px;margin-top:4px}.pct-fill{height:8px;border-radius:20px}.upgrade-banner{background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:#fff;border-radius:var(--radius);padding:24px;text-align:center;margin-bottom:24px}.upgrade-banner h3{margin-bottom:8px;font-size:1.2rem}.upgrade-banner p{opacity:.9;margin-bottom:16px;font-size:.95rem}.info-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--gray-200)}.info-row:last-child{border-bottom:none}.info-label{color:var(--gray-600);font-size:.9rem}.info-value{font-weight:500}.tier-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700}.tier-free{background:var(--info-bg);color:var(--info-text)}.tier-single{background:var(--warn-bg);color:var(--warn-text)}.tier-unlimited{background:var(--success-bg);color:var(--success-text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}.calc-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.calc-modal{background:var(--white);border-radius:var(--radius);box-shadow:0 8px 32px #0003;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.calc-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--gray-200)}.calc-header h3{font-size:1.1rem;font-weight:700}.calc-close{background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--gray-600);line-height:1;padding:0 4px}.calc-close:hover,.calc-close:focus-visible{color:var(--gray-900)}.calc-tabs{display:flex;border-bottom:2px solid var(--gray-200)}.calc-tab{flex:1;padding:10px 8px;background:none;border:none;font-size:.85rem;font-weight:600;color:var(--gray-600);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:var(--transition)}.calc-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.calc-tab:hover{color:var(--blue)}.calc-display{background:var(--gray-100);padding:12px 16px;text-align:right;border-bottom:1px solid var(--gray-200);min-height:64px}.calc-expression{font-size:.85rem;color:var(--gray-600);min-height:1.2em;word-break:break-all}.calc-result{font-size:1.4rem;font-weight:700;color:var(--gray-900);min-height:1.4em;word-break:break-all}.calc-mode-row{display:flex;align-items:center;gap:4px;padding:6px 12px;border-bottom:1px solid var(--gray-200)}.calc-mode-btn{padding:3px 10px;font-size:.75rem;font-weight:600;border:1.5px solid var(--gray-300);border-radius:4px;background:var(--white);cursor:pointer;color:var(--gray-600)}.calc-mode-btn.active{background:var(--blue);color:var(--white);border-color:var(--blue)}.calc-memory-indicator{margin-left:auto;font-size:.75rem;color:var(--blue);font-weight:600}.calc-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:8px}.calc-btn{padding:10px 2px;border:1px solid var(--gray-200);border-radius:6px;background:var(--white);cursor:pointer;font-size:.85rem;font-weight:500;transition:var(--transition);text-align:center}.calc-btn:hover{background:var(--gray-100)}.calc-btn:active{background:var(--gray-200)}.calc-btn.operator{background:var(--info-bg);color:var(--blue);font-weight:700}.calc-btn.equals{background:var(--blue);color:var(--white);font-weight:700}.calc-btn.equals:hover{background:var(--blue-dark)}.calc-btn.func{background:var(--gray-100);font-size:.78rem;color:var(--gray-900)}.calc-btn.clear{background:var(--danger-bg);color:var(--red);font-weight:700}.calc-btn.wide{grid-column:span 2}.calc-converter{padding:12px 16px}.calc-cat-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.calc-cat-pill{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;border:1.5px solid var(--gray-300);background:var(--white);cursor:pointer;color:var(--gray-600);transition:var(--transition)}.calc-cat-pill.active{background:var(--blue);color:var(--white);border-color:var(--blue)}.calc-cat-pill:hover{border-color:var(--blue)}.calc-conv-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}.calc-conv-field{flex:1}.calc-conv-field label{display:block;font-size:.75rem;font-weight:600;color:var(--gray-600);margin-bottom:4px}.calc-conv-field select{width:100%;padding:8px;border:2px solid var(--gray-200);border-radius:6px;font-size:.9rem;background:var(--white);outline:none}.calc-conv-field select:focus{border-color:var(--blue)}.calc-swap-btn{background:none;border:1.5px solid var(--gray-300);border-radius:6px;padding:6px 10px;cursor:pointer;font-size:1.1rem;color:var(--blue);margin-bottom:1px}.calc-swap-btn:hover{background:var(--gray-100)}.calc-conv-input-row{margin-bottom:12px}.calc-conv-input{width:100%;padding:10px 14px;border:2px solid var(--gray-200);border-radius:6px;font-size:1rem;outline:none}.calc-conv-input:focus{border-color:var(--blue)}.calc-conv-result{background:var(--gray-100);border-radius:6px;padding:14px 16px;display:flex;align-items:baseline;gap:8px}.calc-conv-result-value{font-size:1.3rem;font-weight:700;color:var(--blue)}.calc-conv-result-unit{font-size:.9rem;color:var(--gray-600);font-weight:600}.calc-power{padding:12px 16px}.calc-pt-modes{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.calc-pt-mode{padding:5px 10px;border-radius:6px;font-size:.75rem;font-weight:600;border:1.5px solid var(--gray-300);background:var(--white);cursor:pointer;color:var(--gray-600);transition:var(--transition)}.calc-pt-mode.active{background:var(--blue);color:var(--white);border-color:var(--blue)}.calc-pt-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calc-pt-field label{display:block;font-size:.8rem;font-weight:600;color:var(--gray-600);margin-bottom:4px}.calc-pt-field input{width:100%;padding:8px 10px;border:2px solid var(--gray-200);border-radius:6px;font-size:.9rem;outline:none}.calc-pt-field input:focus{border-color:var(--blue)}.calc-pt-error{color:var(--red);font-size:.85rem;margin-top:12px;text-align:center}.calc-pt-table{width:100%;margin-top:14px;border-collapse:collapse;border:1px solid var(--gray-200);border-radius:6px;overflow:hidden}.calc-pt-table td{padding:8px 12px;font-size:.85rem;border-bottom:1px solid var(--gray-200)}.calc-pt-table tr:last-child td{border-bottom:none}.calc-pt-table td:first-child{color:var(--gray-600);font-weight:500}.calc-pt-table td:last-child{text-align:right;font-weight:700;color:var(--gray-900)}.cab-stats-bar{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--gray-600);margin-bottom:16px;padding:12px 16px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow)}.cab-stats-sep{opacity:.4}.cab-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.cab-search{flex:1;min-width:200px;padding:10px 16px;border:2px solid var(--gray-200);border-radius:var(--radius);font-size:.9rem;outline:none;transition:border-color var(--transition)}.cab-search:focus{border-color:var(--blue)}.cab-difficulty-pills{display:flex;gap:6px}.cab-difficulty-pill{padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600;border:1.5px solid var(--gray-300);background:var(--white);cursor:pointer;color:var(--gray-600);transition:var(--transition)}.cab-difficulty-pill:hover{border-color:var(--blue);color:var(--blue)}.cab-difficulty-pill.active{background:var(--blue);color:var(--white);border-color:var(--blue)}.cab-categories{display:flex;flex-direction:column;gap:12px}.cab-category{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.cab-category-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:none;border:none;cursor:pointer;font-size:1rem;text-align:left;transition:background var(--transition)}.cab-category-header:hover{background:var(--gray-100)}.cab-category-name{font-weight:700;color:var(--gray-900)}.cab-category-count{font-size:.8rem;color:var(--gray-600);font-weight:500;margin-left:10px}.cab-category-chevron{font-size:.7rem;color:var(--gray-600)}.cab-category-body{padding:0 20px 20px;display:flex;flex-direction:column;gap:16px}.cab-question-card{border:1px solid var(--gray-200);border-radius:8px;padding:16px;transition:var(--transition)}.cab-question-card:hover{border-color:var(--gray-300)}.cab-question-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.cab-question-num{font-size:.75rem;font-weight:700;color:var(--gray-600)}.cab-question-text{font-size:.95rem;line-height:1.6;margin-bottom:12px;color:var(--gray-900)}.cab-correct-answer{display:flex;align-items:flex-start;gap:10px;background:var(--success-bg);border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:.9rem;color:var(--success-text)}.cab-correct-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;font-size:.75rem;flex-shrink:0}.cab-simple-explanation{border-left:4px solid var(--blue);background:var(--info-bg);border-radius:0 8px 8px 0;padding:12px 16px;margin-bottom:8px}.cab-simple-explanation.cab-simple-fallback{border-left-color:var(--gray-300);background:var(--gray-100)}.cab-simple-label{font-size:.75rem;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.cab-simple-fallback .cab-simple-label{color:var(--gray-600)}.cab-simple-explanation p{font-size:.9rem;line-height:1.6;color:var(--gray-900);margin:0}.cab-toggle-technical{background:none;border:none;color:var(--blue);font-size:.8rem;font-weight:600;cursor:pointer;padding:4px 0;margin-bottom:4px}.cab-toggle-technical:hover,.cab-toggle-technical:focus-visible{text-decoration:underline}.cab-technical-explanation{background:var(--gray-100);border-radius:8px;padding:12px 16px}.cab-technical-explanation p{font-size:.85rem;line-height:1.6;color:var(--gray-600);margin:0}.flashcard-container{perspective:1000px;cursor:pointer;margin:0 auto}.flashcard-inner{position:relative;width:100%;min-height:280px;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.flashcard-inner.flipped{transform:rotateY(180deg)}.flashcard-face{position:absolute;width:100%;min-height:280px;backface-visibility:hidden;border-radius:var(--radius);box-shadow:var(--shadow);padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.flashcard-front{background:var(--white);border:2px solid var(--blue)}.flashcard-back{background:linear-gradient(135deg,var(--info-bg),var(--info-bg));border:2px solid var(--blue);transform:rotateY(180deg)}.flashcard-term{font-size:1.25rem;font-weight:700;color:var(--gray-900);line-height:1.4}.flashcard-definition{font-size:1rem;color:var(--gray-900);line-height:1.6;margin-bottom:20px}.flashcard-hint{font-size:.85rem;color:var(--blue);font-weight:600;margin-top:16px}.flashcard-actions{display:flex;gap:12px;width:100%;margin-top:auto}.mg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;gap:8px}.mg-header-stat{font-size:.85rem;color:var(--gray-600);font-weight:500}.mg-timer{font-size:1.1rem;font-weight:700;font-family:monospace;color:var(--blue)}.mg-hint{font-size:.82rem;color:var(--blue);margin-bottom:14px;font-weight:500}.mg-bank{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px;margin-bottom:20px}.mg-bank-label{font-size:.82rem;font-weight:700;color:var(--gray-600);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.mg-bank-cards{display:flex;flex-wrap:wrap;gap:8px}.mg-bank-card{padding:7px 14px;border:2px solid var(--gray-300);border-radius:8px;background:var(--white);cursor:grab;font-size:.82rem;font-weight:500;line-height:1.3;-webkit-user-select:none;user-select:none;transition:all .15s ease}.mg-bank-card:hover{border-color:var(--blue);background:var(--info-bg)}.mg-bank-card:active{cursor:grabbing}.mg-bank-card-selected{border-color:var(--blue);background:var(--info-bg);box-shadow:0 0 0 3px #2e75b633}.mg-columns{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;overflow-x:auto}.mg-column{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;min-width:160px;transition:box-shadow .15s}.mg-column.mg-col-dragover,.mg-column:has(.mg-col-body:hover){box-shadow:0 0 0 2px var(--group-color, var(--blue)),var(--shadow)}.mg-col-header{padding:10px 12px;color:#fff;text-align:center;display:flex;align-items:center;justify-content:space-between;gap:6px}.mg-col-title{font-size:.78rem;font-weight:700}.mg-col-count{background:#ffffff40;border-radius:10px;padding:1px 8px;font-size:.7rem;font-weight:700}.mg-col-body{padding:10px 8px;min-height:100px}.mg-col-empty{color:var(--gray-300);font-size:.8rem;text-align:center;padding:32px 8px;font-style:italic}.mg-col-dragover .mg-col-body{background:var(--info-bg)}.mg-tree{position:relative;padding-left:14px}.mg-tree-item{position:relative;margin-bottom:6px}.mg-tree-connector{position:absolute;left:-14px;top:0;bottom:0;border-left:2px solid;opacity:.4}.mg-tree-last .mg-tree-connector{bottom:50%}.mg-tree-branch{position:absolute;left:-14px;top:50%;width:14px;height:2px;opacity:.4}.mg-tree-card{padding:6px 10px;border-radius:6px;font-size:.78rem;font-weight:500;line-height:1.3;border:1.5px solid;transition:all .15s ease;background:var(--gray-100);color:var(--gray-900)}.mg-tree-correct{background:var(--success-bg);border-color:var(--green);color:var(--success-text)}.mg-tree-incorrect{background:var(--danger-bg);border-color:var(--red);color:var(--danger-text)}.mg-tree-icon{font-weight:700;margin-right:4px}.job-panel-backdrop{position:fixed;inset:0;background:#0000004d;z-index:900}.job-panel{position:fixed;top:0;right:-420px;bottom:0;width:400px;max-width:100vw;background:var(--white);box-shadow:-4px 0 24px #00000026;z-index:901;transition:right .3s ease;display:flex;flex-direction:column;overflow:hidden}.job-panel-open{right:0}.job-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--gray-200)}.job-panel-close{background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--gray-600);line-height:1;padding:0 4px}.job-panel-close:hover,.job-panel-close:focus-visible{color:var(--gray-900)}.job-panel-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.job-card{border:1px solid var(--gray-200);border-radius:8px;padding:14px 16px;transition:var(--transition)}.job-card:hover{border-color:var(--gray-300)}.job-card-title{font-size:.95rem;font-weight:700;color:var(--gray-900);margin:0 0 4px;line-height:1.3}.job-card-company{font-size:.85rem;font-weight:600;color:var(--blue);margin:0 0 4px}.job-card-detail{font-size:.8rem;color:var(--gray-600);margin:0 0 2px}.job-card-salary{font-size:.8rem;font-weight:600;color:var(--green);margin:0}.job-card-posted{font-size:.75rem;color:var(--gray-600)}.mobile-nav{display:none}@media(max-width:768px){.sidebar{display:none}.main-content{margin-left:0;padding:16px 16px 80px}.welcome-hero h1{font-size:2rem}.welcome-nav{padding:16px}.welcome-features{padding:24px 16px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--gray-200);box-shadow:0 -2px 8px #0000000f;z-index:100;padding:2px 4px env(safe-area-inset-bottom,2px)}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px;padding:6px 4px;color:var(--gray-600);text-decoration:none;font-size:.7rem;font-weight:500;background:none;border:none;cursor:pointer;transition:color var(--transition),background var(--transition);position:relative;-webkit-tap-highlight-color:transparent;border-radius:8px}.mobile-nav-item:hover,.mobile-nav-item.active{color:var(--blue);text-decoration:none}.mobile-nav-item.active{background:var(--info-bg);font-weight:700}.mobile-nav-item.active .mobile-nav-icon{transform:scale(1.15)}.mobile-nav-item.active:after{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:var(--blue);border-radius:0 0 3px 3px}.mobile-nav-icon{font-size:1.3rem;margin-bottom:2px;line-height:1}.mobile-nav-label{line-height:1;font-size:.68rem;font-weight:600}.calc-modal{max-width:100%;margin:0 0 60px;border-radius:0;max-height:100vh}.calc-overlay{padding:0;align-items:flex-start}.calc-btn{padding:12px 2px;font-size:.9rem}.calc-buttons{gap:3px;padding:6px}.cab-filters{flex-direction:column}.cab-search{min-width:0;width:100%}.cab-difficulty-pills{width:100%;justify-content:center}.cab-question-text{font-size:.9rem}.cab-correct-answer{font-size:.85rem}.flashcard-inner{min-height:240px}.flashcard-face{min-height:240px;padding:24px 16px}.flashcard-term{font-size:1.1rem}.flashcard-definition{font-size:.9rem}.flashcard-actions{flex-direction:column}.mg-columns{grid-template-columns:repeat(2,1fr);gap:8px}.mg-column{min-width:0}.mg-col-title{font-size:.7rem}.mg-bank-card{font-size:.78rem;padding:6px 10px}.mg-tree-card{font-size:.72rem;padding:5px 8px}.job-panel{width:100vw;right:-100vw}.blitz-arena{min-height:380px}.blitz-bubble{width:44%;font-size:.8rem;padding:10px 12px;min-height:70px}.blitz-question p{font-size:.95rem}}.blitz-hud{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:16px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;gap:8px}.blitz-hud-item{display:flex;flex-direction:column;align-items:center;gap:2px}.blitz-hud-label{font-size:.7rem;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px}.blitz-hud-value{font-size:1.1rem;font-weight:700;position:relative}.blitz-score-pop{position:absolute;top:-20px;right:-30px;font-size:.85rem;font-weight:700;color:var(--green);animation:blitz-pop .8s ease-out forwards;pointer-events:none}.blitz-question{text-align:center;margin-bottom:20px}.blitz-question p{font-size:1.05rem;line-height:1.6}.blitz-arena{position:relative;min-height:420px;background:var(--gray-100);border-radius:var(--radius);overflow:hidden}.blitz-bubble{position:absolute;width:42%;min-height:80px;padding:14px 16px;background:var(--white);border:2px solid var(--gray-200);border-radius:16px;box-shadow:var(--shadow);cursor:pointer;display:flex;align-items:center;gap:10px;font-size:.9rem;text-align:left;line-height:1.4;animation:blitz-float 3s ease-in-out infinite;transition:border-color .15s,transform .15s,background .15s}.blitz-bubble:hover:not(:disabled){border-color:var(--blue);transform:scale(1.03)}.blitz-bubble:disabled{cursor:default}.blitz-bubble-letter{width:28px;height:28px;border-radius:50%;background:var(--gray-200);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}.blitz-bubble-correct{border-color:var(--green);background:var(--success-bg);animation:blitz-pulse .5s ease}.blitz-bubble-correct .blitz-bubble-letter{background:var(--green);color:#fff}.blitz-bubble-wrong{border-color:var(--red);background:var(--danger-bg);animation:blitz-shake .4s ease}.blitz-bubble-wrong .blitz-bubble-letter{background:var(--red);color:#fff}.blitz-bubble-reveal{border-color:var(--green);opacity:.7}.blitz-bubble-reveal .blitz-bubble-letter{background:var(--green);color:#fff}@keyframes blitz-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes blitz-pulse{0%{transform:scale(1)}50%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes blitz-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}@keyframes blitz-pop{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-24px) scale(1.3)}}@media(max-width:1024px){.mg-columns{grid-template-columns:repeat(3,1fr)}}.skip-link{position:absolute;top:-40px;left:0;background:var(--blue);color:#fff;padding:8px 16px;z-index:10000;transition:top .2s}.skip-link:focus{top:0}.mobile-more-menu{position:fixed;bottom:calc(56px + env(safe-area-inset-bottom,12px));left:0;right:0;background:var(--bg-card);border-top:1px solid var(--gray-200);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:1001;box-shadow:0 -4px 20px #00000026;border-radius:16px 16px 0 0;max-height:70vh;overflow-y:auto}.mobile-more-menu a{display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text);text-decoration:none;font-size:.95rem}.mobile-more-menu a:hover,.mobile-more-menu a.active{background:var(--gray-100);color:var(--blue)}.mobile-more-backdrop{position:fixed;inset:0;background:#0000004d;z-index:1000}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.5}}.timer-pulse{animation:timer-pulse 1s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:.6}50%{opacity:.3}}.skeleton{background:var(--gray-200);border-radius:8px;animation:skeleton-pulse 1.5s ease-in-out infinite}@media print{.sidebar,.mobile-nav,.calc-overlay,.job-panel,.job-panel-backdrop,.upgrade-banner,.bookmark-btn,.quiz-footer .btn{display:none!important}body{background:#fff;color:#000}.main-content{margin-left:0;padding:0}.card{box-shadow:none;border:1px solid #ddd}a{color:#00e}a[href]:after{content:" (" attr(href) ")";font-size:.8em}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
