@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");:root{--primary-h:215;--primary-s:42%;--primary-l:22%;--primary:hsl(var(--primary-h),var(--primary-s),var(--primary-l));--primary-light:hsl(var(--primary-h),var(--primary-s),32%);--accent:#2b5ea8;--accent-hover:#234d8c;--accent-light:#eef3fa;--success:#16a34a;--warning:#ea580c;--danger:#dc2626;--bg-main:#f4f6f9;--bg-surface:#ffffff;--bg-muted:#f1f5f9;--bg-card:#ffffff;--text-main:#0f172a;--text-dim:#64748b;--text-on-primary:#ffffff;--border:#e2e8f0;--border-strong:#cbd5e1;--border-focus:#2b5ea8;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(15,23,42,0.05);--shadow-md:0 4px 16px rgba(15,23,42,0.06);--shadow-lg:0 10px 30px rgba(15,23,42,0.08);--shadow-xl:0 20px 50px rgba(15,23,42,0.1);--transition-fast:0.15s ease;--transition-normal:0.22s ease}[data-theme=dark]{--primary-l:10%;--bg-main:#0F172A;--bg-surface:#1E293B;--bg-card:rgba(30,41,59,0.8);--text-main:#F1F5F9;--text-dim:#94A3B8;--border:#334155}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;width:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-main);background-color:var(--bg-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}@media (max-width:900px){html{overflow-x:hidden}}a{color:var(--accent);text-decoration:none;transition:var(--transition-fast)}a:hover{filter:brightness(1.1)}ol,ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit}.glass{border:1px solid var(--border)}.card,.glass{background:var(--bg-surface);box-shadow:var(--shadow-sm)}.card{border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border)}.container{max-width:1200px;margin:0 auto;padding:0 24px}html[data-page-visible=false] *{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.animate-fade{animation:fadeIn var(--transition-normal)}.animate-slide{animation:slideInRight var(--transition-normal)}.skeleton{background:linear-gradient(90deg,#F1F5F9 25%,#E2E8F0 50%,#F1F5F9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}button:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:white;padding:10px 20px;border-radius:var(--radius-md);font-weight:600;transition:var(--transition-normal)}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 12px rgba(43,94,168,.22)}.card-interactive{transition:var(--transition-normal)}.card-interactive:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent)}.page-section{max-width:1100px;margin:0 auto;padding:24px 20px;display:flex;flex-direction:column;gap:24px}.data-table-wrap{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table thead tr{background:var(--bg-main);border-bottom:2px solid var(--border)}.data-table th{padding:11px 16px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);white-space:nowrap}.data-table td{padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-main)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-main)}.section-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.section-header h3{font-size:15px;font-weight:700;color:var(--text-main);margin:0}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700}.badge-success{background:rgba(39,174,96,.1);color:#27ae60}.badge-warning{background:rgba(242,153,74,.12);color:#d35400}.badge-danger{background:rgba(231,76,60,.1);color:#e74c3c}.badge-info{background:rgba(74,144,217,.12);color:#4a90d9}.badge-neutral{background:rgba(100,116,139,.1);color:#64748b}.form-input{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:inherit;color:var(--text-main);background:var(--bg-surface);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(74,144,217,.1)}.form-input::placeholder{color:var(--text-dim)}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;border:none;transition:background var(--transition-fast),transform var(--transition-fast)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-accent{background:var(--accent);color:white}.btn-accent:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text-dim);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg-main);color:var(--text-main)}.btn-danger-ghost{background:transparent;color:var(--danger);border:1px solid rgba(231,76,60,.3)}.btn-danger-ghost:hover:not(:disabled){background:rgba(231,76,60,.06)}.empty-state{text-align:center;padding:48px 20px;color:var(--text-dim);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state-icon{font-size:40px}.empty-state p{margin:0}@keyframes latestResultSpin{to{transform:rotate(1turn)}}@media (max-width:768px){.btn{min-height:44px;padding-top:10px;padding-bottom:10px}.card{padding:16px}.page-section{padding:16px 12px;gap:16px}.container{padding:0 12px}.form-input{min-height:44px;font-size:16px}.data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}}