body{margin:0;background:#0b0b0b;color:#f5c400;font-family:system-ui,sans-serif}.app{padding:16px}.header{display:flex;flex-direction:column;align-items:center;gap:12px}.header-buttons{display:flex;gap:12px}.header .logo{font-size:32px;font-weight:700}.header button{outline:none;box-shadow:none;border:none;background:#1f1f1f;color:#f5c400;padding:6px;margin:6px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease}.header button:hover{border:none;background:#f5c400;color:#1f1f1f;transform:scale(1.05)}.month-nav{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px;margin-bottom:12px}.month-nav button{background:#1f1f1f;color:#f5c400;padding:6px 12px;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.month-nav button:hover{border:none;background:#f5c400;color:#1f1f1f;transform:scale(1.05)}.month-nav .month-name{font-weight:700;font-size:16px;transition:all .3s ease}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-weight:700;margin-bottom:6px}.weekday{padding:4px 0}.calendar{background:#141414;padding:12px;border-radius:16px;margin-top:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{aspect-ratio:1;background:#1f1f1f;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;font-weight:700;opacity:0;transform:translateY(10px);animation:fadeInDay .3s forwards}@keyframes fadeInDay{to{opacity:1;transform:translateY(0)}}.day.active{outline:2px solid #f5c400}.day.has-workout{background:#e03223;color:#f5c400}.day.plan-day{border:2px solid #e03223}.day-workouts{margin-top:16px}.day-workouts h3{margin-bottom:8px}.workout-card{background:#1f1f1f;padding:8px;border-radius:12px;margin-bottom:4px;display:flex;justify-content:space-between;align-items:center;opacity:0;transform:translateY(-10px);animation:fadeInCard .3s forwards;transition:all .2s ease}@keyframes fadeInCard{to{opacity:1;transform:translateY(0)}}.workout-card.plan{border:2px solid red}.workout-card.fact{border:2px solid #f5c400}.label{font-size:12px;opacity:.8}.actions{display:flex;gap:8px}.actions button{margin-left:8px;background:#303030;color:#f5c400;padding:6px 12px;border:none;border-radius:6px;cursor:pointer;width:80px;flex:1;transition:all .2s ease}.actions button:hover{border:none;background:#f5c400;color:#1f1f1f;transform:scale(1.1)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:100;opacity:0;animation:fadeInBackdrop .3s forwards}@keyframes fadeInBackdrop{to{opacity:1}}.modal{background:#141414;padding:16px;border-radius:16px;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;transform:scale(.9);opacity:0;animation:scaleInModal .3s forwards}@keyframes scaleInModal{to{transform:scale(1);opacity:1}}.modal select{background:#303030;color:#f5c400;border:none;border-radius:8px;padding:6px;width:100%;font-size:14px;cursor:pointer;transition:all .2s ease}.modal-header{flex-shrink:0;margin-bottom:8px}.modal-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px}.modal .modal-save-btn{flex-shrink:0;margin-top:8px}.modal .modal-save-btn{flex-shrink:0;margin-top:8px;background:#f5c400;color:#1f1f1f;font-weight:700}.modal .modal-save-btn:hover{background:#f5c400;color:#1f1f1f}.exercise{border:none;border-radius:12px;background:#1f1f1f;padding:10px;margin-bottom:10px;transition:all .2s ease}.exercise:hover{background:#1f1f1f}.exercise-header{display:flex;justify-content:space-between}.exercise-header .info{cursor:pointer}.set{display:flex;gap:6px;margin-top:6px;align-items:center}.set select{background:#303030;color:#f5c400;border:none;padding:6px;border-radius:6px;cursor:pointer;transition:all .2s ease}.set button{background:#303030;color:red;border:2px solid red;border-radius:6px;cursor:pointer;padding:0 6px;transition:all .2s ease}.set button:hover{background:red;color:#0b0b0b}.add-set-btn{margin-top:6px;background:#303030;color:#f5c400;border:none;padding:6px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease}.add-set-btn:hover{background:#f5c400;color:#0b0b0b}.modal button{margin-top:0;background:#303030;color:#f5c400;border:none;padding:6px;border-radius:6px;cursor:pointer;transition:all .2s ease}.modal button:hover{background:#f5c400;color:#0b0b0b}img{width:100%;border-radius:12px;margin-top:8px}.filters{display:flex;gap:12px;margin:16px 0;flex-wrap:wrap}.filters label{display:flex;flex-direction:column;font-size:14px}.filters select,.filters input{background:#1f1f1f;color:#f5c400;border:2px solid #f5c400;border-radius:6px;padding:4px 6px;cursor:pointer}.chart-container{background:#141414;padding:16px;border-radius:16px}.workout-count{font-size:128px;font-weight:700;margin-bottom:4px;text-align:center}.workout-label{font-size:32px;opacity:.8;margin-bottom:12px;text-align:center}.stats-info{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.stats-info input{background:#303030;color:#f5c400;border:none;border-radius:8px;padding:6px;width:95%;font-size:16px;cursor:text}.exercise-card{border:none;border-radius:12px;background:#1f1f1f;width:95%;padding:6px;margin-top:12px;margin-bottom:12px;display:flex;flex-direction:column;cursor:pointer}.trend{color:#f5c400;font-size:18px}.set-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.input-group{display:flex;align-items:center;gap:6px}.number-input{width:70px;padding:6px 8px;border-radius:8px;border:1px solid #444;background:#1e1e1e;color:#fff;text-align:center;font-size:14px}.number-input:focus{outline:none;border-color:#f5c400}.unit{font-size:13px;color:#aaa}.remove-set-btn{background:transparent;border:none;cursor:pointer;font-size:16px}.remove-set-btn:hover{transform:scale(1.1)}.wheel-picker-wrapper{height:120px;overflow:hidden;position:relative}.wheel-picker{height:100%;overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch}.wheel-item{height:40px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-size:18px}.number-input{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;background:transparent;border:1px solid #aaa;border-radius:6px;color:#000;font-size:16px;width:60px;height:40px;overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch}.number-input::-webkit-inner-spin-button,.number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.set-row{display:flex;gap:8px;align-items:center;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.number-input>option{scroll-snap-align:start}.number-input:focus{scroll-behavior:smooth}.exercise-header{display:flex;justify-content:space-between;align-items:center;border:none}.info-btn{background:#ddd;font-size:14px;border:none}.total-weight{font-size:14px;color:#444;color:#aaa;margin-bottom:4px}.exercise-info-panel{position:relative;display:flex;gap:12px;margin:8px 0 12px;border-radius:6px;padding:8px;background:#1e1e1e;border:1px solid #444;max-width:800px;width:100%;align-items:center;justify-content:center}.exercise-info-panel .modal-close-btn{border:2px solid #f5c400;border-radius:6px;background:#f5c400;padding:4px 6px;color:#1f1f1f;font-size:16px}.exercise-info-gif{flex:1 1 50%;padding:4px;display:flex;align-items:center;justify-content:center}.exercise-info-gif img{max-width:100%;max-height:100%;border-radius:10px;padding:4px;display:block}.exercise-info-details{flex:1 1 50%;display:flex;flex-direction:column;gap:12px}.exercise-info-muscles{border:1px solid #f5c400;border-radius:6px;padding:8px;background:#2a2a2a}.exercise-info-muscles ul{padding-left:20px;margin:4px 0 0}.exercise-info-muscles li{list-style:disc}.exercise-info-technique{border:1px solid #f5c400;border-radius:6px;padding:8px;background:#2a2a2a;text-align:center}.exercise-info-technique a{color:#f5c400;text-decoration:none;font-weight:700}.exercise-info-technique a:hover{text-decoration:underline}.period-select button{border:none;border-radius:12px;background:#303030;font-size:14px;padding:8px;margin:8px}.chart-container{background:#303030;border:none;border-radius:12px;padding:8px;margin-top:8px;margin-bottom:8px}.exercise-info-panel{display:flex;gap:16px;margin-top:12px;border-radius:8px;padding:8px;background:#1e1e1e;border:1px solid #444;max-width:800px;width:95%;align-items:center}.exercise-info-gif{flex:1 1 60%;max-width:300px;display:flex;align-items:center;justify-content:center}.exercise-info-gif img{max-width:585px;max-height:780px;object-fit:contain}.exercise-info-details{flex:1 1 40%;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.exercise-info-muscles,.exercise-info-technique{border:none;border-radius:6px;padding:8px;background:#303030;font-size:14px}.modal-close-btn{position:absolute;top:8px;right:8px;background:transparent;border:none;background:#f5c400;padding:4px 6px;color:#1f1f1f;font-size:14px;cursor:pointer;z-index:10;transition:transform .2s ease}.modal-close-btn:hover{transform:scale(1.2)}.auth-card{background:linear-gradient(145deg,#141414,#0f0f0f);padding:40px;border-radius:24px;max-width:420px;margin:60px auto;box-shadow:0 20px 40px #00000080,0 0 0 1px #f5c4001a;display:flex;flex-direction:column;gap:24px}.auth-card h2{text-align:center;background:linear-gradient(135deg,#f5c400,#e6b800);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;font-size:32px;font-weight:700}.auth-input{background:#1f1f1f!important;color:#f5c400!important;border:2px solid #333!important;border-radius:16px!important;padding:16px 20px!important;font-size:16px!important;transition:all .3s!important}.auth-input:focus{border-color:#f5c400!important;box-shadow:0 0 0 4px #f5c4001a!important;outline:none!important}.auth-submit{background:linear-gradient(135deg,#f5c400,#e6b800)!important;color:#1a1a1a!important;border:none!important;padding:18px!important;border-radius:16px!important;font-size:18px!important;font-weight:700!important;cursor:pointer!important;transition:all .3s!important}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 12px 32px #f5c40066}.auth-links{display:flex;flex-direction:column;gap:12px;margin-top:16px}.auth-links button{background:linear-gradient(135deg,#f5c400,#e6b800)!important;color:#1a1a1a!important;border:none!important;padding:16px!important;border-radius:16px!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important;transition:all .3s!important}.auth-link{background:transparent!important;border:2px solid #f5c40040!important}.auth-link:hover{background:#f5c40020!important}@media (max-width: 480px){.auth-card{margin:20px 16px;padding:28px 20px}}.days-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.profile-card{background:#141414;padding:24px;border-radius:16px;max-width:500px;margin:20px auto;box-shadow:0 8px 32px #f5c4001a}.profile-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.profile-row input,.profile-row select{flex:1;background:#1f1f1f;color:#f5c400;border:2px solid #333;border-radius:8px;padding:12px}.days-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.day-active,.day-inactive{border:none;padding:12px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.day-active{background:#f5c400!important;color:#1a1a1a!important}.day-inactive{background:#303030!important;color:#f5c400!important}.day-inactive:hover:not(:disabled){background:#f5c40030!important}.profile-actions{display:flex;gap:12px;margin:24px 0}.profile-actions button{flex:1;padding:12px;border-radius:8px;font-weight:600}.telegram-section{margin-top:32px;padding-top:24px;border-top:2px solid #333}.telegram-linked{background:#1f1f1f;padding:16px;border-radius:12px;border:2px solid #4ade80;color:#4ade80;font-size:16px;display:flex;align-items:center;gap:12px}.btn-primary{background:linear-gradient(135deg,#f5c400,#e6b800);color:#1a1a1a;border:none;padding:14px 24px;border-radius:12px;font-weight:600;cursor:pointer;width:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #f5c40066}.profile-container{max-width:600px;margin:0 auto;padding:20px}.profile-card{background:#141414;border-radius:16px;padding:24px;margin-bottom:20px;border:1px solid #f5c40030;box-shadow:0 4px 16px #f5c4001a}.profile-card h3{margin-top:0;margin-bottom:20px;color:#f5c400;font-size:1.2rem;border-bottom:2px solid #f5c400;padding-bottom:8px;display:inline-block}.subscription-card{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:1px solid #f5c400;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 16px #f5c40033}.subscription-card h3{margin-top:0;margin-bottom:20px;color:#f5c400;font-size:1.2rem}.subscription-active p,.subscription-expired p,.subscription-none p{margin:12px 0;color:#e0e0e0}.subscription-active strong{color:#f5c400}.subscription-expired{color:#ff9800}.subscription-none{color:#ff5722}.profile-row{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.profile-row label{min-width:140px;font-weight:500;color:#f5c400}.profile-row input,.profile-row select{flex:1;background:#1f1f1f;color:#f5c400;border:2px solid #333;border-radius:12px;padding:12px 16px;font-size:14px;transition:all .3s}.profile-row input:focus,.profile-row select:focus{outline:none;border-color:#f5c400;box-shadow:0 0 0 3px #f5c40033}.profile-row input:disabled,.profile-row select:disabled{opacity:.7;cursor:not-allowed}.profile-row small{display:block;margin-top:5px;color:#888;font-size:12px}.days-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0}.day-active,.day-inactive{border:none;padding:12px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.day-active{background:#f5c400!important;color:#1a1a1a!important;box-shadow:0 2px 8px #f5c40066}.day-inactive{background:#2a2a2a!important;color:#f5c400!important;border:1px solid #f5c40040}.day-inactive:hover:not(:disabled){background:#f5c40020!important;border-color:#f5c400}.profile-actions{display:flex;gap:12px;margin:24px 0 0}.profile-actions button{flex:1;padding:12px;border-radius:12px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;border:none}.btn-save{background:#f5c400;color:#1a1a1a}.btn-save:hover{background:#e6b800;transform:translateY(-2px);box-shadow:0 4px 12px #f5c40066}.btn-cancel{background:#2a2a2a;color:#f5c400;border:1px solid #f5c40040}.btn-cancel:hover{background:#3a3a3a;border-color:#f5c400}.btn-edit{background:#1f1f1f;color:#f5c400;border:2px solid #f5c400}.btn-edit:hover{background:#f5c400;color:#1a1a1a;transform:translateY(-2px)}.btn-primary{background:#f5c400;color:#1a1a1a;border:none;padding:14px 24px;border-radius:12px;font-weight:600;cursor:pointer;width:100%;font-size:14px;transition:all .2s}.btn-primary:hover{background:#e6b800;transform:translateY(-2px);box-shadow:0 4px 16px #f5c40066}.btn-secondary{background:#2a2a2a;color:#f5c400;border:1px solid #f5c400;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;width:100%;font-size:14px;transition:all .2s}.btn-secondary:hover{background:#f5c40020;transform:translateY(-2px)}.password-change-form{margin-top:10px}.telegram-linked{background:#1f1f1f;padding:16px;border-radius:12px;border:1px solid #4caf50;color:#4caf50;text-align:center}.telegram-linked p{margin:5px 0}.telegram-linked small{color:#888;font-size:12px}@media (max-width: 600px){.profile-container{padding:12px}.profile-card,.subscription-card{padding:16px}.profile-row{flex-direction:column;align-items:stretch;gap:8px}.profile-row label{min-width:auto}.days-selector{grid-template-columns:repeat(4,1fr);gap:6px}.day-active,.day-inactive{padding:8px;font-size:12px}}
