.challenge-card{background-color:var(--card-bg);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 20px var(--shadow);display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;border-left:5px solid transparent}.challenge-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px var(--shadow)}.challenge-card.easy{border-left-color:var(--success)}.challenge-card.medium{border-left-color:var(--warning)}.challenge-card.hard{border-left-color:var(--error)}.challenge-card.completed{opacity:.7}.challenge-icon{font-size:2.5rem;display:flex;align-items:center;justify-content:center;padding:20px}.challenge-content{padding:0 20px 20px;flex-grow:1}.challenge-title{font-size:1.2rem;margin-bottom:10px;color:var(--foreground)}.challenge-description{font-size:.9rem;color:var(--foreground);opacity:.8;margin-bottom:15px}.challenge-progress{margin-bottom:15px}.progress-bar{height:8px;background-color:var(--background);border-radius:4px;margin-bottom:5px}.progress-fill{border-radius:4px;transition:width .5s ease}.progress-text{font-size:.8rem}.challenge-footer{display:flex;justify-content:space-between;align-items:center}.challenge-points{font-weight:600;color:var(--primary)}.challenge-difficulty{font-size:.8rem;padding:3px 8px;border-radius:10px;text-transform:capitalize}.challenge-card.easy .challenge-difficulty{background-color:rgba(16,185,129,.1);color:var(--success)}.challenge-card.medium .challenge-difficulty{background-color:rgba(245,158,11,.1);color:var(--warning)}.challenge-card.hard .challenge-difficulty{background-color:rgba(239,68,68,.1);color:var(--error)}.complete-button{margin:0 20px 20px;padding:10px;border-radius:20px;background-color:var(--primary);color:#fff;font-weight:500;transition:all .3s ease}.complete-button:hover:not(:disabled){background-color:var(--primary-light);transform:translateY(-2px)}.complete-button.completed{background-color:var(--success);cursor:default}.complete-button:disabled{opacity:.7;cursor:default}.notifications-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px;max-width:350px;width:100%}.notification{background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px var(--shadow);padding:15px;display:flex;align-items:center;gap:12px;position:relative;overflow:hidden;cursor:pointer;animation:slideIn .3s ease forwards}.notification-success{border-left:4px solid var(--success)}.notification-error{border-left:4px solid var(--error)}.notification-info{border-left:4px solid var(--info)}.notification-warning{border-left:4px solid var(--warning)}.notification-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.notification-success .notification-icon{background-color:var(--success);color:#fff}.notification-error .notification-icon{background-color:var(--error);color:#fff}.notification-info .notification-icon{background-color:var(--info);color:#fff}.notification-warning .notification-icon{background-color:var(--warning);color:#fff}.notification-message{flex:1 1;font-size:.9rem}.notification-close{background:none;border:none;cursor:pointer;font-size:.9rem;opacity:.6;transition:opacity .2s ease;padding:5px}.notification-close:hover{opacity:1}.notification-progress{position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(to right,var(--primary),var(--secondary));width:100%;animation:progress linear forwards}@keyframes slideIn{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes progress{0%{width:100%}to{width:0}}@media (max-width:576px){.notifications-container{top:auto;bottom:20px;left:20px;right:20px;max-width:none}}.points-display{display:flex;align-items:center;gap:10px;background-color:var(--card-bg);border-radius:30px;padding:8px 15px;box-shadow:0 4px 10px var(--shadow);transition:all .3s ease}.points-display:hover{transform:translateY(-2px);box-shadow:0 6px 15px var(--shadow)}.points-display.animate{animation:pulse 1s ease}.points-icon{font-size:1.2rem}.points-info{display:flex;flex-direction:column}.points-value{font-weight:700;color:var(--primary)}.points-label{font-size:.7rem;opacity:.7}.points-display.small .points-icon{font-size:1rem}.points-display.small .points-value{font-size:.9rem}.points-display.small .points-label{font-size:.6rem}.points-display.large{padding:10px 20px}.points-display.large .points-icon{font-size:1.5rem}.points-display.large .points-value{font-size:1.3rem}.points-display.large .points-label{font-size:.8rem}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1);box-shadow:0 6px 20px rgba(0,180,216,.3)}to{transform:scale(1)}}.challenges-page{padding:20px 0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.page-title{font-size:2.5rem;position:relative}.page-title:after{content:"";position:absolute;bottom:-10px;left:0;width:60px;height:4px;background:var(--primary);border-radius:2px}.challenges-progress{margin-bottom:40px}.progress-bar{height:10px;background-color:var(--card-bg);border-radius:5px;overflow:hidden;margin-bottom:10px;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}.progress-fill{height:100%;background:linear-gradient(to right,var(--primary),var(--secondary));border-radius:5px;transition:width 1s ease}.progress-text{text-align:right;font-size:.9rem;color:var(--foreground);opacity:.7}.challenges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:30px;gap:30px;animation:fadeIn .5s ease forwards}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.loading-spinner{width:40px;height:40px;border-radius:50%;border:3px solid rgba(0,180,216,.3);border-top:3px solid var(--primary);animation:spin 1s linear infinite;margin-bottom:20px}@media (max-width:768px){.page-title{font-size:2rem}.challenges-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}}