@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;600;700;900&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{background:#040404;font-family:Roboto,sans-serif;color:#eaeaea}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#040404;color:#eaeaea;padding:20px;transform:translateY(-40px)}.auth-card{width:100%;max-width:400px;background:#0b0b0b;border:1px solid #151515;padding:36px 32px}.auth-title{font-size:24px;font-weight:900;letter-spacing:1.4px;text-align:center;margin-bottom:26px}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-form input{background:#111;border:1px solid #222;color:#fff;padding:13px 12px;font-size:15px;font-weight:600}.auth-form input::placeholder{color:#666}.auth-form input:focus{outline:none;border-color:#b00000}.forgot-password{text-align:right;margin-top:-6px}.forgot-password a{font-size:13px;font-weight:700;color:#e87d7d;text-decoration:none;transition:color .2s ease,filter .08s ease}.forgot-password a:hover{color:#e87070}.forgot-password a:active{filter:brightness(.9)}.auth-submit{margin-top:18px;width:100%;background:#fff;border:none;color:#000;font-weight:900;letter-spacing:1px;padding:14px;font-size:15px;cursor:pointer;transition:background-color .25s ease,transform .08s ease,filter .08s ease}.auth-submit:hover{background:#2c8863;color:#fff}.auth-submit:active{transform:scale(.97);filter:brightness(.92)}.auth-submit:disabled{background:#444;color:#999;cursor:not-allowed;pointer-events:none;filter:none}.auth-footer{margin-top:20px;font-size:13px;color:#8a8a8a;text-align:center}.auth-footer a{margin-left:6px;color:#fff;text-decoration:none;font-weight:700;transition:color .25s ease,font-size .25s ease-in-out,filter .08s ease}.auth-footer a:hover{color:#2c8863}.auth-footer a:active{font-size:15px;filter:brightness(.92)}.auth-success{display:flex;align-items:center;gap:10px;background:#2c886326;border:1px solid #2c8863;padding:14px 16px;margin-bottom:18px;color:#bff0dc;font-size:14px;font-weight:700;animation:fadeInUp .22s ease-out}.auth-success-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#2c8863;color:#fff;font-size:14px;font-weight:900}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sidebar{width:220px;height:100vh;background:#0f0f0f;color:#fff;padding:20px;overflow:hidden;transition:width .15s ease}.sidebar.collapsed{width:64px;background:#040404;border-right:1px solid #1a1a1a;height:auto}.sidebar-top{position:relative;margin-bottom:32px}.logo{font-weight:900;letter-spacing:2px;font-size:18px;white-space:nowrap;transition:opacity .1s ease}.sidebar.collapsed .logo{opacity:0}.collapse-btn{position:absolute;top:0;right:0;background:#111;border:1px solid #222;padding:6px;cursor:pointer}.collapse-btn img{width:20px;height:20px;filter:invert(1);opacity:.85;transition:opacity .15s ease,transform .05s ease}.collapse-btn:hover img{opacity:1}.collapse-btn:active img{transform:scale(.95)}.sidebar.collapsed .collapse-btn{left:50%;right:auto;transform:translate(-50%)}.nav{display:flex;flex-direction:column;gap:14px;transition:opacity .1s ease}.sidebar.collapsed .nav{opacity:0;pointer-events:none}.nav a{position:relative;color:#9a9a9a;text-decoration:none;font-weight:700;letter-spacing:1px;padding:10px 12px;border-left:3px solid transparent;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s ease,border-color .15s ease,background-color .15s ease,transform .05s ease}.nav a:hover,.nav a.active{color:#fff;background-color:#0b0b0b;border-left-color:#b00000}.nav a:active{transform:translate(2px) scale(.98);background-color:#160000;border-left-color:#ff2b2b;color:#ff2b2b}.nav a:after{content:"";position:absolute;inset:0;background:#b0000026;opacity:0;transition:opacity .1s ease}.nav a:active:after{opacity:1}@media(max-width:768px){.sidebar{position:fixed;top:0;left:-220px;width:220px;height:100vh;z-index:1000;transition:left .3s ease}.sidebar.collapsed{left:0;width:220px;background:#0f0f0f;border-right:1px solid #1a1a1a;height:100vh}.sidebar.collapsed .logo{opacity:1}.sidebar.collapsed .nav{opacity:1;pointer-events:all}.sidebar.collapsed .collapse-btn{position:absolute;top:0;right:0;left:auto;transform:none}.mobile-hamburger{position:fixed;top:0;left:0;z-index:999;background:#111;border:1px solid #222;padding:8px;cursor:pointer;display:block}.mobile-hamburger img{width:20px;height:20px;filter:invert(1);opacity:.85}.sidebar:not(.collapsed)~.mobile-hamburger{display:none}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.active{opacity:1;pointer-events:all}}@media(min-width:769px){.mobile-hamburger,.sidebar-overlay{display:none}}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;display:flex;justify-content:center}.page{width:100%;max-width:900px;padding:16px 20px 32px}.app{max-width:760px;margin:0 auto;padding:28px 18px 40px}.header{margin-bottom:26px}.header h1{font-size:30px;font-weight:900;letter-spacing:1.5px}.subtitle{font-size:12px;color:#9a9a9a;letter-spacing:1px}.icon-row{display:flex;gap:14px;align-items:center}.icon{width:38px;height:38px;background:#fff;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:68%;mask-repeat:no-repeat;mask-position:center;mask-size:68%}.bench{-webkit-mask-image:url(/assets/bench-press-CXNFEZNL.png);mask-image:url(/assets/bench-press-CXNFEZNL.png);opacity:.8}.squat{-webkit-mask-image:url(/assets/squat-C-_4ujDG.png);mask-image:url(/assets/squat-C-_4ujDG.png);opacity:.9;width:46px}.deadlift{-webkit-mask-image:url(/assets/deadlift-DLd5BdCO.png);mask-image:url(/assets/deadlift-DLd5BdCO.png);width:54px;opacity:1}.dumbbell{-webkit-mask-image:url(/assets/dumbbell-2ITc_cHQ.png);mask-image:url(/assets/dumbbell-2ITc_cHQ.png);opacity:.85}.empty-state{display:flex;flex-direction:column}.icon-row.muted .icon{opacity:.35}.empty-card{margin-top:48px;padding:42px 26px;background:#080808;border:1px dashed #222;text-align:center}.empty-title{font-size:22px;font-weight:900;letter-spacing:1.4px;margin-bottom:10px}.empty-subtitle{font-size:13px;color:#8a8a8a;letter-spacing:.8px;margin-bottom:32px}.empty-state .start-btn{background:#b00000;border:none;color:#000;padding:16px 26px;font-size:14px;font-weight:900;letter-spacing:1.6px;cursor:pointer;transition:transform .15s ease,background-color .15s ease,color .15s ease}.empty-state .start-btn:hover{background-color:#a90000;color:#fff;transform:translateY(-1px)}.history{display:flex;flex-direction:column;gap:14px}.workout-card{position:relative;background:#0b0b0b;border:1px solid #151515;padding:18px;display:flex;align-items:center;gap:14px;transition:border .15s ease,transform .15s ease}.workout-card:hover{border-color:#b00000;transform:translateY(-1px)}.workout-main{flex:1;text-decoration:none;display:flex;flex-direction:column;gap:6px}.workout-name{font-size:18px;font-weight:700;letter-spacing:.6px;color:#fff}.workout-date{font-size:12px;color:#8a8a8a}.more-btn{background:none;border:none;color:#fff;font-size:22px;cursor:pointer;padding:4px 8px}.more-btn:hover{color:#b00000}.delete-btn{position:absolute;right:18px;top:52px;background:#160000;color:#ff2b2b;border:1px solid #ff2b2b;padding:8px 14px;font-size:12px;font-weight:700;letter-spacing:1px;cursor:pointer}.actions{margin-top:36px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.actions button{background:#0b0b0b;border:1px solid #2a2a2a;color:#fff;padding:16px;font-size:14px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:border .15s ease,color .15s ease}.actions button:hover{border-color:#b00000;color:#ff2b2b}.modal{position:fixed;inset:0}.overlay{background:#000000d9;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.modal-box{background:#0b0b0b;border:1px solid #b00000;padding:26px;width:90%;max-width:420px}.modal-box h3{font-weight:900;letter-spacing:1px;margin-bottom:10px}.modal-box p{font-size:13px;color:#9a9a9a;margin-bottom:22px}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.modal-actions button{background:#111;border:none;color:#fff;padding:10px 16px;font-weight:700;cursor:pointer}.modal-actions .danger{background:#ff2b2b;color:#000}@media(max-width:768px){.app .header h1,.icon-row{padding-left:30px}header{margin-left:20px}}.workout-view-title{font-size:22px;font-weight:900;letter-spacing:1.4px;color:#fff}.workout-header button{background-color:#fff;border:none;color:#000;font-weight:900;letter-spacing:1px;padding:10px 18px;cursor:pointer;transition:background-color .3s ease,color .3s ease,transform .06s ease}.workout-header button:hover{background-color:#2c8863;color:#fff}.workout-header button:active{transform:scale(.97)}.exercise-list{display:flex;flex-direction:column;gap:28px}.exercise-block{border:1px solid #151515;background:#0b0b0b;padding:18px;animation:fadeUp .22s ease both}.exercise-header{margin-bottom:12px}.exercise-name.view{font-size:18px;font-weight:800;letter-spacing:1px;color:#fff}.set-row.header.view{display:grid;grid-template-columns:48px 1fr 1fr;font-size:11px;letter-spacing:1px;color:#6fbfa1}.set-row>span:nth-child(1){margin-left:10}.set-row.view{display:grid;grid-template-columns:48px 1fr 1fr;align-items:stretch;gap:14px;background:#0f0f0f;transition:background-color .2s ease,transform .12s ease}.set-row.view:hover{background:#2c886333;transform:translate(4px)}.set-row.view>span{padding:8px 0;text-align:center;font-weight:700;color:#e0e0e0}.set-index{background:#111;font-weight:900;color:#fff;display:flex;align-items:center;justify-content:center}.set-row.view:hover .set-index{background:#2c8863;color:#000}.workout-view-muted{font-size:13px;color:#777}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.workout-header{margin-left:40px}}@media(max-width:450px){.workout-page{padding:16px 12px 32px}.workout-header{padding-bottom:12px;margin-bottom:20px;margin-left:54px}.workout-view-title{font-size:16px;letter-spacing:1px}.workout-date{font-size:10px}.workout-header button{padding:6px 10px;font-size:11px}.exercise-list{gap:24px}.exercise-block{padding:14px}.exercise-header{margin-bottom:10px}.exercise-name.view{font-size:15px}.set-table{gap:5px}.set-row.header.view{grid-template-columns:36px 1fr 1fr;font-size:9px}.set-row.view{grid-template-columns:36px 1fr 1fr;gap:10px}.set-row.view>span{padding:6px 0;font-size:13px}.set-index{font-size:12px}}.workout-page{max-width:900px;margin:0 auto;padding:20px 24px 40px;color:#eaeaea}.workout-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #1a1a1a;padding-bottom:14px;margin-bottom:24px}.workout-meta{display:flex;flex-direction:column;gap:4px}.workout-title-input{background:transparent;border:none;border-bottom:2px solid #333;color:#fff;font-size:22px;font-weight:900;letter-spacing:1.4px;padding:2px 0}.workout-title-input::placeholder{color:#555}.workout-title-input:focus{outline:none;border-bottom-color:#b00000}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.workout-date{font-size:12px;color:#8a8a8a;letter-spacing:1px}input.workout-date{background:transparent;border:none;border-bottom:1px solid #2a2a2a;color:#8a8a8a;font-size:12px;font-weight:700;letter-spacing:1px;padding:2px 0;width:fit-content;cursor:pointer}input.workout-date:focus{outline:none;border-bottom-color:#b00000;color:#cfcfcf}input.workout-date::-webkit-calendar-picker-indicator{filter:invert(.65);opacity:.6}.exercise-list{display:flex;flex-direction:column;gap:32px}.exercise-block{border:1px solid #151515;background:#0b0b0b;padding:18px}.exercise-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.exercise-name{flex:1;background:transparent;border:none;border-bottom:2px solid #333;color:#fff;font-size:18px;font-weight:700}.exercise-name::placeholder{color:#555}.exercise-name:focus{outline:none;border-bottom-color:#b00000}.delete-btn{position:static;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;cursor:pointer}.delete-btn img{width:16px;height:16px;opacity:.85;transition:opacity .15s ease,transform .05s ease}.delete-btn:hover img{opacity:1}.delete-btn:active img{transform:scale(.9)}.set-table{display:flex;flex-direction:column;gap:6px}.set-row-wrapper{display:flex;flex-direction:column;gap:8px;transition:transform .22s ease,opacity .22s ease}.set-row-wrapper.deleting{transform:translate(-240px);opacity:0;pointer-events:none}.set-row-content{display:grid;grid-template-columns:48px 1fr 104px 104px 40px 16px;align-items:center;gap:14px;transition:background-color .25s ease}.set-row-content>span:nth-child(3),.set-row-content>span:nth-child(4),.set-row-content>input{text-align:center;justify-self:center}.set-row-content>span:nth-child(2){justify-self:center;text-align:center}.set-row-content .previous{display:flex;justify-content:center;align-items:center;text-align:center}.set-row-content.checked{background:linear-gradient(to right,#2c886324,#2c88630d)}.set-row-content.checked input{background:#0b1411;border-color:#2c8863;color:#dff3ea}.set-row-content.checked .set-index{background:#0f1d18;color:#fff}.set-row-content.checked .previous{color:#b7e0cf}.set-row-content input,.set-row-content .set-index,.set-row-content .previous{transition:background-color .25s ease,border-color .25s ease,color .25s ease}.set-row.header{display:grid;grid-template-columns:1fr 1.16fr 100px 68px 40px 16px;align-items:center;gap:14px;font-size:11px;color:#888;letter-spacing:1px;margin-bottom:4px}.set-index{background:#111;text-align:center;padding:6px 0;font-weight:700}.previous{font-size:13px;color:#777;white-space:nowrap}.previous label{display:block;width:80%;margin:0 auto;text-align:center}.set-row-content input{background:#111;border:1px solid #222;color:#fff;width:100%;padding:6px 4px;text-align:center;font-weight:700}.set-row-content input:focus{outline:none;border-color:#b00000}.set-row-content input::placeholder{color:#666;font-weight:600}.rest-timer-bar{width:100%;height:24px;background:#ffffff14;overflow:hidden;position:relative}.rest-progress{height:100%;background:linear-gradient(90deg,#2c8863,#3ca577);transition:width 1s linear;box-shadow:0 0 8px #2c886366}.rest-time{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);background:transparent;border:none;text-align:center;width:50px;outline:none;cursor:pointer}.rest-time:focus{background:#0000004d;border-radius:4px;padding:2px 4px}.rest-time::placeholder{color:#fff;opacity:1}.add-set-btn{margin-top:10px;width:100%;background:#111;border:1px solid #222;color:#bbb;padding:10px;font-weight:700;letter-spacing:1px;cursor:pointer}.add-set-btn:hover{border-color:#b00000;color:#fff}.check-btn{background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center}.check-btn img{width:16px;height:16px;opacity:.55;filter:invert(1);transition:opacity .15s ease,transform .05s ease}.check-btn:hover img{opacity:.85}.check-btn:active img{transform:scale(.92)}.set-delete-btn{background:none;border:none;color:#777;font-size:16px;font-weight:900;cursor:pointer;padding:2px;line-height:1;display:flex;align-items:center;justify-content:center}.set-delete-btn:hover{color:#ff7a7a}.set-delete-btn:active{transform:scale(.85)}.add-exercise-btn{margin-top:20px;width:100%;background:#0b0b0b;border:2px dashed #222;color:#fff;padding:14px;font-weight:900;letter-spacing:1.5px;cursor:pointer}.add-exercise-btn:hover{border-color:#b00000}.finish-btn{background-color:#fff;border:none;color:#000;font-weight:900;letter-spacing:1px;padding:10px 18px;cursor:pointer;transition:background-color .35s ease-in-out,color .35s ease-in-out,filter .18s ease,transform .05s ease}.finish-btn:hover{background-color:#2c8863;color:#fff}.finish-btn:active{transform:scale(.97);filter:brightness(.92)}.cancel-btn{background-color:#fff;border:none;color:#000;font-weight:900;letter-spacing:1px;padding:10px 18px;cursor:pointer;transition:background-color .35s ease-in-out,color .35s ease-in-out,filter .18s ease,transform .05s ease}.cancel-btn:hover{background-color:#2c8863;color:#fff}.cancel-btn:active{transform:scale(.97);filter:brightness(.92)}@media(max-width:670px){.workout-header{gap:10px}}@media(max-width:450px){.workout-page{padding:16px 12px 32px}.workout-header{padding-bottom:12px;margin-bottom:20px}.workout-title-input{font-size:18px;letter-spacing:1px}.workout-date,input.workout-date{font-size:10px}.finish-btn,.cancel-btn{padding:8px 14px;font-size:12px}.exercise-list{gap:24px}.exercise-block{padding:14px}.exercise-header{gap:8px;margin-bottom:12px}.exercise-name{font-size:15px}.delete-btn img{width:14px;height:14px}.set-table{gap:5px}.set-row-wrapper{gap:6px}.set-row-content{grid-template-columns:36px 1fr 70px 70px 32px 14px;gap:8px}.set-row.header{grid-template-columns:1fr 1.4fr 68px 48px 32px 14px;gap:8px;font-size:9px;margin-bottom:3px}.set-index{padding:5px 0;font-size:12px}.previous{font-size:11px}.set-row-content input{padding:5px 3px;font-size:13px}.rest-timer-bar{height:20px}.rest-time{font-size:10px}.check-btn img{width:14px;height:14px}.set-delete-btn{font-size:14px}.add-set-btn{margin-top:8px;padding:8px;font-size:12px}.add-exercise-btn{margin-top:16px;padding:12px;font-size:13px}}.templates-page{max-width:900px;margin:0 auto;padding:20px 24px 40px;color:#eaeaea}.templates-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #1a1a1a;padding-bottom:14px;margin-bottom:24px}.templates-title{font-size:22px;font-weight:900;letter-spacing:1.4px}.create-template-btn{background:#fff;border:none;color:#000;padding:8px 14px;margin-right:14px;font-weight:700;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .08s ease}.create-template-btn:hover{background-color:#2c8863;color:#fff}.create-template-btn:active{transform:scale(.96);filter:brightness(.9)}.back-btn{background:#111;border:1px solid #222;color:#bbb;padding:8px 14px;font-weight:700;cursor:pointer;transition:border-color .15s ease,color .15s ease,transform .08s ease}.back-btn:hover{border-color:#b00000;color:#fff}.back-btn:active{transform:scale(.95)}.templates-list{display:flex;flex-direction:column;gap:28px}.template-card{background:#0b0b0b;border:1px solid #151515;padding:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.template-card:hover{transform:translateY(-2px);border-color:#2c8863;box-shadow:0 8px 18px #00000073}.template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.template-name{font-size:18px;font-weight:800;letter-spacing:1px;cursor:pointer;transition:color .15s ease,transform .12s ease,letter-spacing .12s ease}.template-name:hover{color:#2c8863;transform:translate(2px);letter-spacing:1.2px}.start-btn{background:#fff;border:none;color:#000;font-weight:900;padding:8px 14px;cursor:pointer;letter-spacing:1px;transition:background-color .25s ease,transform .08s ease,filter .08s ease}.start-btn:hover{background:#2c8863;color:#fff}.start-btn:active{transform:scale(.96);filter:brightness(.9)}.template-exercises{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.template-exercise{background:#111;border:1px solid #222;padding:8px 10px;font-weight:600;color:#ccc;transition:background-color .15s ease,border-color .15s ease,transform .12s ease}.template-exercise:hover{background-color:#141414;border-color:#333;transform:translate(2px)}.template-actions{display:flex;justify-content:flex-end;gap:10px}.edit-btn{background:#111;border:1px solid #222;color:#bbb;padding:8px 12px;font-weight:700;cursor:pointer;transition:border-color .15s ease,color .15s ease,transform .08s ease}.edit-btn:hover{border-color:#b00000;color:#fff}.edit-btn:active{transform:scale(.94)}.delete-template-btn{background:none;border:1px solid #400;color:#ff7a7a;padding:8px 12px;font-weight:700;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .08s ease}.delete-template-btn:hover{background:#400;color:#fff}.delete-template-btn:active{transform:scale(.94)}@media(max-width:768px){.templates-header{margin-left:40px}}@media(max-width:450px){.templates-page{padding:16px 12px 32px}.templates-header{padding-bottom:12px;margin-bottom:20px;margin-left:50px}.templates-title{font-size:18px;letter-spacing:1px}.templates-header button{padding:6px 10px;font-size:11px}.templates-list{gap:20px}.template-card{padding:14px}.template-header{margin-bottom:10px}.template-name{font-size:16px;letter-spacing:1px}.start-btn{padding:6px 12px;font-size:11px}.template-exercises{gap:6px;margin-bottom:12px}.template-exercise{padding:6px 10px;font-size:12px}.template-actions{gap:8px}.edit-btn,.delete-template-btn{padding:6px 10px;font-size:11px}.template-view{padding:16px 12px 32px}.template-view-header{padding-bottom:12px;margin-bottom:20px}.template-view-title{font-size:18px;letter-spacing:1px}.template-view-actions{gap:6px}.template-view-actions .start-btn,.template-view-actions .edit-btn,.template-view-actions .back-btn{padding:6px 10px;font-size:11px}.template-view-body{gap:20px}.exercise-block{padding:14px}.exercise-title{font-size:15px;margin-bottom:10px}.set-list{gap:5px}.template-view .set-row{padding:6px 10px;font-size:12px}}.template-view{max-width:760px;margin:0 auto;padding:28px 18px 40px}.template-view-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #1a1a1a;padding-bottom:14px;margin-bottom:28px}.template-view-title{font-size:26px;font-weight:900;letter-spacing:1.6px}.template-view-actions{display:flex;gap:10px}.template-view-actions .start-btn{background:#fff;color:#000}.template-view-actions .start-btn:hover{background:#2c8863;color:#fff}.template-view-actions .edit-btn,.template-view-actions .back-btn{padding:8px 14px}.template-view-body{display:flex;flex-direction:column;gap:28px}.exercise-block{background:#0b0b0b;border:1px solid #151515;padding:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.exercise-block:hover{transform:translateY(-2px);border-color:#2c8863;box-shadow:0 8px 18px #00000073}.exercise-title{font-size:18px;font-weight:800;letter-spacing:1px;margin-bottom:14px}.set-list{display:flex;flex-direction:column;gap:6px}.template-view .set-row{display:block;background:#111;border:1px solid #222;padding:8px 12px;font-size:14px;font-weight:600;color:#ccc;transition:background-color .15s ease,border-color .15s ease,transform .12s ease}.set-row:hover{background-color:#141414;border-color:#333;transform:translate(2px)}@media(max-width:768px){.template-view-header{margin-left:46px}}@media(max-width:450px){.template-view-header{margin-left:56px}.template-view{padding:16px 12px 32px}.template-view-header{align-items:flex-start;gap:12px;padding-bottom:12px;margin-bottom:20px}.template-view-title{font-size:18px;letter-spacing:1px}.template-view-actions{gap:6px;width:100%}.template-view-actions .start-btn,.template-view-actions .edit-btn,.template-view-actions .back-btn{padding:6px 10px;font-size:11px}.template-view-body{gap:20px}.exercise-block{padding:14px}.exercise-title{font-size:15px;margin-bottom:10px}.set-list{gap:5px}.template-view .set-row{padding:6px 10px;font-size:12px}}.graph-page{max-width:920px;margin:0 auto;padding:18px 20px 32px;color:#eaeaea;display:flex;flex-direction:column;gap:18px}.graph-card{position:relative;background:#0b0b0b;border:1px solid #151515;padding:14px}.graph-empty{position:absolute;inset:0 0 48px 30px;display:grid;place-items:center;z-index:2;pointer-events:auto}.graph-empty-content{display:flex;flex-direction:column;gap:10px}.graph-empty-row{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#d1d5db;background-color:#0d948829;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:clamp(14px,1.4vw,16px);font-weight:800;letter-spacing:.35px;padding:clamp(10px,1.2vw,12px) clamp(16px,2.5vw,20px);border-radius:10px;transition:background-color .2s ease,box-shadow .2s ease,transform .15s ease}.graph-summary{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:10px;padding:10px 12px;background:#0f0f0f;border:1px solid #151515;border-radius:8px}.graph-summary-title{width:100%;font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:#9a9a9a}.graph-summary-item{font-size:13px;font-weight:800;padding:6px 10px;border-radius:6px;background:#ffffff08;border:1px solid #1a1a1a}.graph-summary-item.positive{color:#34d399}.graph-summary-item.negative{color:#f87171}.graph-summary-item.stagnation{color:#94a3b8;background:#94a3b814;border:1px solid rgba(148,163,184,.25)}@media(hover:hover){.graph-empty-row:hover{background-color:#0d948847;box-shadow:0 0 0 1px #0d948873;transform:translateY(-1px)}}.graph-empty-row span{max-width:90%;line-height:1.4;text-align:center}.graph-empty-icon{display:block;width:clamp(18px,2.2vw,20px);height:clamp(18px,2.2vw,20px);opacity:.85;filter:invert(1) brightness(1.1)}.progress-chart{width:100%;height:380px}.progress-chart text{fill:#cfcfcf;font-size:12px;font-weight:600}.recharts-cartesian-grid line{stroke:#1a1a1a}.recharts-legend-item-text{color:#cfcfcf!important;font-size:13px}.graph-controls{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.graph-input,.graph-select{display:flex;flex-direction:column;gap:4px}.graph-controls label{font-size:11px;letter-spacing:1px;font-weight:800;color:#8a8a8a}.graph-controls input,.graph-controls select{background:#0f0f0f;border:1px solid #151515;color:#fff;padding:8px 10px;font-size:13px;font-weight:700;outline:none;transition:border-color .2s ease}.graph-controls input::placeholder{color:#666}.graph-controls input:focus,.graph-controls select:focus{border-color:#2c8863}.graph-tooltip{background:#0f0f0f;border:1px solid #2c8863;border-radius:6px;padding:12px 14px;font-size:13px;color:#eaeaea;min-width:200px}.graph-tooltip strong{font-weight:900;font-size:14px;color:#fff}.graph-tooltip .tooltip-date{font-size:12px;color:#9a9a9a;margin-bottom:6px}.graph-tooltip hr{border:none;border-top:1px solid #1a1a1a;margin:6px 0}.graph-tooltip .set-line{font-size:12px;color:#cfcfcf}@media(max-width:600px){.graph-controls{flex-direction:column;align-items:stretch}}@media(max-width:450px){.graph-page{padding:14px 12px 28px;margin-top:30px;gap:14px}.graph-card{padding:8px}.progress-chart{height:320px}.graph-empty{inset:8px 8px 40px 85px}.graph-empty-content{gap:6px}.graph-empty-row{padding:6px 10px;font-size:11px;gap:6px;border-radius:6px;max-width:85%}.graph-empty-row span{max-width:100%}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.graph-controls label{font-size:10px}.graph-controls input,.graph-controls select{padding:6px 8px;font-size:12px}.graph-tooltip{padding:10px 12px;font-size:12px;min-width:160px}.graph-tooltip strong{font-size:13px}.graph-tooltip .tooltip-date{font-size:11px}.graph-tooltip .set-line{font-size:12px}.progress-chart text{font-size:10px}.recharts-legend-item-text{font-size:11px!important}}.import-page{max-width:900px;margin:0 auto;padding:20px 24px 40px;color:#eaeaea}.import-header{border-bottom:2px solid #1a1a1a;padding-bottom:14px;margin-bottom:24px}.import-title{font-size:28px;font-weight:900;letter-spacing:2px}.import-body{display:grid;grid-template-columns:1fr 1.6fr;gap:32px;align-items:start}.import-instructions{background:#0b0b0b;border:1px solid #151515;padding:20px;display:flex;flex-direction:column;gap:20px}.import-instructions-title{font-size:12px;font-weight:800;letter-spacing:1.5px;color:#8a8a8a;text-transform:uppercase}.import-step{display:flex;gap:14px;align-items:flex-start}.import-step-number{font-size:22px;font-weight:900;color:#b00000;line-height:1;min-width:24px}.import-step-text{font-size:13px;font-weight:600;color:#aaa;line-height:1.6}.import-step-text strong{color:#fff;font-weight:800}.import-supported{font-size:11px;color:#555;letter-spacing:1px;border-top:1px solid #1a1a1a;padding-top:14px}.import-supported span{color:#2c8863;font-weight:800}.import-form{display:flex;flex-direction:column;gap:14px}.import-select-wrapper{display:flex;flex-direction:column;gap:6px}.import-select-label{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#8a8a8a;text-transform:uppercase}.import-select{background:#111;border:1px solid #2a2a2a;color:#eaeaea;font-size:13px;font-weight:600;font-family:monospace;padding:12px 20px;outline:none;cursor:pointer;width:100%;transition:border-color .2s ease;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238a8a8a' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.import-select:focus{border-color:#b00000}.import-textarea{width:100%;min-height:420px;background:#0b0b0b;border:1px solid #1a1a1a;color:#eaeaea;font-size:13px;font-weight:600;font-family:monospace;padding:20px;resize:vertical;outline:none;transition:border-color .2s ease;box-sizing:border-box;line-height:1.7}.import-textarea:focus{border-color:#b00000}.import-textarea::placeholder{color:#444}.import-btn{background:#fff;border:none;color:#000;font-weight:900;letter-spacing:1.5px;padding:14px 32px;font-size:15px;cursor:pointer;width:100%;transition:background-color .25s ease,color .25s ease,transform .05s ease}.import-btn:hover{background-color:#2c8863;color:#fff}.import-btn:active{transform:scale(.97);filter:brightness(.92)}@media(max-width:650px){.import-body{grid-template-columns:1fr}.import-textarea{min-height:280px}}@media(max-width:450px){.import-page{padding:16px 12px 32px}.import-title{font-size:20px}.import-textarea{font-size:12px;padding:14px}.import-btn{padding:10px 20px;font-size:13px}}
