:root{--bg: #0a0a0f;--bg-card: #14141f;--bg-elevated: #1a1a2e;--text: #ffffff;--text-muted: #888899;--accent: #6366f1;--accent-hover: #818cf8;--success: #22c55e;--error: #ef4444;--warning: #f59e0b;--easy: #22c55e;--medium: #f59e0b;--hard: #ef4444;--very-hard: #a855f7;--radius: 12px;--radius-sm: 8px;--shadow: 0 4px 20px rgba(0, 0, 0, .3);--nav-height: 72px;--safe-area-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overscroll-behavior:none}#app{min-height:100%;display:flex;flex-direction:column}.page{flex:1;display:flex;flex-direction:column;padding-bottom:calc(var(--nav-height) + var(--safe-area-bottom))}.header{padding:24px 20px 16px;text-align:center}.header.compact{display:flex;justify-content:space-between;align-items:center;text-align:left;padding-right:60px}.header h1{font-size:1.5rem;font-weight:600}.logo-text{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent),#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{color:var(--text-muted);margin-top:4px;font-size:.95rem}.subtitle{color:var(--text-muted);font-size:.9rem}.back-link{color:var(--accent);text-decoration:none;font-size:.95rem}.main{flex:1;padding:0 20px 24px;overflow-y:auto}.nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nav-height) + var(--safe-area-bottom));padding-bottom:var(--safe-area-bottom);background:var(--bg-card);border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-around;align-items:flex-start;padding-top:8px;z-index:100}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);text-decoration:none;font-size:.75rem;padding:8px 16px;transition:color .2s}.nav-item svg{width:24px;height:24px}.nav-item.active{color:var(--accent)}.puzzle-card,.puzzle-full{background:var(--bg-card);border-radius:var(--radius);padding:20px;margin-bottom:16px}.puzzle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.puzzle-number{font-weight:600;color:var(--text-muted)}.puzzle-title{font-size:1.25rem;font-weight:600;margin-bottom:20px;text-align:center}.difficulty{font-size:.75rem;font-weight:600;text-transform:uppercase;padding:4px 10px;border-radius:20px;letter-spacing:.5px}.difficulty.easy{background:#22c55e33;color:var(--easy)}.difficulty.medium{background:#f59e0b33;color:var(--medium)}.difficulty.hard{background:#ef444433;color:var(--hard)}.difficulty.very-hard{background:#a855f733;color:var(--very-hard)}.puzzle-badges{display:flex;gap:8px;align-items:center}.daily-badge{background:linear-gradient(135deg,var(--accent),#a855f7);color:#fff;font-size:.65rem;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:12px;letter-spacing:.3px}.clues{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.clue{display:flex;gap:12px;align-items:flex-start}.clue-number{flex-shrink:0;width:24px;height:24px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600}.clue-text{font-size:.95rem;line-height:1.5;color:var(--text)}.guess-form{display:flex;gap:12px}@media (max-width: 480px){.guess-form{flex-direction:column}}.guess-input{flex:1;background:var(--bg);border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:14px 16px;font-size:1.1rem;font-weight:500;color:var(--text);text-transform:uppercase;letter-spacing:1px;outline:none;transition:border-color .2s}.guess-input:focus{border-color:var(--accent)}.guess-input::placeholder{color:var(--text-muted);text-transform:none;letter-spacing:normal}.submit-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:14px 24px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn:hover{background:var(--accent-hover)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.submit-btn.shimmer{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 40%,#a5b4fc 50%,var(--accent-hover) 60%,var(--accent) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite linear}.result{margin-top:20px}.result-card{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:16px;text-align:center}.result-card.solved{border:2px solid var(--success)}.result-card.not-solved{border:2px solid var(--error)}.result-word{font-size:1.5rem;font-weight:700;letter-spacing:2px;margin-bottom:8px}.result-quality{font-size:1.1rem;color:var(--success);font-weight:600}.result-percentile{font-size:.9rem;color:var(--accent);margin-top:4px}.result-message{color:var(--text-muted)}.result-explanation{font-size:.9rem;color:var(--text-muted);margin-top:8px;font-style:italic}.previous-best{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:#2ecc711a;border-radius:var(--radius-sm);margin-bottom:16px}.previous-best-label{color:var(--text-muted);font-size:.85rem}.previous-best-word{font-weight:700;letter-spacing:1px;color:var(--success)}.previous-best-quality{background:var(--success);color:#fff;padding:2px 8px;border-radius:12px;font-size:.8rem;font-weight:600}.login-prompt{text-align:center;padding:16px;margin-top:16px;color:var(--text-muted);font-size:.9rem}.login-prompt a{color:var(--accent);text-decoration:none;font-weight:600}.login-prompt a:hover{text-decoration:underline}.guesses-history{margin-top:24px}.guesses-history h4{font-size:.9rem;color:var(--text-muted);margin-bottom:12px}.guesses-list{display:flex;flex-wrap:wrap;gap:8px}.guess-item{display:flex;align-items:center;gap:8px;background:var(--bg-elevated);padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem}.guess-item.solved{border:1px solid var(--success)}.guess-item.failed{opacity:.5}.guess-word{font-weight:600;letter-spacing:1px}.guess-quality{color:var(--success);font-weight:600}.actions{display:flex;gap:12px;margin-top:8px}.action-btn{flex:1;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);color:var(--text);padding:14px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.action-btn:hover{background:var(--bg-elevated);border-color:var(--accent)}.season-tabs{display:flex;gap:8px;margin-bottom:16px}.season-tab{flex:1;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);color:var(--text-muted);padding:12px 16px;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.season-tab:hover{border-color:var(--accent)}.season-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.season-count{background:#fff3;padding:2px 8px;border-radius:12px;font-size:.8rem;font-weight:600}.season-tab.active .season-count{background:#ffffff4d}.filter-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:16px;margin-bottom:8px;-webkit-overflow-scrolling:touch}.filter-tab{flex-shrink:0;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);color:var(--text-muted);padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.filter-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.puzzle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.puzzle-card-mini{background:var(--bg-card);border-radius:var(--radius);padding:16px;cursor:pointer;transition:transform .2s,box-shadow .2s}.puzzle-card-mini:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}.card-number{font-size:.75rem;color:var(--text-muted);font-weight:500;overflow:hidden;text-overflow:ellipsis}.card-difficulty{font-size:.65rem;font-weight:600;text-transform:uppercase;flex-shrink:0;white-space:nowrap}.card-title{font-size:.95rem;font-weight:600;margin-bottom:12px;line-height:1.3}.card-categories{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.card-category{font-size:.7rem;color:var(--text-muted);background:#ffffff0d;padding:4px 8px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.card-footer{border-top:1px solid rgba(255,255,255,.1);padding-top:12px;margin-top:12px}.card-solved{font-size:.8rem;color:var(--success);font-weight:600;letter-spacing:.5px}.card-quality{background:var(--success);color:#fff;padding:2px 6px;border-radius:10px;font-size:.7rem;margin-left:6px}.card-unsolved{font-size:.75rem;color:var(--text-muted);font-weight:500;letter-spacing:.5px}.auth-container{max-width:400px;margin:0 auto}.auth-hero{text-align:center;margin-bottom:32px}.auth-hero h2{font-size:1.5rem;margin-bottom:8px}.auth-hero p{color:var(--text-muted)}.auth-buttons{display:flex;flex-direction:column;gap:12px}.auth-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px;border-radius:var(--radius-sm);font-size:1rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.auth-btn.google{background:#fff;color:#333}.auth-btn.apple{background:#000;color:#fff;border:1px solid #fff}.apple-login-container{width:100%;height:50px}.auth-btn.email{background:var(--accent);color:#fff}.divider{display:flex;align-items:center;gap:16px;color:var(--text-muted);font-size:.85rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.email-form{display:flex;flex-direction:column;gap:12px}.email-input{width:100%;background:var(--bg);border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:14px 16px;font-size:1rem;color:var(--text);outline:none}.email-input:focus{border-color:var(--accent)}.auth-note{text-align:center;font-size:.85rem;color:var(--text-muted);margin-top:16px}.auth-result{margin-top:16px}.auth-message{padding:12px 16px;border-radius:8px;font-size:.9rem;text-align:center}.auth-message.success{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.auth-message.error{background:#e74c3c26;color:#e74c3c;border:1px solid rgba(231,76,60,.3)}.profile-container{max-width:400px;margin:0 auto}.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:32px}.avatar{width:60px;height:60px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600}.profile-name{font-size:1.25rem;font-weight:600}.profile-name-row{display:flex;align-items:center;gap:8px}.edit-name-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.edit-name-btn:hover{color:var(--accent);background:#6366f11a}.edit-name-btn.hidden{display:none}.edit-name-form{margin-top:12px;padding:12px;background:var(--bg-elevated);border-radius:var(--radius-sm)}.edit-name-form.hidden{display:none}.edit-name-input{width:100%;background:var(--bg);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:10px 12px;font-size:1rem;color:var(--text);outline:none;margin-bottom:8px}.edit-name-input:focus{border-color:var(--accent)}.edit-name-actions{display:flex;gap:8px}.edit-name-save,.edit-name-cancel{flex:1;padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.edit-name-save{background:var(--accent);color:#fff;border:none}.edit-name-save:hover{background:var(--accent-hover)}.edit-name-save:disabled{opacity:.6;cursor:not-allowed}.edit-name-cancel{background:transparent;color:var(--text-muted);border:1px solid rgba(255,255,255,.1)}.edit-name-cancel:hover{border-color:var(--text-muted)}.profile-email{color:var(--text-muted);font-size:.9rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px}.stat-card{background:var(--bg-card);border-radius:var(--radius);padding:20px;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:var(--accent)}.stat-label{font-size:.8rem;color:var(--text-muted);margin-top:4px}.stat-comparison{font-size:.7rem;color:var(--success);margin-top:6px;opacity:.85}.link-email-section{background:#ffffff0d;border-radius:var(--radius-sm);padding:16px;margin-bottom:16px}.link-email-info{font-size:.9rem;color:var(--text-muted);margin-bottom:12px;line-height:1.4}.link-email-form{display:flex;gap:8px}.link-email-input{flex:1;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.2);background:#0003;color:var(--text);font-size:.95rem}.link-email-input:focus{outline:none;border-color:var(--primary)}.link-email-btn{padding:10px 16px;background:var(--primary);color:#000;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap}.link-email-btn:hover{opacity:.9}.link-email-btn:disabled{opacity:.6;cursor:not-allowed}.link-email-result{margin-top:10px}.logout-btn{width:100%;background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--text-muted);padding:14px;border-radius:var(--radius-sm);font-size:.95rem;cursor:pointer;transition:all .2s}.logout-btn:hover{border-color:var(--error);color:var(--error)}.delete-account-btn{width:100%;background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-muted);padding:12px;border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s;margin-top:12px}.delete-account-btn:hover{border-color:var(--error);color:var(--error)}.delete-account-modal{text-align:left}.delete-account-modal h2{color:var(--error);margin-bottom:16px}.delete-account-modal p{color:var(--text-muted);margin-bottom:12px;line-height:1.5}.delete-account-modal ul{color:var(--text-muted);margin:0 0 16px 20px;line-height:1.8}.delete-account-modal .delete-warning{color:var(--error);font-weight:600;margin-bottom:20px}.delete-modal-buttons{display:flex;gap:12px}.delete-cancel-btn{flex:1;padding:14px;background:var(--bg-elevated);color:var(--text);border:none;border-radius:var(--radius-sm);font-size:1rem;cursor:pointer;transition:background .2s}.delete-cancel-btn:hover{background:var(--bg-card)}.delete-confirm-btn{flex:1;padding:14px;background:var(--error);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.delete-confirm-btn:hover{opacity:.9}.delete-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.privacy-page .main{padding:20px;overflow-y:auto}.privacy-container{max-width:600px;margin:0 auto;padding-bottom:100px}.privacy-updated{color:var(--text-muted);font-size:.85rem;margin-bottom:24px}.privacy-section{margin-bottom:28px}.privacy-section h2{font-size:1.2rem;margin-bottom:12px;color:var(--text)}.privacy-section h3{font-size:1rem;margin:16px 0 8px;color:var(--text)}.privacy-section p{color:var(--text-muted);line-height:1.6;margin-bottom:12px}.privacy-section ul{color:var(--text-muted);line-height:1.6;margin:8px 0 12px 20px}.privacy-section li{margin-bottom:6px}.loading{text-align:center;color:var(--text-muted);padding:40px}.error{text-align:center;color:var(--error);padding:40px}.error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.error-page h1{font-size:4rem;color:var(--accent)}.error-page p{color:var(--text-muted);margin-bottom:20px}.error-page a{color:var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:var(--radius);padding:32px;max-width:400px;width:100%;box-shadow:var(--shadow);animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content.how-to-play h2{font-size:1.5rem;margin-bottom:20px;text-align:center}.modal-content.how-to-play p{color:var(--text-muted);line-height:1.6;margin-bottom:12px}.modal-content.how-to-play p:last-of-type{margin-bottom:24px}.how-to-play-signin{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:20px;text-align:center;font-size:.9rem;color:var(--text-muted)}.how-to-play-signin a{color:var(--accent);text-decoration:none;font-weight:600}.how-to-play-signin a:hover{color:var(--accent-hover);text-decoration:underline}.modal-close-btn{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.modal-close-btn:hover{background:var(--accent-hover)}.help-btn{position:fixed;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:var(--bg-elevated);border:1px solid rgba(255,255,255,.1);color:var(--text-muted);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:100}.help-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.next-puzzle-btn{display:block;margin-top:16px;padding:12px 20px;background:var(--accent);color:#fff;text-decoration:none;border-radius:var(--radius-sm);font-weight:600;text-align:center;transition:background .2s}.next-puzzle-btn:hover{background:var(--accent-hover)}.leaderboard-section{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.leaderboard-title{font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.leaderboard-loading{color:var(--text-muted);font-size:.85rem;padding:12px 0}.leaderboard-empty{color:var(--text-muted);font-size:.85rem;padding:12px 0;text-align:center}.leaderboard-list{display:flex;flex-direction:column;gap:4px}.leaderboard-list.compact{gap:2px}.leaderboard-entry{display:flex;align-items:center;gap:12px;background:var(--bg-elevated);padding:12px 16px;border-radius:var(--radius-sm)}.leaderboard-entry.compact{padding:8px 12px;gap:8px;background:transparent;border-bottom:1px solid rgba(255,255,255,.05);border-radius:0}.leaderboard-entry.compact:last-child{border-bottom:none}.leaderboard-rank{font-size:.85rem;font-weight:700;color:var(--text-muted);width:20px;text-align:center}.leaderboard-entry:nth-child(1) .leaderboard-rank{color:gold}.leaderboard-entry:nth-child(2) .leaderboard-rank{color:silver}.leaderboard-entry:nth-child(3) .leaderboard-rank{color:#cd7f32}.leaderboard-word{font-weight:600;letter-spacing:1px;text-transform:uppercase;flex:1;font-size:.85rem}.leaderboard-word.masked{color:var(--text-muted);font-style:italic;letter-spacing:2px}.leaderboard-quality{background:var(--success);color:#fff;padding:2px 8px;border-radius:10px;font-size:.75rem;font-weight:600}.leaderboard-player{font-size:.8rem;color:var(--text-muted);min-width:90px;max-width:120px;text-align:right;display:flex;justify-content:flex-end;gap:3px}.leaderboard-player .player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-player .player-others{flex-shrink:0;opacity:.7}.leaderboard-guest-msg{margin-top:8px;font-size:.8rem;color:var(--text-muted);text-align:center}.leaderboard-guest-msg a{color:var(--accent);text-decoration:none}.leaderboard-guest-msg a:hover{text-decoration:underline}.leaderboard-page .main{padding-top:8px}.leaderboard-empty-global{text-align:center;padding:40px 20px;color:var(--text-muted)}.leaderboard-empty-global a{color:var(--accent);text-decoration:none}.global-leaderboard{background:var(--bg-card);border-radius:var(--radius);overflow:hidden}.leaderboard-header-row{display:flex;padding:12px 16px;background:var(--bg-elevated);font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px}.leaderboard-row{display:flex;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s}.leaderboard-row:last-child{border-bottom:none}.leaderboard-row:hover{background:#ffffff05}.leaderboard-row.top-three{background:#6366f10d}.leaderboard-row.rank-1{background:#ffd70014}.leaderboard-row.rank-2{background:#c0c0c014}.leaderboard-row.rank-3{background:#cd7f3214}.lb-col-rank{width:40px;font-weight:700;color:var(--text-muted)}.rank-1 .lb-col-rank{color:gold}.rank-2 .lb-col-rank{color:silver}.rank-3 .lb-col-rank{color:#cd7f32}.lb-col-player{flex:1;font-weight:500}.lb-col-solved{width:60px;text-align:center;color:var(--accent);font-weight:600}.lb-col-avg{width:50px;text-align:center;color:var(--text-muted)}.lb-col-best{width:50px;text-align:right;color:var(--success);font-weight:600}.leaderboard-legend{margin-top:16px;padding:16px;background:var(--bg-card);border-radius:var(--radius);font-size:.8rem;color:var(--text-muted)}.leaderboard-legend p{margin-bottom:4px}.leaderboard-legend p:last-child{margin-bottom:0}.leaderboard-legend strong{color:var(--text)}.app-redirect-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s ease}.app-redirect-modal{background:var(--bg-card);border-radius:var(--radius);padding:36px 28px;max-width:340px;width:100%;text-align:center;box-shadow:var(--shadow);animation:slideUp .3s ease}.app-redirect-icon{width:56px;height:56px;margin:0 auto 20px;background:linear-gradient(135deg,var(--accent),#a855f7);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;color:#fff}.app-redirect-modal h2{font-size:1.25rem;font-weight:600;margin-bottom:8px}.app-redirect-modal p{color:var(--text-muted);font-size:.95rem;line-height:1.5;margin-bottom:24px}.app-redirect-btn{display:block;width:100%;padding:14px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;text-align:center;text-decoration:none;transition:transform .15s ease}.app-redirect-btn:active{transform:scale(.98)}.app-redirect-btn.open-app{background:#fff;color:#000;margin-bottom:12px}.app-redirect-btn.continue-web{background:transparent;color:var(--text-muted);font-size:.9rem;font-weight:500}.challenge-btn{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:10px 18px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 2px 8px #667eea4d}.challenge-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.challenge-btn:active:not(:disabled){transform:translateY(0)}.challenge-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.challenge-btn.shimmer{background:linear-gradient(90deg,#667eea,#8b5cf6 40%,#a5b4fc,#8b5cf6 60%,#667eea);background-size:200% 100%;animation:shimmer 1.5s infinite linear}.challenge-info{display:inline-flex;align-items:center;gap:6px;margin-top:12px}.expert-badge{display:inline-block;padding:5px 12px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.expert-badge-inline{font-size:.8rem;color:var(--text-muted, #888899);margin-top:12px;font-style:italic}.challenge-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#ffffff4d;color:#fff;border-radius:50%;font-size:.7rem;font-weight:700;cursor:help;position:relative}.challenge-info .challenge-tooltip-trigger{background:var(--text-muted, #888899);color:var(--bg, #0a0a0f)}.challenge-tooltip-trigger:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:10px 14px;background:var(--bg-elevated, #1a1a2e);color:var(--text, #ffffff);border-radius:8px;font-size:.75rem;font-weight:400;white-space:normal;width:240px;text-align:center;line-height:1.4;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100;pointer-events:none;box-shadow:0 4px 12px #00000026}.challenge-tooltip-trigger:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--bg-elevated, #1a1a2e);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100}.challenge-tooltip-trigger:hover:after,.challenge-tooltip-trigger:hover:before{opacity:1;visibility:visible}.challenge-upgraded{border:2px solid #48bb78!important;animation:challenge-success .5s ease-out}@keyframes challenge-success{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.challenge-success-banner{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:8px 16px;border-radius:6px;font-size:.85rem;font-weight:700;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;text-align:center}.challenge-reviewed{border:2px solid #ed8936!important}.challenge-reviewed-banner{background:linear-gradient(135deg,#ed8936,#dd6b20);color:#fff;padding:8px 16px;border-radius:6px;font-size:.85rem;font-weight:700;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;text-align:center}.share-modal{max-width:360px;text-align:center;padding:24px}.share-modal h3{margin-bottom:8px;font-size:1.25rem}.share-modal>p{color:var(--text-muted, #888899);margin-bottom:20px;font-size:.95rem}.share-btn{display:block;width:100%;padding:14px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.share-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.share-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.share-btn.secondary{background:var(--bg-elevated, #1a1a2e);color:var(--text, #ffffff);border:1px solid var(--text-muted, #888899)}.share-btn.secondary:hover{background:var(--bg-card, #14141f)}.share-hint{font-size:.8rem;color:var(--text-muted, #888899);margin-top:8px;margin-bottom:0}.share-divider{display:flex;align-items:center;margin:20px 0}.share-divider:before,.share-divider:after{content:"";flex:1;height:1px;background:var(--text-muted, #888899)}.share-divider span{padding:0 16px;color:var(--text-muted, #888899);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.share-web-options>p{margin-bottom:12px;font-size:.9rem;color:var(--text-muted, #888899)}.app-store-buttons{display:flex;gap:12px;justify-content:center;margin-bottom:8px}.app-store-btn{padding:12px 24px;border-radius:10px;text-decoration:none;font-weight:600;font-size:.9rem;transition:transform .2s}.app-store-btn:hover{transform:translateY(-1px)}.app-store-btn.ios{background:#000;color:#fff}.signin-prompt{max-width:320px;text-align:center;padding:24px}.signin-prompt h3{margin-bottom:8px}.signin-prompt p{color:var(--text-muted, #888899);margin-bottom:20px}.signin-btn{display:block;width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;text-decoration:none;font-weight:600;margin-bottom:12px;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #667eea4d}.signin-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.challenge-btn.loading{position:relative;color:transparent}.challenge-btn.loading:after{content:"";position:absolute;width:18px;height:18px;top:50%;left:50%;margin-left:-9px;margin-top:-9px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 480px){.challenge-tooltip-trigger:after{width:200px;left:auto;right:-10px;transform:none}.challenge-tooltip-trigger:before{left:auto;right:4px;transform:none}.share-modal{margin:16px;max-width:calc(100% - 32px)}.app-store-buttons{flex-direction:column;gap:10px}.app-store-btn{width:100%}}
