.login-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0d1117;display:flex;justify-content:center;align-items:center;z-index:1000}.login-container{background:rgba(30,37,48,.95);padding:3rem 2.5rem;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);border:1px solid rgba(255,133,27,.2);min-width:400px;max-width:500px;text-align:center}.login-container h1{color:#ff851b;font-size:1.8rem;margin-bottom:2rem;font-weight:600}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-form .input-group{display:flex;flex-direction:column;gap:.5rem;text-align:left}.login-form .input-group label{color:#bbb;font-weight:500;font-size:.9rem}.login-form .input-group input[type=password]{padding:1rem;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#bbb;font-size:1rem;transition:all .3s ease}.login-form .input-group input[type=password]:focus{outline:none;border-color:#ff851b;box-shadow:0 0 0 3px rgba(255,133,27,.1);background:hsla(0,0%,100%,.15)}.login-form .input-group input[type=password]::placeholder{color:hsla(0,0%,100%,.5)}.login-form .login-button{padding:1rem 2rem;background:#ff851b;border:none;border-radius:6px;color:#0d1117;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.login-form .login-button:hover{background:rgb(255,160.2894736842,78);transform:translateY(-1px)}.login-form .login-button:active{transform:translateY(0)}.login-form .login-error{color:#ff6b6b;font-size:.9rem;padding:.75rem;background:rgba(255,107,107,.1);border:1px solid rgba(255,107,107,.3);border-radius:6px;margin-top:.5rem}@media(max-width: 768px){.login-container{margin:1rem;padding:2rem 1.5rem;min-width:auto;width:calc(100% - 2rem)}}.title-with-selector{display:flex;align-items:center;justify-content:flex-end;margin-bottom:.5rem;flex-wrap:wrap;gap:.75rem}.month-selector{display:flex;align-items:center;gap:.5rem;background:rgba(255,133,27,.15);padding:.35rem .5rem;border-radius:6px;border:1px solid rgba(255,133,27,.3);box-shadow:0 2px 6px rgba(0,0,0,.15)}.month-selector label{color:#838383;font-weight:500;font-size:.9rem;white-space:nowrap}.month-selector .month-select{background:hsla(0,0%,100%,.15);border:1px solid rgba(255,133,27,.4);border-radius:4px;color:#bbb;font-size:.85rem;font-weight:500;padding:.3rem .4rem;min-width:110px;transition:all .3s ease}.month-selector .month-select:focus{outline:none;border-color:#ff851b;box-shadow:0 0 0 2px rgba(255,133,27,.3);background:hsla(0,0%,100%,.2)}.month-selector .month-select option{background:#12161d;color:#bbb}@media(max-width: 768px){.title-with-selector{justify-content:center;margin-bottom:.5rem;gap:.5rem}.month-selector{padding:.3rem .4rem}.month-selector .month-select{min-width:95px;font-size:.8rem;padding:.25rem .35rem}}.routine-selector{margin:0 0 1.5rem 0}.routine-selector .selector-grid{background:rgba(18,22,29,.6);border-radius:8px;overflow:hidden;border:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.25)}.routine-selector .weeks-row{display:grid;grid-template-columns:repeat(4, 1fr);border-bottom:1px solid hsla(0,0%,100%,.15)}.routine-selector .weeks-row .week-header{padding:.5rem .4rem;text-align:center;background:hsla(0,0%,100%,.05);border-right:1px solid hsla(0,0%,100%,.1);border-bottom:2px solid rgba(0,0,0,0);box-sizing:border-box;min-height:36px;display:flex;align-items:center;justify-content:center}.routine-selector .weeks-row .week-header:last-child{border-right:none}.routine-selector .weeks-row .week-header .week-title{font-weight:600;font-size:.9rem;color:#838383;text-transform:uppercase;letter-spacing:.5px}.routine-selector .weeks-row .week-header.active{background:rgba(255,133,27,.2);border-bottom:2px solid #ff851b}.routine-selector .weeks-row .week-header.active .week-title{color:#ff851b;font-weight:bold}.routine-selector .days-row{display:grid;grid-template-columns:repeat(4, 1fr)}.routine-selector .days-row .week-days{display:grid;grid-template-columns:repeat(3, 1fr);border-right:1px solid hsla(0,0%,100%,.1)}.routine-selector .days-row .week-days:last-child{border-right:none}.routine-selector .days-row .week-days .day-link{padding:.4rem .25rem;text-align:center;cursor:pointer;background:hsla(0,0%,100%,.02);border-right:1px solid hsla(0,0%,100%,.08);border-top:2px solid rgba(0,0,0,0);border-bottom:2px solid rgba(0,0,0,0);transition:all .3s ease;font-size:.8rem;color:#838383;box-sizing:border-box;min-height:32px;display:flex;align-items:center;justify-content:center}.routine-selector .days-row .week-days .day-link:last-child{border-right:none}.routine-selector .days-row .week-days .day-link:hover{background:rgba(255,133,27,.15);color:#bbb}.routine-selector .days-row .week-days .day-link.active{background:rgba(255,133,27,.3);color:#ff851b;font-weight:bold;border-top:2px solid #ff851b}.current-routine{margin:1rem 0}.current-routine h3{color:#ff851b;margin-bottom:1rem;font-size:1.3rem}.current-routine .routine-section{margin-bottom:1.25rem}.exercise-container{display:flex;align-items:center;gap:.75rem;min-height:2rem}.exercise-container .exercise-name{font-weight:500;color:#bbb;font-size:.85rem;flex:1;min-width:0}.exercise-container .exercise-selector{flex-shrink:0;min-width:110px;max-width:125px;padding:.3rem .4rem;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#bbb;font-size:.75rem}.exercise-container .exercise-selector:focus{outline:none;border-color:#ff851b;box-shadow:0 0 0 2px rgba(255,133,27,.2)}.exercise-container .exercise-selector option{background:#12161d;color:#bbb}.routine-table{width:100%;border-collapse:collapse;background:rgba(18,22,29,.8);border-radius:6px;overflow:hidden;margin-bottom:.75rem;font-size:.85rem}.routine-table th,.routine-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid hsla(0,0%,100%,.1)}.routine-table .section-header{background:rgba(18,22,29,.95);color:#ff851b;cursor:pointer;user-select:none;transition:all .3s ease}.routine-table .section-header th{padding:.6rem .8rem;font-size:.9rem;font-weight:600;text-transform:none;letter-spacing:.3px;border-bottom:1px solid hsla(0,0%,100%,.1);position:relative}.routine-table .section-header th:hover{background:rgba(255,133,27,.1);color:rgb(255,160.2894736842,78)}.routine-table .section-header th .section-title{flex:1}.routine-table .section-header th .collapse-icon{float:right;font-size:.75rem;transition:transform .3s ease;margin-left:.75rem;color:#ff851b}.routine-table .section-header.expanded .collapse-icon{transform:rotate(180deg)}.routine-table .column-headers th{background:rgba(255,133,27,.2);color:#ff851b;font-weight:bold;font-size:.8rem;text-transform:uppercase;letter-spacing:.4px}.routine-table th:not(.section-header th):not(.column-headers th){background:rgba(255,133,27,.2);color:#ff851b;font-weight:bold;font-size:.8rem;text-transform:uppercase;letter-spacing:.4px}.routine-table td{color:#bbb}.routine-table td:first-child{font-weight:500;color:#bbb}.routine-table tr:hover{background:hsla(0,0%,100%,.05)}.routine-table tr:last-child td{border-bottom:none}.workout-content h2{color:#ff851b;font-size:1.1rem;margin:1.5rem 0 .75rem 0;padding-bottom:.25rem;border-bottom:1px solid rgba(255,133,27,.3)}.workout-table-container{overflow-x:auto;margin:0 0 1rem 0;border-radius:6px;box-shadow:0 3px 8px rgba(0,0,0,.25);border:1px solid hsla(0,0%,100%,.1)}.workout-table{width:100%;border-collapse:collapse;background:#12161d;color:#bbb;font-size:.85rem}.workout-table th,.workout-table td{padding:.5rem .4rem;text-align:center;border:1px solid hsla(0,0%,100%,.15)}.workout-table thead{background:#ff851b;color:#fff}.workout-table thead th{font-weight:bold;position:sticky;top:0;z-index:10}.workout-table thead .percentage-row th{background:rgb(231,107.3947368421,0);font-size:.75rem;padding:.35rem .3rem}.workout-table tbody tr:nth-child(even){background:hsla(0,0%,100%,.05)}.workout-table tbody tr:hover{background:rgba(255,133,27,.2)}.workout-table tbody td{font-family:"JetBrains Mono",monospace;font-size:.8rem}.workout-table tbody .row-number{background:rgba(255,133,27,.3);font-weight:bold;color:#ff851b}@media(max-width: 768px){.routine-selector .selector-grid{border-radius:8px}.routine-selector .weeks-row .week-header{padding:.35rem .25rem;min-height:28px}.routine-selector .weeks-row .week-header .week-title{font-size:.75rem}.routine-selector .days-row .week-days .day-link{padding:.3rem .1rem;font-size:.7rem;min-height:24px}.exercise-container{flex-direction:column;align-items:flex-start;gap:.4rem;min-height:auto}.exercise-container .exercise-name{font-size:.8rem}.exercise-container .exercise-selector{width:100%;min-width:auto;max-width:none;font-size:.7rem;padding:.25rem .3rem}.routine-table{font-size:.75rem}.routine-table th,.routine-table td{padding:.4rem .3rem}.routine-table th{font-size:.7rem}.workout-table{font-size:.75rem}.workout-table th,.workout-table td{padding:.35rem .2rem}.workout-table thead .percentage-row th{font-size:.65rem}.workout-table tbody td{font-size:.7rem}}
