@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";html,body{min-height:100vh;margin:0;padding:0}#root{min-height:100vh}.main-header{width:100vw;max-width:100vw;background:#1976d2;color:#fff;padding:32px 0 10px;text-align:center;border-radius:0 0 12px 12px;margin-bottom:18px;box-shadow:0 2px 8px #1976d233;display:flex;flex-direction:column;align-items:center}.main-header .header-title{font-size:2.3rem;font-weight:900;letter-spacing:2px;margin-bottom:.5rem;text-shadow:0 2px 8px #1560a855,0 1px 0 #fff;text-transform:uppercase;line-height:1.1}.main-header .header-sub{font-size:1.18rem;font-weight:500;opacity:.98;letter-spacing:.5px;margin-bottom:.2rem;color:#e3f2fd;text-shadow:0 1px 4px #1560a855}.lookup-box{background:#fff;border-radius:12px;box-shadow:0 2px 12px #1976d222;padding:32px 24px 24px;max-width:600px;width:100%;margin:0 auto 32px;display:flex;flex-direction:column;align-items:center}.main-title{font-size:1.5rem;font-weight:700;color:#1976d2;margin-bottom:18px;letter-spacing:.5px;text-align:center}.lookup-form{width:100%;display:flex;gap:10px;margin-bottom:18px;justify-content:center}.lookup-form input[type=text]{flex:1;font-size:1.1rem;border:1.5px solid #b6c6e3;background:#f8fafc;color:#22223b;border-radius:8px;padding:12px 16px;transition:border .2s}.lookup-form input[type=text]:focus{border:1.5px solid #1976d2;background:#fff}.lookup-form button{min-width:120px;font-size:1.1rem;border-radius:8px;background:#1976d2;color:#fff;font-weight:700;border:none;box-shadow:0 2px 8px #1976d122;transition:background .2s}.lookup-form button:hover{background:#1251a3}.candidate-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;margin-bottom:12px;font-size:1rem;box-shadow:0 1px 4px #1976d211}.candidate-table th,.candidate-table td{padding:10px 8px;text-align:left;border-bottom:1px solid #e3e8f0}.candidate-table th{background:#1976d2;color:#fff;font-weight:700;border-bottom:2px solid #1560a8;font-size:1.05rem}.candidate-table tr{background:#fff;transition:background .15s}.candidate-table tr:hover{background:#e3f0fd}.score-pass{color:#388e3c;font-weight:700}.score-fail{color:#e53935;font-weight:700}.pagination-controls{display:flex;align-items:center;gap:16px;margin-top:8px;justify-content:center}.pagination-controls button{min-width:36px;padding:7px 0;font-size:1.1rem;border-radius:6px;background:#1976d2;color:#fff;border:none;font-weight:700;cursor:pointer;transition:background .2s}.pagination-controls button:disabled{background:#e3e8f0;color:#b6c6e3;cursor:not-allowed}.pagination-controls span{font-size:1.1rem;font-weight:600}.result-card{width:100%;border-radius:8px;box-shadow:0 2px 8px #1976d211;padding:24px 16px;margin-top:8px;background:#f4f6fb;display:flex;flex-direction:column;align-items:center;animation:fadeIn .5s;border:1.5px solid #1976d2}.result-card.passed{background:#e3fcec;border:1.5px solid #43a047}.result-card.failed{background:#fff0f0;border:1.5px solid #e53935}.result-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin-bottom:12px;text-align:center}.result-icon{font-size:2rem}.result-status{font-size:1.1rem;font-weight:700;color:#1976d2;text-align:center;width:100%}.result-card.passed .result-status{color:#388e3c}.result-card.failed .result-status{color:#e53935}.result-info{width:100%;display:flex;flex-direction:column;gap:6px;font-size:1.05rem}.notfound{color:#e53935;font-weight:700;margin-top:18px;text-align:center}.footer{margin-top:32px;color:#1976d2;font-size:15px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}.footer .credit{font-size:13px;color:#1976d2}.footer .credit a{color:#1976d2;text-decoration:underline}@media(max-width:600px){.main-header{padding:14px 0 6px;border-radius:0 0 10px 10px}.header-title{font-size:1.1rem}.header-sub{font-size:.95rem}.lookup-box{padding:12px 2vw 10px;max-width:99vw}.main-title{font-size:1rem}.result-card{padding:12px 2vw}.candidate-table th,.candidate-table td{padding:7px 4px;font-size:.97rem}.pagination-controls{gap:10px}}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}@media(max-width:700px){html,body{font-size:15px}}:root{--primary-deep: #1e3a8a;--primary-light: #3b82f6;--accent-gold: #fbbf24;--bg-primary: #fcfdfe;--bg-secondary: #f1f5f9;--bg-card: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--border-color: #e2e8f0;--shadow-color: rgba(0, 0, 0, .05);--accent-primary: #2563eb;--accent-hover: #1d4ed8;--success: #059669;--success-bg: #ecfdf5;--danger: #dc2626;--danger-bg: #fef2f2;--warning: #d97706;--warning-bg: #fffbeb;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1.25rem;--spacing-lg: 2rem;--spacing-xl: 3.5rem;--border-radius: .75rem;--border-radius-lg: 1rem;--shadow-sm: 0 1px 2px 0 var(--shadow-color);--shadow-md: 0 4px 6px -1px var(--shadow-color), 0 2px 4px -2px var(--shadow-color);--shadow-lg: 0 10px 15px -3px var(--shadow-color), 0 4px 6px -4px var(--shadow-color)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--border-color: #334155;--shadow-color: rgba(0, 0, 0, .3);--accent-primary: #60a5fa;--accent-hover: #93c5fd;--success-bg: rgba(5, 150, 105, .1);--danger-bg: rgba(220, 38, 38, .1);--warning-bg: rgba(217, 119, 6, .1)}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}.container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}.modern-header{background:var(--bg-card);border-bottom:1px solid var(--border-color);padding:var(--spacing-md) 0;position:sticky;top:0;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:rgba(var(--bg-card),.8)}.modern-header-content{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}.brand-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.brand-logo{display:flex;align-items:center;gap:var(--spacing-md);text-decoration:none;color:var(--accent-primary)}.brand-logo svg{color:var(--accent-primary);filter:drop-shadow(0 0 8px rgba(37,99,235,.2))}.brand-text{display:flex;flex-direction:column}.brand-name{font-size:1.5rem;font-weight:800;letter-spacing:-.025em;background:linear-gradient(135deg,var(--accent-primary),#4f46e5);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-tagline{font-size:.75rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.header-actions{display:flex;gap:var(--spacing-sm)}.theme-toggle-btn{background:var(--bg-secondary);border:1px solid var(--border-color);padding:8px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .2s;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.theme-toggle-btn:hover{background:var(--border-color);transform:rotate(15deg)}.nav-container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.nav-links{display:flex;gap:var(--spacing-xs);background:var(--bg-secondary);padding:4px;border-radius:var(--border-radius)}.nav-tab{display:flex;align-items:center;gap:var(--spacing-xs);padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);font-weight:600;font-size:.9rem;cursor:pointer;border-radius:calc(var(--border-radius) - 4px);transition:all .2s}.nav-tab.active{background:var(--bg-card);color:var(--accent-primary);box-shadow:var(--shadow-sm)}.nav-tab:hover:not(.active){color:var(--text-primary)}.nav-year-selector{display:flex;align-items:center;gap:var(--spacing-md)}.year-label{font-size:.85rem;font-weight:700;color:var(--text-secondary)}.year-chips{display:flex;gap:8px}.year-chip{padding:6px 14px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.year-chip.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.year-chip:hover:not(.active){border-color:var(--accent-primary);color:var(--accent-primary)}.footer{background:var(--bg-card);border-top:1px solid var(--border-color);padding:var(--spacing-xl) 0;margin-top:var(--spacing-xl)}.footer-content{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}.footer-brand-info{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.footer-brand-info svg{color:var(--accent-primary);opacity:.7}.footer-brand-text{display:flex;flex-direction:column}.footer-name{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.footer-desc{font-size:.85rem;color:var(--text-secondary)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:1px solid var(--border-color);flex-wrap:wrap;gap:var(--spacing-md)}.footer-copyright{font-size:.85rem;color:var(--text-secondary)}.footer-nav{display:flex;gap:var(--spacing-lg)}.footer-link{font-size:.85rem;color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .2s}.footer-link:hover{color:var(--accent-primary)}.stats-section{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-top:var(--spacing-md)}.stat-card{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent-primary)}.stat-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--accent-primary);opacity:.1}.stat-card svg{width:40px;height:40px;margin-bottom:var(--spacing-sm);color:var(--accent-primary);background:var(--bg-secondary);padding:8px;border-radius:12px}.stat-card.success{border-bottom:2px solid var(--success)}.stat-card.success svg{color:var(--success);background:var(--success-bg)}.stat-card.warning{border-bottom:2px solid var(--warning)}.stat-card.warning svg{color:var(--warning);background:var(--warning-bg)}.stat-card.highlight{border-bottom:2px solid var(--accent-gold)}.stat-card.highlight svg{color:var(--accent-gold);background:#fbbf241a}.stat-label{font-size:.8rem;font-weight:700;color:var(--text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.75rem;font-weight:800;color:var(--text-primary)}.stat-comparison{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px dashed var(--border-color);width:100%;display:flex;justify-content:space-between}.stat-comparison-label{font-weight:500}.stat-comparison-value{font-weight:600}.chart-section{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-bottom:var(--spacing-xl)}.chart-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.chart-title{margin:0;font-size:var(--font-size-xl);color:var(--text-primary)}.chart-actions{display:flex;gap:var(--spacing-sm)}.chart-toggle-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;font-weight:500;transition:all .2s;color:var(--text-primary)}.chart-toggle-btn:hover,.chart-toggle-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.chart-container{height:400px;overflow:hidden}.search-section{background:var(--bg-card);border-radius:var(--border-radius-lg);padding:var(--spacing-xl) var(--spacing-lg);box-shadow:var(--shadow-lg);margin-bottom:var(--spacing-xl);text-align:center}.search-header-text{margin-bottom:var(--spacing-lg)}.search-title{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.search-subtitle{color:var(--text-secondary);font-size:.95rem}.search-form-modern{max-width:700px;margin:0 auto}.search-input-wrapper{position:relative;display:flex;align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:100px;padding:4px;transition:all .3s ease}.search-input-wrapper:focus-within{border-color:var(--accent-primary);background:var(--bg-primary);box-shadow:0 0 0 4px #2563eb1a;transform:translateY(-2px)}.search-prefix-icon{padding-left:20px;display:flex;align-items:center;color:var(--text-secondary)}.search-prefix-icon svg{width:20px;height:20px}.search-field{flex:1;background:transparent;border:none;padding:12px 16px;font-size:1.1rem;color:var(--text-primary);font-weight:500}.search-field:focus{outline:none}.search-clear-action{display:flex;align-items:center;gap:6px;background:var(--bg-card);border:1px solid var(--border-color);padding:8px 16px;border-radius:100px;margin-right:4px;cursor:pointer;color:var(--text-secondary);font-size:.85rem;font-weight:600;transition:all .2s}.search-clear-action:hover{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.search-clear-action svg{width:16px;height:16px}.search-hint{margin-top:var(--spacing-sm);font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:8px}.search-hint kbd{background:var(--bg-secondary);border:1px solid var(--border-color);border-bottom-width:3px;border-radius:4px;padding:2px 6px;font-family:inherit;font-size:.75rem;font-weight:700;color:var(--text-primary)}.filters-section{margin-top:var(--spacing-lg);border-top:1px solid var(--border-color);padding-top:var(--spacing-lg)}.filter-toggle-btn{display:flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--accent-primary);font-weight:500;cursor:pointer;padding:var(--spacing-sm) 0;font-size:var(--font-size-base)}.filter-content{margin-top:var(--spacing-md)}.filter-row{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.filter-group{display:flex;flex-direction:column;flex:1;min-width:200px}.filter-group label{margin-bottom:var(--spacing-xs);font-weight:500;color:var(--text-primary)}.filter-input,.filter-select{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base)}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0d6efd40}.filter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md)}.reset-filters-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;font-weight:500;transition:all .2s}.reset-filters-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.filter-results-count{font-size:var(--font-size-sm);color:var(--text-secondary);margin-left:auto}.result-card-premium{background:var(--bg-card);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);margin-top:var(--spacing-xl);overflow:hidden;border:1px solid var(--border-color);animation:slideUpFade .5s cubic-bezier(.4,0,.2,1)}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-card-inner{padding:var(--spacing-xl);position:relative}.result-card-premium.passed{border-top:6px solid var(--success)}.result-card-premium.failed{border-top:6px solid var(--danger)}.result-status-section{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px dashed var(--border-color)}.result-badge-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.passed .result-badge-icon{background:var(--success-bg);color:var(--success)}.failed .result-badge-icon{background:var(--danger-bg);color:var(--danger)}.result-badge-icon svg{width:32px;height:32px}.result-headline{font-size:1.5rem;font-weight:800;margin:0 0 4px}.passed .result-headline{color:var(--success)}.failed .result-headline{color:var(--danger)}.result-subline{color:var(--text-secondary);font-size:1rem;line-height:1.5;margin:0;font-style:italic}.result-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:700}.detail-value{font-size:1.15rem;font-weight:600;color:var(--text-primary)}.detail-value.highlight{color:var(--accent-primary);font-family:monospace;font-size:1.25rem}.detail-value.name{text-transform:uppercase}.score-focus{grid-column:span 2;background:var(--bg-secondary);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius);display:flex;flex-direction:row!important;justify-content:space-between;align-items:center}.score-display{display:flex;align-items:baseline;gap:4px}.score-number{font-size:3rem;font-weight:900;line-height:1}.score-total{font-size:1.25rem;color:var(--text-secondary);font-weight:600}.result-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-secondary)}.exam-info-tag{display:flex;align-items:center;gap:6px}.pass-score-tag b{color:var(--text-primary);font-size:1rem}.related-materials-premium{background:var(--bg-secondary);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.related-title{font-size:.9rem;color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.materials-chips{display:flex;flex-wrap:wrap;gap:10px}.material-chip-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.material-chip-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}@media(max-width:600px){.result-details-grid{grid-template-columns:1fr}.score-focus{flex-direction:column!important;align-items:flex-start;gap:var(--spacing-sm)}}.results-section{margin-top:var(--spacing-lg)}.candidates-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-md);background:var(--bg-card);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-sm)}.candidates-table th,.candidates-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.candidates-table th{background:var(--bg-secondary);font-weight:600;color:var(--text-primary);position:sticky;top:0;z-index:10}.candidates-table th svg{margin-right:var(--spacing-xs);vertical-align:middle}.candidates-table tbody tr:last-child td{border-bottom:none}.candidates-table tbody tr:hover{background:#0d6efd0d}.candidates-table .passed{color:#198754;font-weight:500}.candidates-table .failed{color:#dc3545}.candidates-table .passed-row{background:#1987540d}.candidates-table .failed-row{background:#dc35450d}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);margin:var(--spacing-xl) 0;padding:var(--spacing-md);background:var(--bg-primary)}.pagination-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:10px 20px;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:30px;cursor:pointer;font-weight:600;font-size:var(--font-size-sm);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);min-width:100px}.pagination-button:hover:not(:disabled){background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.pagination-button:active:not(:disabled){transform:translateY(0)}.pagination-button:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-secondary)}.pagination-info{display:flex;align-items:center;gap:var(--spacing-xs);font-weight:600;font-size:var(--font-size-base);color:var(--text-secondary);background:var(--bg-secondary);padding:8px 16px;border-radius:20px}.current-page{color:var(--accent-primary);font-size:var(--font-size-lg)}.page-separator{opacity:.5}.total-pages{opacity:.8}.candidate-list-chart-section{margin:var(--spacing-xl) 0;padding:var(--spacing-lg);background:var(--bg-card);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.candidate-list-chart-section .chart-title{margin-bottom:var(--spacing-lg);font-size:var(--font-size-lg);text-align:center}.candidate-list-chart-section .chart-container{height:300px}.footer{background:var(--bg-secondary);color:var(--text-secondary);padding:var(--spacing-lg) 0;text-align:center;margin-top:var(--spacing-xl);border-top:1px solid var(--border-color)}.footer-links{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-sm);flex-wrap:wrap}.footer-link{color:var(--accent-primary);text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--accent-hover);text-decoration:underline}.scroll-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:var(--accent-primary);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all .3s;z-index:1000}.scroll-to-top:hover{background:var(--accent-hover);transform:translateY(-3px)}.scroll-to-top svg{width:24px;height:24px}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.modern-header-title{font-size:var(--font-size-xl)}.modern-header-subtitle{font-size:var(--font-size-base)}.chart-header{flex-direction:column;align-items:stretch}.chart-actions{justify-content:center}.search-form{flex-direction:column}.filter-row{flex-direction:column;gap:var(--spacing-md)}.filter-group{min-width:100%}.filter-actions{flex-direction:column;align-items:stretch}.filter-results-count{margin-left:0;text-align:center}.result-info{grid-template-columns:1fr}.pagination{flex-wrap:wrap}.footer-links{flex-direction:column;gap:var(--spacing-xs)}.scroll-to-top{bottom:20px;right:20px;width:40px;height:40px}.scroll-to-top svg{width:20px;height:20px}}@media(max-width:480px){.container,.modern-header-content{padding:0 var(--spacing-sm)}.stat-card,.chart-section,.search-section,.candidate-list-chart-section{padding:var(--spacing-md)}.pagination{gap:var(--spacing-sm)}.pagination-button{padding:var(--spacing-sm);font-size:var(--font-size-sm)}}.year-selector{display:flex;background:var(--bg-secondary);border-radius:var(--border-radius);padding:4px;margin:0 var(--spacing-md);border:1px solid var(--border-color)}.year-btn{padding:6px 16px;border:none;background:transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;border-radius:calc(var(--border-radius) - 2px);transition:all .2s}.year-btn.active{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-sm)}.year-btn:hover:not(.active){background:var(--bg-tertiary);color:var(--text-primary)}.related-materials{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px dashed var(--border-color)}.related-materials h4{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-sm)}.material-suggest-btn{text-align:left;padding:var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:var(--font-size-sm);color:var(--accent-primary);cursor:pointer;transition:all .2s}.material-suggest-btn:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.materials-section{background:var(--bg-card);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:var(--spacing-xl);border:1px solid var(--border-color)}.materials-container{display:grid;grid-template-columns:320px 1fr;min-height:700px}.materials-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.sidebar-title{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);color:var(--accent-primary)}.sidebar-search{position:relative;display:flex;align-items:center}.sidebar-search svg{position:absolute;left:12px;width:16px;height:16px;color:var(--text-secondary)}.sidebar-search input{width:100%;padding:10px 12px 10px 36px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);font-size:var(--font-size-sm);transition:all .2s}.sidebar-search input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #0d6efd1a}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--spacing-md)}.category-group{margin-bottom:var(--spacing-lg)}.category-title{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);margin:0 0 var(--spacing-sm) 8px;font-weight:700}.category-list{display:flex;flex-direction:column;gap:4px}.material-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:10px 12px;background:transparent;border:none;border-radius:var(--border-radius);color:var(--text-secondary);text-align:left;cursor:pointer;transition:all .2s;position:relative}.material-item:hover{background:#0d6efd0d;color:var(--text-primary)}.material-item.active{background:var(--accent-primary);color:#fff;box-shadow:var(--shadow-sm)}.material-icon{font-size:1.1em;line-height:1.2}.material-info{flex:1;display:flex;flex-direction:column;gap:2px}.material-title{font-size:14px;font-weight:500;line-height:1.4}.material-badge{display:inline-block;font-size:10px;background:#0000001a;padding:1px 6px;border-radius:4px;width:fit-content;font-weight:700}.material-item.active .material-badge{background:#fff3}.no-results{padding:var(--spacing-lg);text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm);font-style:italic}.materials-content{padding:var(--spacing-xl);background:var(--bg-primary);display:flex;flex-direction:column}.materials-placeholder{flex:1;display:flex;align-items:center;justify-content:center;text-align:center}.welcome-content{max-width:500px;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);animation:fadeIn .5s ease-out}.welcome-content svg{width:80px;height:80px;color:var(--accent-primary);opacity:.15;margin-bottom:var(--spacing-sm)}.welcome-content h2{margin:0;color:var(--text-primary)}.welcome-content p{color:var(--text-secondary);font-size:var(--font-size-lg)}.welcome-stats{display:flex;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.w-stat{display:flex;flex-direction:column;font-size:var(--font-size-sm);color:var(--text-secondary)}.w-stat b{font-size:24px;color:var(--accent-primary)}@media(max-width:992px){.materials-container{grid-template-columns:1fr}.materials-sidebar{border-right:none;border-bottom:1px solid var(--border-color);max-height:400px}.sidebar-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}}.markdown-body{color:var(--text-primary)}.markdown-body h1,.markdown-body h2,.markdown-body h3{border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-xs);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);color:var(--accent-primary)}.markdown-body h2{font-size:var(--font-size-lg)}.markdown-body p{margin-bottom:var(--spacing-md);line-height:1.6}.markdown-body ul,.markdown-body ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}.markdown-body li{margin-bottom:var(--spacing-xs)}.markdown-body table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm)}.markdown-body th,.markdown-body td{border:1px solid var(--border-color);padding:var(--spacing-sm);text-align:left}.markdown-body th{background:var(--bg-secondary);font-weight:600}.markdown-body blockquote{border-left:4px solid var(--accent-primary);padding-left:var(--spacing-md);color:var(--text-secondary);font-style:italic;margin:var(--spacing-md) 0}.markdown-body code{background:var(--bg-secondary);padding:2px 4px;border-radius:4px;font-family:monospace}.markdown-body strong{color:inherit;font-weight:700}.markdown-body .content-box{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-lg)!important;margin-bottom:var(--spacing-lg)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-sm)!important;transition:all .3s ease;position:relative;overflow:hidden}.markdown-body .content-box:hover{box-shadow:var(--shadow-md)!important;border-color:var(--accent-primary)!important}.markdown-body .content-box *{color:var(--text-primary)!important}.markdown-body .content-box strong{color:var(--text-primary)!important;font-weight:700}.markdown-body .box-info{border-left:4px solid #0d6efd!important;background:linear-gradient(to right,rgba(13,110,253,.05),transparent)!important}.markdown-body .box-success{border-left:4px solid #198754!important;background:linear-gradient(to right,rgba(25,135,84,.05),transparent)!important}.markdown-body .box-warning{border-left:4px solid #ffc107!important;background:linear-gradient(to right,rgba(255,193,7,.05),transparent)!important}.markdown-body .box-accent{border-left:4px solid #6f42c1!important;background:linear-gradient(to right,rgba(111,66,193,.05),transparent)!important}.markdown-body .content-box h2,.markdown-body .content-box h3,.markdown-body .content-box h4{margin-top:0!important;border-bottom:none!important;color:var(--accent-primary)!important;display:flex;align-items:center;gap:var(--spacing-sm)}.markdown-body p:has(strong:contains("Question")),.markdown-body p:has(strong:contains("Câu")){background:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius);border-left:3px solid var(--accent-primary);margin-top:var(--spacing-lg)}.loading-spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-left-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.material-suggest-btn{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.material-suggest-btn small{font-size:10px;opacity:.7;text-transform:uppercase}.pdf-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pdf-modal-container{width:90%;height:90%;background:var(--bg-primary);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-xl)}.pdf-modal-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.pdf-modal-header h3{margin:0;font-size:var(--font-size-lg);color:var(--text-primary)}.close-modal-btn{background:transparent;border:none;font-size:32px;color:var(--text-secondary);cursor:pointer;line-height:1;padding:0;transition:color .2s}.close-modal-btn:hover{color:var(--accent-primary)}.pdf-modal-body{flex:1;background:#525659}.pdf-modal-body iframe{border:none}.markdown-body button{background:var(--accent-primary);color:#fff;border:none;padding:8px 16px;border-radius:var(--border-radius);cursor:pointer;font-weight:600;margin:4px}.markdown-body a[href$=".pdf"]{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;background:var(--bg-secondary)!important;color:var(--accent-primary)!important;border:2px solid var(--accent-primary)!important;border-radius:var(--border-radius);font-weight:600;text-decoration:none!important;transition:all .2s cubic-bezier(.4,0,.2,1);margin:var(--spacing-xs) 0;box-shadow:var(--shadow-sm);width:fit-content}.markdown-body a[href$=".pdf"]:before{content:"📥";font-size:1.2em}.markdown-body a[href$=".pdf"]:hover{background:var(--accent-primary)!important;color:#fff!important;transform:translateY(-2px);box-shadow:var(--shadow-md)}.markdown-body div[style]{transition:transform .2s}.markdown-body div[style]:hover{transform:scale(1.01)}
