:root{--bg:#fafaf9;--surface:#fff;--surface-2:#f5f5f4;--surface-3:#ebebea;--text-1:#18181b;--text-2:#52525b;--text-3:#a1a1aa;--border:#e4e4e7;--border-strong:#d4d4d8;--divider:#f4f4f5;--primary:#4f46e5;--primary-hover:#4338ca;--primary-light:#eef2ff;--primary-border:#c7d2fe;--success:#16a34a;--success-bg:#f0fdf4;--success-border:#bbf7d0;--warning:#d97706;--warning-bg:#fffbeb;--warning-border:#fde68a;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fecaca;--info:#2563eb;--info-bg:#eff6ff;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 8px 24px #00000014;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, monospace;--font-serif:"Fraunces", Georgia, serif;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-base:15px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:30px;--fs-4xl:36px;--fs-5xl:48px;--lh-tight:1.25;--lh-snug:1.4;--lh-normal:1.55;--lh-relaxed:1.7;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--container:1280px;--sidebar-w:240px}[data-theme=dark]{--bg:#0a0a0b;--surface:#18181b;--surface-2:#27272a;--surface-3:#3f3f46;--text-1:#fafafa;--text-2:#a1a1aa;--text-3:#71717a;--border:#27272a;--border-strong:#3f3f46;--divider:#1f1f23;--primary:#818cf8;--primary-hover:#6366f1;--primary-light:#1e1b4b;--primary-border:#3730a3;--success-bg:#052e16;--success-border:#14532d;--warning-bg:#422006;--warning-border:#78350f;--danger-bg:#450a0a;--danger-border:#7f1d1d;--info-bg:#0c1f3d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080}*{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--fs-base);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);color:var(--text-1);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%;display:block}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--fw-semibold);line-height:var(--lh-tight);color:var(--text-1);letter-spacing:-.01em}h1{font-size:var(--fs-3xl)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}.container{max-width:var(--container);padding:0 var(--s-6);margin:0 auto}@media (width<=768px){.container{padding:0 var(--s-4)}}.site-header{z-index:100;border-bottom:1px solid var(--border);backdrop-filter:saturate(180%)blur(8px);background:#ffffffeb;position:sticky;top:0}[data-theme=dark] .site-header{background:#18181beb}.site-header-inner{max-width:var(--container);padding:0 var(--s-6);align-items:center;gap:var(--s-4);height:56px;margin:0 auto;display:flex}@media (width<=768px){.site-header-inner{padding:0 var(--s-4)}}.logo{font-weight:var(--fw-bold);font-size:var(--fs-lg);letter-spacing:-.02em;color:var(--text-1);align-items:center;gap:8px;display:flex}.logo-mark{background:var(--primary);border-radius:var(--r-md);color:#fff;letter-spacing:-.04em;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.search-bar{flex:1;max-width:480px;position:relative}.search-bar input{width:100%;height:36px;padding:0 var(--s-4) 0 36px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-md);outline:none;transition:border-color .15s,background .15s}.search-bar input:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px var(--primary-light)}.search-bar input::placeholder{color:var(--text-3)}.search-bar svg{width:16px;height:16px;color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-bar kbd{font-family:var(--font-mono);color:var(--text-3);background:var(--surface-3);border-radius:var(--r-sm);border:1px solid var(--border);padding:2px 6px;font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.header-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.icon-btn{border-radius:var(--r-md);width:36px;height:36px;color:var(--text-2);justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.icon-btn:hover{background:var(--surface-2);color:var(--text-1)}.icon-btn svg{width:18px;height:18px}.mobile-menu-toggle{display:none}@media (width<=768px){.search-bar{max-width:none}.search-bar kbd{display:none}.mobile-menu-toggle{display:inline-flex}.desktop-nav{display:none}}.bottom-nav{background:var(--surface);border-top:1px solid var(--border);z-index:90;padding:6px 0 env(safe-area-inset-bottom,6px);display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{color:var(--text-3);font-size:10px;font-weight:var(--fw-medium);flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;display:flex}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-item svg{width:22px;height:22px}@media (width<=768px){.bottom-nav{display:flex}body{padding-bottom:56px}}.btn{border-radius:var(--r-md);height:36px;font-size:var(--fs-md);font-weight:var(--fw-medium);background:var(--surface-2);color:var(--text-1);white-space:nowrap;user-select:none;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.btn:hover{background:var(--surface-3)}.btn:active{transform:translateY(.5px)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-ghost{background:0 0}.btn-ghost:hover{background:var(--surface-2)}.btn-outline{border-color:var(--border-strong);background:0 0}.btn-outline:hover{background:var(--surface-2)}.btn-sm{height:28px;font-size:var(--fs-sm);padding:0 10px}.btn-lg{height:44px;font-size:var(--fs-base);padding:0 24px}.btn-block{width:100%}.btn svg{width:16px;height:16px}.badge{font-size:11px;font-weight:var(--fw-medium);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.badge-primary{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border)}.badge-success{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.badge-warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.tag{font-size:12px;font-weight:var(--fw-medium);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);padding:3px 10px;display:inline-block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-5);transition:border-color .15s,transform .15s,box-shadow .15s}.exam-card{padding:var(--s-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s;display:block}.exam-card:hover{border-color:var(--primary-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.exam-card-name{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-1);letter-spacing:-.01em;margin-bottom:4px}.exam-card-desc{font-size:var(--fs-sm);color:var(--text-3);margin-bottom:var(--s-4)}.exam-card-stat{font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.exam-card-lbl{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:var(--fw-medium)}.test-card{padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.test-card:hover{border-color:var(--primary-border);transform:translateY(-1px)}.test-card-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text-1);letter-spacing:-.01em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;display:-webkit-box;overflow:hidden}.test-card-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-select{-webkit-appearance:none;appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);height:32px;font-size:var(--fs-sm);color:var(--text-1);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%2371717a' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 10px center;background-repeat:no-repeat;padding:0 28px 0 10px;transition:border-color .15s}.filter-select:hover{border-color:var(--border-strong)}.filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.site-footer{margin-top:var(--s-12);padding:var(--s-8) 0;border-top:1px solid var(--border);background:var(--surface)}.footer-inner{justify-content:space-between;align-items:center;gap:var(--s-4);color:var(--text-3);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.footer-links{gap:var(--s-4);display:flex}.footer-links a{color:var(--text-2);transition:color .15s}.footer-links a:hover{color:var(--text-1)}.test-frame-wrap{background:var(--bg);position:fixed;inset:56px 0 0}@media (width<=768px){.test-frame-wrap{inset:56px 0}}.test-frame{background:#fff;border:none;width:100%;height:100%}.theme-toggle .sun-icon{display:none}[data-theme=dark] .theme-toggle .sun-icon{display:block}[data-theme=dark] .theme-toggle .moon-icon{display:none}.hero{padding:var(--s-12) 0 var(--s-10);border-bottom:1px solid var(--border);background:linear-gradient(180deg, var(--surface) 0%, var(--bg) 100%)}.hero h1{font-size:var(--fs-4xl);letter-spacing:-.03em;margin-bottom:var(--s-3)}.hero p{font-size:var(--fs-lg);color:var(--text-2);max-width:640px;line-height:var(--lh-relaxed)}.hero-stats{gap:var(--s-8);margin-top:var(--s-8);flex-wrap:wrap;display:flex}@media (width<=768px){.hero{padding:var(--s-8) 0}.hero h1{font-size:var(--fs-3xl)}.hero p{font-size:var(--fs-base)}.hero-stats{gap:var(--s-6)}}.section{padding:var(--s-10) 0}.section-sm{padding:var(--s-6) 0}.section-title{margin-bottom:var(--s-5);align-items:baseline;gap:12px;display:flex}.section-title h2{letter-spacing:-.02em}.section-title .count{font-size:var(--fs-md);color:var(--text-3);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.grid{gap:var(--s-4);display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (width<=1024px){.grid-4{grid-template-columns:repeat(3,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.grid-2,.grid-3,.grid-4,.grid-auto{grid-template-columns:1fr}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--s-2)}.gap-3{gap:var(--s-3)}.gap-4{gap:var(--s-4)}.gap-6{gap:var(--s-6)}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.stat-num{font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:var(--text-1);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}.stat-lbl{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:var(--fw-medium);margin-top:4px}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:220px;box-shadow:var(--shadow-lg);z-index:50;opacity:0;visibility:hidden;padding:6px;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;top:calc(100% + 4px);right:0;transform:translateY(-4px)}.dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{border-radius:var(--r-sm);font-size:var(--fs-md);color:var(--text-1);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.dropdown-item:hover{background:var(--surface-2)}.dropdown-item svg{width:16px;height:16px;color:var(--text-3)}.dropdown-divider{background:var(--divider);height:1px;margin:4px 0}.skeleton{background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-3) 50%, var(--surface-2) 100%);border-radius:var(--r-md);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}.empty-state{text-align:center;padding:var(--s-12) var(--s-6);color:var(--text-3)}.empty-state-icon{width:48px;height:48px;margin:0 auto var(--s-4);color:var(--text-3);opacity:.6}.empty-state h3{color:var(--text-2);margin-bottom:var(--s-2);font-size:var(--fs-lg)}.empty-state p{font-size:var(--fs-sm);color:var(--text-3);max-width:320px;margin:0 auto}.test-back-bar{padding:var(--s-3) var(--s-4);align-items:center;gap:var(--s-3);border-bottom:1px solid var(--border);background:var(--surface);display:flex}.muted{color:var(--text-3)}.mobile-menu[data-astro-cid-ju4pidww]{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:99;max-height:calc(100vh - 56px);position:fixed;top:56px;left:0;right:0;overflow-y:auto}.mobile-menu-inner[data-astro-cid-ju4pidww]{padding:var(--s-2)}.mobile-menu-item[data-astro-cid-ju4pidww]{padding:14px var(--s-4);color:var(--text-1);font-size:var(--fs-base);font-weight:var(--fw-medium);border-radius:var(--r-md);align-items:center;gap:12px;transition:background .12s;display:flex}.mobile-menu-item[data-astro-cid-ju4pidww]:hover,.mobile-menu-item[data-astro-cid-ju4pidww]:active{background:var(--surface-2)}.mobile-menu-item[data-astro-cid-ju4pidww] svg[data-astro-cid-ju4pidww]{width:20px;height:20px;color:var(--text-2)}@media (width>=769px){.mobile-menu[data-astro-cid-ju4pidww]{display:none!important}}
