:root{--gold:#f59a23;--gold-deep:#b45309;--gold-soft:#ffb44424;--gold-line:#ff9a2352;--red:#ef4444;--red-grad:linear-gradient(90deg, #ff5a3c, #ef4444);--bg:#f4f1db;--card:#fff;--card-soft:#ffffffd1;--line:#ede7d8;--ink:#4c463f;--ink-2:#707070;--ink-3:#9ca3af;--ink-4:#b8b0a0;--ok:#22c55e;--mid:#f59a23;--slow:#ef4444;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--r-sm:8px;--r-md:12px;--r-pill:999px;--shadow-1:0 1px 3px #0000000d;--shadow-2:0 4px 14px #0000000a;--shadow-3:0 8px 24px #00000014;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:16px;--fs-2xl:17px;--container:1100px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:radial-gradient(ellipse 900px 320px at 50% -80px, #ffb44442, transparent 70%), radial-gradient(ellipse 600px 240px at 85% 30%, #ff7a180d, transparent 70%), var(--bg);color:var(--ink-2);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}button{font-family:inherit}.sn-loading,.sn-forbidden,.sn-closed{min-height:100dvh;padding:var(--sp-6);text-align:center;background:var(--bg);justify-content:center;align-items:center;font-size:15px;display:flex}.sn-closed-box{max-width:320px}.sn-closed-title{color:var(--ink-700,#555);margin-bottom:8px;font-size:17px;font-weight:600}.sn-closed-desc{color:var(--ink-400,#999);font-size:14px;line-height:1.6}.sn-spinner{border:2px solid #e5dfc8;border-top-color:#ff570d;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite sn-spin}@keyframes sn-spin{to{transform:rotate(360deg)}}.sn-app{min-height:100vh;animation:.35s ease-out sn-fade-in}@keyframes sn-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sn-header{z-index:20;background:linear-gradient(135deg,#ffb844 0%,#ff7a18 45%,#ff570d 100%);padding:10px;position:sticky;top:0;box-shadow:0 2px 12px #ff570d40}.sn-header-inner{max-width:var(--container);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.sn-logo{object-fit:contain;filter:drop-shadow(0 1px 2px #00000026);width:88px;height:36px}.sn-header-actions{align-items:center;gap:8px;display:flex}.sn-icon-btn{color:#fff;font-size:var(--fs-md);border-radius:var(--r-pill);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(4px);background:linear-gradient(#ffffff38,#ffffff14 50%,#ffffff1f);border:1px solid #ffffff59;align-items:center;gap:6px;padding:7px 15px;font-weight:500;line-height:1;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s;display:inline-flex}.sn-icon-btn svg{flex-shrink:0}.sn-icon-btn:hover{background:linear-gradient(#ffffff52,#ffffff29 50%,#fff3);border-color:#ffffffa6;transform:translateY(-1px);box-shadow:0 2px 10px #ffffff2e}.sn-icon-btn:active{transform:scale(.96)translateY(0)}.sn-icon-btn:focus{outline:none}.sn-icon-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}.sn-notice{background:linear-gradient(90deg,#fdf6e3 0%,#f9eccf 50%,#fdf6e3 100%);border-bottom:1px solid #ead9b4;align-items:center;gap:10px;height:38px;padding:0 14px;display:flex;overflow:hidden}.sn-notice-icon{flex-shrink:0}.sn-notice-viewport{white-space:nowrap;flex:1;padding-left:6px;overflow:hidden}.sn-notice-track{white-space:nowrap;animation:linear forwards sn-scroll-once;display:inline-block}.sn-notice-track.first{animation-name:sn-scroll-first}@keyframes sn-scroll-first{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes sn-scroll-once{0%{transform:translate(100%)}to{transform:translate(-100%)}}.sn-notice-content{font-size:var(--fs-md);color:#6b6560;letter-spacing:.3px;padding-right:24px}.sn-lines{max-width:var(--container);padding:0 var(--sp-4);flex-direction:column;gap:10px;margin:20px auto 0;display:flex}.sn-line-card{justify-content:space-between;align-items:center;gap:var(--sp-3);background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);min-height:58px;color:var(--ink-2);box-shadow:var(--shadow-1), var(--shadow-2);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;padding:14px 20px;text-decoration:none;transition:transform .25s,box-shadow .4s,border-color .4s;display:flex}.sn-line-card:hover{box-shadow:var(--shadow-3);border-color:var(--gold-line);transform:translateY(-2px)}.sn-line-card:focus{outline:none}.sn-line-card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.sn-line-card:active{box-shadow:var(--shadow-1);transform:none}.sn-line-card.fastest{border-color:var(--red);box-shadow:0 0 0 1px var(--red), 0 4px 16px #ef44442e}.sn-line-name{min-width:0;font-size:var(--fs-xl);color:var(--ink);align-items:center;gap:10px;font-weight:600;display:flex}.sn-line-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;overflow:hidden}.sn-line-badge{--glow:#c9c0ae40;width:8px;height:8px;box-shadow:0 0 0 3px var(--glow);background:#c9c0ae;border-radius:50%;flex-shrink:0;transition:background .3s;animation:2.4s ease-in-out infinite sn-breathe}.sn-line-badge.green{--glow:#22c55e52;background:var(--ok)}.sn-line-badge.orange{--glow:#f59a2352;background:var(--mid)}.sn-line-badge.red,.sn-line-badge.timeout{--glow:#ef444452;background:var(--slow)}@keyframes sn-breathe{0%,to{box-shadow:0 0 0 3px var(--glow);transform:scale(1)}50%{box-shadow:0 0 9px 5px var(--glow);transform:scale(1.15)}}.sn-line-card:hover .sn-line-badge{animation:.4s sn-badge-pop}@keyframes sn-badge-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.sn-line-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.sn-line-speed{font-variant-numeric:tabular-nums;background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:var(--r-pill);justify-content:flex-end;align-items:baseline;gap:8px;min-width:88px;padding:6px 14px;transition:background .2s,border-color .2s;display:flex}.sn-line-card.fastest .sn-line-speed{background:#ffb4442e;border-color:#ef444447}.sn-speed-value{color:var(--gold-deep);font-size:14px;font-weight:700;line-height:1}.sn-speed-unit{color:var(--gold-deep);opacity:.65;margin-left:1px;font-size:10px;font-style:normal;font-weight:400}.sn-fastest-tag{background:var(--red-grad);color:#fff;font-style:normal;font-size:var(--fs-xs);letter-spacing:1px;border-radius:var(--r-pill);padding:2px 9px;font-weight:700;animation:.4s cubic-bezier(.34,1.56,.64,1) sn-tag-in;box-shadow:0 2px 8px #ef444459,inset 0 1px #ffffff4d}@keyframes sn-tag-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.sn-line-testing{font-size:var(--fs-md);color:var(--ink-3);align-items:center;gap:6px;display:inline-flex}.sn-line-testing:before{content:"";background:var(--gold);border-radius:50%;width:7px;height:7px;animation:.7s ease-in-out infinite sn-pulse}.sn-line-timeout{font-size:var(--fs-md);color:var(--slow)}@keyframes sn-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.sn-line-chevron{color:var(--gold-deep);opacity:.8;flex-shrink:0;transition:transform .2s,opacity .2s}.sn-line-card:hover .sn-line-chevron{opacity:1;transform:translate(3px)}.sn-lines-toolbar{justify-content:center;margin-bottom:10px;display:flex}.sn-speed-btn{color:#fff;font-size:var(--fs-lg);letter-spacing:1px;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:linear-gradient(#ffffff47,#fff0 48%),linear-gradient(90deg,#ffb844 0%,#ff8a1e 55%,#ff570d 100%);border:none;justify-content:center;align-items:center;gap:7px;width:176px;height:48px;font-weight:600;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex;box-shadow:0 4px 14px #ff570d59,0 1px 3px #b43c0a40,inset 0 1px #ffffff59}.sn-speed-btn:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 18px #ff570d6b,0 2px 4px #b43c0a40,inset 0 1px #ffffff59}.sn-speed-btn:active:not(:disabled){transform:translateY(0)scale(.97)}.sn-speed-btn:focus{outline:none}.sn-speed-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}.speed-btn.testing,.sn-speed-btn.testing{cursor:wait;filter:saturate(.85)}.sn-btn-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.7s linear infinite sn-spin}.sn-speed-btn:disabled{opacity:.7}.sn-categories{max-width:var(--container);padding:0 var(--sp-4);gap:var(--sp-4);flex-direction:column;margin:20px auto;display:flex}.sn-cat-block{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-1), var(--shadow-2);padding:18px 20px}.sn-cat-title{border-bottom:1px solid #ede7d8e6;align-items:center;gap:9px;margin-bottom:12px;padding-bottom:10px;display:flex}.sn-cat-title:before{content:"";background:linear-gradient(#ffb844 0%,#ff7a18 100%);border-radius:2px;width:4px;height:15px;box-shadow:0 1px 4px #ff7a1859}.sn-cat-title h2{color:var(--ink);letter-spacing:1px;font-size:14px;font-weight:700}.sn-cat-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.sn-cat-item{border-radius:var(--r-md);color:var(--ink-2);-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:center;gap:8px;padding:12px 4px 10px;text-decoration:none;transition:transform .2s;display:flex}.sn-cat-item:hover{transform:translateY(-2px)}.sn-cat-icon{object-fit:contain;background:linear-gradient(160deg,#fffdf6 0%,#fbf3df 100%);border:1px solid #f0e6cd;border-radius:12px;width:44px;height:44px;padding:8px;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 2px 6px #0000000d,inset 0 1px #ffffffb3}.sn-cat-item:hover .sn-cat-icon{border-color:#eccf8e;transform:translateY(-2px);box-shadow:0 4px 12px #ff9a232e,inset 0 1px #ffffffb3}span.sn-cat-icon.placeholder{color:#fff;background:linear-gradient(135deg,#ffb844 0%,#ff7a18 100%);border:none;justify-content:center;align-items:center;padding:0;font-size:17px;font-weight:600;display:flex;box-shadow:0 3px 8px #ff7a1847}.sn-cat-item:hover span.sn-cat-icon.placeholder{border:none;box-shadow:0 5px 14px #ff7a1861}.sn-cat-name{text-align:center;color:#5c564f;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:500;transition:color .2s;overflow:hidden}.sn-cat-item:hover .sn-cat-name{color:var(--gold-deep)}.sn-empty{text-align:center;color:var(--ink-3);padding:48px 16px}.sn-footer{max-width:var(--container);text-align:center;font-size:var(--fs-sm);color:var(--ink-4);letter-spacing:.5px;margin:0 auto 32px;padding:0}@media (prefers-reduced-motion:reduce){.sn-notice-track,.sn-spinner,.sn-line-testing:before,.sn-line-badge,.sn-app,.sn-btn-spinner{animation:none!important}}@media (width<=600px){.sn-header-actions{gap:6px}.sn-icon-btn{font-size:var(--fs-sm);padding:6px 10px}.sn-lines,.sn-categories{padding:0 10px}.sn-line-card{padding:13px 14px}.sn-line-speed{min-width:78px;padding:5px 10px}.sn-cat-block{padding:14px 12px}.sn-cat-title{margin-bottom:10px;padding-bottom:8px}.sn-cat-grid{gap:6px}.sn-cat-item{padding:8px 2px 6px}}
