:root{--primary-color: #007BFF;--background-color: #f8f9fa;--card-background: #FFFFFF;--text-color: #212529;--text-muted-color: #6c757d;--border-color: #dee2e6}[data-theme=dark]{--primary-color: #60a5fa;--background-color: #0f172a;--card-background: #1e293b;--text-color: #f8fafc;--text-muted-color: #94a3b8;--border-color: #334155}[data-theme=dark] header{background-color:var(--background-color);border-bottom-color:var(--border-color)}[data-theme=dark] .btn-secondary{background-color:#334155;color:#f8fafc;border-color:#475569}[data-theme=dark] .btn-secondary:hover{background-color:#475569}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:#0f172a;color:#f8fafc;border-color:#334155}[data-theme=dark] .player-info-bar,[data-theme=dark] .problem-box,[data-theme=dark] .rating-change-box,[data-theme=dark] .player-result-box,[data-theme=dark] .status-container,[data-theme=dark] .blitz-stats,[data-theme=dark] .ranking-item,[data-theme=dark] .choice-btn,[data-theme=dark] .mode-select-btn,[data-theme=dark] .player-item{background-color:#334155!important;color:var(--text-color);border-color:var(--border-color)}body{margin:0;font-family:Noto Sans KR,sans-serif;background-color:var(--background-color);color:var(--text-color);font-size:16px;line-height:1.6}#app{max-width:900px;margin:0 auto;padding:2rem 1rem}.card{width:90%;max-width:700px;margin:0 auto 2rem;background:var(--card-background);border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000000d;border:1px solid var(--border-color)}.hidden{display:none!important}header{width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #979797;padding:1rem 2rem;box-sizing:border-box;position:sticky;background-color:var(--background-color);top:0;z-index:1000}.header-left{display:flex;align-items:center;gap:2.5rem}header h1{margin:0;font-size:1.8rem}header h1 a{color:#2c3e50;text-decoration:none;font-family:Cormorant Garamond,serif;display:flex;align-items:center;gap:10px}.global-nav{display:flex;gap:2rem}.global-nav a{font-size:1.1rem;font-weight:500;color:#7f8c8d;text-decoration:none;padding:.5rem 0;border-bottom:2px solid transparent;transition:all .2s ease;white-space:nowrap}.global-nav a:hover,.global-nav a.active{color:#2c3e50;border-bottom-color:#3498db}#user-profile{display:flex;align-items:center;gap:15px;white-space:nowrap}#loading-screen{width:100%;max-width:700px;padding:1.5rem 2rem;box-sizing:border-box;text-align:center}.icon-btn .icon-label{display:none}.profile-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:#2c3e50}#header-profile-image{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}#header-nickname{font-weight:700}#header-rating{color:#7f8c8d}.auth-btn{padding:10px 15px;border:none;background-color:var(--primary-color);color:#fff;border-radius:5px;cursor:pointer;font-weight:700;font-family:Noto Sans KR,sans-serif}#logout-btn{padding:10px 15px;border:none;background-color:#b2b7bb;color:#fff;border-radius:5px;cursor:pointer;font-weight:700;font-family:Noto Sans KR,sans-serif}#theme-toggle-btn{margin-right:10px;background-color:var(--card-background);color:var(--text-color);border:1px solid var(--border-color)}main{padding-top:1rem}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;box-sizing:border-box}#login-container,#profile-container{text-align:center;max-width:450px;width:100%}#login-container .logo svg path,#profile-container .logo svg path{fill:var(--text-color)}#login-container h1,#profile-container h1{font-size:3rem;color:var(--text-color)}#login-container p,#profile-container p{color:var(--text-muted-color);margin-bottom:2rem;font-size:1.1rem}#login-container .auth-btn,#profile-container button,#profile-form button{width:100%;padding:15px;font-size:1.1rem}#profile-form{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}#profile-form input,#profile-form select{width:100%;padding:12px;font-size:1rem;border:1px solid var(--border-color);background-color:#fff;color:var(--text-color);border-radius:5px;box-sizing:border-box;font-family:inherit}#profile-form select option{background-color:#fff;color:#000}.dashboard-main{text-align:center;padding:2rem 0}.menu-buttons{display:flex;justify-content:center;gap:2rem;margin-top:2rem;flex-wrap:wrap}.menu-btn{display:block;padding:2rem 3rem;font-size:1.5rem;font-weight:700;text-decoration:none;background:var(--card-background);color:var(--text-color);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.menu-btn:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a;border-color:var(--primary-color)}.menu-btn.disabled{background-color:#e9ecef;color:#adb5bd;cursor:not-allowed;border-color:#dee2e6}.menu-btn.disabled:hover{transform:none;box-shadow:none}.page-title-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-title-bar h2{margin:0}.btn-primary{padding:.75rem 1.5rem;font-size:1rem;font-weight:500;color:#fff;background-color:#3498db;border:none;border-radius:5px;cursor:pointer;text-decoration:none;display:inline-block;transition:background-color .2s ease}.btn-primary:hover{background-color:#2980b9}.btn-secondary{padding:.75rem 1.5rem;font-size:1rem;font-weight:500;color:#34495e;background-color:#ecf0f1;border:1px solid #bdc3c7;border-radius:5px;cursor:pointer;text-decoration:none;display:inline-block;transition:background-color .2s ease}.btn-secondary:hover{background-color:#dbe0e2}.btn-tertiary{padding:.75rem 1rem;font-size:.9rem;font-weight:500;color:#7f8c8d;background-color:transparent;border:1px solid #bdc3c7;border-radius:5px;cursor:pointer;text-decoration:none;transition:all .2s ease}.btn-tertiary:hover{background-color:#f8f9fa}.btn-green{padding:.75rem 1.5rem;font-size:1rem;font-weight:500;color:#fff;background-color:#4c974f;border:none;border-radius:5px;cursor:pointer;text-decoration:none;display:inline-block;transition:background-color .2s ease}.btn-green:hover{background-color:#337235}.profile-link-text{color:inherit;text-decoration:none;font-weight:600}.profile-link-text:hover{text-decoration:underline;color:var(--primary-color)}#user-profile{display:flex;align-items:center;gap:15px}.profile-link{display:flex;align-items:center;gap:10px;text-decoration:none;padding:5px 10px;border-radius:20px;transition:background-color .2s ease}.profile-link:hover{background-color:#ffffff1a}#header-profile-image{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color)}#header-nickname{color:var(--text-color);font-weight:700}#header-rating{color:var(--text-muted-color);font-size:.9rem;font-weight:700}@media (max-width: 768px){header{padding:1rem}.header-left{gap:1.5rem}.logo-text{display:none}header h1 a{gap:0}#header-nickname,#header-rating,.icon-btn .text-label{display:none}.icon-btn .icon-label{display:flex;align-items:center;justify-content:center}#logout-btn{padding:.5rem;width:40px;height:40px}#logout-btn svg{width:24px;height:24px}}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--border-color);border-radius:5px;box-sizing:border-box;font-family:inherit}.form-group textarea{min-height:120px;resize:vertical}#problem-form button[type=submit]{width:100%;margin-top:1rem}#form-status{margin-top:1rem;font-weight:700;text-align:center}.danger-btn{background-color:#fff;color:#a1a1a1;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-weight:700;transition:background-color .2s}.danger-btn:hover{background-color:#e94e3d;color:#fff}
