:root{--color-primary:#7c4fe0;--color-primary-hover:#6936d1;--color-text:#18171a;--color-text-secondary:#666168;--color-border:#d8d5db;--color-background:#fff;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--color-text);background-color:var(--color-background);margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}.app{min-height:100vh}.site-header{border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto 1fr;align-items:center;height:88px;padding:0 70px;display:grid}.brand{align-items:center;gap:12px;font-size:24px;font-weight:600;display:flex}.brand-icon{background-color:#f3edff;border-radius:8px;flex-shrink:0;width:30px;height:30px;position:relative;box-shadow:0 4px 10px #432b642e}.brand-icon:after{content:"";background-color:var(--color-primary);border-radius:50% 50% 40% 40%;width:15px;height:12px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.main-nav{gap:32px;display:flex}.auth-nav{justify-self:end;align-items:center;gap:22px;display:flex}.main-nav a{color:var(--color-text-secondary);font-size:15px;font-weight:600}.main-nav a:hover{color:var(--color-primary)}.login-link,.signup-button{cursor:pointer;border:none;font-size:15px;font-weight:600}.login-link{color:var(--color-text-secondary);background-color:#0000;padding:10px 0}.login-link:hover{color:var(--color-primary)}.signup-button{color:#fff;background-color:var(--color-primary);border-radius:8px;padding:12px 20px}.signup-button:hover{background-color:var(--color-primary-hover)}.login-page{justify-content:center;align-items:flex-start;min-height:calc(100vh - 88px);padding:64px 24px;display:flex}.login-card{width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{margin:0 0 10px;font-size:32px;line-height:1.2}.login-header p{color:var(--color-text-secondary);margin:0;font-size:16px}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{font-size:14px;font-weight:500}.form-group input{border:1px solid var(--color-border);width:100%;height:48px;color:var(--color-text);background-color:#fff;border-radius:8px;outline:none;padding:0 14px}.form-group input::placeholder{color:#8b878e}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #7c4fe026}.form-options{justify-content:space-between;align-items:center;gap:16px;display:flex}.remember-option{color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.remember-option input{width:16px;height:16px;accent-color:var(--color-primary);margin:0}.forgot-password{color:var(--color-primary);cursor:pointer;background-color:#0000;border:none;padding:0;font-size:14px;font-weight:600}.forgot-password:hover{text-decoration:underline}.sign-in-button{color:#fff;background-color:var(--color-primary);cursor:pointer;border:none;border-radius:8px;width:100%;height:48px;font-size:15px;font-weight:600}.sign-in-button:hover{background-color:var(--color-primary-hover)}.sign-in-button:active{transform:translateY(1px)}.login-logo{background-color:#f3edff;border-radius:12px;justify-content:center;align-items:flex-end;width:44px;height:44px;margin:0 auto 24px;padding-bottom:7px;display:flex;box-shadow:0 6px 14px #432b642e}.login-logo-shape{background-color:var(--color-primary);border-radius:50% 50% 40% 40%;width:22px;height:17px}@media (width<=760px){.site-header{grid-template-columns:1fr auto;height:74px;padding:0 20px}.main-nav{display:none}.brand{font-size:21px}.auth-nav{gap:14px}.signup-button{padding:10px 15px}.login-page{min-height:calc(100vh - 74px);padding:48px 20px}}.site-header-home{grid-template-columns:auto 1fr;align-items:center;height:88px;padding:0 70px;display:grid}.avatar-menu{justify-self:flex-end;position:relative}.avatar-toggle{cursor:pointer;align-items:center;gap:10px;display:inline-flex}.avatar-dropdown{border:2px solid var(--color-primary);border-radius:12px;padding:5px;display:grid;position:absolute;top:105%;right:0;box-shadow:0 8px 20px #00000047}.avatar-dropdown button{width:100%;color:var(--color-text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;padding:8px 12px;font-size:14px;font-weight:600}.avatar-dropdown button:hover{color:var(--color-text);background:#7c4fe01a}.carousel-section{border:2px solid var(--color-primary);border-radius:18px;max-width:70%;margin:140px auto 26px;padding:55px 34px 38px;position:relative}.carousel-section .carousel-header{color:#fff;background-color:var(--color-primary);border:none;border-radius:8px;justify-content:center;width:50%;height:48px;font-size:15px;font-weight:600;display:flex;position:absolute;top:-12px;transform:translate(50%)}.carousel-section .carousel-header .carousel-title{align-self:center;font-size:22px;font-weight:700}.carousel-section .carousel-body{align-items:center;gap:10px;display:flex}.carousel-section .carousel-body .carousel-arrow{background:var(--color-background);color:var(--color-primary);cursor:pointer;border:8px;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;transition:transform .15s,background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.carousel-section .carousel-body .carousel-arrow:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 10px #7c4fe059}.carousel-section .carousel-body .full-width-carousel{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-text-overflow-style:none;gap:12px;padding:6px 2px;display:flex;overflow-x:auto}.carousel-section .carousel-body .full-width-carousel::-webkit-scrollbar{display:none}.carousel-section .carousel-body .full-width-carousel .carousel-card{width:250px;height:200px;color:var(--color-text);background:#fff;border-radius:18px;flex:none;justify-content:center;align-items:center;display:flex}.carousel-section .carousel-body .full-width-carousel .carousel-card:hover{transform:translateY(-4px)scale(1.03);box-shadow:0 10px 20px #00000040}.dashboard{color:#262229;background-color:#fff;min-height:100vh;display:flex}.dashboard-sidebar{background-color:#f5f0ff;flex-direction:column;width:190px;min-height:100vh;padding:32px 20px;display:flex}.sidebar-menu-button{cursor:pointer;background:0 0;border:none;border-radius:12px;width:42px;height:42px;margin-bottom:54px;font-size:24px}.sidebar-navigation{flex-direction:column;gap:14px;display:flex}.sidebar-link{color:#625d67;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:0 15px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.sidebar-link:hover{background-color:#ebe1ff}.sidebar-link.active{color:#fff;background-color:#7c4fe0;box-shadow:0 8px 18px #7c4fe040}.sidebar-icon{text-align:center;width:22px;font-size:17px}.dashboard-main{flex:1;max-width:1180px;margin:0 auto;padding:34px 60px 60px}.dashboard-topbar{justify-content:space-between;align-items:center;min-height:52px;margin-bottom:48px;display:flex}.dashboard-title{align-items:center;gap:18px;display:flex}.dashboard-title h1{margin:0;font-size:28px;font-weight:700}.back-button,.more-button{color:#403b44;cursor:pointer;background:0 0;border:none}.back-button{width:40px;height:40px;font-size:26px}.more-button{width:40px;height:40px;font-size:28px}.profile-section{grid-template-columns:1fr 210px;align-items:stretch;gap:30px;margin-bottom:58px;display:grid}.user-profile{background-color:#fff;border:1px solid #eeeaf1;border-radius:22px;align-items:center;gap:26px;padding:28px 32px;display:flex;box-shadow:0 10px 30px #20172d0d}.profile-avatar{color:#fff;background:linear-gradient(145deg,#b992ff,#7040d4);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:94px;height:94px;font-size:26px;font-weight:700;display:flex}.profile-details h2{margin:0 0 7px;font-size:25px}.profile-details p{color:#8d8790;margin:0 0 17px;font-size:14px}.profile-badges{flex-wrap:wrap;gap:10px;display:flex}.profile-badges span{color:#6f42cc;background-color:#f0e8ff;border-radius:20px;padding:7px 13px;font-size:13px;font-weight:600}.active-days-card{color:#fff;background:linear-gradient(145deg,#8961e6,#7040d4);border-radius:22px;flex-direction:column;justify-content:center;align-items:center;padding:25px;display:flex;box-shadow:0 12px 28px #7040d440}.calendar-icon{margin-bottom:8px;font-size:25px}.active-days-card strong{font-size:36px;line-height:1}.active-days-card span{margin-top:8px;font-size:14px}.progress-section{grid-template-columns:repeat(3,1fr);gap:35px;margin-bottom:58px;display:grid}.progress-item{flex-direction:column;align-items:center;display:flex}.progress-circle{border-radius:50%;justify-content:center;align-items:center;width:170px;height:170px;padding:14px;display:flex}.progress-40{background:conic-gradient(#7c4fe0 0deg 144deg,#eee8f5 144deg 360deg)}.progress-70{background:conic-gradient(#7c4fe0 0deg 252deg,#eee8f5 252deg 360deg)}.progress-100{background:conic-gradient(#7c4fe0 0deg 360deg)}.progress-circle-inner{background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:142px;height:142px;display:flex}.progress-circle-inner strong{color:#2b2730;font-size:32px}.progress-item h3{color:#6f6873;letter-spacing:.9px;text-align:center;margin:22px 0 0;font-size:12px;font-weight:700}.summary-section{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.summary-card{background-color:#fff;border:1px solid #eeeaf1;border-radius:20px;flex-direction:column;justify-content:center;min-height:150px;padding:25px;display:flex;box-shadow:0 8px 25px #20172d0d}.summary-icon{color:#7040d4;background-color:#f0e8ff;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:18px;font-size:20px;display:flex}.summary-card strong{margin-bottom:8px;font-size:19px}.summary-card span{color:#8d8790;font-size:14px}@media (width<=900px){.dashboard-sidebar{width:82px;padding:28px 12px}.sidebar-link{justify-content:center}.sidebar-link span:last-child{display:none}.dashboard-main{padding:30px}.profile-section,.progress-section,.summary-section{grid-template-columns:1fr}}@media (width<=600px){.dashboard-sidebar{display:none}.dashboard-main{padding:22px}.user-profile{text-align:center;flex-direction:column;padding:22px}.profile-badges{justify-content:center}}
