:root{--bg-primary: #0a0d14;--bg-secondary: #111622;--accent-color: #00ff88;--accent-glow: rgba(0, 255, 136, .4);--accent-dark: #059669;--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--glass-bg: rgba(255, 255, 255, .03);--glass-bg-hover: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .07);--glass-border-focus: rgba(0, 255, 136, .4);--danger-color: #ef4444;--danger-glow: rgba(239, 68, 68, .3);--font-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--card-radius: 16px;--btn-radius: 10px;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}.theme-xp{--accent-color: #00ff88;--accent-glow: rgba(0, 255, 136, .4);--accent-dark: #059669;--glass-border-focus: rgba(0, 255, 136, .4)}.theme-skin{--accent-color: #f59e0b;--accent-glow: rgba(245, 158, 11, .4);--accent-dark: #d97706;--glass-border-focus: rgba(245, 158, 11, .4)}.theme-server{--accent-color: #3b82f6;--accent-glow: rgba(59, 130, 246, .4);--accent-dark: #1d4ed8;--glass-border-focus: rgba(59, 130, 246, .4)}.theme-colors{--accent-color: #a855f7;--accent-glow: rgba(168, 85, 247, .4);--accent-dark: #7c3aed;--glass-border-focus: rgba(168, 85, 247, .4)}.theme-recipe{--accent-color: #ef4444;--accent-glow: rgba(239, 68, 68, .4);--accent-dark: #b91c1c;--glass-border-focus: rgba(239, 68, 68, .4)}.theme-speed{--accent-color: #06b6d4;--accent-glow: rgba(6, 182, 212, .4);--accent-dark: #0e7490;--glass-border-focus: rgba(6, 182, 212, .4)}.theme-error{--accent-color: #3b82f6;--accent-glow: rgba(59, 130, 246, .4);--accent-dark: #1d4ed8;--glass-border-focus: rgba(59, 130, 246, .4)}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;position:relative}.background-decorations{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;overflow:hidden}.glow-orb{position:absolute;border-radius:50%;filter:blur(140px);opacity:.15}.orb-1{top:-10%;left:-10%;width:50vw;height:50vw;background:radial-gradient(circle,var(--accent-color) 0%,transparent 70%)}.orb-2{bottom:-10%;right:-10%;width:60vw;height:60vw;background:radial-gradient(circle,#8b5cf6 0%,transparent 70%)}.orb-3{top:40%;left:60%;width:35vw;height:35vw;background:radial-gradient(circle,#3b82f6 0%,transparent 70%);opacity:.08}.app-container{max-width:1200px;width:100%;margin:0 auto;padding:2.5rem 1.5rem;flex:1}.app-header{text-align:center;margin-bottom:2.5rem;position:relative}.logo{display:inline-flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.logo h1{font-size:2.5rem;font-weight:800;letter-spacing:-.5px}.logo h1 span{color:var(--accent-color);text-shadow:0 0 15px var(--accent-glow)}.xp-icon-glow{font-size:2.2rem;color:var(--accent-color);filter:drop-shadow(0 0 10px var(--accent-glow));animation:pulseIcon 3s infinite ease-in-out}.subtitle{color:var(--text-secondary);font-size:1.1rem;font-weight:300}.edition-badge{align-self:center;background:#00ff881a;color:var(--accent-color);border:1px solid var(--accent-glow);padding:.2rem .6rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.edition-switch-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.85rem;padding:.65rem 1.25rem;border-radius:999px;border:1px solid var(--accent-glow);background:#ffffff0f;color:var(--text-primary);font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 0 20px var(--accent-glow);transition:var(--transition)}.edition-switch-btn i{color:var(--accent-color)}.edition-switch-btn:hover{background:var(--accent-color);color:var(--bg-primary);transform:translateY(-2px);box-shadow:0 4px 25px var(--accent-glow)}.edition-switch-btn:hover i{color:var(--bg-primary)}.grid-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.panel{display:flex;flex-direction:column}.glass-panel{position:relative;border:1px solid var(--glass-border);border-radius:var(--card-radius);padding:2rem;box-shadow:0 15px 35px #0003;transition:var(--transition);overflow:hidden;z-index:1}.glass-panel:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:inherit;z-index:-1;pointer-events:none;transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:filter,backdrop-filter}.glass-panel:hover{border-color:#ffffff1f;box-shadow:0 20px 40px #0000004d}.panel-header{margin-bottom:1.75rem;border-bottom:1px solid var(--glass-border);padding-bottom:.75rem;display:flex;justify-content:space-between;align-items:center}.panel-header h2{font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:.6rem;margin:0}.panel-header h2 i{color:var(--accent-color)}.input-group{margin-bottom:1.75rem}.input-group label{display:block;margin-bottom:.75rem;font-size:.95rem;font-weight:500;color:var(--text-primary)}.tooltip-trigger{display:inline-block;margin-left:.25rem;color:var(--text-muted);cursor:help;transition:var(--transition)}.tooltip-trigger:hover{color:var(--accent-color)}.time-inputs-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sub-input{position:relative;display:flex;align-items:center}.sub-input input{width:100%;padding:.85rem 3rem .85rem 1rem;background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);color:var(--text-primary);font-family:var(--font-mono);font-size:1.1rem;transition:var(--transition)}.sub-input input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 10px var(--accent-glow)}.sub-input span{position:absolute;right:1rem;color:var(--text-secondary);font-size:.9rem;pointer-events:none}.number-input-wrapper{position:relative}.number-input-wrapper input{width:100%;padding:.85rem 1rem .85rem 2.75rem;background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);color:var(--text-primary);font-family:var(--font-sans);font-size:1.1rem;transition:var(--transition)}.number-input-wrapper input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 10px var(--accent-glow)}.number-input-wrapper input:disabled{opacity:.55;cursor:not-allowed;background:#00000026}.input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);transition:var(--transition)}.number-input-wrapper input:focus+.input-icon{color:var(--accent-color)}.presets-row{margin-top:.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.preset-label{font-size:.85rem;color:var(--text-muted);margin-right:.25rem}.preset-btn{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-secondary);padding:.35rem .75rem;font-size:.85rem;font-weight:500;border-radius:6px;cursor:pointer;transition:var(--transition)}.preset-btn:hover{background:var(--glass-bg-hover);color:var(--text-primary);border-color:#fff3}.preset-btn.active{background:#00ff881a;color:var(--accent-color);border-color:var(--accent-color);box-shadow:0 0 8px #00ff8826}.calculation-summary{background:#00000026;border-radius:var(--btn-radius);padding:1rem;margin-top:auto;border-left:3px solid var(--accent-color)}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-label{font-size:.9rem;color:var(--text-secondary)}.summary-value{font-weight:700;color:var(--accent-color);font-family:var(--font-mono)}.main-result-panel{display:flex;flex-direction:column;justify-content:space-between}.result-display{text-align:center;padding:1.5rem 0;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1}.time-output{font-family:var(--font-mono);font-size:3.5rem;font-weight:700;color:var(--accent-color);text-shadow:0 0 25px var(--accent-glow);letter-spacing:-1px;margin-bottom:.5rem;animation:fadeInScale .4s cubic-bezier(.4,0,.2,1)}.time-text-desc{color:var(--text-secondary);font-size:1.1rem;font-weight:400}.action-buttons-group{margin-bottom:1.5rem}.action-btn{width:100%;padding:.9rem 1.5rem;font-family:var(--font-sans);font-size:1rem;font-weight:600;border-radius:var(--btn-radius);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:var(--transition)}.primary-action-btn{background:linear-gradient(135deg,#10b981,#0f8);border:none;color:#052e16;box-shadow:0 4px 20px #00ff884d}.primary-action-btn:hover{transform:translateY(-2px);box-shadow:0 6px 25px #00ff8880}.primary-action-btn:active{transform:translateY(0)}.timer-card{background:#0000004d;border-radius:var(--card-radius);border:1px solid var(--glass-border);padding:1.25rem 1.5rem}.timer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.timer-header h3{font-size:.95rem;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:.4rem;margin:0}.timer-status-badge{font-size:.75rem;font-weight:600;text-transform:uppercase;padding:.2rem .6rem;border-radius:20px;letter-spacing:.5px}.timer-status-badge.idle{background:#ffffff0d;color:var(--text-secondary)}.timer-status-badge.running{background:#00ff881a;color:var(--accent-color);box-shadow:0 0 10px #00ff881a;animation:flashText 2s infinite}.timer-status-badge.paused{background:#f59e0b1a;color:#f59e0b}.timer-countdown{font-family:var(--font-mono);font-size:2.2rem;font-weight:700;text-align:center;margin-bottom:1rem;letter-spacing:1px}.progress-bar-container{background:#ffffff0d;border-radius:8px;height:8px;position:relative;margin-bottom:1.25rem;overflow:visible}.progress-bar-fill{background:linear-gradient(90deg,#10b981,#0f8);border-radius:8px;height:100%;width:100%;box-shadow:0 0 10px #00ff884d;transition:width .4s linear}.progress-info{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);margin-top:.5rem}.timer-controls{display:flex;justify-content:center;gap:1.25rem}.control-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--glass-border);background:#ffffff0d;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:var(--transition)}.control-btn:hover{background:var(--glass-bg-hover);transform:scale(1.05)}.control-btn:active{transform:scale(.95)}.play-btn{background:linear-gradient(135deg,#00ff881a,#10b9811a);border-color:#0f83;color:var(--accent-color)}.play-btn:hover{background:linear-gradient(135deg,#0f83,#10b98133);box-shadow:0 0 15px #00ff8826}.play-btn.state-running{background:linear-gradient(135deg,#f59e0b1a,#d977061a);border-color:#f59e0b33;color:#fbbf24}.play-btn.state-running:hover{background:linear-gradient(135deg,#f59e0b33,#d9770633);border-color:#f59e0b66;color:#fbbf24;box-shadow:0 0 15px #f59e0b33}.play-btn.state-paused{background:linear-gradient(135deg,#00ff881a,#10b9811a);border-color:#0f83;color:var(--accent-color)}.play-btn.state-paused:hover{background:linear-gradient(135deg,#0f83,#10b98133);border-color:#0f86;color:var(--accent-color);box-shadow:0 0 15px #00ff8840}.reset-btn:hover{color:#fbbf24;border-color:#fbbf244d}.sound-btn.state-unmuted{color:#60a5fa;border-color:#60a5fa40;background:#60a5fa0d}.sound-btn.state-unmuted:hover{color:#60a5fa;border-color:#60a5fa80;background:#60a5fa1a;box-shadow:0 0 15px #60a5fa33}.sound-btn.state-muted{color:var(--text-muted);border-color:var(--glass-border);background:#ffffff05}.sound-btn.state-muted:hover{color:var(--text-primary);border-color:#fff3;background:#ffffff0d}.history-panel{grid-column:1 / -1}.history-list-wrapper{overflow-x:auto;width:100%}.history-table{width:100%;border-collapse:collapse;text-align:left}.history-table th,.history-table td{padding:1rem 1.25rem;font-size:.95rem;border-bottom:1px solid var(--glass-border)}.history-table th{color:var(--text-secondary);font-weight:500;background:#0000001a}.history-table tbody tr{transition:var(--transition)}.history-table tbody tr:hover{background:#ffffff05}.history-table td{color:var(--text-primary)}.history-table td:nth-child(3){font-family:var(--font-mono);color:var(--accent-color);font-weight:700}.history-table td:nth-child(4){font-family:var(--font-mono)}.empty-row-placeholder{text-align:center;color:var(--text-muted)}.empty-row-placeholder td{padding:2.5rem 0}.text-btn-danger{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.9rem;transition:var(--transition);display:flex;align-items:center;gap:.4rem}.text-btn-danger:hover{color:var(--danger-color)}.btn-delete-row{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:.25rem .5rem;border-radius:4px;transition:var(--transition)}.btn-delete-row:hover{color:var(--danger-color);background:#ef44441a}.app-footer{text-align:center;padding:2rem 0;margin-top:auto;color:var(--text-muted);font-size:.85rem}@keyframes pulseIcon{0%,to{transform:scale(1);filter:drop-shadow(0 0 10px var(--accent-glow))}50%{transform:scale(1.08);filter:drop-shadow(0 0 18px var(--accent-glow))}}@keyframes flashText{0%,to{opacity:1}50%{opacity:.6}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1a,#ffffff0a 75%);background-size:800px 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:6px}.skeleton-avatar{width:48px;height:48px;border-radius:6px;flex-shrink:0}.skeleton-text{height:1em;border-radius:4px}.skeleton-body{width:100%;height:100%;border-radius:var(--card-radius)}[data-tooltip]{position:relative}.toggle-wrapper{display:flex;align-items:center}.switch-label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.switch-label input{display:none}.switch-slider{position:relative;display:inline-block;width:42px;height:22px;background:#ffffff14;border:1px solid var(--glass-border);border-radius:34px;transition:var(--transition)}.switch-slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background:var(--text-secondary);border-radius:50%;transition:var(--transition)}.switch-label input:checked+.switch-slider{background:#00ff881a;border-color:var(--accent-color)}.switch-label input:checked+.switch-slider:before{transform:translate(20px);background:var(--accent-color);box-shadow:0 0 8px var(--accent-glow)}.fade-transition{transition:opacity .3s cubic-bezier(.4,0,.2,1),max-height .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1);opacity:1;max-height:500px;overflow:visible}.fade-transition.collapsed{opacity:0;max-height:0;overflow:hidden;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;pointer-events:none}.command-box-wrapper{background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);overflow:hidden;margin-top:1rem}.command-box-header{background:#ffffff08;padding:.5rem 1rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--text-secondary)}.command-box-badge{background:#00ff881a;color:var(--accent-color);padding:.1rem .4rem;border-radius:4px;font-weight:700;font-size:.7rem;border:1px solid rgba(0,255,136,.2)}.command-box{padding:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.command-box code{font-family:var(--font-mono);color:#e5e7eb;font-size:1.05rem;word-break:break-all}.copy-btn{background:var(--accent-color);border:none;color:#052e16;font-family:var(--font-sans);font-weight:600;font-size:.85rem;padding:.5rem 1rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:.4rem;transition:var(--transition);flex-shrink:0}.copy-btn:hover{background:#0d7;box-shadow:0 0 10px #0f86;transform:translateY(-1px)}.copy-btn:active{transform:translateY(0)}.copy-btn.success{background:#3b82f6;color:#fff}.remaining-level-container{display:flex;align-items:center;gap:1.25rem;margin-bottom:.75rem}.level-badge-large{width:60px;height:60px;background:#00000080;border:2px solid #55ff55;color:#5f5;font-family:var(--font-mono);font-size:1.8rem;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;text-shadow:0 2px 4px rgba(0,0,0,.8),0 0 10px rgba(85,255,85,.6);box-shadow:inset 0 0 8px #55ff554d,0 0 15px #00000080;flex-shrink:0}.level-progress-wrapper{flex:1}.level-progress-bar{background:#0000004d;border:1px solid var(--glass-border);border-radius:6px;height:12px;overflow:hidden;margin-bottom:.35rem}.level-progress-fill{background:linear-gradient(90deg,#5f5,#0a0);height:100%;width:0%;box-shadow:0 0 8px #55ff5580;transition:width .3s ease}.level-progress-text{font-size:.8rem;color:var(--text-secondary)}.loss-stat-text{font-size:.85rem;color:var(--text-muted);text-align:right;border-top:1px solid rgba(255,255,255,.05);padding-top:.5rem}.portal-container{--accent-color: #3b82f6;--accent-glow: rgba(59, 130, 246, .4);--accent-dark: #1d4ed8;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;position:relative;z-index:1}.portal-container .orb-1{background:radial-gradient(circle,#2563eb 0%,transparent 70%)}.portal-container .orb-2{background:radial-gradient(circle,#7c3aed 0%,transparent 70%)}.portal-container .orb-3{background:radial-gradient(circle,#60a5fa 0%,transparent 70%);opacity:.15}.portal-card{width:100%;max-width:800px;padding:4rem 3.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fadeInScale .5s cubic-bezier(.4,0,.2,1);border:none!important;box-shadow:0 20px 50px #0000002e!important}.portal-container .app-footer{border:none!important;padding:0!important;margin:2rem 0 0!important;width:auto!important}.portal-avatar-wrapper{position:relative;margin-bottom:1.5rem}.portal-avatar{width:96px;height:96px;border-radius:50%;background:#0006;border:3px solid var(--accent-color);display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px #00ff884d,inset 0 0 12px #0f83;animation:pulseIcon 4s infinite ease-in-out}.portal-avatar i{font-size:3rem;color:var(--accent-color);filter:drop-shadow(0 0 8px var(--accent-glow));line-height:1;-webkit-user-select:none;user-select:none}.portal-avatar span{font-size:3.6rem;font-weight:800;color:var(--accent-color);text-shadow:0 0 8px var(--accent-glow);line-height:1;-webkit-user-select:none;user-select:none}.portal-name{font-size:2.4rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.5rem;color:var(--text-primary)}.portal-name span{color:var(--accent-color);text-shadow:0 0 15px var(--accent-glow)}.portal-subtitle{font-size:1.05rem;color:var(--text-secondary);font-weight:300;margin-bottom:2rem;letter-spacing:.5px}.social-links{display:flex;justify-content:center;gap:1rem;margin-bottom:2.5rem;width:100%}.social-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--glass-border);background:#ffffff05;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;cursor:pointer;transition:var(--transition);text-decoration:none}.social-btn:hover{transform:translateY(-4px) scale(1.08);color:#fff}.social-btn.twitch:hover{border-color:#9146ff;background:#9146ff1a;box-shadow:0 0 15px #9146ff4d}.social-btn.youtube:hover{border-color:red;background:#ff00001a;box-shadow:0 0 15px #ff00004d}.social-btn.instagram:hover{border-color:#e1306c;background:#e1306c1a;box-shadow:0 0 15px #e1306c4d}.social-btn.github:hover{border-color:#fff;background:#ffffff1a;box-shadow:0 0 15px #fff3}.social-btn.facebook:hover{border-color:#1877f2;background:#1877f21a;box-shadow:0 0 15px #1877f24d}.portal-tools{display:flex;flex-direction:column;gap:1rem;width:100%}.tool-link-wrapper{width:100%;text-decoration:none}.portal-link-btn{width:100%;padding:1rem 1.5rem;background:#ffffff05;border:1px solid var(--glass-border);border-radius:var(--btn-radius);color:var(--text-primary);font-family:var(--font-sans);font-size:1.05rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:var(--transition)}.portal-link-btn .btn-left{display:flex;align-items:center;gap:.75rem}.portal-link-btn .btn-left i{font-size:1.2rem;color:var(--text-secondary);transition:var(--transition)}.portal-link-btn .btn-right i{font-size:.9rem;color:var(--text-muted);transition:var(--transition)}.portal-link-btn:hover{transform:translateY(-2px);background:#ffffff0d}.portal-link-btn.xp-calc-btn:hover{border-color:#0f8;box-shadow:0 0 20px #00ff8840;background:#00ff8805}.portal-link-btn.xp-calc-btn:hover .btn-left i{color:#0f8;filter:drop-shadow(0 0 5px rgba(0,255,136,.4))}.portal-link-btn.xp-calc-btn:hover .btn-right i{color:#0f8;transform:translate(3px)}.portal-link-btn.skin-down-btn:hover{border-color:#f59e0b;box-shadow:0 0 20px #f59e0b40;background:#f59e0b05}.portal-link-btn.skin-down-btn:hover .btn-left i{color:#f59e0b;filter:drop-shadow(0 0 5px rgba(245,158,11,.4))}.portal-link-btn.skin-down-btn:hover .btn-right i{color:#f59e0b;transform:translate(3px)}.portal-link-btn.server-status-btn:hover{border-color:#3b82f6;box-shadow:0 0 20px #3b82f640;background:#3b82f605}.portal-link-btn.server-status-btn:hover .btn-left i{color:#3b82f6;filter:drop-shadow(0 0 5px rgba(59,130,246,.4))}.portal-link-btn.server-status-btn:hover .btn-right i{color:#3b82f6;transform:translate(3px)}.portal-link-btn.color-gen-btn:hover{border-color:#a855f7;box-shadow:0 0 20px #a855f740;background:#a855f705}.portal-link-btn.color-gen-btn:hover .btn-left i{color:#a855f7;filter:drop-shadow(0 0 5px rgba(168,85,247,.4))}.portal-link-btn.color-gen-btn:hover .btn-right i{color:#a855f7;transform:translate(3px)}.portal-link-btn.recipe-gen-btn:hover{border-color:#ef4444;box-shadow:0 0 20px #ef444440;background:#ef444405}.portal-link-btn.recipe-gen-btn:hover .btn-left i{color:#ef4444;filter:drop-shadow(0 0 5px rgba(239,68,68,.4))}.portal-link-btn.recipe-gen-btn:hover .btn-right i{color:#ef4444;transform:translate(3px)}.portal-link-btn.disabled-btn{opacity:.5;cursor:not-allowed;border-color:#ffffff0a}.portal-link-btn.disabled-btn:hover{transform:none;background:#ffffff05}.portal-link-btn .badge-soon{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-secondary);font-size:.75rem;padding:.15rem .5rem;border-radius:20px;font-weight:500}.back-home-link{position:absolute;left:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;font-size:.95rem;font-weight:500;padding:.5rem 1rem;border:1px solid var(--glass-border);border-radius:var(--btn-radius);background:#ffffff05;transition:var(--transition)}.back-home-link:hover{color:var(--accent-color);border-color:var(--accent-color);background:#00ff880d;box-shadow:0 0 10px #00ff8826}.portal-link-btn.speed-test-btn:hover{border-color:#06b6d4;box-shadow:0 0 20px #06b6d440;background:#06b6d405}.portal-link-btn.speed-test-btn:hover .btn-left i{color:#06b6d4;filter:drop-shadow(0 0 5px rgba(6,182,212,.4))}.portal-link-btn.speed-test-btn:hover .btn-right i{color:#06b6d4;transform:translate(3px)}.theme-speed .orb-2{background:radial-gradient(circle,#8b5cf6 0%,transparent 70%)}.theme-speed .back-home-link:hover{background:#06b6d40d;box-shadow:0 0 10px #06b6d426}.theme-speed.app-container{max-width:1040px;padding:1.5rem}.speed-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"server" "gauge" "controls"}.speed-layout .speed-server{grid-area:server}.speed-layout .speed-gauge{grid-area:gauge}.speed-controls{grid-area:controls;min-width:0}@media (min-width: 900px){.speed-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"gauge server" "gauge controls";grid-template-rows:auto 1fr;column-gap:2.5rem}.speed-layout .speed-gauge{align-self:center;max-width:460px}.speed-layout .speed-stats{grid-template-columns:repeat(2,1fr);margin-top:.25rem}.theme-speed .speed-panel{padding:2rem 2.25rem}}.theme-speed .speed-panel,.theme-speed .speed-shared{padding:1.75rem 1.5rem}.speed-header{position:relative}.speed-install-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:var(--btn-radius);border:1px solid var(--accent-glow);background:#06b6d41a;color:var(--accent-color);font-family:var(--font-sans);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition)}.speed-install-btn:hover,.speed-install-btn:focus-visible{background:var(--accent-color);color:var(--bg-primary);box-shadow:0 0 15px var(--accent-glow);outline:none}.speed-badge{background:#06b6d41a;white-space:nowrap}.speed-server{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.speed-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.speed-server-select{width:100%;min-width:0;padding:.85rem 1rem;background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);color:var(--text-primary);font-family:var(--font-sans);font-size:1rem;outline:none;cursor:pointer;transition:var(--transition)}.speed-server-select:focus{border-color:var(--accent-color);box-shadow:0 0 10px var(--accent-glow)}.speed-server-select:disabled{opacity:.55;cursor:not-allowed}.speed-server-select option,.speed-server-select optgroup{background:var(--bg-secondary);color:var(--text-primary)}.speed-server-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1rem;margin:0;padding:.75rem .9rem;background:#0000002e;border:1px solid var(--glass-border);border-radius:var(--btn-radius)}.speed-server-info-row{display:flex;flex-direction:column;gap:.15rem;min-width:0}.speed-server-info dt{font-size:.75rem;color:var(--text-muted)}.speed-server-info dt i{color:var(--accent-color);width:1em;text-align:center;margin-right:.2rem}.speed-server-info dd{margin:0;min-width:0;font-size:.9rem;color:var(--text-primary)}.speed-server-info a{display:block;min-width:0}.speed-trunc{display:block;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.speed-trunc.is-truncated{cursor:default;border-radius:3px}.speed-trunc.is-truncated:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.speed-trunc-tip{position:fixed;z-index:100;padding:.45rem .7rem;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--glass-border);box-shadow:0 8px 24px #00000073;color:var(--text-primary);font-family:var(--font-sans);font-size:.82rem;line-height:1.4;overflow-wrap:anywhere;pointer-events:none;animation:speed-tip-in .12s ease-out}@keyframes speed-tip-in{0%{opacity:0;transform:translateY(-2px)}}.speed-server-info dd.mono{font-family:var(--font-mono);font-size:.82rem}.speed-server-info a{color:var(--accent-color);text-decoration:none}.speed-server-info a:hover{text-decoration:underline}.speed-history-server{min-width:0;font-family:var(--font-sans);font-size:.75rem;color:var(--text-muted)}.speed-gauge{position:relative;width:100%;max-width:340px;margin:0 auto;aspect-ratio:1 / .8}.speed-gauge svg{width:100%;height:100%;display:block;overflow:visible}.speed-gauge-track,.speed-gauge-arc{fill:none;stroke-width:10;stroke-linecap:round}.speed-gauge-track{stroke:#ffffff0f}.speed-gauge-arc{stroke:var(--accent-color);filter:drop-shadow(0 0 6px var(--accent-glow));transition:stroke-dasharray .25s linear}.speed-gauge-tick{font-family:var(--font-mono);font-size:7px;fill:var(--text-muted);animation:speed-tick-in .5s ease-out}@keyframes speed-tick-in{0%{opacity:0;fill:var(--accent-color)}to{opacity:1;fill:var(--text-muted)}}@media (prefers-reduced-motion: reduce){.speed-gauge-tick{animation:none}}.speed-gauge-readout{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:16%}.speed-gauge-num{font-family:var(--font-mono);font-weight:700;font-size:3.2rem;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 18px var(--accent-glow)}.speed-gauge-unit{color:var(--text-secondary);font-size:.9rem;margin-top:.4rem}.speed-gauge-unit i{color:var(--accent-color);font-size:.8rem}.speed-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-top:1.25rem}.speed-stat{background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);padding:.8rem .75rem;display:flex;flex-direction:column;gap:.3rem;min-width:0}.speed-stat-label{font-size:.8rem;color:var(--text-secondary);white-space:nowrap}.speed-stat-label i{color:var(--accent-color);font-size:.7rem}.speed-stat-value{font-family:var(--font-mono);font-weight:700;font-size:1.2rem;font-variant-numeric:tabular-nums;white-space:nowrap}.speed-stat-value small{font-family:var(--font-sans);font-weight:400;font-size:.72rem;color:var(--text-muted);margin-left:3px}.speed-run-btn{margin-top:1.5rem;font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-dark) 100%);color:var(--bg-primary);box-shadow:0 4px 20px var(--accent-glow)}.speed-run-btn:hover:not(:disabled){box-shadow:0 6px 25px var(--accent-glow)}.speed-run-btn:disabled{opacity:.6;cursor:progress;transform:none}.speed-error{margin-top:1rem;color:var(--danger-color);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--btn-radius);padding:.7rem .9rem;font-size:.9rem}.speed-empty{color:var(--text-muted)}.speed-history{list-style:none;display:flex;flex-direction:column;gap:.5rem}.speed-history li{display:grid;grid-template-columns:minmax(0,1fr) 4rem 5.5rem 5.5rem 2rem;gap:1rem;align-items:center;padding:.7rem .9rem;background:#00000040;border:1px solid var(--glass-border);border-radius:var(--btn-radius);font-family:var(--font-mono);font-size:.82rem;font-variant-numeric:tabular-nums}.speed-history-date{display:flex;align-items:baseline;gap:.6rem;min-width:0;color:var(--text-secondary);white-space:nowrap}.speed-history-val{color:var(--text-primary);font-weight:700}.speed-history-val i{font-size:.7rem}.speed-history-val .fa-arrow-down,.speed-stat-label .fa-arrow-down,.speed-gauge-unit .fa-arrow-down{color:#0ea5c4}.speed-history-val .fa-arrow-up,.speed-stat-label .fa-arrow-up,.speed-gauge-unit .fa-arrow-up{color:#d97706}.speed-gauge.is-upload .speed-gauge-arc{stroke:#d97706;filter:drop-shadow(0 0 6px rgba(217,119,6,.4))}.speed-gauge.is-upload .speed-gauge-num{text-shadow:0 0 18px rgba(217,119,6,.4)}.speed-share{margin-top:1rem;display:flex;flex-direction:column;gap:.6rem}.speed-share-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.speed-share-btn{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem .9rem;border-radius:var(--btn-radius);border:1px solid var(--glass-border);background:#ffffff08;color:var(--text-primary);font-family:var(--font-sans);font-size:.92rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:var(--transition)}.speed-share-btn i{color:var(--accent-color)}.speed-share-btn:hover,.speed-share-btn:focus-visible{border-color:var(--accent-color);box-shadow:0 0 12px #06b6d433;outline:none}.speed-history-share{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--glass-border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.speed-history-share:hover,.speed-history-share.active{color:var(--accent-color);border-color:var(--accent-color)}.speed-history-sharepanel{grid-column:1 / -1;font-family:var(--font-sans)}.speed-history-sharepanel .speed-share{margin-top:.25rem}.speed-shared{border-color:#06b6d459!important;box-shadow:0 0 30px #06b6d41f,0 15px 35px #0003}.speed-shared-close{background:none;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:.25rem .5rem;border-radius:6px;transition:var(--transition)}.speed-shared-close:hover{color:var(--text-primary);background:#ffffff0f}.speed-shared-meta{margin-top:.9rem;color:var(--text-secondary);font-size:.85rem}.speed-toast{position:fixed;left:50%;bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:50;max-width:calc(100% - 2rem);padding:.7rem 1.1rem;border-radius:var(--btn-radius);background:var(--bg-secondary);border:1px solid var(--accent-color);box-shadow:0 0 20px var(--accent-glow);color:var(--text-primary);font-size:.9rem}.speed-chart-block{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--glass-border)}.speed-chart-history{margin-top:0;padding-top:0;border-top:none;margin-bottom:1rem}.speed-chart-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.5rem}.speed-chart-head h3{font-size:1rem;font-weight:600;color:var(--text-primary)}.speed-chart-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;font-size:.85rem;color:var(--text-secondary)}.speed-chart-history .speed-chart-legend{margin-bottom:.5rem}.speed-chart-legend-item{display:inline-flex;align-items:center;gap:.45rem}.speed-chart-legend-item strong{color:var(--text-primary);font-family:var(--font-mono)}.speed-chart-key{display:inline-block;width:14px;height:3px;border-radius:2px;flex-shrink:0}.speed-chart{position:relative;width:100%;min-width:0}.speed-chart svg{display:block;overflow:visible;touch-action:pan-y;outline:none}.speed-chart svg:focus-visible{outline:2px solid var(--accent-color);outline-offset:4px;border-radius:6px}.speed-chart-grid{stroke:#ffffff0f;stroke-width:1;shape-rendering:crispEdges}.speed-chart-tick{font-family:var(--font-mono);font-size:11px;fill:var(--text-muted);font-variant-numeric:tabular-nums}.speed-chart-crosshair{stroke:#ffffff40;stroke-width:1}.speed-chart-dot{stroke:#111620;stroke-width:2}.speed-chart-tooltip{position:absolute;top:0;z-index:5;padding:.55rem .75rem;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--glass-border);box-shadow:0 8px 24px #0006;pointer-events:none;font-size:.8rem;color:var(--text-secondary)}.speed-chart-tooltip-title{color:var(--text-muted);font-family:var(--font-mono);font-size:.75rem;margin-bottom:.3rem}.speed-chart-tooltip-row{display:flex;align-items:center;gap:.45rem;white-space:nowrap}.speed-chart-tooltip-row strong{color:var(--text-primary);font-family:var(--font-mono);font-size:.9rem}.speed-chart-tooltip-extra{margin-top:.3rem;padding-top:.3rem;border-top:1px solid var(--glass-border);color:var(--text-muted);font-size:.75rem}@media (max-width: 768px){.theme-speed.app-container{padding:1rem}.theme-speed .app-header{margin-bottom:1.25rem}.theme-speed .logo{margin-bottom:0}.theme-speed .back-home-link{position:absolute;left:0;top:50%;transform:translateY(-50%);margin:0;padding:.55rem .75rem}.speed-back-text{display:none}.speed-install-btn{padding:.55rem .75rem}.theme-speed .speed-panel,.theme-speed .speed-shared{padding:1.1rem 1rem}.theme-speed .panel-header{margin-bottom:1rem}}@media (max-width: 560px){.speed-stats{grid-template-columns:repeat(2,1fr)}.speed-history li{grid-template-columns:4rem minmax(0,1fr) minmax(0,1fr) 2rem;gap:.35rem .75rem}.speed-history-date{grid-column:1 / -1}}@media (max-width: 768px){.grid-layout{grid-template-columns:1fr}.app-container{padding:1.5rem 1rem}.logo h1{font-size:2rem}.time-output{font-size:2.8rem}.glass-panel{padding:1.5rem}.back-home-link{position:static;transform:none;display:inline-flex;margin-bottom:1.5rem}.app-header{display:flex;flex-direction:column;align-items:center}}.portal-link-btn.restream-btn:hover{border-color:#8b5cf6;box-shadow:0 0 20px #8b5cf640;background:#8b5cf605}.portal-link-btn.restream-btn:hover .btn-left i{color:#8b5cf6;filter:drop-shadow(0 0 5px rgba(139,92,246,.4))}.portal-link-btn.restream-btn:hover .btn-right i{color:#8b5cf6;transform:translate(3px)}
