* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Inter', sans-serif; background: transparent; color: white; margin: 0; padding: 0; height: 100vh; overflow: hidden; display: flex; align-items: flex-end; justify-content: flex-end; } .fishing-ui { background: var(--bg-primary); border: 1px solid var(--border-color); border-radius: 12px; padding: 16px; width: 520px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); margin: 16px; opacity: 0; visibility: hidden; transform: translateX(100%); transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); display: grid; grid-template-columns: 200px 1fr; gap: 16px; align-items: start; } .fishing-ui.show { opacity: 1; visibility: visible; transform: translateX(0); } .left-section { display: flex; flex-direction: column; gap: 16px; } .right-section { display: flex; flex-direction: column; gap: 8px; } .zone-header { display: flex; align-items: center; gap: 10px; padding-bottom: 10px; border-bottom: 1px solid var(--border-color); } .zone-icon { width: 32px; height: 32px; background: var(--accent-color); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 16px; } .zone-title { font-size: 16px; font-weight: 700; color: var(--text-primary); } .player-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 16px; } .stat-card { background: var(--bg-secondary); border: 1px solid var(--border-color); border-radius: 8px; padding: 10px; text-align: center; } .stat-label { font-size: 12px; color: var(--text-secondary); margin-bottom: 4px; } .stat-value { font-size: 20px; font-weight: 600; color: var(--accent-color); } .xp-progress { background: var(--bg-secondary); border: 1px solid var(--border-color); border-radius: 8px; padding: 10px; grid-column: 1 / -1; } .xp-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 6px; flex-direction: column; gap: 2px; } .xp-label { font-size: 10px; font-weight: 500; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.5px; } .xp-needed { font-size: 10px; font-weight: 500; color: var(--success-color); white-space: nowrap; font-family: 'JetBrains Mono', monospace; } .xp-bar-container { background: var(--border-color); height: 6px; border-radius: 4px; overflow: hidden; } .xp-bar { background: linear-gradient(90deg, var(--accent-color), var(--success-color)); height: 100%; border-radius: 4px; transition: width 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .fish-section { margin-bottom: 0; } .section-title { font-size: 14px; font-weight: 500; color: #ffffff; margin-bottom: 10px; } .fish-list { display: flex; flex-direction: column; gap: 6px; } .fish-item { display: flex; justify-content: space-between; align-items: center; padding: 6px 8px; background: #333333; border: 1px solid #404040; border-radius: 6px; transition: background 0.2s ease; } .fish-item:hover { background: #404040; } .fish-name { font-size: 13px; color: #ffffff; } .fish-chance { font-size: 11px; color: #3b82f6; background: rgba(59, 130, 246, 0.1); padding: 2px 6px; border-radius: 4px; } .action-button { width: 100%; padding: 12px; border: none; border-radius: 8px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } .action-start { background: #10b981; color: white; } .action-start:hover { background: #059669; } .action-stop { background: #ef4444; color: white; } .action-stop:hover { background: #dc2626; } .level-requirement { background: #333333; border: 1px solid #404040; border-radius: 8px; padding: 8px; text-align: center; margin-bottom: 12px; font-size: 12px; color: #ef4444; } .level-requirement.valid { color: #10b981; } @media (max-width: 480px) { .fishing-ui { width: 95vw; grid-template-columns: 1fr; gap: 16px; } }