:root{--bg-primary: #020810;--bg-secondary: #060e1f;--bg-tertiary: #0a1628;--bg-card: rgba(8, 18, 42, .88);--bg-glass: rgba(8, 18, 42, .62);--bg-glass-strong: rgba(10, 22, 50, .82);--bg-elevated: rgba(14, 28, 58, .9);--border-glass: rgba(148, 185, 232, .1);--border-subtle: rgba(148, 185, 232, .06);--border-glow: rgba(0, 212, 170, .3);--green-primary: #00d4a8;--green-light: #5dfcd2;--green-dark: #009975;--green-glow: rgba(0, 212, 168, .2);--red-primary: #ff4757;--red-light: #ff6b81;--gold: #fbbf24;--gold-light: #fde68a;--blue: #3b82f6;--blue-light: #93bbfd;--blue-dark: #1e40af;--purple: #8b5cf6;--purple-light: #c4b5fd;--pink: #ec4899;--cyan: #22d3ee;--orange: #fb923c;--teal: #14b8a6;--text-primary: #f0f6ff;--text-secondary: #94a8c8;--text-muted: #5a7296;--text-accent: var(--green-primary);--font-bengali: "Noto Sans Bengali", sans-serif;--font-display: "Sora", "Noto Sans Bengali", sans-serif;--font-number: "Manrope", "Noto Sans Bengali", sans-serif;--font-ui: "Manrope", "Noto Sans Bengali", sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--vh-full: 100vh;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 8px 30px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 32px 80px rgba(0, 0, 0, .6), 0 12px 40px rgba(0, 0, 0, .35);--shadow-glow-green: 0 0 30px rgba(0, 212, 168, .25), 0 0 60px rgba(0, 212, 168, .08);--shadow-glow-blue: 0 0 30px rgba(59, 130, 246, .25), 0 0 60px rgba(59, 130, 246, .08);--shadow-glow-purple: 0 0 30px rgba(139, 92, 246, .25), 0 0 60px rgba(139, 92, 246, .08);--shadow-inner: inset 0 1px 0 rgba(255, 255, 255, .04), inset 0 -1px 0 rgba(0, 0, 0, .1);--transition-fast: .16s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.16, 1, .3, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--transition-bounce: .6s cubic-bezier(.68, -.55, .265, 1.55)}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-tertiary: #e2e8f0;--bg-card: #ffffff;--bg-glass: #ffffff;--bg-glass-strong: #ffffff;--bg-elevated: #ffffff;--border-glass: #e2e8f0;--border-subtle: #eef2f6;--border-glow: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--shadow-sm: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08), 0 2px 4px rgba(15, 23, 42, .04);--shadow-lg: 0 12px 28px rgba(15, 23, 42, .1), 0 4px 10px rgba(15, 23, 42, .05);--shadow-xl: 0 20px 40px rgba(15, 23, 42, .12), 0 8px 16px rgba(15, 23, 42, .06);--shadow-inner: none;--green-primary: #009d80;--green-light: #33c4a8;--green-dark: #007a63;--green-glow: rgba(0, 157, 128, .12);--shadow-glow-green: 0 0 20px rgba(0, 157, 128, .12), 0 0 40px rgba(0, 157, 128, .04);--shadow-glow-blue: 0 0 20px rgba(59, 130, 246, .12), 0 0 40px rgba(59, 130, 246, .04);--shadow-glow-purple: 0 0 20px rgba(139, 92, 246, .12), 0 0 40px rgba(139, 92, 246, .04)}[data-theme=light] body{background:var(--bg-primary)}[data-theme=light] body:before{background:radial-gradient(ellipse at 15% 0%,rgba(0,200,160,.08) 0%,transparent 55%),radial-gradient(ellipse at 85% 5%,rgba(59,130,246,.07) 0%,transparent 50%),radial-gradient(ellipse at 55% 100%,rgba(251,191,36,.05) 0%,transparent 52%)}[data-theme=light] body:after{background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,.03) 1px,transparent 0);opacity:.6}[data-theme=light] .glass-card{background:linear-gradient(165deg,#fffffff5,#ffffffd9);border-color:#0f284a14;box-shadow:var(--shadow-sm)}[data-theme=light] .glass-card:hover{border-color:#00b48c4d;box-shadow:0 12px 36px #00b48c1f,0 6px 18px #0c203a0f}[data-theme=light] .navbar{background:#f8fbffeb;border-bottom-color:#0d26480f}[data-theme=light] ::-webkit-scrollbar-track{background:#e8f0fa}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-bengali);background:var(--bg-primary);color:var(--text-primary);line-height:1.7;min-height:100dvh;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse 80% 50% at 10% 0%,rgba(0,212,168,.12) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 90% 5%,rgba(59,130,246,.14) 0%,transparent 45%),radial-gradient(ellipse 70% 50% at 50% 95%,rgba(139,92,246,.08) 0%,transparent 50%),radial-gradient(ellipse 40% 35% at 75% 55%,rgba(236,72,153,.05) 0%,transparent 40%);pointer-events:none;z-index:0;animation:ambientShift 25s ease-in-out infinite alternate}body:after{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.02) 1px,transparent 0);background-size:32px 32px;pointer-events:none;z-index:0;opacity:.4}#root{position:relative;z-index:1}a{text-decoration:none;color:inherit}.skip-link{position:fixed;top:10px;left:10px;z-index:2000;transform:translateY(-180%);padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--green-primary);background:#020810f2;color:var(--text-primary);font-weight:700;transition:transform var(--transition-fast)}.skip-link:focus-visible{transform:translateY(0)}img{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--green-primary);outline-offset:2px}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--green-primary),var(--purple));border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--green-light)}.glass-card{background:linear-gradient(165deg,#0c1a3ad9,#08122ab3);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-normal);position:relative;box-shadow:var(--shadow-sm),var(--shadow-inner);overflow:hidden}.glass-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.015) 40%,transparent 70%);pointer-events:none}.glass-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 10%,rgba(255,255,255,.08) 50%,transparent 90%);pointer-events:none}.glass-card:hover{border-color:#00d4a84d;box-shadow:var(--shadow-glow-green),var(--shadow-lg);transform:translateY(-4px)}.container{max-width:1280px;margin:0 auto;padding:0 var(--space-lg)}.section{padding:clamp(2.8rem,6vw,4.8rem) 0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:var(--space-lg)}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:var(--space-xl)}.section-title{font-size:clamp(1.4rem,4vw,2rem);font-family:var(--font-display);font-weight:700;margin-bottom:var(--space-xl);color:var(--text-primary);position:relative;padding-bottom:1rem;letter-spacing:-.025em}.section-title:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:linear-gradient(90deg,var(--green-primary),var(--cyan));border-radius:var(--radius-full);animation:shimmerLine 4s ease-in-out infinite}@keyframes shimmerLine{0%,to{width:60px;opacity:1}50%{width:100px;opacity:.75}}.related-links{max-width:1280px;margin:0 auto;padding:var(--space-lg) var(--space-lg) var(--space-2xl);font-size:.85rem;color:var(--text-muted)}.related-links a{color:var(--green-primary);font-weight:600}.related-links a:hover{text-decoration:underline}.number{font-family:var(--font-number);font-weight:800}.trend-up{color:var(--green-primary)}.trend-down{color:var(--red-primary)}.trend-stable{color:var(--gold)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.97)}}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes ambientShift{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}to{opacity:.85;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-10px) rotate(.5deg)}66%{transform:translateY(-5px) rotate(-.5deg)}}@keyframes floatReverse{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(8px) rotate(-.5deg)}66%{transform:translateY(4px) rotate(.5deg)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #00d4a826}50%{box-shadow:0 0 40px #00d4a859,0 0 80px #00d4a81a}}@keyframes borderGlow{0%,to{border-color:#00d4a826}50%{border-color:#00d4a873}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(4);opacity:0}}@keyframes scanLine{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes bgShift{0%{opacity:.8}to{opacity:1}}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-20px) scale(1.05)}50%{transform:translate(-10px,15px) scale(.98)}75%{transform:translate(-25px,-10px) scale(1.02)}}.animate-fade-in{animation:fadeInUp .55s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.gradient-text{background:linear-gradient(135deg,var(--green-primary),var(--cyan),var(--blue));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 5s ease infinite}.neon-green{text-shadow:0 0 12px rgba(0,212,168,.5),0 0 36px rgba(0,212,168,.2)}.neon-blue{text-shadow:0 0 12px rgba(59,130,246,.5),0 0 36px rgba(59,130,246,.2)}@media(max-width:768px){html{font-size:15px}.container{padding:0 var(--space-md)}.stat-grid,.chart-grid{grid-template-columns:1fr}.section{padding:var(--space-2xl) 0}}@media(max-width:480px){html{font-size:14px}.container{padding:0 var(--space-sm)}}@media(max-width:360px){html{font-size:14px}.container{padding:0 8px}}@media(hover:none){.glass-card:hover{transform:none;box-shadow:var(--shadow-sm);border-color:var(--border-glass)}.glass-card:active{transform:scale(.98);border-color:#00d4a840;box-shadow:0 4px 20px #00d4a81f}}@supports (padding: max(0px)){.navbar{padding-top:max(0px,env(safe-area-inset-top))}.search-overlay,.search-modal{padding-top:max(20px,env(safe-area-inset-top))}body{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}a,button,[role=button],input,select,textarea{-webkit-tap-highlight-color:transparent}button,[role=button],a,.clickable{user-select:none;-webkit-user-select:none;touch-action:manipulation}input,select,textarea{font-size:max(16px,1em)}[style*=overflow],.overflow-auto,.overflow-y-auto,.overflow-x-auto{-webkit-overflow-scrolling:touch}@media(max-width:768px){.glass-card{border-radius:var(--radius-md)}.navbar-links{-webkit-overflow-scrolling:touch}@media(prefers-reduced-motion:reduce){.glass-card,.navbar,.bottom-nav{backdrop-filter:none;-webkit-backdrop-filter:none}}}.student-tip{display:flex;align-items:flex-start;gap:10px;padding:14px 18px;background:#00d4a80f;border:1px solid rgba(0,212,168,.12);border-left:3px solid var(--green-primary);border-radius:var(--radius-md);font-size:.82rem;color:var(--text-secondary);line-height:1.6}html{overscroll-behavior-y:contain}:focus-visible{outline:2px solid var(--green-primary);outline-offset:2px;border-radius:var(--radius-sm)}.app-main{min-height:calc(100dvh - 220px);animation:fadeInUp .3s ease forwards}@supports not (min-height: 100dvh){.app-main{min-height:calc(100vh - 220px)}}@media(max-width:768px){.app-main{min-height:calc(100dvh - 130px)}@supports not (min-height: 100dvh){.app-main{min-height:calc(100vh - 260px)}}}.navbar{position:sticky;top:0;z-index:1000;background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.navbar-inner{display:flex;align-items:center;gap:1rem;min-height:64px}.navbar-logo{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;color:var(--text-primary);font-family:var(--font-display);font-size:1.1rem;font-weight:800;text-decoration:none;white-space:nowrap}.logo-flag{font-size:1.25rem}.logo-text{color:var(--green-primary)}.navbar-primary{display:flex;flex:1;align-items:center;justify-content:center;gap:.25rem}.navbar-destination{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem .9rem;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;font-weight:650;text-decoration:none;transition:color .15s ease,background .15s ease}.navbar-destination:hover{color:var(--text-primary);background:var(--bg-secondary)}.navbar-destination.active{color:var(--green-primary);background:color-mix(in srgb,var(--green-primary) 10%,transparent)}.navbar-actions{display:flex;align-items:center;gap:.35rem}.navbar-icon-btn,.navbar-search-btn,.navbar-toggle{min-width:44px;min-height:44px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.navbar-icon-btn:hover,.navbar-search-btn:hover,.navbar-toggle:hover{color:var(--text-primary);border-color:color-mix(in srgb,var(--green-primary) 45%,var(--border-color))}.navbar-lang-btn{font-family:var(--font-ui);font-size:.75rem;font-weight:800}.navbar-search-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:0 .7rem}.search-btn-kbd{padding:.15rem .3rem;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-muted);font-size:.62rem}.navbar-toggle{display:none;align-items:center;justify-content:center}.navbar-mobile-drawer{display:none;max-height:0;overflow:hidden;background:var(--bg-primary);border-top:1px solid transparent;transition:max-height .18s ease}.navbar-mobile-drawer.open{max-height:80vh;overflow-y:auto;border-top-color:var(--border-color)}.navbar-mobile-content{padding-top:.8rem;padding-bottom:1rem}.navbar-mobile-destinations{display:grid;gap:.35rem}.navbar-mobile-item,.navbar-mobile-utilities a,.navbar-mobile-utilities button{display:flex;align-items:center;min-height:44px;padding:.65rem .8rem;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:inherit;font-weight:650;text-decoration:none;cursor:pointer}.navbar-mobile-item:hover,.navbar-mobile-item.active,.navbar-mobile-utilities a:hover,.navbar-mobile-utilities button:hover{color:var(--text-primary);background:var(--bg-secondary)}.navbar-mobile-item.active{color:var(--green-primary)}.navbar-mobile-utilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.navbar a:focus-visible,.navbar button:focus-visible,.bottom-nav a:focus-visible,.footer a:focus-visible{outline:3px solid var(--green-primary);outline-offset:3px}@media(max-width:980px){.search-btn-kbd{display:none}}@media(max-width:900px){.navbar-inner{min-height:56px}.navbar-primary{display:none}.navbar-toggle{display:inline-flex}.navbar-mobile-drawer{display:block}.navbar-logo{margin-right:auto}}@media(max-width:480px){.navbar-inner{gap:.4rem}.logo-text{font-size:.95rem}.navbar-lang-btn{display:none}}.footer{margin-top:var(--space-3xl);padding:var(--space-3xl) 0 var(--space-xl);background:var(--bg-secondary);border-top:1px solid var(--border-color)}.footer-grid{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(140px,1fr));gap:var(--space-2xl);margin-bottom:var(--space-2xl)}.footer-logo{margin:0 0 var(--space-md);color:var(--text-primary);font-family:var(--font-display);font-size:1.35rem}.footer-desc{max-width:48ch;color:var(--text-secondary);font-size:.9rem;line-height:1.7}.footer-contact-row{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.footer-social{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--green-primary)}.footer-social:hover{border-color:color-mix(in srgb,var(--green-primary) 45%,var(--border-color));background:color-mix(in srgb,var(--green-primary) 8%,transparent)}.footer-col h4{margin:0 0 var(--space-md);color:var(--text-primary);font-family:var(--font-ui);font-size:.86rem;font-weight:750}.footer-col a,.footer-ecosystem-current{display:flex;align-items:center;min-height:44px;color:var(--text-secondary);font-size:.86rem;text-decoration:none}.footer-col a:hover{color:var(--green-primary)}.footer-ecosystem-current{color:var(--green-primary);font-weight:700}.footer-bottom{padding-top:var(--space-xl);border-top:1px solid var(--border-color)}.footer-author{margin:0 0 1rem;color:var(--text-secondary);text-align:center}.footer-author a,.footer-disclaimer a{color:var(--green-primary)}.footer-disclaimer-box{padding:1rem;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--border-color));border-radius:var(--radius-md);background:color-mix(in srgb,var(--gold) 7%,transparent)}.footer-disclaimer-box p{margin:0;color:var(--text-secondary);font-size:.86rem;line-height:1.6}.footer-disclaimer-box .footer-disclaimer-title{margin-bottom:.4rem;color:var(--text-primary);font-weight:750}.footer-disclaimer{margin:1rem 0 0;color:var(--text-muted);font-size:.78rem;line-height:1.6;text-align:center}@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1 / -1}}@media(max-width:560px){.footer{padding-top:var(--space-2xl)}.footer-grid{grid-template-columns:1fr;gap:var(--space-xl)}.footer-brand{grid-column:auto}}.search-overlay{position:fixed;inset:0;background:#020917c7;backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:max(10vh,env(safe-area-inset-top,10vh));padding-left:max(var(--space-md),env(safe-area-inset-left,0px));padding-right:max(var(--space-md),env(safe-area-inset-right,0px))}.search-modal{width:100%;max-width:620px;background:#08122af2;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(0,199,156,.18);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 30px 100px #00000094,0 0 60px #00c79c1a}.search-input-wrap{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-xl);border-bottom:1px solid rgba(0,199,156,.12);background:#00c79c08}.search-helper{margin:0;padding:8px var(--space-xl) 10px;color:var(--text-muted);font-size:.72rem;border-bottom:1px solid rgba(0,199,156,.09)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:1.05rem;font-family:var(--font-ui);min-width:0}.search-input::placeholder{color:var(--text-muted)}.search-kbd{font-size:.7rem;padding:3px 8px;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:var(--text-muted);background:#ffffff0a;font-family:monospace}.search-results{max-height:400px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-sm) 0}.search-group-title{margin:0;padding:.7rem var(--space-xl) .35rem;color:var(--text-muted);font-size:.75rem;font-weight:750}.search-group-title.is-en{letter-spacing:.08em;text-transform:uppercase}.search-result-item{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-xl);background:none;border:none;color:var(--text-primary);cursor:pointer;font-family:inherit;text-align:left;transition:background .2s}.search-result-item:hover,.search-result-item:focus,.search-result-item.active{background:#00c79c14;outline:none}.search-result-item:active{background:#00c79c24}.search-item-icon{font-size:1.3rem;flex-shrink:0}.search-item-content{flex:1;display:flex;flex-direction:column;gap:2px}.search-item-title{font-weight:700;font-size:.93rem}.search-item-value{font-size:.8rem;color:var(--green-primary);font-weight:600}.search-item-category{font-size:.7rem;padding:3px 10px;border-radius:var(--radius-full);background:#ffffff0d;color:var(--text-muted);white-space:nowrap}.search-empty{text-align:center;padding:var(--space-2xl);color:var(--text-muted)}.search-empty span{font-size:2.5rem;display:block;margin-bottom:var(--space-sm)}.search-hints{padding:var(--space-lg) var(--space-xl)}.search-hint-title{font-size:.8rem;color:var(--text-muted);margin-bottom:var(--space-sm)}.search-hint-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.search-hint-tag{padding:5px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:.85rem;transition:background .2s,border-color .2s}.search-hint-tag:hover,.search-hint-tag:active{background:#00c79c1a;border-color:#00c79c4d;color:var(--green-primary)}[data-theme=light] .search-overlay{background:#0f1e3c4d}[data-theme=light] .search-modal{background:#fffffff5;border:1px solid rgba(15,40,74,.12);box-shadow:0 20px 60px #0000001f,0 0 30px #0000000a}[data-theme=light] .search-input-wrap{background:#00a6860a;border-bottom-color:#0f284a1a}[data-theme=light] .search-helper{border-bottom-color:#0f284a14}[data-theme=light] .search-kbd{border-color:#0f284a26;background:#0f284a0d;color:var(--text-secondary)}[data-theme=light] .search-result-item:hover,[data-theme=light] .search-result-item:focus,[data-theme=light] .search-result-item.active{background:#00a68614}[data-theme=light] .search-result-item:active{background:#00a68624}[data-theme=light] .search-item-category{background:#0f284a0f}[data-theme=light] .search-hint-tag{background:#0f284a0d;border-color:#0f284a1a;color:var(--text-secondary)}[data-theme=light] .search-hint-tag:hover,[data-theme=light] .search-hint-tag:active{background:#00a6861a;border-color:#00a6864d}.search-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(max-width:768px){.search-overlay{align-items:flex-end;padding-top:0;padding-left:0;padding-right:0}.search-modal{max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:none;max-height:85vh;display:flex;flex-direction:column}.search-results{flex:1;max-height:none}.search-input-wrap{padding:var(--space-md) var(--space-lg)}.search-helper{padding-left:var(--space-lg);padding-right:var(--space-lg)}.search-input{font-size:16px}.search-kbd{display:none}.search-result-item{padding:var(--space-md) var(--space-lg);min-height:56px}}.bottom-nav{display:none;position:fixed;right:0;bottom:0;left:0;z-index:1100;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg-primary);border-top:1px solid var(--border-color)}.bottom-nav-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:520px;min-height:64px;margin:0 auto}.bottom-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;min-width:44px;min-height:56px;padding:.35rem .2rem;color:var(--text-muted);font-size:.68rem;font-weight:650;text-decoration:none}.bottom-tab:hover,.bottom-tab.active{color:var(--green-primary)}.bottom-tab-icon{flex:0 0 auto}.bottom-tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.bottom-nav{display:block}#root{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}}.install-prompt{position:fixed;bottom:calc(68px + env(safe-area-inset-bottom,0px));left:12px;right:12px;z-index:1200;display:flex;align-items:center;gap:12px;padding:14px 16px;background:#0a142df7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(0,212,168,.3);border-radius:18px;box-shadow:0 8px 40px #00000080,0 0 0 1px #00d4a81a;max-width:480px;margin:0 auto}[data-theme=light] .install-prompt{background:#fffffff7;border-color:#00b4944d}.install-prompt-icon img{border-radius:12px;flex-shrink:0;display:block}.install-prompt-content{flex:1;min-width:0}.install-prompt-title{font-size:.88rem;font-weight:800;color:var(--text-primary);margin-bottom:2px;line-height:1.3}.install-prompt-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.install-prompt-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.install-btn{font-family:inherit;font-weight:700;border:none;cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.install-btn--primary{padding:8px 16px;background:linear-gradient(135deg,var(--green-primary),#00b894);color:#fff;border-radius:10px;font-size:.82rem;box-shadow:0 3px 12px #00d4a84d}.install-btn--primary:active{transform:scale(.95)}.install-btn--ghost{width:30px;height:30px;border-radius:8px;background:#ffffff0f;color:var(--text-muted);font-size:.8rem;display:flex;align-items:center;justify-content:center}.install-btn--ghost:active{opacity:.6}@media(min-width:769px){.install-prompt{bottom:24px;left:auto;right:24px;max-width:360px}}.trail-context-bar{position:sticky;top:0;z-index:1100;display:flex;align-items:center;justify-content:space-between;height:40px;padding:0 16px;background:linear-gradient(135deg,color-mix(in srgb,var(--trail-color) 25%,var(--bg-primary) 75%),var(--bg-primary));border-bottom:1px solid rgba(255,255,255,.08);font-size:.8rem;color:var(--text-primary, #e0e0e0);gap:12px}.trail-cb-left{display:flex;align-items:center;gap:6px;flex-shrink:0;min-width:0}.trail-cb-icon{font-size:1rem;line-height:1}.trail-cb-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.trail-cb-center{display:flex;align-items:center;gap:12px;flex:1 1 auto;min-width:0;justify-content:center}.trail-cb-progress{white-space:nowrap;opacity:.9}.trail-cb-hint{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.6;font-style:italic;max-width:320px}.trail-cb-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.trail-cb-btn{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border:none;border-radius:12px;background:#ffffff1a;color:inherit;font-size:.75rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s ease,transform .15s ease;line-height:1.4}.trail-cb-btn:hover{background:#fff3;transform:translateY(-1px)}.trail-cb-btn:active{transform:translateY(0)}.trail-cb-btn-next{background:#ffffff26;font-weight:600}.trail-cb-btn-close{background:transparent;font-size:.9rem;padding:3px 6px;opacity:.6;margin-left:2px}.trail-cb-btn-close:hover{opacity:1;background:#ff505040}@media(max-width:768px){.trail-context-bar{height:36px;padding:0 10px;gap:8px;font-size:.75rem}.trail-cb-hint{display:none}.trail-cb-name{max-width:100px}.trail-cb-center{justify-content:center}.trail-cb-btn{padding:2px 8px;font-size:.7rem}}@media(max-width:480px){.trail-cb-name{display:none}.trail-cb-progress{font-size:.7rem}}.route-fallback{min-height:58vh;display:grid;place-items:center;text-align:center;padding:var(--space-2xl) var(--space-lg);color:var(--text-secondary)}.route-fallback-spinner{width:44px;height:44px;border-radius:50%;border:3px solid rgba(0,212,168,.25);border-top-color:var(--green-primary);animation:spin .9s linear infinite;margin-bottom:var(--space-md)}.route-fallback-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:4px}.route-fallback-subtitle{font-size:.85rem;color:var(--text-muted)}.route-fallback-skeleton{margin-top:var(--space-lg);width:min(640px,90vw);display:grid;gap:10px}.route-fallback-skeleton span{display:block;height:10px;border-radius:var(--radius-full);background:linear-gradient(90deg,#ffffff0d,#00d4a82b,#ffffff0d);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.route-fallback-skeleton span:nth-child(1){width:100%}.route-fallback-skeleton span:nth-child(2){width:88%}.route-fallback-skeleton span:nth-child(3){width:72%}
