:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.header{position:fixed;top:0;left:0;right:0;background-color:var(--bg-primary);border-bottom:1px solid var(--border-color);box-shadow:0 2px 8px var(--shadow-light);z-index:1000;transition:all .3s ease}.header-content{max-width:1200px;margin:0 auto;padding:0 20px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.logo{display:flex;align-items:center;gap:8px;cursor:pointer;transition:transform .3s ease;flex-shrink:0}.nav-menu{display:flex;align-items:center;gap:.5rem;flex:1;justify-content:center}.nav-item{background:none;border:none;color:var(--text-secondary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.9rem;white-space:nowrap}.nav-item:hover{background-color:var(--bg-secondary);color:var(--text-primary);transform:translateY(-1px)}.nav-item.active{background-color:var(--primary-color);color:#fff;font-weight:500}.header-actions{flex-shrink:0}.logo:hover{transform:scale(1.05)}.logo-icon{font-size:24px}.logo-text{font-size:20px;font-weight:600;color:var(--text-primary);background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-actions{display:flex;align-items:center;gap:16px}.theme-toggle{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:var(--bg-accent);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500}.theme-toggle:hover{background-color:var(--bg-secondary);transform:translateY(-1px);box-shadow:0 2px 8px var(--shadow-light)}.theme-icon{font-size:16px}.theme-text{font-size:14px}.nav-item.admin-only{border:1px solid var(--primary-color);background-color:#ff6b6b1a}.nav-item.admin-only:hover{background-color:#ff6b6b33;border-color:var(--christmas-red)}.nav-item.admin-only.active{background-color:var(--christmas-red);border-color:var(--christmas-red)}.admin-info{display:flex;align-items:center;gap:10px;padding:6px 12px;background-color:#ff6b6b1a;border:1px solid var(--christmas-red);border-radius:20px}.admin-badge{font-size:14px;font-weight:600;color:var(--christmas-red)}.logout-button{background-color:var(--christmas-red);color:#fff;border:none;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease}.logout-button:hover{background-color:#dc143c;transform:translateY(-1px);box-shadow:0 2px 8px #dc143c4d}@media (max-width: 768px){.header-content{padding:0 16px;height:56px}.logo-text{font-size:18px}.theme-text{display:none}.theme-toggle{padding:6px 12px;border-radius:50%;width:40px;height:40px;justify-content:center}.nav-menu{gap:.25rem}.nav-item{padding:.4rem .6rem;font-size:.8rem}.admin-badge{font-size:12px}.logout-button{padding:3px 8px;font-size:11px}}:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-accent: #e9ecef;--text-primary: #212529;--text-secondary: #6c757d;--text-accent: #495057;--border-color: #dee2e6;--shadow-light: rgba(0, 0, 0, .1);--shadow-medium: rgba(0, 0, 0, .15);--shadow-heavy: rgba(0, 0, 0, .25);--primary-color: #667eea;--christmas-red: #dc3545;--christmas-green: #28a745;--christmas-gold: #ffc107}[data-theme=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-accent: #404040;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-accent: #d0d0d0;--border-color: #404040;--shadow-light: rgba(255, 255, 255, .1);--shadow-medium: rgba(255, 255, 255, .15);--shadow-heavy: rgba(255, 255, 255, .25);--primary-color: #8b9cff;--christmas-red: #ff6b7a;--christmas-green: #51c464;--christmas-gold: #ffd93d}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background-color .3s ease,color .3s ease}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-medium)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green));color:#fff}.btn-secondary{background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color)}.form-input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;background-color:var(--bg-primary);color:var(--text-primary);transition:border-color .3s ease}.form-input:focus{outline:none;border-color:var(--christmas-green)}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px;box-shadow:0 2px 8px var(--shadow-light);transition:all .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-medium)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.page-container{min-height:100vh;padding:80px 20px 40px}.app{min-height:100vh;width:100%;display:flex;flex-direction:column}.app main{flex:1;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out}@media (max-width: 768px){.container{padding:0 16px}.page-container{padding:60px 16px 20px}.btn{padding:10px 20px;font-size:14px}}.portal-container{min-height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;position:fixed;inset:0;overflow:auto}.portal-container:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 1px,transparent 1px);background-size:50px 50px;animation:snowfall 20s linear infinite}@keyframes snowfall{0%{transform:translateY(0)}to{transform:translateY(50px)}}.portal-content{max-width:1400px;width:100%;z-index:1;display:flex;flex-direction:column;gap:40px}.portal-header{text-align:center;color:#fff}.portal-title{font-size:4rem;font-weight:700;margin-bottom:15px;text-shadow:2px 2px 4px rgba(0,0,0,.2);animation:fadeInDown .8s ease-out}.portal-subtitle{font-size:1.8rem;font-weight:300;margin-bottom:20px;opacity:.9;animation:fadeInDown .8s ease-out .2s backwards}.portal-description{font-size:1.3rem;opacity:.85;animation:fadeInDown .8s ease-out .4s backwards;margin-top:10px}.portal-cards{display:flex;justify-content:center;align-items:stretch;gap:40px;flex-wrap:wrap}.portal-card{background:#fff;border-radius:24px;padding:50px 40px;text-align:center;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 40px #0003;animation:fadeInUp .8s ease-out;position:relative;overflow:hidden;flex:1 1 450px;min-width:400px;max-width:550px}.portal-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,transparent 0%,rgba(0,0,0,.05) 100%);opacity:0;transition:opacity .3s ease}.portal-card:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);opacity:0;transition:opacity .5s ease}.portal-card:hover:before{opacity:1}.portal-card:hover:after{opacity:1;animation:shimmer 1.5s ease-in-out}@keyframes shimmer{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(0) scale(1)}}.portal-card:hover{transform:translateY(-15px) scale(1.05);box-shadow:0 25px 60px #00000059}.user-card{animation-delay:.2s;border-top:6px solid #4CAF50}.admin-card{animation-delay:.4s;border-top:6px solid #FF6B6B}.card-icon{font-size:5rem;margin-bottom:25px;filter:drop-shadow(3px 3px 8px rgba(0,0,0,.15));transition:transform .3s ease}.portal-card:hover .card-icon{transform:scale(1.1) rotate(5deg)}.portal-card h2{font-size:2rem;margin-bottom:15px;color:#333;font-weight:700}.portal-card>p{font-size:1.1rem;color:#666;margin-bottom:30px;line-height:1.6}.card-features{display:flex;flex-direction:column;gap:12px;margin-bottom:35px;padding:25px 0;border-top:2px solid #eee;border-bottom:2px solid #eee}.card-features span{font-size:1rem;color:#555;text-align:left;padding-left:15px;position:relative;transition:all .3s ease}.card-features span:before{content:"•";position:absolute;left:0;color:#4caf50;font-weight:700}.user-card .card-features span:before{color:#4caf50}.admin-card .card-features span:before{color:#ff6b6b}.portal-button{width:100%;padding:18px 35px;font-size:1.2rem;font-weight:700;border:none;border-radius:14px;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);text-transform:uppercase;letter-spacing:1.5px;position:relative;overflow:hidden}.portal-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.portal-button:hover:before{width:300px;height:300px}.user-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.user-button:hover{background:linear-gradient(135deg,#45a049,#3d8b40);transform:scale(1.05)}.admin-button{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}.admin-button:hover{background:linear-gradient(135deg,#ee5a6f,#dc4c64);transform:scale(1.05)}.portal-footer{text-align:center;color:#fff;opacity:.8;animation:fadeIn 1s ease-out .8s backwards}.portal-footer p{font-size:1rem;margin:0}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 1200px){.portal-container{padding:40px 30px}.portal-content{max-width:1000px}.portal-card{min-width:320px;max-width:450px}}@media (max-width: 768px){.portal-container{padding:30px 20px}.portal-title{font-size:2.8rem}.portal-subtitle{font-size:1.4rem}.portal-description{font-size:1.1rem}.portal-cards{flex-direction:column;gap:25px}.portal-card{padding:40px 30px;min-width:unset;max-width:unset;width:100%}.card-icon{font-size:4rem}.portal-card h2{font-size:1.7rem}.portal-card>p{font-size:1rem}.card-features span{font-size:.95rem}.portal-button{padding:16px 30px;font-size:1.1rem}}@media (max-width: 480px){.portal-title{font-size:2.2rem}.portal-subtitle{font-size:1.1rem}.portal-card{padding:30px 20px}.card-icon{font-size:3.5rem}.portal-card h2{font-size:1.5rem}}@media (min-width: 1200px){.portal-cards{flex-wrap:nowrap}.portal-card{flex:1 1 0;min-width:0}}[data-theme=dark] .portal-card{background:#2d2d2d;color:#fff}[data-theme=dark] .portal-card h2{color:#fff}[data-theme=dark] .portal-card>p,[data-theme=dark] .card-features span{color:#ccc}[data-theme=dark] .card-features{border-top-color:#444;border-bottom-color:#444}.home-container{min-height:100vh;padding:80px 20px 40px;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:60px}.hero-section{text-align:center;animation:fadeIn .8s ease-out}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:16px;background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green),var(--christmas-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.hero-subtitle{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.admin-welcome{margin-top:20px;display:flex;justify-content:center}.admin-badge-hero{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;border-radius:20px;font-weight:600;font-size:1rem;box-shadow:0 4px 12px #ff6b6b4d;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.action-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;width:100%;max-width:1400px}.action-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;padding:40px 30px;text-align:center;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;flex:1 1 280px;min-width:280px;max-width:350px}.action-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.action-card:hover:before{left:100%}.action-card:hover{transform:translateY(-12px) scale(1.03);box-shadow:0 16px 48px var(--shadow-medium);border-color:var(--christmas-green)}.card-icon{font-size:3.5rem;margin-bottom:20px;display:block;transition:transform .3s ease}.action-card:hover .card-icon{transform:scale(1.1) rotate(5deg)}.action-card h3{font-size:1.6rem;font-weight:700;margin-bottom:14px;color:var(--text-primary)}.action-card p{color:var(--text-secondary);line-height:1.7;font-size:1rem}.action-card.admin-card{border:2px solid var(--christmas-red);background:linear-gradient(135deg,#ff6b6b0d,#ee5a6f0d);position:relative}.action-card.admin-card:after{content:"";position:absolute;top:0;right:0;width:60px;height:60px;background:linear-gradient(135deg,var(--christmas-red),#ee5a6f);clip-path:polygon(100% 0,0 0,100% 100%);opacity:.2}.action-card.admin-card:hover{border-color:var(--christmas-red);box-shadow:0 12px 32px #ff6b6b4d;transform:translateY(-8px) scale(1.02)}.admin-badge-card{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;box-shadow:0 2px 8px #ff6b6b4d}.action-card:nth-child(1):hover{border-color:var(--christmas-red)}.action-card:nth-child(2):hover{border-color:var(--christmas-green)}.action-card:nth-child(3):hover{border-color:var(--christmas-gold)}.action-card:nth-child(4):hover{border-color:var(--christmas-red)}@media (max-width: 768px){.home-container{padding:60px 16px 20px;gap:40px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.action-cards{grid-template-columns:1fr;gap:16px}.action-card{padding:24px 20px}.card-icon{font-size:2.5rem}.action-card h3{font-size:1.3rem}}.match-container{min-height:100vh;padding:80px 20px 40px;max-width:1200px;margin:0 auto}.match-container h2{text-align:center;font-size:2.5rem;margin-bottom:40px;color:var(--text-primary)}.pool-selection{margin-bottom:40px}.pool-selection h3{font-size:1.5rem;margin-bottom:20px;color:var(--text-primary)}.pools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.pool-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:24px;cursor:pointer;transition:all .3s ease;position:relative}.pool-card:hover:not(.disabled){border-color:var(--christmas-green);transform:translateY(-2px);box-shadow:0 4px 16px var(--shadow-light)}.pool-card.selected{border-color:var(--christmas-green);background-color:var(--bg-primary);box-shadow:0 4px 16px var(--shadow-medium)}.pool-card.disabled{opacity:.6;cursor:not-allowed}.pool-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.pool-status{padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff}.pool-description{color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.pool-meta{display:flex;flex-direction:column;gap:8px}.meta-item{display:flex;justify-content:space-between;font-size:.9rem}.meta-label{color:var(--text-secondary)}.meta-value{color:var(--text-primary);font-weight:500}.match-section{background-color:var(--bg-secondary);border-radius:12px;padding:24px;margin-bottom:24px}.selected-pool-info{margin-bottom:20px}.selected-pool-info h3{color:var(--text-primary);margin-bottom:8px}.selected-pool-info p{color:var(--text-secondary);margin-bottom:4px}.match-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green));color:#fff;border:none;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.match-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-medium)}.match-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}.matching-process{background-color:var(--bg-accent);border-radius:8px;padding:20px;text-align:center}.matching-process h4{color:var(--text-primary);margin-bottom:16px}.matching-process p{color:var(--text-secondary);margin-bottom:8px;font-size:.9rem}.match-result{text-align:center;animation:fadeIn .8s ease-out}.match-result h2{color:var(--christmas-green);margin-bottom:24px}.result-header{background-color:var(--bg-secondary);border-radius:12px;padding:24px;margin-bottom:32px}.result-header h3{color:var(--text-primary);margin-bottom:8px}.result-header p{color:var(--text-secondary);margin-bottom:4px}.pairs-list{display:grid;gap:16px;margin-bottom:32px}.pair-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.pair-header h4{color:var(--text-primary);margin:0}.user-info{background-color:var(--bg-primary);border-radius:8px;padding:16px;min-width:200px;text-align:center}.user-info h5{color:var(--text-primary);margin-bottom:8px}.user-data p{color:var(--text-secondary);font-size:.9rem;margin-bottom:4px}.pair-arrow{font-size:1.5rem;color:var(--christmas-green)}.user-alone{background-color:var(--christmas-gold);color:var(--bg-primary);padding:12px 20px;border-radius:20px;font-weight:600}.result-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.secondary-btn{background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color);padding:12px 24px;border-radius:8px;font-size:16px;cursor:pointer;transition:all .3s ease}.secondary-btn:hover{background-color:var(--bg-secondary);transform:translateY(-2px)}.cooldown-notice{display:flex;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;background:#3498db1a;border:1px solid rgba(52,152,219,.3);border-radius:6px;color:#3498db;font-size:.9rem}.cooldown-icon{font-size:1.1rem}.pool-status.matched{background:#f39c12}.pool-card.disabled .cooldown-notice{background:#e74c3c1a;border-color:#e74c3c4d;color:#e74c3c}.form-hint{display:block;margin-top:4px;color:#7f8c8d;font-size:.85rem;font-style:italic}.users-result{margin-bottom:32px}.users-result h3{color:var(--text-primary);margin-bottom:20px;font-size:1.5rem}.user-info{min-width:200px}.user-details,.partner-details{display:flex;flex-direction:column;gap:4px}.partner-info strong{color:var(--christmas-green);font-size:1rem;display:block;margin-bottom:8px}.match-details{text-align:center}.alone-indicator{color:var(--christmas-red);font-weight:600}.paired-indicator{color:var(--christmas-green);font-weight:600}@media (max-width: 768px){.match-container{padding:60px 16px 20px}.pools-grid{grid-template-columns:1fr}.pair-content{flex-direction:column;gap:12px}.user-info{min-width:auto;width:100%}.result-actions{flex-direction:column}.users-table-container{padding:12px}.users-table{font-size:.8rem}.users-table th,.users-table td{padding:8px 12px}.pagination-controls{flex-wrap:wrap;gap:8px}.page-numbers{order:-1;width:100%;justify-content:center}}.history-container{min-height:100vh;padding:80px 20px 40px;max-width:1200px;margin:0 auto}.history-container h2{text-align:center;font-size:2.5rem;margin-bottom:40px;color:var(--text-primary)}.records-list{width:100%}.empty-state{text-align:center;padding:60px 20px;background-color:var(--bg-secondary);border-radius:16px}.empty-icon{font-size:4rem;margin-bottom:16px}.empty-state h3{color:var(--text-primary);margin-bottom:8px}.empty-state p{color:var(--text-secondary)}.records-grid{display:grid;gap:20px}.record-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px;transition:all .3s ease;display:flex;align-items:center;gap:16px}.record-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px var(--shadow-light)}.record-actions{display:flex;gap:8px;margin-left:auto}.delete-btn{background:transparent;border:1px solid #dc3545;color:#dc3545;font-size:1.2rem;width:40px;height:40px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.delete-btn:hover{background-color:#dc3545;transform:scale(1.1)}.record-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.record-header h3{margin:0;color:var(--text-primary);font-size:1.3rem}.record-status{padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600;color:#fff}.record-status.completed{background-color:var(--christmas-green)}.record-status.in_progress{background-color:var(--christmas-gold);color:var(--bg-primary)}.record-info{margin-bottom:20px}.info-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.9rem}.info-label{color:var(--text-secondary)}.info-value{color:var(--text-primary);font-weight:500}.record-actions{display:flex;gap:12px}.view-btn{background-color:var(--christmas-green);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease}.view-btn:hover{background-color:#218838;transform:translateY(-1px)}.export-btn{background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease}.export-btn:hover{background-color:var(--bg-secondary);transform:translateY(-1px)}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap;gap:16px}.detail-header h2{margin:0;font-size:2rem;text-align:left}.back-btn{background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.back-btn:hover{background-color:var(--bg-secondary);transform:translateY(-1px)}.detail-info{background-color:var(--bg-secondary);border-radius:12px;padding:24px;margin-bottom:32px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{color:var(--text-secondary);font-size:.9rem}.info-value{color:var(--text-primary);font-weight:600}.pairs-detail h3{margin-bottom:20px;color:var(--text-primary)}.pairs-list{display:grid;gap:16px}.pair-detail-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.pair-header{text-align:center;margin-bottom:16px}.pair-header h4{margin:0;color:var(--text-primary)}.pair-content{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}.user-detail{background-color:var(--bg-primary);border-radius:8px;padding:16px;min-width:200px;text-align:center;flex:1;max-width:300px}.user-detail h5{color:var(--text-primary);margin-bottom:12px;font-size:1.1rem}.user-data{text-align:left}.user-data p{color:var(--text-secondary);font-size:.9rem;margin-bottom:8px;display:flex;align-items:center;gap:8px}.user-data strong{color:var(--text-accent);min-width:40px}.pair-arrow{font-size:1.5rem;color:var(--christmas-green);flex-shrink:0}.user-alone{background-color:var(--christmas-gold);color:var(--bg-primary);padding:16px 24px;border-radius:20px;font-weight:600;text-align:center}@media (max-width: 768px){.history-container{padding:60px 16px 20px}.history-container h2{font-size:2rem}.detail-header{flex-direction:column;align-items:stretch}.detail-header h2{text-align:center}.info-grid{grid-template-columns:1fr}.pair-content{flex-direction:column;gap:12px}.user-detail{min-width:auto;max-width:none;width:100%}.record-actions{justify-content:center}}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.admin-controls{display:flex;align-items:center;gap:12px}.admin-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:600}.logout-button{background:var(--color-secondary);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.logout-button:hover{background:#c0392b}.privacy-notice{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;padding:16px;border-radius:12px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.privacy-notice p{margin:0;font-weight:500}.admin-link{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.admin-link:hover{background:#ffffff4d}.pair-detail-card.anonymous{border:2px solid var(--color-primary)}.user-detail.current-user{border:2px solid #27ae60;background:#27ae601a}.user-detail.matched-user{border:2px solid #e74c3c;background:#e74c3c1a}.anonymous-data p{position:relative}.surprise-hint{text-align:center;margin-top:12px;padding:8px;background:#ffffff80;border-radius:6px}.surprise-hint small{color:#7f8c8d;font-style:italic}.admin-pair{border:2px solid #8e44ad;background:#8e44ad0d}.details-header .admin-notice{color:#8e44ad;font-weight:600;font-size:.9rem}.user-views{display:flex;flex-direction:column;gap:16px}.user-view-card{background:#fffc;border:2px solid var(--color-primary);border-radius:12px;padding:16px;margin-bottom:12px}.user-view-header{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #ecf0f1}.user-view-header h5{margin:0;color:var(--color-primary);font-size:1.1rem}.match-info{margin-top:12px}.partner-info h6{margin:0 0 8px;color:#e74c3c;font-size:1rem}.partner-data{background:#e74c3c0d;padding:12px;border-radius:8px;border-left:4px solid #e74c3c}.partner-data p{margin:4px 0;font-size:.95rem}.hidden-field{color:#95a5a6;font-style:italic}.no-match{text-align:center;padding:20px;background:#f39c121a;border-radius:8px;color:#f39c12}.surprise-hint{text-align:center;margin-top:8px;padding:6px;background:#fff9;border-radius:4px}.surprise-hint small{color:#7f8c8d;font-style:italic;font-size:.8rem}.primary-field{background:#27ae601a;border:2px solid #27ae60}.field-primary{background:#27ae60;color:#fff;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600}.users-history-result{margin-bottom:32px}.users-table-container{background-color:var(--bg-secondary);border-radius:12px;padding:20px;overflow-x:auto;margin-bottom:20px}.users-table{width:100%;border-collapse:collapse;font-size:.9rem}.users-table th{background-color:var(--bg-primary);color:var(--text-primary);font-weight:600;padding:12px 16px;text-align:left;border-bottom:2px solid var(--border-color)}.users-table td{padding:16px;border-bottom:1px solid var(--border-color);vertical-align:top}.users-table tr:hover{background-color:var(--bg-primary)}.user-info{min-width:120px}.user-info strong{color:var(--text-primary);font-size:1rem;display:block;margin-bottom:8px}.partner-details{display:flex;flex-direction:column;gap:4px}.detail-item{display:flex;gap:8px;font-size:.85rem}.detail-key{color:var(--text-secondary);font-weight:500;min-width:60px}.detail-value{color:var(--text-primary);flex:1}.partner-info{min-width:200px}.anonymity-notice{margin-top:8px;padding:4px 8px;background-color:#3498db1a;border-radius:4px;border-left:3px solid #3498db}.anonymity-notice small{color:#3498db;font-style:italic}.no-partner{color:var(--text-secondary);font-style:italic}.user-status{text-align:center}.status-alone{background-color:#e74c3c1a;color:var(--christmas-red);padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600}.status-paired{background-color:#2ecc711a;color:var(--christmas-green);padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600}.pagination{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:20px}.pagination-info{color:var(--text-secondary);font-size:.9rem}.pagination-controls{display:flex;align-items:center;gap:12px}.pagination-btn{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;padding:8px 16px;cursor:pointer;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background-color:var(--christmas-green);color:#fff;border-color:var(--christmas-green)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.page-numbers{display:flex;gap:4px}.page-number{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:8px 12px;cursor:pointer;transition:all .3s ease;min-width:40px;text-align:center}.page-number:hover{background-color:var(--christmas-green);color:#fff;border-color:var(--christmas-green)}.page-number.active{background-color:var(--christmas-green);color:#fff;border-color:var(--christmas-green);font-weight:600}.match-details-container{background-color:var(--bg-secondary);border-radius:16px;padding:32px;margin-top:24px}.back-btn{background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 20px;border-radius:8px;font-size:16px;cursor:pointer;transition:all .3s ease;margin-bottom:24px}.back-btn:hover{background-color:var(--bg-secondary);transform:translate(-4px)}.match-date{color:var(--text-secondary);font-size:14px;margin-bottom:24px}.match-info{margin-top:24px}.your-match-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:32px;color:#fff;box-shadow:0 8px 16px #0003}.your-match-card h4{font-size:1.8rem;margin-bottom:24px;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.2)}.partner-details{background-color:#ffffff1a;border-radius:12px;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.detail-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.2)}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;opacity:.9;text-transform:capitalize}.detail-value{font-weight:400;opacity:.95;text-align:right;max-width:60%;word-break:break-word}.privacy-note{margin-top:24px;padding:16px;background-color:#ffffff26;border-radius:8px;text-align:center}.privacy-note p{margin:0;font-size:14px;opacity:.9}.view-details-btn{background-color:var(--christmas-green);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s ease;margin-top:16px}.view-details-btn:hover{background-color:#218838;transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.register-container{min-height:100vh;padding:80px 20px 40px;max-width:800px;margin:0 auto;display:flex;align-items:center;justify-content:center}.register-card{width:100%;background-color:var(--bg-primary);border-radius:20px;box-shadow:0 10px 40px var(--shadow-medium);padding:40px;animation:fadeInUp .6s ease-out}.register-title{text-align:center;font-size:2.5rem;margin-bottom:30px;color:var(--text-primary);background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tab-container{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--border-color)}.tab-button{flex:1;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.tab-button:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.tab-button.active{color:var(--christmas-green);border-bottom-color:var(--christmas-green)}.message{padding:15px 20px;border-radius:10px;margin-bottom:20px;font-weight:500;animation:slideInDown .4s ease-out}.error-message{background-color:#dc35451a;border:1px solid var(--christmas-red);color:var(--christmas-red)}.success-message{background-color:#28a7451a;border:1px solid var(--christmas-green);color:var(--christmas-green)}.register-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:var(--text-primary);font-size:.95rem}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border:2px solid var(--border-color);border-radius:10px;font-size:1rem;background-color:var(--bg-secondary);color:var(--text-primary);transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--christmas-green);box-shadow:0 0 0 3px #28a7451a}.form-group small{color:var(--text-secondary);font-size:.85rem}.form-group textarea{resize:vertical;font-family:Courier New,monospace}.admin-notice{background:linear-gradient(135deg,#ff6b6b1a,#ee5a6f1a);border:2px solid var(--christmas-red);border-radius:10px;padding:12px 20px;display:flex;align-items:center;gap:10px;font-weight:600;color:var(--christmas-red);margin-bottom:20px}.admin-icon{font-size:1.5rem}.submit-button{padding:15px 30px;background:linear-gradient(135deg,var(--christmas-green),#20a037);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #28a7454d}.submit-button:disabled{opacity:.6;cursor:not-allowed}.submit-button.admin-button{background:linear-gradient(135deg,var(--christmas-red),#dc143c)}.submit-button.admin-button:hover:not(:disabled){box-shadow:0 8px 20px #dc35454d}.register-footer{margin-top:30px;text-align:center;padding-top:20px;border-top:1px solid var(--border-color)}.back-button{padding:10px 24px;background-color:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color);border-radius:10px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.back-button:hover{background-color:var(--bg-accent);border-color:var(--text-secondary);transform:translate(-5px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.register-container{padding:60px 16px 20px}.register-card{padding:24px}.register-title{font-size:2rem}.tab-button{font-size:.95rem;padding:10px 12px}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;font-size:.95rem}.submit-button{padding:12px 24px;font-size:1rem}}.entry-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:40px}.entry-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:32px;text-align:center;cursor:pointer;transition:all .3s ease}.entry-card:hover{border-color:var(--christmas-green);transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-medium)}.entry-icon{font-size:3rem;margin-bottom:16px}.entry-card h3{font-size:1.5rem;margin-bottom:12px;color:var(--text-primary)}.entry-card p{color:var(--text-secondary);line-height:1.6}.pool-form{background-color:var(--bg-secondary);border-radius:16px;padding:32px;box-shadow:0 4px 16px var(--shadow-light)}.form-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border-color)}.form-section:last-of-type{border-bottom:none}.form-section h3{font-size:1.3rem;margin-bottom:16px;color:var(--text-primary)}.section-note{color:var(--text-secondary);font-size:.9rem;margin-bottom:20px}.field-config{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:20px;margin-bottom:16px}.field-header{display:flex;justify-content:between;align-items:center;margin-bottom:16px}.field-header h4{margin:0;color:var(--text-primary)}.remove-field-btn{background-color:var(--christmas-red);color:#fff;border:none;padding:4px 12px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .3s ease}.remove-field-btn:hover{background-color:#c82333}.field-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:16px;align-items:end}.add-field-btn{background-color:var(--christmas-green);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s ease;margin-top:16px}.add-field-btn:hover{background-color:#218838}.pool-list{display:grid;gap:16px;margin-bottom:32px}.pool-card{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:24px;cursor:pointer;transition:all .3s ease}.pool-card:hover{border-color:var(--christmas-green);transform:translateY(-2px);box-shadow:0 4px 16px var(--shadow-light)}.pool-card h3{margin-bottom:8px;color:var(--text-primary)}.pool-card p{color:var(--text-secondary);margin-bottom:12px}.pool-meta{display:flex;gap:24px;font-size:.9rem;color:var(--text-secondary)}.pool-info{background-color:var(--bg-accent);border-radius:8px;padding:16px;margin-bottom:24px}.pool-info p{margin-bottom:8px;color:var(--text-secondary)}.user-form{background-color:var(--bg-secondary);border-radius:16px;padding:32px;box-shadow:0 4px 16px var(--shadow-light)}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400;margin-bottom:0}.button-group{display:flex;gap:16px;justify-content:flex-end;margin-top:24px}.primary-btn{background-color:var(--christmas-green);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.primary-btn:hover{background-color:#218838;transform:translateY(-2px)}.register-form{background-color:var(--bg-secondary);border-radius:16px;padding:32px;box-shadow:0 4px 16px var(--shadow-light)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;background-color:var(--bg-primary);color:var(--text-primary);transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--christmas-green)}.gender-options{display:flex;gap:16px;margin-top:8px}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.radio-label input[type=radio]{width:auto;margin:0}.interests-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;margin-top:8px}.interest-btn{padding:8px 16px;border:2px solid var(--border-color);border-radius:20px;background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-size:14px}.interest-btn:hover{border-color:var(--christmas-green);transform:translateY(-2px)}.interest-btn.selected{background-color:var(--christmas-green);border-color:var(--christmas-green);color:#fff}.form-group small{color:var(--text-secondary);font-size:14px;margin-top:4px;display:block}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--christmas-red),var(--christmas-green));color:#fff;border:none;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:16px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-medium)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.register-container{padding:60px 16px 20px}.register-container h2{font-size:2rem}.register-form{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.gender-options{flex-direction:column;gap:8px}.interests-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.success-message{padding:40px 24px}}.custom-fields-section{margin-top:30px;padding-top:30px;border-top:2px solid var(--border-color)}.custom-fields-section h3{font-size:1.3rem;margin-bottom:10px;color:var(--text-primary)}.field-note{font-size:.9rem;color:var(--text-secondary);margin-bottom:20px;padding:10px 15px;background-color:#28a7451a;border-left:3px solid var(--christmas-green);border-radius:5px}.custom-field-item{background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:20px;margin-bottom:15px}.field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.field-header h4{font-size:1.1rem;color:var(--text-primary);margin:0}.remove-field-btn{background-color:var(--christmas-red);color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .3s ease}.remove-field-btn:hover{background-color:#dc143c;transform:scale(1.05)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:10px}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.add-field-btn{width:100%;padding:12px 20px;background:linear-gradient(135deg,var(--primary-color),#5a6fd8);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-top:10px}.add-field-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea4d}@media (max-width: 768px){.field-row{grid-template-columns:1fr}.custom-field-item{padding:15px}}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;position:relative;overflow:hidden}.admin-login-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.admin-login-content{background:#fff;border-radius:24px;padding:48px 40px;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d;position:relative;z-index:1;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.admin-icon{font-size:4rem;margin-bottom:16px;animation:bounce 1s ease-in-out infinite}.login-header h1{font-size:2rem;font-weight:700;color:#333;margin-bottom:8px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:#666;font-size:1rem}.login-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{display:flex;align-items:center;gap:8px;font-weight:600;color:#333;font-size:.95rem}.label-icon{font-size:1.2rem}.form-group input{padding:14px 16px;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;transition:all .3s ease;background-color:#f8f9fa}.form-group input:focus{outline:none;border-color:#667eea;background-color:#fff;box-shadow:0 0 0 4px #667eea1a}.form-group input:disabled{background-color:#f0f0f0;cursor:not-allowed}.error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#ffe5e5;border:1px solid #ffcccc;border-radius:12px;color:#d32f2f;font-size:.9rem;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.error-icon{font-size:1.2rem}.login-button{padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:10px}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#6a3f8f);transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed}.spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{margin-top:24px;text-align:center}.back-button{background:none;border:none;color:#667eea;font-size:.95rem;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .3s ease}.back-button:hover:not(:disabled){background-color:#667eea1a;transform:translate(-4px)}.back-button:disabled{opacity:.5;cursor:not-allowed}.login-decoration{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;overflow:hidden}.decoration-item{position:absolute;font-size:2rem;opacity:.2;animation:float 6s ease-in-out infinite}.decoration-item:nth-child(1){top:10%;left:10%;animation-delay:0s}.decoration-item:nth-child(2){top:20%;right:15%;animation-delay:1s}.decoration-item:nth-child(3){bottom:15%;left:15%;animation-delay:2s}.decoration-item:nth-child(4){bottom:20%;right:10%;animation-delay:3s}.decoration-item:nth-child(5){top:50%;right:5%;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(10deg)}}@media (max-width: 768px){.admin-login-content{padding:36px 24px}.login-header h1{font-size:1.75rem}.admin-icon{font-size:3rem}.form-group input{padding:12px 14px}.login-button{padding:12px 20px;font-size:1rem}}[data-theme=dark] .admin-login-content{background:#2d2d2d}[data-theme=dark] .login-header h1,[data-theme=dark] .form-group label{color:#fff}[data-theme=dark] .login-header p{color:#ccc}[data-theme=dark] .form-group input{background-color:#3d3d3d;border-color:#555;color:#fff}[data-theme=dark] .form-group input:focus{background-color:#4d4d4d}.admin-pools-container{min-height:100vh;padding:80px 20px 40px;max-width:1400px;margin:0 auto}.admin-pools-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.admin-pools-header h2{font-size:2.5rem;color:var(--text-primary);margin:0}.admin-controls{display:flex;gap:12px;align-items:center}.admin-badge{background:linear-gradient(135deg,var(--christmas-red),var(--christmas-gold));color:#fff;padding:8px 16px;border-radius:20px;font-size:.9rem;font-weight:600}.logout-button,.create-pool-btn{padding:10px 20px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.logout-button{background-color:var(--christmas-red);color:#fff}.logout-button:hover{background-color:#a31a1a;transform:translateY(-2px)}.create-pool-btn{background-color:var(--christmas-green);color:#fff}.create-pool-btn:hover{background-color:#0d6832;transform:translateY(-2px)}.error-message{background-color:#fee;border:1px solid var(--christmas-red);color:var(--christmas-red);padding:16px;border-radius:8px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.error-message button{background:none;border:none;color:var(--christmas-red);font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px}.admin-pools-content{display:grid;grid-template-columns:1fr 1fr;gap:30px}.pools-list{background-color:var(--bg-secondary);border-radius:16px;padding:24px}.pools-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pools-list-header h3{margin:0;color:var(--text-primary);font-size:1.5rem}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.pools-grid{display:grid;gap:16px}.pool-card{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:12px;padding:20px;transition:all .3s ease;display:flex;align-items:center;gap:16px;cursor:pointer}.pool-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px var(--shadow-light)}.pool-card.selected{border-color:var(--christmas-green);background-color:#107c410d}.pool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pool-header h4{margin:0;color:var(--text-primary);font-size:1.2rem}.pool-status{padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600;color:#fff}.pool-status.active{background-color:var(--christmas-green)}.pool-status.matched{background-color:var(--christmas-gold);color:var(--bg-primary)}.pool-status.expired{background-color:#666}.pool-description{color:var(--text-secondary);margin:8px 0;font-size:.9rem}.pool-info{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--text-secondary)}.pool-actions{display:flex;gap:8px;margin-left:auto}.pool-details{background-color:var(--bg-secondary);border-radius:16px;padding:24px;max-height:80vh;overflow-y:auto}.details-header{margin-bottom:24px}.details-header h3{margin:0;color:var(--text-primary);font-size:1.5rem}.loading{text-align:center;padding:40px;color:var(--text-secondary);font-size:1.1rem}.users-list{display:grid;gap:16px}.user-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:all .3s ease}.user-card:hover{box-shadow:0 2px 8px var(--shadow-light)}.user-info{flex:1}.user-info h5{margin:0 0 12px;color:var(--text-primary);font-size:1.1rem}.user-data{display:grid;gap:8px;margin-bottom:12px}.data-item{display:flex;gap:8px;font-size:.9rem}.data-key{color:var(--text-secondary);font-weight:600;min-width:100px}.data-value{color:var(--text-primary)}.join-date{font-size:.85rem;color:var(--text-secondary);font-style:italic}.delete-user-btn{background-color:transparent;border:2px solid var(--christmas-red);color:var(--christmas-red);padding:8px 16px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.delete-user-btn:hover{background-color:var(--christmas-red);color:#fff;transform:scale(1.05)}@media (max-width: 1024px){.admin-pools-content{grid-template-columns:1fr}.pool-details{max-height:none}}@media (max-width: 768px){.admin-pools-header{flex-direction:column;align-items:flex-start;gap:16px}.admin-controls{flex-wrap:wrap}.pools-list-header{flex-direction:column;align-items:flex-start;gap:12px}.pool-card{flex-direction:column;align-items:flex-start}.pool-actions{width:100%;justify-content:flex-end}.user-card{flex-direction:column;align-items:flex-start}.delete-user-btn{width:100%}}.remove-container{min-height:100vh;padding:80px 20px 40px;max-width:800px;margin:0 auto;display:flex;align-items:center;justify-content:center}.remove-notice{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);border:2px solid var(--border-color);border-radius:24px;padding:48px;box-shadow:0 8px 32px var(--shadow-light);text-align:center;max-width:600px;width:100%}.notice-icon{font-size:4rem;margin-bottom:24px;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.remove-notice h2{font-size:2rem;margin-bottom:16px;color:var(--text-primary)}.notice-description{font-size:1.1rem;color:var(--text-secondary);margin-bottom:32px;line-height:1.6}.notice-description strong{color:var(--christmas-green);font-weight:700}.notice-features{background-color:var(--bg-primary);border-radius:16px;padding:24px;margin-bottom:32px;text-align:left}.feature-item{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:1rem;color:var(--text-primary)}.feature-item:not(:last-child){border-bottom:1px solid var(--border-color)}.feature-icon{font-size:1.2rem;flex-shrink:0}.notice-actions{display:flex;flex-direction:column;gap:16px;align-items:center}.primary-button{background:linear-gradient(135deg,var(--christmas-green),#0d6832);color:#fff;border:none;padding:14px 32px;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #107c414d}.primary-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #107c4166}.auto-redirect{font-size:.9rem;color:var(--text-secondary);font-style:italic;margin:0}.auth-notice{font-size:1rem;color:var(--christmas-red);font-weight:600;margin:0 0 8px}@media (max-width: 768px){.remove-notice{padding:32px 24px}.remove-notice h2{font-size:1.5rem}.notice-description{font-size:1rem}.feature-item{font-size:.9rem}}.warning-box ul{list-style:none;margin:0;padding:0}.warning-box li{color:#856404;margin-bottom:8px;padding-left:16px;position:relative}[data-theme=dark] .warning-box li{color:#d4c077}.warning-box li:before{content:"•";position:absolute;left:0}.search-section{margin-bottom:32px}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-primary)}.search-input-group{display:flex;gap:12px}.search-input-group input{flex:1;padding:12px 16px;border:2px solid var(--border-color);border-radius:8px;font-size:16px;background-color:var(--bg-primary);color:var(--text-primary);transition:border-color .3s ease}.search-input-group input:focus{outline:none;border-color:var(--christmas-green)}.search-btn{padding:12px 24px;background-color:var(--christmas-green);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.search-btn:hover:not(:disabled){background-color:#218838;transform:translateY(-2px)}.search-btn:disabled{opacity:.6;cursor:not-allowed}.user-info-section{animation:fadeIn .6s ease-out}.user-info-section h3{margin-bottom:16px;color:var(--text-primary)}.user-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin-bottom:24px;display:flex;align-items:center;gap:16px}.user-avatar{font-size:2.5rem;flex-shrink:0}.user-details h4{margin-bottom:8px;color:var(--text-primary)}.user-details p{margin-bottom:4px;color:var(--text-secondary);font-size:14px}.status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.status.active{background-color:#d4edda;color:#155724}[data-theme=dark] .status.active{background-color:#1e3d2b;color:#51c464}.confirm-section{margin-top:32px}.confirm-box{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:12px;padding:24px}[data-theme=dark] .confirm-box{background-color:#2d1f20;border-color:#3d2a2b}.confirm-box h4{color:#721c24;margin-bottom:12px}[data-theme=dark] .confirm-box h4{color:#ff6b7a}.confirm-box p{color:#721c24;margin-bottom:20px}[data-theme=dark] .confirm-box p{color:#d69ca5}.button-group{display:flex;gap:12px;justify-content:flex-end}.cancel-btn{padding:10px 20px;background-color:var(--bg-accent);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s ease}.cancel-btn:hover{background-color:var(--bg-secondary)}.remove-btn{padding:10px 20px;background-color:var(--christmas-red);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.remove-btn:hover:not(:disabled){background-color:#c82333;transform:translateY(-2px)}.remove-btn:disabled{opacity:.6;cursor:not-allowed}.success-message{text-align:center;padding:60px 32px;background-color:var(--bg-secondary);border-radius:16px;box-shadow:0 4px 16px var(--shadow-light);animation:fadeIn .8s ease-out}.success-icon{font-size:4rem;margin-bottom:24px}.success-message h2{color:var(--christmas-green);margin-bottom:16px}.success-message p{color:var(--text-secondary);margin-bottom:12px;font-size:1.1rem}.back-btn{background-color:var(--christmas-green);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:24px}.back-btn:hover{background-color:#218838;transform:translateY(-2px)}@media (max-width: 768px){.remove-container{padding:60px 16px 20px}.remove-container h2{font-size:2rem}.remove-form{padding:24px}.search-input-group{flex-direction:column}.user-card{flex-direction:column;text-align:center}.button-group{flex-direction:column}.success-message{padding:40px 24px}}
