:root{--font-family:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Outfit", "Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", "Space Mono", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.5rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:999px;--row-py:.55rem;--row-px:.75rem;--bg-color:#0d131f;--text-color:#f8fafc;--text-normal:#f1f5f9;--text-muted:#cbd5e1;--text-muted-more:#94a3b8;--title-color:#fff;--accent:#8de0db;--card-bg:#162032;--card-border:#8de0db38;--card-border-glow:#8de0db80;--card-bg-nested:#111a28;--card-border-nested:#ffffff1a;--card-shadow:0 4px 20px -2px #00000059;--card-shadow-hover:0 12px 30px -4px #0000008c, 0 0 20px 2px #8de0db2e;--input-bg:#162032;--input-border:#ffffff38;--input-focus:#8de0db;--primary-color:#8de0db;--primary-hover:#7bc9c4;--secondary-cyan:#8de0db;--secondary-cyan-bg:#8de0db26;--secondary-cyan-border:#8de0db59;--secondary-pink:#d494d6;--secondary-pink-bg:#d494d626;--secondary-pink-border:#d494d659;--nav-bg:#0d131ff5;--nav-border:#ffffff1f;--nav-link:#f8fafc;--nav-link-hover:#8de0db;--nav-link-bg-hover:#ffffff14;--nav-link-active-bg:#8de0db2e;--widget-header-bg:#111a28;--btn-primary-text:#0d131f;--badge-green-text:#34d399;--badge-green-bg:#34d3992e;--badge-green-border:#34d39959;--badge-blue-text:#60a5fa;--badge-blue-bg:#60a5fa2e;--badge-blue-border:#60a5fa59;--badge-yellow-text:#fbbf24;--badge-yellow-bg:#fbbf242e;--badge-yellow-border:#fbbf2459;--badge-red-text:#f87171;--badge-red-bg:#f871712e;--badge-red-border:#f8717159;--rank-gray:gray;--rank-brown:#c46200;--rank-green:#009200;--rank-cyan:#00c0c0;--rank-blue:#757dff;--rank-violet:#d0d;--rank-yellow:#c0c000;--rank-orange:#ff8000;--rank-red:#ff4747}:root[data-theme=light]{--bg-color:#f8fafc;--text-color:#020617;--text-normal:#0f172a;--text-muted:#1e293b;--text-muted-more:#334155;--title-color:#000;--accent:#0f8c8a;--card-bg:#fff;--card-border:#0f172a29;--card-border-glow:#0f8c8a73;--card-bg-nested:#f1f5f9;--card-border-nested:#cbd5e1;--card-shadow:0 2px 10px #0000000d;--card-shadow-hover:0 12px 28px -5px #0f172a26, 0 4px 12px -2px #0f8c8a1f;--input-bg:#fff;--input-border:#64748b;--input-focus:#0f8c8a;--primary-color:#0f8c8a;--primary-hover:#0c7a78;--secondary-cyan:#0f8c8a;--secondary-cyan-bg:#8de0db40;--secondary-cyan-border:#0f8c8a73;--secondary-pink:#a849ab;--secondary-pink-bg:#d494d640;--secondary-pink-border:#a849ab73;--nav-bg:#fffffffa;--nav-border:#cbd5e1;--nav-link:#0f172a;--nav-link-hover:#0f8c8a;--nav-link-bg-hover:#0f172a0f;--nav-link-active-bg:#0f8c8a1f;--widget-header-bg:#e2e8f0;--btn-primary-text:#fff;--badge-green-text:#065f46;--badge-green-bg:#d1fae5;--badge-green-border:#34d399;--badge-blue-text:#1e40af;--badge-blue-bg:#dbeafe;--badge-blue-border:#60a5fa;--badge-yellow-text:#854d0e;--badge-yellow-bg:#fef08a;--badge-yellow-border:#facc15;--badge-red-text:#991b1b;--badge-red-bg:#fee2e2;--badge-red-border:#f87171;--rank-gray:#737373;--rank-brown:#804000;--rank-green:green;--rank-cyan:#008181;--rank-blue:#00f;--rank-violet:#a0a;--rank-yellow:#770;--rank-orange:#b45a00;--rank-red:#e80000}h1,h2,h3,h4,h5,h6{font-family:var(--font-display)}.numeric,table td,table th{font-variant-numeric:tabular-nums}.rank-gray{color:var(--rank-gray)}.rank-brown{color:var(--rank-brown)}.rank-green{color:var(--rank-green)}.rank-cyan{color:var(--rank-cyan)}.rank-blue{color:var(--rank-blue)}.rank-violet{color:var(--rank-violet)}.rank-yellow{color:var(--rank-yellow)}.rank-orange{color:var(--rank-orange)}.rank-red,.rank-legendary{color:var(--rank-red)}.rank-legendary:first-letter{color:var(--text-color)}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden}body,header,nav,footer,main,section,article,aside,a,button,input,select,textarea,.card,.announcement-card,.event-card,.news-contest-card,.news-member-card,.problem-card,.login-card,.sidebar-widget,.contest-card,.profile-card,.ranker-card,.stat-card,.leaderboard-card,.content-section,.table-wrapper,.auth-layout-container,.hero-side,.form-side,.auth-toggle-container,.auth-toggle-btn,.theme-toggle-btn,.badge,.status-badge,.navbar,.footer{transition-property:background-color,color,border-color,box-shadow,stroke,fill;transition-duration:.2s;transition-timing-function:ease-out}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body{font-family:var(--font-family);background:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.011em;min-height:100vh;line-height:1.6;overflow-x:hidden}#root{width:100%;max-width:100vw;overflow-x:hidden}.app-container{flex-direction:column;min-height:100vh;display:flex}.layout-container{gap:var(--space-8);width:95%;max-width:1600px;padding:0 var(--space-8);flex:1;margin:0 auto;display:flex}@media (max-width:1024px){.layout-container{padding:0 var(--space-4);gap:var(--space-4);flex-direction:column;width:100%}}.main-content{min-width:0;padding:var(--space-6) 0;flex:1}.page-loader{justify-content:center;align-items:center;width:100%;height:60vh;display:flex}.spinner{border:4px solid var(--card-border);border-top:4px solid var(--primary-color);border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animated-page[data-direction="1"]{animation:.22s ease-out both fadeSlideFromRight}.animated-page[data-direction="-1"]{animation:.22s ease-out both fadeSlideFromLeft}@keyframes fadeSlideFromRight{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes fadeSlideFromLeft{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.animated-page[data-direction="1"],.animated-page[data-direction="-1"]{animation:none}}.fade-in-on-scroll,.reveal-on-scroll,.card,.announcement-card,.event-card,.news-contest-card,.news-member-card,.problem-card,.login-card,.sidebar-widget,.contest-card,.profile-card,.ranker-card,.stat-card,.leaderboard-card,.content-section,.table-wrapper{opacity:0;transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);transform:translateY(14px)}.fade-in-on-scroll.visible,.reveal-on-scroll.visible,.card.visible,.announcement-card.visible,.event-card.visible,.news-contest-card.visible,.news-member-card.visible,.problem-card.visible,.login-card.visible,.sidebar-widget.visible,.contest-card.visible,.profile-card.visible,.ranker-card.visible,.stat-card.visible,.leaderboard-card.visible,.content-section.visible,.table-wrapper.visible{opacity:1;transform:translateY(0)}.stagger-1{transition-delay:50ms}.stagger-2{transition-delay:.1s}.stagger-3{transition-delay:.15s}.stagger-4{transition-delay:.2s}.stagger-5{transition-delay:.25s}.card,.announcement-card,.event-card,.news-contest-card,.news-member-card,.problem-card,.login-card,.sidebar-widget,.contest-card,.profile-card,.ranker-card,.stat-card,.leaderboard-card,.content-section,.table-wrapper,.news-squad-card,.discussion-card,.widget-card{box-shadow:var(--card-shadow);border-color:var(--card-border);transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s cubic-bezier(.16,1,.3,1),border-color .28s,background-color .28s,opacity .45s cubic-bezier(.16,1,.3,1)}.card:hover,.announcement-card:hover,.event-card:hover,.news-contest-card:hover,.news-member-card:hover,.problem-card:hover,.sidebar-widget:hover,.contest-card:hover,.ranker-card:hover,.stat-card:hover,.leaderboard-card:hover,.news-squad-card:hover,.discussion-card:hover,.widget-card:hover{border-color:var(--card-border-glow);box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.fade-in-on-scroll,.reveal-on-scroll,.card,.announcement-card,.event-card,.news-contest-card,.news-member-card,.problem-card,.login-card,.sidebar-widget,.contest-card,.profile-card,.ranker-card,.stat-card,.leaderboard-card,.content-section,.table-wrapper{opacity:1!important;transition:none!important;transform:none!important}}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.navbar{will-change:transform;transform:translateZ(0)}.event-card,.announcement-row,.news-contest-card,.news-member-card,.problem-card{content-visibility:auto;contain-intrinsic-size:1px 150px}@media (max-width:1024px){.app-container{padding-bottom:70px!important}.layout-container{width:100%!important;padding:0 var(--space-3)!important;gap:var(--space-4)!important;flex-direction:column!important}.main-content{overflow-x:hidden;padding:var(--space-4) 0!important;width:100%!important;max-width:100%!important}.news-page,.announcements-page,.problems-page,.cf-page-wrapper,.events-page,.vjudge-ranker-page,.profile-page-wrapper,.page-container{padding:var(--space-4) var(--space-1)!important}.page-title,.events-header h1,.announcements-header h1,.problems-header h1,.cf-header h1,.ranker-header h1{font-size:var(--text-3xl)!important;margin-bottom:var(--space-5)!important;text-align:left!important;line-height:1.3!important}.news-contest-card{padding:var(--space-4)!important}.news-contest-grid,.news-squad-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.news-squad-card{gap:8px!important;padding:8px 10px!important}.news-squad-name{font-size:var(--text-sm)!important}.news-squad-role{font-size:var(--text-xs)!important}.announcement-card{flex-direction:column!important}.announcement-description{border-right:none!important;border-bottom:1px dashed var(--card-border)!important;padding:var(--space-4)!important}.announcement-date-box{width:100%!important;padding:var(--space-3) var(--space-4)!important;flex-direction:row!important;justify-content:flex-start!important;gap:10px!important}.announcement-date-box .date-day{font-size:var(--text-3xl)!important;margin-bottom:0!important}.announcement-date-box .date-month-year{font-size:var(--text-xs)!important}.event-card{gap:var(--space-4)!important;padding:var(--space-4)!important;flex-direction:column!important}.event-actions{border-left:none!important;border-top:1px dashed var(--card-border)!important;width:100%!important;padding-left:0!important;padding-top:var(--space-4)!important;align-items:flex-start!important}.event-date-box{width:100%!important;min-width:unset!important;padding:var(--space-2) var(--space-3)!important;flex-direction:row!important;justify-content:flex-start!important;gap:10px!important}.event-date-box .date-day{font-size:var(--text-3xl)!important;margin-bottom:0!important}.event-date-box .date-month-year{font-size:var(--text-xs)!important}.table-wrapper,.table-responsive,.table-responsive-container{-webkit-overflow-scrolling:touch;width:100%!important;max-width:100%!important;overflow-x:auto!important}.contests-list{grid-template-columns:1fr!important}}.navbar{background:var(--nav-bg);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--nav-border);z-index:100;width:100%;transition:all .3s;position:sticky;top:0;box-shadow:0 4px 30px #0000000d}.navbar-container{width:100%;padding:var(--space-3) clamp(var(--space-3), 2vw, var(--space-10));justify-content:space-between;align-items:center;gap:clamp(var(--space-2), 1vw, var(--space-4));display:flex}.navbar-logo a{font-size:var(--text-2xl);letter-spacing:.5px;white-space:nowrap;will-change:transform;flex-shrink:0;align-items:center;gap:10px;font-weight:800;text-decoration:none;transition:transform .2s;display:flex}.navbar-logo a span{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--text-color);-webkit-text-fill-color:var(--text-color);letter-spacing:-.02em;background:0 0;font-style:italic;font-weight:600}.navbar-logo-img{object-fit:contain;filter:contrast(.9);width:auto;height:32px}.navbar-logo a:hover{transform:scale(1.02)}.navbar-toggle{cursor:pointer;padding:var(--space-2);z-index:110;background:0 0;border:none;flex-shrink:0;display:none}.navbar-toggle span{background:var(--text-color);border-radius:3px;width:24px;height:2.5px;margin:5px 0;transition:all .3s;display:block}.navbar-toggle.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.navbar-toggle.open span:nth-child(2){opacity:0}.navbar-toggle.open span:nth-child(3){transform:rotate(-45deg)translate(6px,-6px)}.navbar-links{gap:clamp(var(--space-1), 1vw, var(--space-5));flex-wrap:nowrap;flex-shrink:0;margin:0 auto;padding:0;list-style:none;display:flex}.navbar-links li a{color:var(--text-color);font-family:var(--font-family);text-transform:uppercase;letter-spacing:.1em;padding:var(--space-2) clamp(var(--space-1), .4vw, var(--space-2));white-space:nowrap;border-radius:0;font-size:clamp(.68rem,.75vw,.75rem);font-weight:500;text-decoration:none;transition:all .25s;display:inline-block;position:relative}.navbar-links li a:hover,.navbar-links li.active a{color:var(--accent);background:0 0}.navbar-links li.active a:after{content:"";background:var(--accent);width:100%;height:1px;box-shadow:none;position:absolute;bottom:0;left:0}.navbar-auth{flex-shrink:1;align-items:center;gap:clamp(6px,1vw,12px);min-width:0;display:flex}.navbar-auth .auth-btn{color:var(--text-color);padding:var(--space-2) clamp(var(--space-3), 1vw, var(--space-6));font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--text-color);box-shadow:none;cursor:pointer;white-space:nowrap;background:0 0;border-radius:0;flex-shrink:0;font-size:clamp(.65rem,.7vw,.7rem);font-weight:500;text-decoration:none;transition:all .3s}.navbar-auth .auth-btn:hover{background:var(--text-color);color:var(--bg-color);transform:none}.navbar-auth .auth-btn:active{transform:translateY(0)}.auth-user-info{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--text-color);white-space:nowrap;flex-shrink:1;min-width:0;display:flex}.user-greeting{color:var(--badge-blue-text);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.auth-user-info .divider,.auth-user-info .auth-logout-btn{flex-shrink:0}.divider{color:var(--card-border);margin:0 var(--space-2)}.auth-logout-btn{background:var(--badge-red-bg);border:1px solid var(--badge-red-border);color:var(--badge-red-text);font-weight:600;font-size:var(--text-base);cursor:pointer;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);white-space:nowrap;font-family:inherit;transition:all .2s}.auth-logout-btn:hover{background:var(--badge-red-text);color:#fff;text-decoration:none}.navbar-overlay{-webkit-backdrop-filter:blur(4px);z-index:99;background:#00000080;position:fixed;top:0;bottom:0;left:0;right:0}.mobile-drawer-auth{display:none}@media (max-width:1250px){.navbar-container{padding:var(--space-3) var(--space-5);gap:var(--space-4)}.navbar-toggle{order:3;display:block}.navbar-links{background:var(--bg-color);border-bottom:1px solid var(--nav-border);padding:var(--space-3) 0;z-index:105;flex-direction:column;gap:0;max-height:calc(100vh - 70px);display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 15px 30px #00000040}.navbar-links.open{display:flex}.navbar-links li a{padding:var(--space-4) var(--space-8);font-size:var(--text-base);border-bottom:1px solid var(--card-border-nested);border-radius:0;display:block}.navbar-links li a:hover{background:#a5e8de14}.navbar-links li.active a:after{display:none}.navbar-links li.active a{border-left:3px solid var(--primary-color);padding-left:calc(2rem - 3px)}.desktop-auth{display:none!important}.mobile-drawer-auth{padding:var(--space-4) var(--space-8);border-top:1px solid var(--nav-border);margin-top:var(--space-2);display:block}.mobile-auth-wrapper{gap:var(--space-3);flex-direction:column;display:flex}.mobile-user-info{font-size:var(--text-base);font-weight:600}.mobile-auth-actions{align-items:center;gap:var(--space-5);display:flex}.mobile-profile-link{color:var(--primary-color)!important;font-size:var(--text-base)!important;border:none!important;padding:0!important;font-weight:600!important;display:inline!important}.mobile-login-btn{text-align:center;width:100%;padding:var(--space-3) var(--space-5);background:var(--card-bg-nested);border:1px solid var(--card-border);color:var(--text-color);font-weight:600;text-decoration:none;display:inline-block}.navbar-auth{order:2;margin-left:auto}.navbar-auth .auth-btn{padding:var(--space-2) var(--space-5);font-size:var(--text-sm)}}@media (max-width:600px){.navbar-container{padding:var(--space-2) var(--space-4);gap:var(--space-2)}.navbar-logo a{font-size:var(--text-xl);gap:8px}.navbar-logo a span{display:none}.navbar-logo-img{height:30px}.navbar-auth .auth-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.auth-user-info{font-size:var(--text-sm)}}.theme-toggle-btn{border:1px solid var(--card-border);color:var(--text-color);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.15em;text-transform:uppercase;padding:var(--space-2) var(--space-4);cursor:pointer;margin-right:var(--space-1);background:0 0;border-radius:0;flex-shrink:0;align-items:center;gap:6px;transition:all .3s;display:flex}.theme-toggle-btn:hover{border-color:var(--text-color);background:var(--text-color);color:var(--bg-color);box-shadow:none;transform:none}.theme-toggle-btn svg{stroke:currentColor;transition:transform .3s}.theme-toggle-btn:hover svg{transform:rotate(20deg)}.theme-toggle-label{letter-spacing:.15em}.mobile-bottom-nav{display:none}@media (max-width:768px){.mobile-bottom-nav{z-index:1000;background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--nav-border);padding-bottom:env(safe-area-inset-bottom,0px);display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0003}.mobile-bottom-nav-container{height:60px;padding:0 var(--space-1);justify-content:space-around;align-items:center;max-width:600px;margin:0 auto;display:flex}.mobile-bottom-nav-item{height:100%;color:var(--text-muted);font-family:var(--font-family);font-size:var(--text-2xs);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:4px 0;font-weight:500;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.mobile-nav-icon-wrapper{justify-content:center;align-items:center;transition:transform .2s,color .2s;display:flex}.mobile-bottom-nav-item:active .mobile-nav-icon-wrapper{transform:scale(.9)}.mobile-bottom-nav-item.active{color:var(--accent);font-weight:700}.mobile-bottom-nav-item.active .mobile-nav-icon-wrapper{color:var(--accent);transform:translateY(-1px)}.mobile-nav-label{letter-spacing:.02em;white-space:nowrap;line-height:1}.mobile-nav-active-dot{background-color:var(--accent);width:24px;height:2px;box-shadow:0 1px 6px var(--accent);border-bottom-right-radius:2px;border-bottom-left-radius:2px;position:absolute;top:0}}.right-sidebar{gap:var(--space-6);width:280px;padding:var(--space-6) 0;flex-direction:column;flex-shrink:0;display:flex}@media (max-width:768px){.right-sidebar{display:none}}.sidebar-widget{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 4px 20px #0000000d}.widget-header{background:var(--widget-header-bg);padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--primary-hover);border-bottom:1px solid var(--card-border);letter-spacing:.5px;text-transform:uppercase;border-radius:.75rem .75rem 0 0;margin:0;font-weight:700}.widget-body{padding:var(--space-4)}.attention-list{margin:0;padding:0;list-style:none}.attention-list li{margin-bottom:var(--space-2);padding-left:var(--space-4);position:relative}.attention-list li:before{content:"→";color:var(--primary-color);position:absolute;left:0}.attention-list a{color:var(--text-normal);font-size:var(--text-sm);text-decoration:none;transition:color .2s}.attention-list a:hover{color:var(--title-color);text-decoration:underline}.loading-text{color:var(--text-muted);text-align:center;font-style:italic}.search-widget{z-index:10;position:relative;overflow:visible}.search-widget-body{position:relative}.sidebar-search-input{width:100%;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-color);font-size:var(--text-sm);outline:none;transition:all .2s}.sidebar-search-input:focus{border-color:var(--primary-color);background:var(--input-bg);box-shadow:0 0 10px #a5e8de33}.sidebar-search-results{margin-top:var(--space-2);background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--space-2) 0;z-index:1000;max-height:200px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 25px #00000026}.sidebar-search-results li{padding:var(--space-2) var(--space-4);cursor:pointer;color:var(--text-normal);font-size:var(--text-sm);transition:background .2s,color .2s}.sidebar-search-results li:hover{background:var(--nav-link-bg-hover);color:var(--primary-color)}.sidebar-search-results .search-note{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--text-muted-more);cursor:default}.sidebar-search-results .search-note:hover{background:0 0}.sidebar-search-results .search-hit{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.search-hit-name{font-size:var(--text-sm);color:var(--text-normal)}.search-hit-reg{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted-more);white-space:nowrap}.sidebar-me{align-items:center;gap:var(--space-3);border-radius:0 0 .75rem .75rem;text-decoration:none;transition:background .2s;display:flex}.sidebar-me:hover{background:var(--nav-link-bg-hover)}.sidebar-me-avatar{width:2.5rem;height:2.5rem;font-family:var(--font-display);font-size:var(--text-sm);color:var(--btn-primary-text);background:var(--primary-color);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.sidebar-me-text{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-me-name{font-size:var(--text-sm);color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-me-role{font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted-more)}.sidebar-me-go{color:var(--text-muted-more);flex-shrink:0;transition:color .2s,transform .2s}.sidebar-me:hover .sidebar-me-go{color:var(--primary-color);transform:translate(2px)}.app-footer{background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--nav-border);width:100%;color:var(--text-muted);padding:var(--space-5) 0;margin-top:auto;transition:all .3s}.footer-container{width:92%;max-width:1400px;padding:0 var(--space-4);margin:0 auto}.footer-simple-content{justify-content:space-between;align-items:center;gap:var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.footer-copyright{color:var(--text-muted);font-family:var(--font-mono,monospace);font-size:var(--text-xs);letter-spacing:.02em}.footer-simple-links{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.footer-simple-links a{color:var(--text-muted);font-size:var(--text-sm);text-decoration:none;transition:color .2s}.footer-simple-links a:hover{color:var(--primary-color)}@media (max-width:640px){.footer-simple-content{text-align:center;align-items:center;gap:var(--space-3);flex-direction:column}.footer-simple-links{gap:var(--space-4);flex-wrap:wrap;justify-content:center}}.scroll-to-top-btn{z-index:1000;background:var(--card-bg,#1a202c);width:48px;height:48px;color:var(--primary-color,#a5e8de);border:1px solid var(--card-border,#ffffff26);-webkit-backdrop-filter:blur(12px);cursor:pointer;opacity:0;visibility:hidden;border-radius:50%;justify-content:center;align-items:center;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),background-color .2s,border-color .2s,box-shadow .2s;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(16px)scale(.85);box-shadow:0 4px 20px #00000040,0 0 15px #a5e8de26}.scroll-to-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.scroll-to-top-btn:hover{background:var(--primary-color,#a5e8de);color:#0d1117;border-color:var(--primary-color,#a5e8de);transform:translateY(-3px)scale(1.05);box-shadow:0 6px 24px #0000004d,0 0 20px #a5e8de66}.scroll-to-top-btn:active{transform:translateY(-1px)scale(.98)}.scroll-to-top-btn svg{width:22px;height:22px;transition:transform .2s}.scroll-to-top-btn:hover svg{transform:translateY(-2px)}@media (max-width:768px){.scroll-to-top-btn{width:44px;height:44px;bottom:1.5rem;right:1.25rem}}.scroll-progress-bar-container{z-index:9999;pointer-events:none;background:0 0;width:100%;height:3px;position:fixed;top:0;left:0}.scroll-progress-bar-fill{background:var(--accent,#8de0db);border-top-right-radius:2px;border-bottom-right-radius:2px;height:100%;transition:width 80ms ease-out;box-shadow:0 0 10px #8de0db66}.offline-banner{z-index:1000;width:100%;font-family:var(--font-family);font-size:var(--text-sm);padding:var(--space-2) var(--space-5);border-bottom:1px solid #0000;font-weight:600;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;box-shadow:0 4px 12px #0000001f}.offline-banner.is-offline{background:var(--badge-red-bg,#ef44442e);color:var(--badge-red-text,#f87171);border-bottom-color:var(--badge-red-border,#ef444459)}.offline-banner.is-restored{background:var(--badge-green-bg,#34d3992e);color:var(--badge-green-text,#34d399);border-bottom-color:var(--badge-green-border,#34d39959)}.offline-banner-content{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:1400px;margin:0 auto;display:flex}.offline-banner-message{align-items:center;gap:var(--space-2);line-height:1.4;display:flex}.offline-icon{color:var(--badge-red-text);flex-shrink:0}.online-icon{color:var(--badge-green-text);flex-shrink:0}.offline-banner-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.offline-retry-btn{align-items:center;gap:var(--space-1);background:var(--card-bg);color:var(--text-color);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .2s;display:inline-flex}.offline-retry-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.offline-retry-btn:disabled{opacity:.6;cursor:not-allowed}.offline-close-btn{color:inherit;opacity:.75;cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;transition:opacity .2s,background-color .2s;display:flex}.offline-close-btn:hover{opacity:1;background:#00000014}.offline-indicator-badge{z-index:9999;align-items:center;gap:var(--space-2);background:var(--badge-red-bg);color:var(--badge-red-text);border:1px solid var(--badge-red-border);border-radius:var(--radius-2xl);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:700;font-family:var(--font-family);cursor:pointer;transition:transform .2s;animation:2s infinite pulse-border;display:inline-flex;position:fixed;bottom:1.25rem;left:1.25rem;box-shadow:0 4px 15px #00000040}.offline-indicator-badge:hover{transform:scale(1.05)}@keyframes pulse-border{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.spin{animation:.8s linear infinite spin-icon}@keyframes spin-icon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:640px){.offline-banner{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.offline-retry-btn span{display:none}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;top:80px;right:20px}.toast{pointer-events:auto;-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-xl);background:#0f172af2;border:1px solid #ffffff14;border-left:3px solid;align-items:center;gap:12px;min-width:280px;max-width:420px;padding:14px 20px;animation:.3s ease-out forwards toastSlideIn;display:flex;box-shadow:0 8px 32px #0006}.toast.toast-exiting{animation:.25s ease-in forwards toastSlideOut}.toast-success{border-left-color:#10b981}.toast-error{border-left-color:#ef4444}.toast-info{border-left-color:#60a5fa}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:flex}.toast-success .toast-icon{color:#34d399;background:#10b98126}.toast-error .toast-icon{color:#f87171;background:#ef444426}.toast-info .toast-icon{color:#60a5fa;background:#60a5fa26}.toast-message{font-size:var(--text-sm);color:#ffffffd9;flex:1;line-height:1.4}.toast-close{color:#ffffff4d;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:18px;line-height:1;transition:color .2s}.toast-close:hover{color:#ffffffb3}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}@media (max-width:600px){.toast-container{left:10px;right:10px}.toast{min-width:unset;max-width:unset}}
