master @ 241 LINES
[ HISTORY ] [ UP ]
┌─ SCSS ─────────────────────────────────────────────────────────────────────┐
│ .player-search-island { │
│ position: relative; │
│ width: 100%; │
│ margin-bottom: 24px; │
│ } │
│ │
│ .search-input-wrapper { │
│ position: relative; │
│ display: flex; │
│ align-items: center; │
│ } │
│ │
│ .search-input { │
│ width: 100%; │
│ padding: 12px 40px 12px 16px; │
│ background-color: var(--bg-secondary); │
│ color: var(--text-primary); │
│ border: 1px solid var(--border-color); │
│ border-radius: 6px; │
│ font-size: 0.95em; │
│ transition: all 0.2s ease; │
│ } │
│ │
│ .search-input:focus { │
│ outline: none; │
│ border-color: var(--highlight-color); │
│ box-shadow: 0 0 0 2px rgba(255, 215, 0, 0.2); │
│ } │
│ │
│ .search-input::placeholder { │
│ color: var(--text-muted); │
│ } │
│ │
│ .search-clear { │
│ position: absolute; │
│ right: 12px; │
│ top: 50%; │
│ transform: translateY(-50%); │
│ background: none; │
│ border: none; │
│ color: var(--text-muted); │
│ cursor: pointer; │
│ padding: 4px; │
│ border-radius: 2px; │
│ transition: all 0.2s ease; │
│ } │
│ │
│ .search-clear:hover { │
│ color: var(--text-primary); │
│ background-color: var(--bg-hover); │
│ } │
│ │
│ // search results dropdown │
│ .search-results { │
│ position: absolute; │
│ top: 100%; │
│ left: 0; │
│ right: 0; │
│ background-color: var(--bg-secondary); │
│ border: 1px solid var(--border-color); │
│ border-radius: 6px; │
│ margin-top: 4px; │
│ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); │
│ z-index: 1000; │
│ max-height: 400px; │
│ overflow-y: auto; │
│ } │
│ │
│ .search-loading { │
│ display: flex; │
│ align-items: center; │
│ gap: 8px; │
│ padding: 16px; │
│ color: var(--text-muted); │
│ } │
│ │
│ .loading-spinner { │
│ width: 16px; │
│ height: 16px; │
│ border: 2px solid var(--border-color); │
│ border-top: 2px solid var(--highlight-color); │
│ border-radius: 50%; │
│ animation: spin 1s linear infinite; │
│ } │
│ │
│ .search-results-list { │
│ max-height: 400px; │
│ overflow-y: auto; │
│ } │
│ │
│ // individual search result items │
│ .search-result-item { │
│ display: flex; │
│ justify-content: space-between; │
│ align-items: center; │
│ padding: 6px 12px; │
│ cursor: pointer; │
│ transition: background-color 0.2s ease; │
│ border-bottom: 1px solid var(--border-color); │
│ font-size: 0.95em; │
│ } │
│ │
│ .search-result-item:last-child { │
│ border-bottom: none; │
│ } │
│ │
│ .search-result-item:hover { │
│ background-color: var(--bg-hover); │
│ } │
│ │
│ .search-result-item.selected { │
│ background-color: var(--highlight-color); │
│ color: #1a1a1a; │
│ } │
│ │
│ .search-result-item.selected .search-player-realm, │
│ .search-result-item.selected .search-region-badge { │
│ color: rgba(26, 26, 26, 0.7); │
│ } │
│ │
│ // Search result content │
│ .search-result-content { │
│ width: 100%; │
│ } │
│ │
│ .search-player-identity { │
│ display: flex; │
│ align-items: center; │
│ gap: 8px; │
│ font-size: 1em; │
│ } │
│ │
│ .search-player-name { │
│ font-weight: 600; │
│ font-size: 1em; │
│ } │
│ │
│ .search-region-badge { │
│ background-color: var(--bg-hover); │
│ color: var(--text-muted); │
│ padding: 2px 6px; │
│ border-radius: 3px; │
│ font-size: 0.75em; │
│ font-weight: 500; │
│ text-transform: uppercase; │
│ } │
│ │
│ .search-player-realm { │
│ color: var(--text-muted); │
│ font-size: 0.9em; │
│ } │
│ │
│ .global-ranking { │
│ font-size: 0.85em; │
│ font-weight: 600; │
│ margin-left: auto; │
│ } │
│ │
│ // no results and other states │
│ .search-no-results { │
│ padding: 20px 16px; │
│ text-align: center; │
│ color: var(--text-muted); │
│ } │
│ │
│ .search-no-results p { │
│ margin: 4px 0; │
│ } │
│ │
│ .search-hint { │
│ font-size: 0.85em; │
│ opacity: 0.8; │
│ } │
│ │
│ .search-relevance { │
│ display: inline-block; │
│ margin-right: 4px; │
│ color: var(--text-muted); │
│ font-size: 0.8em; │
│ opacity: 0.7; │
│ font-weight: normal; │
│ } │
│ │
│ // animations │
│ @keyframes spin { │
│ 0% { │
│ transform: rotate(0deg); │
│ } │
│ │
│ 100% { │
│ transform: rotate(360deg); │
│ } │
│ } │
│ │
│ // scrollbar │
│ .search-results-list::-webkit-scrollbar { │
│ width: 6px; │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-track { │
│ background: var(--bg-primary); │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-thumb { │
│ background: var(--border-color); │
│ border-radius: 3px; │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-thumb:hover { │
│ background: var(--text-muted); │
│ } │
│ │
│ // mobile responsive │
│ @media (max-width: 768px) { │
│ .search-input { │
│ padding: 14px 40px 14px 16px; │
│ font-size: 1em; │
│ min-height: 44px; │
│ /* iOS touch target */ │
│ } │
│ │
│ .search-results { │
│ max-height: 70vh; │
│ /* Prevent covering entire screen */ │
│ } │
│ │
│ .search-result-item { │
│ padding: 12px; │
│ } │
│ │
│ .search-player-identity { │
│ flex-wrap: wrap; │
│ gap: 6px; │
│ } │
│ │
│ .global-ranking { │
│ margin-left: 0; │
│ margin-top: 4px; │
│ } │
│ } │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ SCSS ───────────────────────────────┐
│ .player-search-island { │
│ position: relative; │
│ width: 100%; │
│ margin-bottom: 24px; │
│ } │
│ │
│ .search-input-wrapper { │
│ position: relative; │
│ display: flex; │
│ align-items: center; │
│ } │
│ │
│ .search-input { │
│ width: 100%; │
│ padding: 12px 40px 12px 16px; │
│ background-color: var(--bg-secondary); │
│ color: var(--text-primary); │
│ border: 1px solid var(--border-color); │
│ border-radius: 6px; │
│ font-size: 0.95em; │
│ transition: all 0.2s ease; │
│ } │
│ │
│ .search-input:focus { │
│ outline: none; │
│ border-color: var(--highlight-color); │
│ box-shadow: 0 0 0 2px rgba(255, 215, 0, 0. │
│ 2); │
│ } │
│ │
│ .search-input::placeholder { │
│ color: var(--text-muted); │
│ } │
│ │
│ .search-clear { │
│ position: absolute; │
│ right: 12px; │
│ top: 50%; │
│ transform: translateY(-50%); │
│ background: none; │
│ border: none; │
│ color: var(--text-muted); │
│ cursor: pointer; │
│ padding: 4px; │
│ border-radius: 2px; │
│ transition: all 0.2s ease; │
│ } │
│ │
│ .search-clear:hover { │
│ color: var(--text-primary); │
│ background-color: var(--bg-hover); │
│ } │
│ │
│ // search results dropdown │
│ .search-results { │
│ position: absolute; │
│ top: 100%; │
│ left: 0; │
│ right: 0; │
│ background-color: var(--bg-secondary); │
│ border: 1px solid var(--border-color); │
│ border-radius: 6px; │
│ margin-top: 4px; │
│ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); │
│ z-index: 1000; │
│ max-height: 400px; │
│ overflow-y: auto; │
│ } │
│ │
│ .search-loading { │
│ display: flex; │
│ align-items: center; │
│ gap: 8px; │
│ padding: 16px; │
│ color: var(--text-muted); │
│ } │
│ │
│ .loading-spinner { │
│ width: 16px; │
│ height: 16px; │
│ border: 2px solid var(--border-color); │
│ border-top: 2px solid var(--highlight-colo │
│ r); │
│ border-radius: 50%; │
│ animation: spin 1s linear infinite; │
│ } │
│ │
│ .search-results-list { │
│ max-height: 400px; │
│ overflow-y: auto; │
│ } │
│ │
│ // individual search result items │
│ .search-result-item { │
│ display: flex; │
│ justify-content: space-between; │
│ align-items: center; │
│ padding: 6px 12px; │
│ cursor: pointer; │
│ transition: background-color 0.2s ease; │
│ border-bottom: 1px solid var(--border-colo │
│ r); │
│ font-size: 0.95em; │
│ } │
│ │
│ .search-result-item:last-child { │
│ border-bottom: none; │
│ } │
│ │
│ .search-result-item:hover { │
│ background-color: var(--bg-hover); │
│ } │
│ │
│ .search-result-item.selected { │
│ background-color: var(--highlight-color); │
│ color: #1a1a1a; │
│ } │
│ │
│ .search-result-item.selected .search-player- │
│ realm, │
│ .search-result-item.selected .search-region- │
│ badge { │
│ color: rgba(26, 26, 26, 0.7); │
│ } │
│ │
│ // Search result content │
│ .search-result-content { │
│ width: 100%; │
│ } │
│ │
│ .search-player-identity { │
│ display: flex; │
│ align-items: center; │
│ gap: 8px; │
│ font-size: 1em; │
│ } │
│ │
│ .search-player-name { │
│ font-weight: 600; │
│ font-size: 1em; │
│ } │
│ │
│ .search-region-badge { │
│ background-color: var(--bg-hover); │
│ color: var(--text-muted); │
│ padding: 2px 6px; │
│ border-radius: 3px; │
│ font-size: 0.75em; │
│ font-weight: 500; │
│ text-transform: uppercase; │
│ } │
│ │
│ .search-player-realm { │
│ color: var(--text-muted); │
│ font-size: 0.9em; │
│ } │
│ │
│ .global-ranking { │
│ font-size: 0.85em; │
│ font-weight: 600; │
│ margin-left: auto; │
│ } │
│ │
│ // no results and other states │
│ .search-no-results { │
│ padding: 20px 16px; │
│ text-align: center; │
│ color: var(--text-muted); │
│ } │
│ │
│ .search-no-results p { │
│ margin: 4px 0; │
│ } │
│ │
│ .search-hint { │
│ font-size: 0.85em; │
│ opacity: 0.8; │
│ } │
│ │
│ .search-relevance { │
│ display: inline-block; │
│ margin-right: 4px; │
│ color: var(--text-muted); │
│ font-size: 0.8em; │
│ opacity: 0.7; │
│ font-weight: normal; │
│ } │
│ │
│ // animations │
│ @keyframes spin { │
│ 0% { │
│ transform: rotate(0deg); │
│ } │
│ │
│ 100% { │
│ transform: rotate(360deg); │
│ } │
│ } │
│ │
│ // scrollbar │
│ .search-results-list::-webkit-scrollbar { │
│ width: 6px; │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-trac │
│ k { │
│ background: var(--bg-primary); │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-thum │
│ b { │
│ background: var(--border-color); │
│ border-radius: 3px; │
│ } │
│ │
│ .search-results-list::-webkit-scrollbar-thum │
│ b:hover { │
│ background: var(--text-muted); │
│ } │
│ │
│ // mobile responsive │
│ @media (max-width: 768px) { │
│ .search-input { │
│ padding: 14px 40px 14px 16px; │
│ font-size: 1em; │
│ min-height: 44px; │
│ /* iOS touch target */ │
│ } │
│ │
│ .search-results { │
│ max-height: 70vh; │
│ /* Prevent covering entire screen */ │
│ } │
│ │
│ .search-result-item { │
│ padding: 12px; │
│ } │
│ │
│ .search-player-identity { │
│ flex-wrap: wrap; │
│ gap: 6px; │
│ } │
│ │
│ .global-ranking { │
│ margin-left: 0; │
│ margin-top: 4px; │
│ } │
│ } │
└──────────────────────────────────────────────┘
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET