body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.dark-theme-body{color:#fff}.you-are-without-deadlines-label{color:#000;padding-top:20px}.add-task-fab-right{bottom:16px;position:fixed!important;right:16px}.add-task-fab-left{bottom:16px;left:16px;position:fixed!important}.add-deadline-fab-left{bottom:16px;left:80px;position:fixed!important}.add-deadline-fab-right{bottom:16px;position:fixed!important;right:80px}.min-width-for-select{min-width:400px}@media(max-width:768px){.mobile-display-none{display:none}.mobile-d-flex{display:flex}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.align-self-flex-start{align-self:flex-start}.align-self-center{align-self:center}.mr-5-px{margin-right:5px}.px-20-px{padding-left:20px;padding-right:20px}.py-10-px{padding-bottom:10px;padding-top:10px}.auth-screen,.justify-content-center{justify-content:center}.auth-screen{align-items:center;background:linear-gradient(180deg,#0f172a,#111827);display:flex;min-height:100vh;padding:24px}.auth-card{background:#0f172aeb;border:1px solid #94a3b840;border-radius:18px;box-shadow:0 24px 80px #00000059;color:#e2e8f0;max-width:420px;padding:32px;width:100%}.auth-card h1{font-size:32px;margin-bottom:8px;margin-top:0}.auth-card p{color:#94a3b8;margin:0 0 24px}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-form input{background:#0f172acc;border:1px solid #334155;border-radius:12px;color:#f8fafc;font-size:16px;padding:14px 16px}.auth-form button{background:#38bdf8;border:none;border-radius:12px;color:#082f49;cursor:pointer;font-size:16px;font-weight:700;padding:14px 16px}.auth-form button:disabled{cursor:not-allowed;opacity:.6}.auth-error{color:#fca5a5;font-size:14px}.HabitItem .error-span{color:red;font-size:12px;margin-top:0}.HabitItem .description-cell input{width:600px}.HabitItem .description-cell{min-width:400px}.HabitsPage{align-items:center;display:flex;flex-direction:column}.HabitsPage .habits-page-content{box-sizing:border-box;padding-bottom:80px}.HabitsPage table{min-width:-webkit-max-content;min-width:max-content}.HabitsPage td.habit-action-button-wrapper,.HabitsPage th.habit-action-button-wrapper{padding:0}.HabitsPage td.habit-action-button-wrapper button,.HabitsPage th.habit-action-button-wrapper button{height:37px;width:100%}.HabitsPage td,.HabitsPage th{border:1px solid #ccc;padding:8px}.HabitsPage .habits-table-wrapper{width:100%}.HabitsPage .search-container{margin-bottom:20px;max-width:600px;position:relative;width:100%}.HabitsPage .search-container .search-input{border:2px solid #ddd;border-radius:8px;font-size:16px;outline:none;padding:12px 40px 12px 16px;transition:border-color .3s ease;width:100%}.HabitsPage .search-container .search-input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.HabitsPage .search-container .search-input::placeholder{color:#999}.HabitsPage .search-container .clear-search-button{background:none;border:none;border-radius:50%;color:#999;cursor:pointer;font-size:18px;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease}.HabitsPage .search-container .clear-search-button:hover{background-color:#f0f0f0;color:#666}.HabitsPage .search-results-info{color:#666;font-size:14px;font-style:italic;margin-bottom:16px}@media(max-width:768px){.HabitsPage .habits-page-content{max-width:100vw;padding-left:12px;padding-right:12px;width:100%}.HabitsPage .habits-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}}.CreateBadHabitModal,.EditHabitModal,.HabitInput,.modal-content-container{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:column;font-size:25px;width:100%}.CreateBadHabitModal input,.EditHabitModal input,.HabitInput input,.modal-content-container input{font-size:30px;margin-bottom:30px}.CreateBadHabitModal .error-span,.EditHabitModal .error-span,.HabitInput .error-span,.modal-content-container .error-span{color:red;font-size:24px;margin-top:0}.CreateBadHabitModal input[type=text],.EditHabitModal input[type=text],.HabitInput input[type=text],.modal-content-container input[type=text]{font-size:30px;width:100%}.CreateBadHabitModal textarea,.EditHabitModal textarea,.HabitInput textarea,.modal-content-container textarea{font-family:monospace;font-size:20px;margin-bottom:10px;resize:vertical;width:100%}.CreateBadHabitModal input[type=number],.EditHabitModal input[type=number],.HabitInput input[type=number],.modal-content-container input[type=number]{margin-right:5px;width:80px}.CreateBadHabitModal optgroup,.EditHabitModal optgroup,.HabitInput optgroup,.modal-content-container optgroup{font-size:25px}.CreateBadHabitModal select,.EditHabitModal select,.HabitInput select,.modal-content-container select{font-size:31px;margin-right:5px}.CreateBadHabitModal .top-line,.EditHabitModal .top-line,.HabitInput .top-line,.modal-content-container .top-line{display:flex;justify-content:space-between;width:100%}.CreateBadHabitModal .time-inputs-row,.EditHabitModal .time-inputs-row,.HabitInput .time-inputs-row,.modal-content-container .time-inputs-row{display:flex;gap:15px;margin-bottom:20px;width:100%}.CreateBadHabitModal .time-inputs-row .time-input-group,.EditHabitModal .time-inputs-row .time-input-group,.HabitInput .time-inputs-row .time-input-group,.modal-content-container .time-inputs-row .time-input-group{display:flex;flex:1 1;flex-direction:column}.CreateBadHabitModal .time-inputs-row .time-input-group label,.EditHabitModal .time-inputs-row .time-input-group label,.HabitInput .time-inputs-row .time-input-group label,.modal-content-container .time-inputs-row .time-input-group label{font-size:20px;margin-bottom:5px}.CreateBadHabitModal .time-inputs-row .time-input-group input[type=time],.EditHabitModal .time-inputs-row .time-input-group input[type=time],.HabitInput .time-inputs-row .time-input-group input[type=time],.modal-content-container .time-inputs-row .time-input-group input[type=time]{font-size:25px;margin-bottom:0}.CreateBadHabitModal .days-of-week-container,.EditHabitModal .days-of-week-container,.HabitInput .days-of-week-container,.modal-content-container .days-of-week-container{margin-bottom:20px}.CreateBadHabitModal .days-of-week-container .days-row,.EditHabitModal .days-of-week-container .days-row,.HabitInput .days-of-week-container .days-row,.modal-content-container .days-of-week-container .days-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.CreateBadHabitModal .days-of-week-container .days-row .DayOfWeekFrequencyInput,.EditHabitModal .days-of-week-container .days-row .DayOfWeekFrequencyInput,.HabitInput .days-of-week-container .days-row .DayOfWeekFrequencyInput,.modal-content-container .days-of-week-container .days-row .DayOfWeekFrequencyInput{flex:1 1;margin-bottom:0;min-width:120px}.CreateBadHabitModal .days-of-week-container .days-row .DayOfWeekFrequencyInput label,.EditHabitModal .days-of-week-container .days-row .DayOfWeekFrequencyInput label,.HabitInput .days-of-week-container .days-row .DayOfWeekFrequencyInput label,.modal-content-container .days-of-week-container .days-row .DayOfWeekFrequencyInput label{font-size:18px}.CreateBadHabitModal .notification-checkbox,.EditHabitModal .notification-checkbox,.HabitInput .notification-checkbox,.modal-content-container .notification-checkbox{align-items:center;margin:10px 0}.CreateBadHabitModal .notification-checkbox label,.EditHabitModal .notification-checkbox label,.HabitInput .notification-checkbox label,.modal-content-container .notification-checkbox label{margin-right:10px}.CreateBadHabitModal .notification-checkbox input[type=checkbox],.EditHabitModal .notification-checkbox input[type=checkbox],.HabitInput .notification-checkbox input[type=checkbox],.modal-content-container .notification-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.CreateBadHabitModal .vitamin-consumption-container,.EditHabitModal .vitamin-consumption-container,.HabitInput .vitamin-consumption-container,.modal-content-container .vitamin-consumption-container{margin-bottom:20px;width:100%}.CreateBadHabitModal .vitamin-consumption-container label,.EditHabitModal .vitamin-consumption-container label,.HabitInput .vitamin-consumption-container label,.modal-content-container .vitamin-consumption-container label{align-items:center;display:flex;font-size:22px;margin-bottom:10px}.CreateBadHabitModal .vitamin-consumption-container label input[type=checkbox],.EditHabitModal .vitamin-consumption-container label input[type=checkbox],.HabitInput .vitamin-consumption-container label input[type=checkbox],.modal-content-container .vitamin-consumption-container label input[type=checkbox]{height:25px;margin-bottom:0;margin-right:10px;width:25px}.CreateBadHabitModal .vitamin-consumption-container .vitamin-value-input,.EditHabitModal .vitamin-consumption-container .vitamin-value-input,.HabitInput .vitamin-consumption-container .vitamin-value-input,.modal-content-container .vitamin-consumption-container .vitamin-value-input{display:flex;flex-direction:column;margin-top:10px}.CreateBadHabitModal .vitamin-consumption-container .vitamin-value-input label,.EditHabitModal .vitamin-consumption-container .vitamin-value-input label,.HabitInput .vitamin-consumption-container .vitamin-value-input label,.modal-content-container .vitamin-consumption-container .vitamin-value-input label{font-size:20px;margin-bottom:5px}.CreateBadHabitModal .vitamin-consumption-container .vitamin-value-input input[type=number],.EditHabitModal .vitamin-consumption-container .vitamin-value-input input[type=number],.HabitInput .vitamin-consumption-container .vitamin-value-input input[type=number],.modal-content-container .vitamin-consumption-container .vitamin-value-input input[type=number]{font-size:25px;margin-bottom:0;width:200px}.CreateBadHabitModal .auto-diet-on-complete-container,.CreateBadHabitModal .hide-next-items-container,.EditHabitModal .auto-diet-on-complete-container,.EditHabitModal .hide-next-items-container,.HabitInput .auto-diet-on-complete-container,.HabitInput .hide-next-items-container,.modal-content-container .auto-diet-on-complete-container,.modal-content-container .hide-next-items-container{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;width:100%}.CreateBadHabitModal .auto-diet-on-complete-container label,.CreateBadHabitModal .hide-next-items-container label,.EditHabitModal .auto-diet-on-complete-container label,.EditHabitModal .hide-next-items-container label,.HabitInput .auto-diet-on-complete-container label,.HabitInput .hide-next-items-container label,.modal-content-container .auto-diet-on-complete-container label,.modal-content-container .hide-next-items-container label{font-size:20px}.CreateBadHabitModal .auto-diet-on-complete-container input,.CreateBadHabitModal .auto-diet-on-complete-container select,.CreateBadHabitModal .hide-next-items-container input,.CreateBadHabitModal .hide-next-items-container select,.EditHabitModal .auto-diet-on-complete-container input,.EditHabitModal .auto-diet-on-complete-container select,.EditHabitModal .hide-next-items-container input,.EditHabitModal .hide-next-items-container select,.HabitInput .auto-diet-on-complete-container input,.HabitInput .auto-diet-on-complete-container select,.HabitInput .hide-next-items-container input,.HabitInput .hide-next-items-container select,.modal-content-container .auto-diet-on-complete-container input,.modal-content-container .auto-diet-on-complete-container select,.modal-content-container .hide-next-items-container input,.modal-content-container .hide-next-items-container select{box-sizing:border-box;font-size:22px;margin-bottom:0;max-width:100%;width:100%}.CreateBadHabitModal .auto-diet-on-complete-container .search-select-wrapper,.CreateBadHabitModal .hide-next-items-container .search-select-wrapper,.EditHabitModal .auto-diet-on-complete-container .search-select-wrapper,.EditHabitModal .hide-next-items-container .search-select-wrapper,.HabitInput .auto-diet-on-complete-container .search-select-wrapper,.HabitInput .hide-next-items-container .search-select-wrapper,.modal-content-container .auto-diet-on-complete-container .search-select-wrapper,.modal-content-container .hide-next-items-container .search-select-wrapper{margin-bottom:0;width:100%}.bootstrap-success-button,.create-habit-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:25px;margin-bottom:20px;margin-top:5px;padding:10px 20px;width:100%}.bootstrap-success-button:hover,.create-habit-button:hover{background-color:#218838}.bootstrap-success-button:active,.create-habit-button:active{background-color:#1e7e34}.modal{align-items:center;background-color:#0006;display:flex;height:100vh;justify-content:center;left:0;opacity:0;pointer-events:none;position:fixed;top:0;transition:.5s;width:100vw}.modal .modal-content{background-color:#fff;border-radius:12px;max-height:90vh;overflow-y:auto;padding:20px;transform:scale(.5);transition:all .4s;width:50vw}.modal .modal-content.active{transform:scale(1)}.modal.active{opacity:1;pointer-events:all}.DayOfWeekFrequencyInput{align-items:center;display:flex}.DayOfWeekFrequencyInput input{align-self:center;justify-self:center;margin:10px 0 0 10px;padding:0}.DayOfWeekFrequencyInput label{margin:0;padding:0}.notification-checkbox{align-items:center;margin:10px 0}.notification-checkbox label{margin-right:10px}.notification-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.time-inputs-row{display:flex;gap:15px;margin-bottom:20px;width:100%}.time-inputs-row .time-input-group{display:flex;flex:1 1;flex-direction:column}.time-inputs-row .time-input-group label{font-size:20px;margin-bottom:5px}.time-inputs-row .time-input-group input[type=time]{font-size:25px;margin-bottom:0}.days-of-week-container{margin-bottom:20px}.days-of-week-container .days-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.days-of-week-container .days-row .DayOfWeekFrequencyInput{flex:1 1;margin-bottom:0;min-width:120px}.days-of-week-container .days-row .DayOfWeekFrequencyInput label{font-size:18px}.NavBar{background-color:#fff;border-bottom:1px solid #000;font-size:25px;position:relative}.NavBar a{display:inline-block;text-decoration:none}.NavBar .nav-action,.NavBar a{color:inherit;padding:5px 10px}.NavBar .nav-action{background:none;border:none;cursor:pointer;font:inherit}.NavBar .mobile-nav{display:flex;flex-direction:column}.NavBar .mobile-nav .mobile-nav-main{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding:5px 10px}.NavBar .mobile-nav .menu-toggle{background:none;border:none;color:inherit;cursor:pointer;font-size:30px;padding:5px 15px}.NavBar .mobile-nav .mobile-menu-dropdown{background-color:#fff;border-top:1px solid #ddd;box-shadow:0 2px 5px #0000001a;display:flex;flex-direction:column;left:0;padding:10px 0;position:absolute;right:0;top:100%;z-index:1000}.NavBar .mobile-nav .mobile-menu-dropdown a{border-bottom:1px solid #f0f0f0;padding:10px 20px}.NavBar .mobile-nav .mobile-menu-dropdown a:hover{background-color:#f5f5f5}.NavBar .mobile-nav .mobile-menu-dropdown a:last-child{border-bottom:none}.NavBar .mobile-nav .mobile-menu-dropdown .nav-action{border-bottom:1px solid #f0f0f0;padding:10px 20px;text-align:left}.NavBar .desktop-nav{display:none}@media(min-width:768px){.NavBar{padding:5px 550px}.NavBar .desktop-nav{display:flex;flex-direction:row;justify-content:space-between;width:100%}.NavBar .mobile-nav{display:none}}.MyDayPage td.complete-to-do-item-button-wrapper,.MyDayPage td.hide-to-do-item-button-wrapper,.MyDayPage th.complete-to-do-item-button-wrapper,.MyDayPage th.hide-to-do-item-button-wrapper{padding:0}.MyDayPage td.complete-to-do-item-button-wrapper button,.MyDayPage td.hide-to-do-item-button-wrapper button,.MyDayPage th.complete-to-do-item-button-wrapper button,.MyDayPage th.hide-to-do-item-button-wrapper button{height:37px;width:100%}.deadline-item-postponed,.deadline-item-postponed td{background-color:#e7d9fb}.MyDayPage{align-items:center;display:flex;flex-direction:column;margin-bottom:20px}.MyDayPage td,.MyDayPage th{border:1px solid #ccc;padding:8px}.MyDayPage td.hide-to-do-item-button-wrapper,.MyDayPage th.hide-to-do-item-button-wrapper{align-items:center;display:flex}.MyDayPage #show-completed-habits-checkbox{margin-bottom:-20px;margin-top:10px}.MyDayPage h1{margin-top:5px}.MyDayPage .date-input-container{display:flex;justify-content:center}.MyDayPage .food-plan-wrapper,.MyDayPage .highest-priority-wrapper{margin-bottom:16px}.MyDayPage .food-plan-table{border-collapse:collapse;margin-left:auto;margin-right:auto}.MyDayPage .food-plan-row{background:#fffaf0}.MyDayPage .food-plan-row-prepared{background:#d4f7d4}.MyDayPage .food-plan-prepared-cell{text-align:center}.MyDayPage .food-plan-prepared-cell input[type=checkbox]{cursor:pointer;height:18px;width:18px}.MyDayPage .food-plan-row-done{opacity:.55;text-decoration:line-through}.MyDayPage .food-plan-row.food-plan-row-expired .food-plan-prepared-cell+td{background-color:coral!important}.MyDayPage .food-plan-empty{background:#fffaf0;border:1px dashed #b6a16b;border-radius:6px;color:#5c4a1b;margin:10px 0 16px;padding:10px 14px}.MyDayPage .create-to-do-item-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:25px;margin-bottom:20px;margin-top:5px;padding:10px 20px;width:100%}.MyDayPage .create-to-do-item-button:hover{background-color:#218838}.MyDayPage .create-to-do-item-button:active{background-color:#1e7e34}.d-flex{display:flex}.mx-auto{margin-left:auto;margin-right:auto}.inactivity-reminder-modal{border-radius:18px;box-shadow:0 24px 60px #0f172a52;color:#f8fafc;padding:8px;width:min(720px,100%)}.gym-inactivity-reminder-modal{background:radial-gradient(circle at top left,#facc1540,#0000 36%),linear-gradient(145deg,#3f0d12,#7f1d1d 58%,#991b1b)}.run-inactivity-reminder-modal{background:radial-gradient(circle at top left,#60a5fa3d,#0000 36%),linear-gradient(145deg,#0f172a,#0f766e 58%,#155e75)}.inactivity-reminder-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.inactivity-reminder-header h2{color:#fef3c7;margin:0}.inactivity-reminder-header button{background:#ffffff24;border:0;border-radius:999px;color:#fff7ed;cursor:pointer;font-weight:700;padding:10px 16px}.inactivity-reminder-body{background:#0f172a29;border:1px solid #fef08a3d;border-radius:14px;line-height:1.7;max-height:65vh;overflow-y:auto;padding:20px}.gym-inactivity-reminder-body b,.gym-inactivity-reminder-body strong{color:#fde68a}.run-inactivity-reminder-body{background:#0f172a29;border-color:#93c5fd3d}.run-inactivity-reminder-body b,.run-inactivity-reminder-body strong{color:#bfdbfe}.inactivity-reminder-body p:first-child{margin-top:0}.inactivity-reminder-body p:last-child{margin-bottom:0}@media(max-width:768px){.date-input-container.mobile-hide-date-navigation,.mobile-hide-controls,.mobile-hide-deadline-items,.mobile-hide-my-day-header{display:none}.MyDayPage{overflow-x:auto;padding:0 5px}.table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.to-do-item-list{border-collapse:collapse;font-size:14px;min-width:0;table-layout:fixed;width:100%}.to-do-item-list td,.to-do-item-list th{word-wrap:break-word;font-size:14px;overflow-wrap:anywhere;padding:8px 4px;vertical-align:top}.to-do-item-list td.mobile-description-cell,.to-do-item-list th.mobile-description-cell{padding-left:8px}.to-do-item-list .description-cell{background-color:#f0f8ff!important;border:2px solid #007bff!important;max-width:none!important;min-width:0!important;width:auto!important}.to-do-item-list .to-do-item-expired .description-cell{background-color:coral!important}.to-do-item-list .to-do-item-overdue-notification .description-cell{background-color:red!important;color:#fff!important}.to-do-item-list .to-do-item-started .description-cell{background-color:#ff0!important}.to-do-item-list .dismissed-to-do-item .description-cell{background-color:red!important}.to-do-item-list .mobile-primary-action-cell{min-width:170px;width:44%}.to-do-item-list .mobile-status-cell{align-items:stretch!important;width:100%}.inactivity-reminder-modal{padding:0;width:100%}.inactivity-reminder-header{align-items:stretch;flex-direction:column}.inactivity-reminder-body{max-height:60vh;padding:16px}}.ToDoItemEditableCell .valid{color:green}.ToDoItemEditableCell .invalid{color:red}:root{--reach-tooltip:1}[data-reach-tooltip]{background:#f0f0f0;border:1px solid #ccc;box-shadow:2px 2px 10px #0000001a;color:#444;font-size:85%;padding:.25em .5em;pointer-events:none;position:absolute;white-space:nowrap;z-index:1}.ToDoItem .error-span{color:red;font-size:12px;margin-top:0}.ToDoItem .description-cell input{width:600px}.ToDoItem .description-cell{min-width:400px}.ToDoItem .hide-until-date-input{background-color:#fff;border:1px solid #999;border-radius:4px;color:#111;color-scheme:light;min-height:37px;padding:0 8px}.ToDoItem .hide-until-date-input::-webkit-date-and-time-value,.ToDoItem .hide-until-date-input::-webkit-datetime-edit{color:inherit}.ToDoItem .hide-until-date-input::-webkit-calendar-picker-indicator{opacity:1}.ToDoItem .why-cell{position:relative}.ToDoItem .why-cell .why-hover-wrapper{display:inline-block}.ToDoItem .why-cell .why-hover-wrapper .why-button{background:none;border:none;color:inherit;cursor:pointer;font:inherit;padding:0;text-decoration:underline}.ToDoItem .why-cell .why-hover-wrapper .why-tooltip{background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 4px 25px #0003;color:#000;display:block;font-size:14px;left:50%;line-height:1.5;max-height:80vh;max-width:800px;min-width:300px;opacity:0;overflow-y:auto;padding:20px;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%);transition:opacity .15s ease,visibility 0s linear .15s;visibility:hidden;z-index:1000}.ToDoItem .why-cell .why-hover-wrapper:hover .why-tooltip{opacity:1;pointer-events:auto;transition-delay:.5s,.5s;visibility:visible}.ToDoItem .why-modal{-webkit-user-select:text;user-select:text}.ToDoItem .why-modal .why-modal-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.ToDoItem .why-modal .why-modal-header h3{margin:0}.ToDoItem .why-modal .why-modal-header button{background:none;border:none;cursor:pointer;font-size:18px}.ToDoItem .why-modal .why-modal-body{color:#111;line-height:1.5;max-height:70vh;overflow-y:auto}.ToDoItem .mobile-action-stack{align-items:stretch}.ToDoItem .mobile-action-stack,.ToDoItem .mobile-inline-hide-controls,.ToDoItem .mobile-secondary-actions{display:flex;flex-direction:column;gap:6px}.ToDoItem .mobile-hide-date-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) 44px}.ToDoItem .mobile-hide-date-row .hide-until-date-input{min-width:0;width:100%}.ToDoItem.group-first>td:first-child,.ToDoItem.group-last>td:first-child,.ToDoItem.group-middle>td:first-child{border-left:6px solid #000}.ToDoItem.group-first>td:last-child,.ToDoItem.group-last>td:last-child,.ToDoItem.group-middle>td:last-child{border-right:6px solid #000}.ToDoItem.group-first>td{border-top:6px solid #000}.ToDoItem.group-last>td{border-bottom:6px solid #000}.dismissed-to-do-item{background-color:red}.to-do-item-in-progress{display:flex;justify-content:center}.start-time-row{display:flex;flex-direction:column;gap:8px}.start-time-row>input[type=time]{width:-webkit-fit-content;width:fit-content}.time-preset-buttons{display:flex;flex-wrap:wrap;gap:4px}.time-preset-buttons button{background:#f5f5f5;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:16px;min-height:37px;padding:10px 16px}.time-preset-buttons button:hover{background:#e0e0e0}.calorie-progress-container{background-color:#fff;border:2px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:15px auto;max-width:800px;padding:15px}.calorie-progress-container h3{color:#333;margin:0 0 15px;text-align:center}.progress-info{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-around;margin-bottom:15px}.progress-stat{align-items:center;display:flex;flex-direction:column;min-width:120px}.stat-label{color:#666;font-size:12px;margin-bottom:3px}.stat-value{color:#333;font-size:16px;font-weight:700}.progress-bar-wrapper{background-color:#e9ecef;border-radius:20px;height:40px;margin-bottom:10px;overflow:hidden;position:relative;width:100%}.progress-bar{border-radius:20px;height:100%;left:0;position:absolute;top:0;transition:width .5s ease}.expected-progress{background-color:#ffc10780;z-index:1}.actual-progress{background:linear-gradient(90deg,#28a745,#20c997);z-index:2}.progress-legend{display:flex;gap:20px;justify-content:center;margin-top:10px}.legend-item{align-items:center;display:flex;font-size:14px;gap:5px}.legend-color{border-radius:3px;height:20px;width:20px}.actual-color{background:linear-gradient(90deg,#28a745,#20c997)}.expected-color{background-color:#ffc10780;border:1px solid #ffc107}@media (max-width:768px){.calorie-progress-container{margin:10px 5px;padding:10px}.calorie-progress-container h3{font-size:16px;margin-bottom:10px}.progress-info{gap:5px}.progress-stat{min-width:90px}.stat-label{font-size:11px}.stat-value{font-size:14px}.progress-bar-wrapper{height:30px}.legend-item{font-size:12px}.legend-color{height:16px;width:16px}}.water-progress-container{align-items:center;background-color:#fff;border:2px solid #17a2b8;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:14px;margin:10px auto 15px;max-width:800px;padding:15px}.water-progress-bar-section{flex:1 1;min-width:0}.water-progress-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:6px}.water-progress-title{color:#17a2b8;font-size:15px;font-weight:600}.water-progress-stats{color:#555;font-size:13px;white-space:nowrap}.water-progress-next{color:#888;font-size:12px;margin-bottom:5px}.water-bar-wrapper{background-color:#e9ecef;border-radius:12px;height:24px;overflow:hidden;position:relative;width:100%}.water-bar-fill{background:linear-gradient(90deg,#17a2b8,#20c997);border-radius:12px;height:100%;left:0;position:absolute;top:0;transition:width .5s ease}.water-add-btn{align-items:center;background:linear-gradient(135deg,#17a2b8,#20c997);border:none;border-radius:50%;box-shadow:0 2px 6px #17a2b866;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:44px;justify-content:center;line-height:1;padding:0;transition:transform .1s ease,box-shadow .1s ease;width:44px}.water-add-btn:hover{box-shadow:0 4px 10px #17a2b880;transform:scale(1.08)}.water-add-btn:active{transform:scale(.95)}@media (max-width:768px){.water-progress-container{gap:10px;margin:8px 5px 10px;padding:10px 12px}.water-bar-wrapper{height:20px}.water-progress-title{font-size:13px}.water-progress-stats{font-size:12px}.water-add-btn{font-size:20px;height:38px;width:38px}}.alarm-settings-modal{padding:20px}.alarm-settings-modal h2{margin-bottom:20px;margin-top:0;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:700;margin-bottom:5px}.form-group input[type=number],.form-group input[type=text],.form-group input[type=time],.form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.form-group textarea{font-family:inherit;resize:vertical}.form-group small{color:#666;display:block;font-size:12px;margin-top:5px}.modal-actions{margin-top:30px}.modal-actions button{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:16px;padding:12px 20px;transition:background-color .3s}.save-button{background-color:#4caf50}.save-button:hover{background-color:#45a049}.cancel-button{background-color:#f44336}.cancel-button:hover{background-color:#da190b}@media (max-width:768px){.alarm-settings-modal{padding:15px}.modal-actions{flex-direction:column}}.StatisticPage{display:flex;justify-content:center}.StatisticPage td,.StatisticPage th{border:1px solid #ccc;padding:8px}.StatisticPage .empty-cell{border:1px solid}.BadHabitsPage{display:flex;justify-content:center}.BadHabitsPage td,.BadHabitsPage th{border:1px solid #ccc;padding:8px}.BadHabitsPage .empty-cell{border:1px solid}.BadHabitStatisticPage{display:flex;justify-content:center}.BadHabitStatisticPage td,.BadHabitStatisticPage th{border:1px solid #ccc;padding:8px}.BadHabitStatisticPage .empty-cell{border:1px solid}.Stopwatch{align-items:center;background-color:#000;color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center}.Stopwatch h1{font-size:4rem}.Stopwatch .controls{margin-top:20px}.Stopwatch button{background-color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:1rem;margin:5px;padding:10px 20px}.Stopwatch button:hover{background-color:#ccc}.nutrition-page{font-family:sans-serif;padding:20px}.date-navigation{justify-content:center;margin-bottom:20px}.date-navigation button{margin:0 10px;padding:8px 15px}.date-navigation h2{margin:0}.meal-section{border:1px solid #ccc;border-radius:5px;margin-bottom:30px;padding:15px}.meal-section h3{margin-bottom:10px;margin-top:0}.meal-section table{border-collapse:collapse;margin-bottom:10px;width:100%}.meal-section td,.meal-section th{border:1px solid #ddd;padding:8px;text-align:left}.meal-section th{background-color:#f2f2f2}.meal-section tbody tr:nth-child(2n){background-color:#f9f9f9}.meal-section .meal-totals{font-weight:700;margin-top:10px}.meal-section .meal-totals span{font-weight:400;margin-left:10px}.meal-totals{font-weight:700}.meal-totals strong{font-size:16px;margin-right:15px}.meal-totals span{font-weight:400;margin:0 10px}.cumulative-totals{font-weight:700;margin-top:10px}.cumulative-totals strong{font-size:18px;margin-right:15px}.cumulative-totals span{font-weight:400;margin:0 10px}.meal-section .add-product{border-top:1px solid #eee;margin-top:20px;padding-top:15px}.meal-section .add-product h4{font-size:1.1em;margin-bottom:10px;margin-top:0}.meal-section .add-product input,.meal-section .add-product select{border:1px solid #ccc;border-radius:3px;margin-right:10px;padding:8px}.meal-section .add-product input[type=number]{width:100px}.meal-section .add-product button{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;padding:8px 15px}.meal-section .add-product button:hover{background-color:#0056b3}.meal-section tbody button{background-color:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.9em;margin-bottom:3px;padding:5px 10px}.meal-section tbody button:hover{background-color:#c82333}.meal-section tbody button[style*="background-color: #007bff"]:hover{background-color:#0069d9!important}.meal-section tbody button[style*="background-color: #28a745"]:hover{background-color:#218838!important}.meal-section tbody button[style*="background-color: #6c757d"]:hover{background-color:#5a6268!important}.meal-section tbody input[type=number]{border:1px solid #ccc;border-radius:3px;padding:5px;width:70px}.weight-cell{cursor:pointer;position:relative}.weight-cell:hover{background-color:#f0f0f0}.weight-cell:hover:after{background-color:#000000b3;border-radius:3px;bottom:-20px;color:#fff;content:"Double-click to edit";font-size:.8em;left:0;opacity:.9;padding:2px 5px;pointer-events:none;position:absolute;white-space:nowrap;z-index:10}.meal-selection-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.meal-selection-buttons button{background-color:#fff;border:2px solid #007bff;border-radius:5px;color:#007bff;cursor:pointer;font-weight:500;min-width:80px;padding:10px 20px;transition:all .3s ease}.meal-selection-buttons button:hover{background-color:#f8f9fa;transform:translateY(-1px)}.meal-selection-buttons button.active{background-color:#007bff;box-shadow:0 2px 4px #007bff4d;color:#fff}.all-meals-view{display:flex;flex-direction:column;gap:20px}.all-meals-view .meal-section{margin-bottom:0}.daily-totals{background-color:#e9ecef;border-radius:5px;font-size:1.1em;font-weight:700;margin-top:20px;padding:15px;text-align:center}.daily-totals span{font-weight:400;margin-left:15px}.weight-input-field{border:1px solid #ccc;border-radius:3px;font-size:16px;margin-left:10px;min-height:40px;padding:8px 12px}.bundle-variable-inputs{display:flex;flex-direction:column;gap:8px}.bundle-variable-input-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 140px}.bundle-variable-input-label{color:#212529;font-size:14px}.bundle-variable-input-field{margin-left:0;width:100%}.bundle-template-ready-hint{align-items:center;background-color:#fff;border:1px dashed #adb5bd;border-radius:3px;color:#6c757d;display:flex;min-height:40px;padding:8px 12px}.add-product-btn{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;min-height:40px;padding:8px 15px}.add-product-btn:hover{background-color:#0056b3}.quick-action-btn{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;margin-left:10px;min-height:40px;padding:8px 15px}.quick-action-btn:hover{background-color:#0056b3}@media (min-width:769px){.weight-input-field{width:120px}.bundle-variable-input-field{width:100%}}@media (max-width:768px){.nutrition-page{padding:10px}*{-webkit-tap-highlight-color:rgba(0,0,0,.1)}.date-navigation{flex-direction:column;gap:10px;margin-bottom:15px}.date-navigation h2{font-size:1.2em;margin-bottom:10px;order:-1;text-align:center}.date-navigation button{border-radius:8px;font-size:16px;font-weight:500;margin:0 5px;min-height:48px;padding:12px 20px;transition:all .2s ease}.date-navigation>div{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.meal-selection-buttons{gap:5px;margin-bottom:15px}.meal-selection-buttons button{font-size:14px;min-height:44px;min-width:60px;padding:8px 12px}.meal-section{border-radius:8px;margin-bottom:20px;padding:10px}.meal-section h3{font-size:1.1em;margin-bottom:8px}.meal-section table{font-size:14px;min-width:600px}.meal-section td,.meal-section th{font-size:12px;padding:6px 4px}.table-wrapper{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 1px 3px #0000001a;margin-bottom:10px;overflow-x:auto}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.table-wrapper table{border:none;margin-bottom:0}.meal-section .meal-totals{display:flex;flex-direction:column;font-size:14px;gap:5px}.meal-section .meal-totals span{display:block;margin-left:0}.meal-totals{align-items:center;display:flex;flex-direction:column;font-size:14px;gap:5px}.meal-totals strong{display:block;margin-bottom:5px}.meal-totals span{display:block;margin-left:0!important;margin-right:0!important}.cumulative-totals{align-items:center;display:flex;flex-direction:column;font-size:14px;gap:5px;margin-top:15px}.cumulative-totals strong{display:block;margin-bottom:5px}.cumulative-totals span{display:block;margin-left:0!important;margin-right:0!important}.daily-totals{font-size:16px;margin-top:15px;padding:10px}.daily-totals span{display:block;margin-left:0;margin-top:5px}.meal-section .add-product{margin-top:15px;padding-top:10px}.meal-section .add-product h4{font-size:1em;margin-bottom:8px}.d-flex.flex-grow-1.justify-content-center{align-items:stretch!important;flex-direction:column!important;gap:10px}.meal-section .add-product input,.meal-section .add-product select{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:16px;margin-bottom:10px;margin-right:0;min-height:44px;transition:border-color .2s ease;width:100%}.meal-section .add-product input:focus,.meal-section .add-product select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.meal-section .add-product input[type=number]{width:100%}.meal-section .add-product button{font-size:16px;margin-bottom:8px;min-height:44px;width:100%}.meal-section tbody button{font-size:14px;margin:2px;min-height:36px;padding:8px 12px;white-space:nowrap}@media (max-width:480px){.meal-section tbody td:last-child{display:flex;flex-direction:column;gap:4px}.meal-section tbody button{margin:0;width:100%}}.meal-section tbody input[type=number]{font-size:16px;min-height:36px;width:80px}.weight-input-field{margin-left:0}.bundle-variable-input-row{gap:6px;grid-template-columns:1fr}.quick-action-btn{margin-left:0}.min-width-for-select{min-width:100%!important}.ai-meal-plan-modal,.create-product-modal,.diet-settings-modal{max-height:90vh;overflow-y:auto;padding:15px}.ai-meal-plan-modal h3,.create-product-modal h3,.diet-settings-modal h3{font-size:1.2em}.ai-meal-plan-modal input,.ai-meal-plan-modal textarea,.create-product-modal input,.diet-settings-modal input,.diet-settings-modal textarea{font-size:16px!important;min-height:44px;padding:12px 8px!important}.ai-meal-plan-modal button,.create-product-modal button,.diet-settings-modal button{font-size:16px;min-height:44px;padding:12px 16px!important}.ai-meal-plan-modal .min-width-for-select{margin-bottom:10px}.create-product-modal>div>div[style*="display: flex"],.diet-settings-modal>div>div[style*="display: flex"]{flex-direction:column!important;gap:15px!important}.create-product-modal>div>div[style*="display: flex"]>div,.diet-settings-modal>div>div[style*="display: flex"]>div{flex:none!important;width:100%!important}.ai-meal-plan-modal div[style*="display: flex"][style*="align-items: center"]{align-items:stretch!important;flex-direction:column!important;gap:10px!important}.ai-meal-plan-modal div[style*="display: flex"][style*="align-items: center"] input{margin-bottom:10px;width:100%!important}.ai-meal-plan-modal div[style*="display: flex"][style*="align-items: center"] button{width:100%}}@media (min-width:769px) and (max-width:1024px){.nutrition-page{padding:15px}.meal-section table{font-size:14px}.meal-section td,.meal-section th{padding:6px}.d-flex.flex-grow-1.justify-content-center{flex-wrap:wrap;gap:10px}.meal-section .add-product input,.meal-section .add-product select{margin-bottom:10px}}.everyday-food-section{margin-bottom:20px}.everyday-food-section h4{color:#0056b3;margin-bottom:15px}@media (max-width:480px){.nutrition-page{padding:8px}.date-navigation h2{font-size:1.1em}.date-navigation button{font-size:14px;min-height:44px;padding:10px 16px}.meal-selection-buttons button{font-size:13px;min-width:55px;padding:6px 10px}.meal-section{padding:8px}.meal-section h3{font-size:1em}.meal-section table{min-width:550px}.meal-section td,.meal-section th{font-size:11px;padding:4px 2px}.meal-section .meal-totals{font-size:13px}.daily-totals{font-size:14px;padding:8px}.ai-meal-plan-modal,.create-product-modal,.diet-settings-modal{max-height:95vh;padding:10px}.everyday-food-section{padding:10px}.everyday-food-section h4{font-size:1em}}.modal-content:has(.ai-meal-plan-modal){border-radius:0!important;height:100vh!important;margin:0!important;max-height:100vh!important;max-width:100vw!important;padding:0!important;transform:none!important;width:100vw!important}.modal:has(.ai-meal-plan-modal){padding:0!important}.ai-meal-plan-modal{background-color:#fff;box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:30px;width:100%}.exercise-technique-video{margin-top:12px}.exercise-technique-video video{background:#111;border-radius:6px;display:block;max-height:340px;width:100%}.exercise-technique-video .no-technique-video{color:#666;font-size:14px;margin:0 0 10px}.exercise-technique-video .technique-video-file-input{display:none}.exercise-technique-video .btn-upload-technique-video{background:#fff;border:1px solid #1976d2;border-radius:4px;color:#1976d2;cursor:pointer;font-weight:600;margin-top:10px;padding:8px 12px}.exercise-technique-video .btn-upload-technique-video:hover:not(:disabled){background:#e3f2fd}.exercise-technique-video .btn-upload-technique-video:disabled{cursor:wait;opacity:.7}.exercise-technique-video .technique-video-error{color:#c62828;font-size:13px;margin:8px 0 0}.exercise-notes{margin-top:12px}.exercise-notes label{display:block;font-size:14px;font-weight:600;margin-bottom:5px}.exercise-notes textarea{border:1px solid #bbb;border-radius:4px;box-sizing:border-box;display:block;font:inherit;line-height:1.4;min-height:36px;overflow:hidden;padding:8px 10px;resize:none;width:100%}.exercise-notes .exercise-notes-status{color:#666;display:block;font-size:12px;margin-top:4px}.exercise-notes .exercise-notes-error{color:#c62828;font-size:13px;margin:6px 0 0}.exercise-library .library-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.exercise-library .library-header h2{margin:0}.exercise-library .library-header .btn-create{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.exercise-library .library-header .btn-create:hover{background:#45a049}.exercise-library .filters{display:flex;gap:10px;margin-bottom:20px}.exercise-library .filters .filter-select,.exercise-library .filters .search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.exercise-library .filters .search-input{flex:2 1}.exercise-library .filters .filter-select{flex:1 1}.exercise-library .exercise-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.exercise-library .exercise-list .exercise-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:15px;transition:all .3s}.exercise-library .exercise-list .exercise-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.exercise-library .exercise-list .exercise-card .exercise-name{align-items:center;display:flex;font-size:16px;font-weight:700;gap:10px;margin-bottom:10px}.exercise-library .exercise-list .exercise-card .exercise-name .custom-badge{background:#ff9800;border-radius:12px;color:#fff;font-size:12px;font-weight:400;padding:2px 8px}.exercise-library .exercise-list .exercise-card .exercise-details{color:#666;display:flex;font-size:14px;gap:10px}.exercise-library .exercise-list .exercise-card .exercise-details span{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:4px 8px}.exercise-library .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.exercise-library .modal-overlay .modal-content{background:#fff;border-radius:8px;max-width:500px;padding:30px;width:90%}.exercise-library .modal-overlay .modal-content h3{margin-top:0}.exercise-library .modal-overlay .modal-content .form-group{margin-bottom:20px}.exercise-library .modal-overlay .modal-content .form-group label{display:block;font-weight:700;margin-bottom:5px}.exercise-library .modal-overlay .modal-content .form-group input,.exercise-library .modal-overlay .modal-content .form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.exercise-library .modal-overlay .modal-content .modal-actions{display:flex;gap:10px;justify-content:flex-end}.exercise-library .modal-overlay .modal-content .modal-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px}.exercise-library .modal-overlay .modal-content .modal-actions button[type=button]{background:#f0f0f0;color:#333}.exercise-library .modal-overlay .modal-content .modal-actions button[type=button]:hover{background:#e0e0e0}.exercise-library .modal-overlay .modal-content .modal-actions button.btn-primary{background:#4caf50;color:#fff}.exercise-library .modal-overlay .modal-content .modal-actions button.btn-primary:hover{background:#45a049}.exercise-library .modal-overlay .modal-content .modal-actions button.btn-primary.workout-count{border-color:#4caf50;color:#388e3c}@media(max-width:768px){.exercise-library .library-header{align-items:flex-start;flex-direction:column;gap:15px}.exercise-library .library-header .btn-create{width:100%}.exercise-library .filters{flex-direction:column}.exercise-library .filters .filter-select,.exercise-library .filters .search-input{width:100%}.exercise-library .exercise-list{grid-template-columns:1fr}}.exercise-selector-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.exercise-selector-overlay .exercise-selector{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000080;display:flex;flex-direction:column;height:90vh;max-width:1000px;width:100%}.exercise-selector-overlay .exercise-selector .selector-header{align-items:center;background:#f9f9f9;border-bottom:2px solid #e0e0e0;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 30px}.exercise-selector-overlay .exercise-selector .selector-header h2{color:#333;margin:0}.exercise-selector-overlay .exercise-selector .selector-header .btn-close{align-items:center;background:#f44336;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;transition:all .3s;width:40px}.exercise-selector-overlay .exercise-selector .selector-header .btn-close:hover{background:#d32f2f;transform:rotate(90deg)}.exercise-selector-overlay .exercise-selector .selector-filters{background:#fff;border-bottom:1px solid #e0e0e0;display:flex;gap:15px;padding:20px 30px}.exercise-selector-overlay .exercise-selector .selector-filters .filter-select,.exercise-selector-overlay .exercise-selector .selector-filters .search-input{border:2px solid #ddd;border-radius:6px;font-size:16px;padding:12px 16px;transition:border-color .3s}.exercise-selector-overlay .exercise-selector .selector-filters .filter-select:focus,.exercise-selector-overlay .exercise-selector .selector-filters .search-input:focus{border-color:#4caf50;outline:none}.exercise-selector-overlay .exercise-selector .selector-filters .search-input{flex:2 1}.exercise-selector-overlay .exercise-selector .selector-filters .filter-select{cursor:pointer;flex:1 1}.exercise-selector-overlay .exercise-selector .selector-content{flex:1 1;overflow-y:auto;padding:20px 30px}.exercise-selector-overlay .exercise-selector .selector-content .loading{color:#666;font-size:18px;padding:60px 20px;text-align:center}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:20px;transition:all .3s}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item:hover{background:#fff;border-color:#4caf50;box-shadow:0 6px 20px #4caf5033;transform:translateY(-4px)}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-name{align-items:center;color:#333;display:flex;font-size:16px;font-weight:700;gap:10px;margin-bottom:12px}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-name .custom-badge{background:#ff9800;border-radius:12px;color:#fff;font-size:11px;font-weight:400;padding:2px 8px}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-details{display:flex;flex-wrap:wrap;gap:8px}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-details span{background:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#666;font-size:13px;padding:4px 10px}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-details span.muscle-group{border-color:#2196f3;color:#2196f3}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-details span.equipment{border-color:#ff9800;color:#ff9800}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid .exercise-item .exercise-details span.workout-count{border-color:#4caf50;color:#388e3c}@media(max-width:768px){.exercise-selector-overlay{padding:0}.exercise-selector-overlay .exercise-selector{border-radius:0;height:100vh;max-width:100%}.exercise-selector-overlay .exercise-selector .selector-header{padding:15px 20px}.exercise-selector-overlay .exercise-selector .selector-header h2{font-size:20px}.exercise-selector-overlay .exercise-selector .selector-header .btn-close{font-size:20px;height:36px;width:36px}.exercise-selector-overlay .exercise-selector .selector-filters{flex-direction:column;padding:15px 20px}.exercise-selector-overlay .exercise-selector .selector-filters .filter-select,.exercise-selector-overlay .exercise-selector .selector-filters .search-input{width:100%}.exercise-selector-overlay .exercise-selector .selector-content{padding:15px 20px}.exercise-selector-overlay .exercise-selector .selector-content .exercises-grid{grid-template-columns:1fr}}.routine-builder-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.routine-builder-overlay .routine-builder{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;height:90vh;max-width:1200px;width:100%}.routine-builder-overlay .routine-builder .routine-header{align-items:center;background:#f9f9f9;border-bottom:2px solid #e0e0e0;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 30px}.routine-builder-overlay .routine-builder .routine-header .routine-name-section{flex:1 1}.routine-builder-overlay .routine-builder .routine-header .routine-name-section .routine-name{border-radius:4px;cursor:pointer;margin:0;padding:8px 12px;transition:background .2s}.routine-builder-overlay .routine-builder .routine-header .routine-name-section .routine-name:hover{background:#0000000d}.routine-builder-overlay .routine-builder .routine-header .routine-name-section .routine-name-input{border:2px solid #4caf50;border-radius:4px;font-size:24px;font-weight:700;max-width:400px;padding:8px 12px;width:100%}.routine-builder-overlay .routine-builder .routine-header .header-actions{display:flex;gap:10px}.routine-builder-overlay .routine-builder .routine-header .header-actions button{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:500;padding:10px 24px;transition:all .3s}.routine-builder-overlay .routine-builder .routine-header .header-actions button.btn-cancel{background:#f0f0f0;color:#333}.routine-builder-overlay .routine-builder .routine-header .header-actions button.btn-cancel:hover{background:#e0e0e0}.routine-builder-overlay .routine-builder .routine-header .header-actions button.btn-save{background:#4caf50;color:#fff}.routine-builder-overlay .routine-builder .routine-header .header-actions button.btn-save:hover{background:#45a049}.routine-builder-overlay .routine-builder .routine-content{flex:1 1;overflow-y:auto;padding:30px}.routine-builder-overlay .routine-builder .routine-content .empty-state{color:#666;padding:80px 20px;text-align:center}.routine-builder-overlay .routine-builder .routine-content .empty-state p{font-size:18px;margin:10px 0}.routine-builder-overlay .routine-builder .routine-content .empty-state p.hint{color:#999;font-size:14px}.routine-builder-overlay .routine-builder .routine-content .exercises-list{margin-bottom:30px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .exercise-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;margin-left:5px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .exercise-header h3{color:#333;margin:0}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .exercise-header .btn-remove-exercise{align-items:center;background:#f44336;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;width:32px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .exercise-header .btn-remove-exercise:hover{background:#d32f2f}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-header{margin-bottom:15px;margin-left:5px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-header span{color:#666;font-weight:700}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .btn-add-set{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:10px 16px;width:100%}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .btn-add-set:hover{background:#1976d2}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;gap:15px;margin-bottom:10px;padding:12px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-number{color:#666;font-weight:700;min-width:60px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs{display:flex;flex:1 1;gap:15px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group{display:flex;flex-direction:column;gap:5px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group label{color:#666;font-size:12px;font-weight:500}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:8px 12px;width:100px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group input:focus{border-color:#4caf50;outline:none}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .btn-remove-set{align-items:center;background:#ff5252;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;width:28px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .btn-remove-set:hover{background:#ff1744}.routine-builder-overlay .routine-builder .routine-content .btn-add-exercise{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:18px;font-weight:700;padding:20px;transition:all .3s;width:100%}.routine-builder-overlay .routine-builder .routine-content .btn-add-exercise:hover{background:#45a049;box-shadow:0 4px 12px #4caf504d;transform:translateY(-2px)}@media(max-width:768px){.routine-builder-overlay{padding:0}.routine-builder-overlay .routine-builder{border-radius:0;height:100vh;max-width:100%}.routine-builder-overlay .routine-builder .routine-header{align-items:flex-start;flex-direction:column;gap:15px;padding:15px 20px}.routine-builder-overlay .routine-builder .routine-header .routine-name-section{width:100%}.routine-builder-overlay .routine-builder .routine-header .routine-name-section .routine-name-input{font-size:20px;max-width:100%}.routine-builder-overlay .routine-builder .routine-header .header-actions{width:100%}.routine-builder-overlay .routine-builder .routine-header .header-actions button{flex:1 1}.routine-builder-overlay .routine-builder .routine-content{padding:20px 15px}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card{padding:0}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row{align-items:flex-start;flex-direction:column}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs{width:100%}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group{flex:1 1}.routine-builder-overlay .routine-builder .routine-content .exercises-list .exercise-card .sets-section .sets-list .set-row .set-inputs .input-group input{width:84%}}.gym-sync-bar{align-items:center;display:flex;gap:8px}.gym-sync-bar .btn-sync{background:#0000;border:1px solid #4a5568;border-radius:6px;color:#a0aec0;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px;white-space:nowrap}.gym-sync-bar .btn-sync:hover:not(:disabled){border-color:#718096;color:#e2e8f0}.gym-sync-bar .btn-sync:disabled{cursor:not-allowed;opacity:.5}.gym-sync-bar .btn-sync.has-pending{background:#d69e2e;border-color:#d69e2e;color:#1a202c}.gym-sync-bar .btn-sync.has-pending:hover:not(:disabled){background:#b7791f;border-color:#b7791f;color:#fff}.gym-sync-bar .offline-chip{font-size:12px;white-space:nowrap}.gym-sync-bar .offline-chip.is-ready{color:#68d391}.gym-sync-bar .offline-chip.is-empty{color:#a0aec0}@media(max-width:768px){.gym-sync-bar{gap:6px}.gym-sync-bar .btn-sync{font-size:13px;padding:6px 10px}.gym-sync-bar .offline-chip{font-size:11px}}.workout-routines .routines-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.workout-routines .routines-header h2{margin:0}.workout-routines .routines-header .header-actions{display:flex;gap:10px}.workout-routines .routines-header .header-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px}.workout-routines .routines-header .header-actions button.btn-quick-start{background:#2196f3;color:#fff}.workout-routines .routines-header .header-actions button.btn-quick-start:hover{background:#1976d2}.workout-routines .routines-header .header-actions button.btn-start{background:#4caf50;color:#fff}.workout-routines .routines-header .header-actions button.btn-start:hover{background:#45a049}.workout-routines .routines-header .header-actions button.btn-create{background:#4caf50;color:#fff}.workout-routines .routines-header .header-actions button.btn-create:hover{background:#45a049}.workout-routines .routines-header .header-actions button:disabled{cursor:not-allowed;opacity:.7}.workout-routines .routines-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.workout-routines .routines-list .empty-state{color:#666;grid-column:1/-1;padding:40px;text-align:center}.workout-routines .routines-list .routine-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:all .3s}.workout-routines .routines-list .routine-card:hover{box-shadow:0 4px 12px #0000001a}.workout-routines .routines-list .routine-card .routine-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.workout-routines .routines-list .routine-card .routine-header .routine-info{flex:1 1;min-width:0}.workout-routines .routines-list .routine-card .routine-header .routine-info .routine-name{border-radius:4px;cursor:pointer;display:inline-block;margin:0 0 5px;padding:4px 8px;transition:all .2s}.workout-routines .routines-list .routine-card .routine-header .routine-info .routine-name:hover{background:#0000000d}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container{margin-bottom:5px}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-input{border:2px solid #4caf50;border-radius:4px;font-family:inherit;font-size:18px;font-weight:700;margin-bottom:8px;outline:none;padding:6px 10px;width:100%}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-input:focus{border-color:#45a049}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons{display:flex;gap:8px}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons button.btn-save-name{background:#4caf50;color:#fff;flex:1 1}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons button.btn-save-name:hover{background:#45a049}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons button.btn-cancel-name{background:#f44336;color:#fff;flex:1 1}.workout-routines .routines-list .routine-card .routine-header .routine-info .edit-name-container .edit-name-buttons button.btn-cancel-name:hover{background:#d32f2f}.workout-routines .routines-list .routine-card .routine-header .routine-info p{color:#666;font-size:14px;margin:0;padding-left:8px}.workout-routines .routines-list .routine-card .routine-header .btn-delete{align-items:center;background:#f44336;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:32px;justify-content:center;margin-left:10px;transition:all .3s;width:32px}.workout-routines .routines-list .routine-card .routine-header .btn-delete:hover{background:#d32f2f;transform:rotate(90deg)}.workout-routines .routines-list .routine-card .btn-start{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px;transition:all .3s;width:100%}.workout-routines .routines-list .routine-card .btn-start:hover{background:#45a049}.workout-routines .routines-list .routine-card .btn-start:disabled{background:#a5d6a7;cursor:not-allowed;opacity:.7}.workout-routines .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.workout-routines .modal-overlay .modal-content{background:#fff;border-radius:8px;max-width:600px;padding:30px;width:90%}.workout-routines .modal-overlay .modal-content h3{margin-top:0}.workout-routines .modal-overlay .modal-content button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:20px;padding:10px 20px}.workout-routines .modal-overlay .modal-content button:hover{background:#45a049}@media(max-width:768px){.workout-routines .routines-header{align-items:flex-start;flex-direction:column;gap:15px}.workout-routines .routines-header .header-actions{flex-direction:column;width:100%}.workout-routines .routines-header .header-actions button{width:100%}.workout-routines .routines-list{grid-template-columns:1fr}}.active-workout .workout-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.active-workout .workout-header h2{margin:0}.active-workout .workout-header .routine-name{color:#666;font-size:14px;margin:5px 0 0}.active-workout .workout-header .workout-duration{align-items:center;background:#1a1a2e;border:2px solid #4caf50;border-radius:8px;display:flex;flex-direction:column;min-width:90px;padding:8px 20px}.active-workout .workout-header .workout-duration .duration-label{color:#4caf50;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.active-workout .workout-header .workout-duration .duration-value{font-feature-settings:"tnum";color:#fff;font-size:22px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.02em}.active-workout .workout-header .workout-actions{display:flex;gap:12px}.active-workout .workout-header .btn-complete{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px}.active-workout .workout-header .btn-complete:hover{background:#45a049}.active-workout .workout-header .btn-complete:disabled{cursor:not-allowed;opacity:.7}.active-workout .workout-header .btn-cancel{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:12px 24px}.active-workout .workout-header .btn-cancel:hover{background:#d32f2f}.active-workout .workout-header .btn-cancel:disabled{cursor:not-allowed;opacity:.7}.active-workout .exercise-section .current-exercise{margin-bottom:30px}.active-workout .exercise-section .current-exercise h3{margin-bottom:15px}.active-workout .exercise-section .current-exercise .exercise-info{align-items:center;background:#f9f9f9;border-radius:8px;display:flex;justify-content:space-between;padding:20px}.active-workout .exercise-section .current-exercise .exercise-info h4{font-size:20px;margin:0}.active-workout .exercise-section .current-exercise .exercise-info button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.active-workout .exercise-section .current-exercise .exercise-info button:hover{background:#1976d2}.active-workout .exercise-section .current-exercise .btn-select{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:18px;padding:20px;width:100%}.active-workout .exercise-section .current-exercise .btn-select:hover{background:#45a049}.active-workout .exercise-section .set-logging{background:#f9f9f9;border-radius:8px;padding:30px}.active-workout .exercise-section .set-logging h3{margin-bottom:20px;margin-top:0}.active-workout .exercise-section .set-logging .input-group{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.active-workout .exercise-section .set-logging .input-group .input-field label{display:block;font-weight:700;margin-bottom:5px}.active-workout .exercise-section .set-logging .input-group .input-field input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:12px;width:100%}.active-workout .exercise-section .set-logging .btn-log-set{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:18px;font-weight:700;padding:15px;width:100%}.active-workout .exercise-section .set-logging .btn-log-set:hover{background:#45a049}.active-workout .readiness-box{background:#fff;border:2px solid #333;border-radius:8px;margin-bottom:20px;padding:16px 20px}.active-workout .readiness-box .readiness-title{color:#333;font-size:14px;font-weight:700;letter-spacing:.06em;margin:0 0 12px;text-transform:uppercase}.active-workout .readiness-box .readiness-rules{display:flex;flex-direction:column;gap:8px}.active-workout .readiness-box .readiness-item{border:1px solid #ddd;border-radius:6px;color:#444;display:block;font-size:14px;padding:7px 12px}.active-workout .empty-state,.active-workout .loading-state{color:#666;font-size:18px;padding:60px 20px;text-align:center}.active-workout .exercises-list .exercise-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.active-workout .exercises-list .exercise-card .exercise-header{margin-bottom:20px}.active-workout .exercises-list .exercise-card .exercise-header .exercise-title-row{align-items:center;display:flex;gap:8px}.active-workout .exercises-list .exercise-card .exercise-header h3{color:#333;margin:0}.active-workout .exercises-list .exercise-card .exercise-header .btn-exercise-settings{align-items:center;background:#fff;border:1px solid #bbb;border-radius:4px;color:#555;cursor:pointer;display:inline-flex;font-size:18px;height:26px;justify-content:center;line-height:1;padding:0;width:26px}.active-workout .exercises-list .exercise-card .exercise-header .btn-exercise-settings:hover{border-color:#4caf50;color:#2e7d32}.active-workout .exercises-list .exercise-card .exercise-header .exercise-settings{background:#fff;border:1px solid #ddd;border-radius:4px;margin-top:10px;padding:8px 10px}.active-workout .exercises-list .exercise-card .exercise-header .exercise-settings label{align-items:center;color:#444;cursor:pointer;display:inline-flex;font-size:14px;gap:7px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-label{color:#666;font-size:13px;font-weight:600}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-timer{font-feature-settings:"tnum";align-items:center;background:#fff;border:1px solid #bdbdbd;border-radius:999px;color:#333;display:inline-flex;font-variant-numeric:tabular-nums;gap:6px;min-width:72px;padding:5px 9px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-timer .recovery-side{align-items:center;background:#e8f5e9;border-radius:50%;color:#2e7d32;display:inline-flex;font-size:12px;font-weight:800;height:20px;justify-content:center;width:20px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-timer .recovery-time{font-size:14px;font-weight:700}.active-workout .exercises-list .exercise-card .add-set-actions{display:flex;gap:8px;margin-top:10px}.active-workout .exercises-list .exercise-card .btn-add-set{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:10px 16px}.active-workout .exercises-list .exercise-card .btn-add-set:hover{background:#1976d2}.active-workout .exercises-list .exercise-card .sets-table.default-side-is-both .set-row,.active-workout .exercises-list .exercise-card .sets-table.default-side-is-both .sets-header{grid-template-columns:60px minmax(100px,1fr) minmax(100px,1fr) 180px}.active-workout .exercises-list .exercise-card .sets-table .sets-header{grid-gap:6px;background:#e0e0e0;border-radius:4px;display:grid;font-size:14px;font-weight:700;gap:6px;grid-template-columns:60px 1fr 1fr 132px 180px;margin-bottom:8px;padding:6px}.active-workout .exercises-list .exercise-card .sets-table .set-row{grid-gap:6px;align-items:center;background:#fff;border:2px solid #0000;border-radius:4px;display:grid;gap:6px;grid-template-columns:60px 1fr 1fr 132px 180px;margin-bottom:6px;padding:6px;transition:all .3s}.active-workout .exercises-list .exercise-card .sets-table .set-row.completed{background:#e8f5e9;border-color:#4caf50}.active-workout .exercises-list .exercise-card .sets-table .set-row.saving{border-color:#81c784;box-shadow:inset 0 0 0 1px #4caf5033}.active-workout .exercises-list .exercise-card .sets-table .set-row .set-col{color:#666;font-size:14px;font-weight:700}.active-workout .exercises-list .exercise-card .sets-table .set-row .reps-col,.active-workout .exercises-list .exercise-card .sets-table .set-row .weight-col{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:4px 6px;text-align:center}.active-workout .exercises-list .exercise-card .sets-table .set-row .reps-col:focus,.active-workout .exercises-list .exercise-card .sets-table .set-row .weight-col:focus{border-color:#4caf50;outline:none}.active-workout .exercises-list .exercise-card .sets-table .set-row .side-col{align-items:center;display:flex;gap:3px}.active-workout .exercises-list .exercise-card .sets-table .set-row .side-col .side-btn{background:#fff;border:1px solid #ccc;border-radius:4px;color:#666;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;height:30px;min-width:0;padding:0 4px;transition:all .15s}.active-workout .exercises-list .exercise-card .sets-table .set-row .side-col .side-btn:hover{border-color:#4caf50}.active-workout .exercises-list .exercise-card .sets-table .set-row .side-col .side-btn.active{background:#4caf50;border-color:#4caf50;color:#fff}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col{align-items:center;display:flex;flex-wrap:nowrap;justify-content:start}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .action-buttons{align-items:center;display:flex;flex-wrap:nowrap;gap:4px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .action-buttons .previous-rest{color:#999;font-size:12px;margin-left:4px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-log{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;height:30px;line-height:30px;min-width:50px;padding:0 12px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-log:hover{background:#45a049}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-remove-set{background:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;height:30px;line-height:30px;min-width:50px;padding:0 8px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-remove-set:hover{background:#d32f2f}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .completed-info{align-items:center;display:flex;gap:8px;min-width:0}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-update{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;height:30px;line-height:30px;min-width:70px;padding:0 12px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-update:hover{background:#1976d2}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .completed-badge{color:#4caf50;font-size:24px;font-weight:700}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .set-timer{font-feature-settings:"tnum";color:#666;font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .set-timer.active{color:#2e7d32;font-weight:700}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .saving-set{color:#2e7d32;font-size:12px;font-weight:700}.active-workout>.btn-add-exercise{background:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 20px;width:100%}.active-workout>.btn-add-exercise:hover{background:#1976d2}.active-workout>.btn-add-exercise:disabled{cursor:not-allowed;opacity:.7}.active-workout .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.active-workout .modal-overlay .modal-content{background:#fff;border-radius:8px;max-height:80vh;max-width:600px;overflow-y:auto;padding:30px;width:90%}.active-workout .modal-overlay .modal-content h3{margin-bottom:20px;margin-top:0}.active-workout .modal-overlay .modal-content .exercise-list .exercise-item{border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .3s}.active-workout .modal-overlay .modal-content .exercise-list .exercise-item:hover{background:#f0f0f0;border-color:#4caf50}@media(max-width:768px){.active-workout .workout-header{align-items:flex-start;flex-direction:column;gap:15px}.active-workout .workout-header .workout-duration{align-items:center;align-self:stretch;flex-direction:row;justify-content:space-between;padding:8px 16px}.active-workout .workout-header .workout-duration .duration-value{font-size:20px}.active-workout .workout-header .workout-actions{flex-direction:column;width:100%}.active-workout .workout-header .btn-cancel,.active-workout .workout-header .btn-complete{width:100%}.active-workout .readiness-box{padding:12px 14px}.active-workout .readiness-box .readiness-item{font-size:13px;padding:7px 10px}.active-workout .exercise-section .set-logging .input-group{grid-template-columns:1fr}.active-workout .exercises-list .exercise-card{padding:2px}.active-workout .exercises-list .exercise-card .exercise-header{margin-bottom:12px;padding:4px}.active-workout .exercises-list .exercise-card .exercise-header h3{font-size:18px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers{gap:5px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-label{flex-basis:100%;font-size:12px}.active-workout .exercises-list .exercise-card .exercise-header .recovery-timers .recovery-timer{min-width:66px;padding:4px 7px}.active-workout .exercises-list .exercise-card .add-set-actions{gap:4px}.active-workout .exercises-list .exercise-card .btn-add-set{font-size:12px;padding:4px 8px}.active-workout .exercises-list .exercise-card .sets-table.default-side-is-both .set-row,.active-workout .exercises-list .exercise-card .sets-table.default-side-is-both .sets-header{grid-template-columns:36px minmax(64px,1fr) minmax(64px,1fr) 1fr}.active-workout .exercises-list .exercise-card .sets-table .sets-header{font-size:12px;gap:4px;grid-template-columns:36px 44px 44px 76px 1fr;padding:4px}.active-workout .exercises-list .exercise-card .sets-table .set-row{gap:4px;grid-template-columns:36px 44px 44px 76px 1fr;padding:4px}.active-workout .exercises-list .exercise-card .sets-table .set-row .set-col{font-size:12px}.active-workout .exercises-list .exercise-card .sets-table .set-row .reps-col,.active-workout .exercises-list .exercise-card .sets-table .set-row .weight-col{box-sizing:border-box;font-size:14px;min-width:0;padding:4px 2px;width:100%}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .action-buttons{gap:2px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-log{font-size:12px;padding:4px 8px}.active-workout .exercises-list .exercise-card .sets-table .set-row .action-col .btn-remove-set{font-size:12px;padding:4px 6px}}.progress-page h2{color:#333;margin-bottom:30px}.progress-page .analytics-start-date{align-items:center;color:#444;display:flex;font-size:14px;font-weight:600;gap:12px;margin:-16px 0 24px;width:-webkit-fit-content;width:fit-content}.progress-page .analytics-start-date input{background:#fff;border:1px solid #d0d7de;border-radius:6px;color:#333;font:inherit;padding:8px 10px}.progress-page .no-data{color:#666;font-size:18px;padding:60px 20px;text-align:center}.progress-page .exercise-list{display:flex;flex-direction:column;gap:20px}.progress-page .exercise-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.progress-page .exercise-header{align-items:center;border-bottom:2px solid #0000;cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:background-color .2s}.progress-page .exercise-header:hover{background-color:#f5f5f5}.progress-page .exercise-header.selected{background-color:#e3f2fd;border-bottom-color:#2196f3}.progress-page .exercise-header .exercise-info{align-items:center;display:flex;flex:1 1;gap:15px}.progress-page .exercise-header .exercise-info h3{color:#333;font-size:20px;margin:0}.progress-page .exercise-header .exercise-info .muscle-group{background:#e0e0e0;border-radius:12px;color:#666;font-size:12px;font-weight:500;padding:4px 12px}.progress-page .exercise-header .exercise-info .workout-count{color:#999;font-size:14px}.progress-page .exercise-header .pr-info{display:flex;gap:30px;margin-right:20px}.progress-page .exercise-header .pr-info .pr-stat{align-items:center;display:flex;flex-direction:column}.progress-page .exercise-header .pr-info .pr-stat .pr-label{color:#999;font-size:12px;margin-bottom:4px}.progress-page .exercise-header .pr-info .pr-stat .pr-value{color:#4caf50;font-size:18px;font-weight:700}.progress-page .exercise-header .expand-icon{color:#999;font-size:14px;margin-left:10px}.progress-page .charts-section{background:#fff;border-bottom:1px solid #e0e0e0;display:flex;flex-direction:column;gap:40px;padding:30px 20px}.progress-page .charts-section .progress-chart h4{color:#333;font-size:18px;margin:0 0 20px;text-align:center}.progress-page .charts-section .progress-chart .chart-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:16px}.progress-page .charts-section .progress-chart .chart-toggle{align-items:center;background:#fafafa;border:1px solid #d8d8d8;border-radius:999px;color:#333;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;padding:8px 12px}.progress-page .charts-section .progress-chart .chart-toggle input{margin:0}.progress-page .charts-section .progress-chart .chart-series-swatch{border-radius:50%;flex-shrink:0;height:10px;width:10px}.progress-page .charts-section .progress-chart svg{display:block;margin:0 auto}.progress-page .workout-history-table{background:#fafafa;overflow-x:auto;padding:20px}.progress-page .workout-history-table .history-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.progress-page .workout-history-table .history-toolbar .sets-filter{align-items:center;color:#444;display:inline-flex;font-size:14px;font-weight:600;gap:10px}.progress-page .workout-history-table .history-toolbar .sets-filter select{background:#fff;border:1px solid #d0d7de;border-radius:6px;color:#333;font-size:14px;min-width:110px;padding:8px 10px}.progress-page .workout-history-table .history-toolbar .filtered-workout-count{color:#666;font-size:13px;font-weight:500}.progress-page .workout-history-table table{background:#fff;border-collapse:collapse;border-radius:4px;overflow:hidden;width:100%}.progress-page .workout-history-table table thead{background:#f5f5f5}.progress-page .workout-history-table table thead th{border-bottom:2px solid #e0e0e0;color:#666;font-size:14px;font-weight:600;padding:12px;text-align:left}.progress-page .workout-history-table table thead th:first-child{width:120px}.progress-page .workout-history-table table thead th:nth-child(2){width:200px}.progress-page .workout-history-table table thead th:nth-child(3){width:110px}.progress-page .workout-history-table table tbody tr{transition:background-color .2s}.progress-page .workout-history-table table tbody tr:hover{background-color:#f9f9f9}.progress-page .workout-history-table table tbody tr:not(:last-child){border-bottom:1px solid #f0f0f0}.progress-page .workout-history-table table tbody td{font-size:14px;padding:12px}.progress-page .workout-history-table table tbody td.date-cell{color:#666;font-weight:500}.progress-page .workout-history-table table tbody td.workout-name{color:#333;font-weight:500}.progress-page .workout-history-table table tbody td.duration-cell{color:#666;font-weight:500;white-space:nowrap}.progress-page .workout-history-table table tbody td.total-cell{transition:color .2s ease,background-color .2s ease}.progress-page .workout-history-table table tbody td.total-cell.total-cell--best{background-color:#e8f5e9;color:#1b5e20;font-weight:700}.progress-page .workout-history-table table tbody td.set-cell{text-align:center;transition:color .2s ease,background-color .2s ease}.progress-page .workout-history-table table tbody td.set-cell.set-cell--best{background-color:#e8f5e9}.progress-page .workout-history-table table tbody td.set-cell .set-data{align-items:center;display:flex;flex-direction:column;gap:2px}.progress-page .workout-history-table table tbody td.set-cell .set-data .weight{color:#2196f3;cursor:text;font-size:15px;font-weight:700}.progress-page .workout-history-table table tbody td.set-cell .set-data .weight:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.progress-page .workout-history-table table tbody td.set-cell .set-data .reps{color:#666;cursor:text;font-size:12px}.progress-page .workout-history-table table tbody td.set-cell .set-data .reps:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.progress-page .workout-history-table table tbody td.set-cell .set-data .reps.reps--best{color:#1b5e20;font-weight:700}.progress-page .workout-history-table table tbody td.set-cell .set-data .side-badge{border-radius:3px;color:#fff;display:inline-block;font-size:10px;font-weight:700;line-height:15px;min-width:16px;padding:0 4px;text-align:center}.progress-page .workout-history-table table tbody td.set-cell .set-data .side-badge.side-badge--left{background:#7b1fa2}.progress-page .workout-history-table table tbody td.set-cell .set-data .side-badge.side-badge--right{background:#ef6c00}.progress-page .workout-history-table table tbody td.set-cell .set-data .set-edit-input{border:1px solid #2196f3;border-radius:3px;box-shadow:0 0 0 2px #2196f333;font-size:13px;outline:none;padding:2px 4px;text-align:center;width:55px}.progress-page .workout-history-table table tbody td.set-cell .set-data .set-edit-input::-webkit-inner-spin-button,.progress-page .workout-history-table table tbody td.set-cell .set-data .set-edit-input::-webkit-outer-spin-button{opacity:1}.progress-page .workout-history-table table tbody td.set-cell .no-set{color:#ccc}.progress-page .workout-history-table table tbody td.actions-cell{text-align:center;width:80px}.progress-page .workout-history-table table tbody td.actions-cell .btn-delete{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px 8px;transition:background-color .2s}.progress-page .workout-history-table table tbody td.actions-cell .btn-delete:hover{background-color:#ffebee}.progress-page .workout-history-table table tbody td.actions-cell .btn-delete:active{transform:scale(.95)}.progress-page .workout-history-table table tbody td.empty-filter-state{color:#777;font-style:italic;padding:24px 12px;text-align:center}@media(max-width:768px){.progress-page .analytics-start-date{align-items:flex-start;flex-direction:column;gap:6px;margin-top:-16px}.progress-page .exercise-header{align-items:flex-start;flex-direction:column;gap:10px;padding:15px}.progress-page .exercise-header .exercise-info{align-items:flex-start;flex-direction:column;gap:8px;width:100%}.progress-page .exercise-header .exercise-info h3{font-size:18px}.progress-page .exercise-header .exercise-info .muscle-group{font-size:11px;padding:3px 10px}.progress-page .exercise-header .exercise-info .workout-count{font-size:13px}.progress-page .exercise-header .pr-info{gap:20px;justify-content:flex-start;margin-right:0;width:100%}.progress-page .exercise-header .pr-info .pr-stat .pr-label{font-size:11px}.progress-page .exercise-header .pr-info .pr-stat .pr-value{font-size:16px}.progress-page .exercise-header .expand-icon{position:absolute;right:15px;top:15px}.progress-page .charts-section{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:15px 10px}.progress-page .charts-section .progress-chart h4{font-size:16px;margin-bottom:15px}.progress-page .charts-section .progress-chart .chart-controls{justify-content:flex-start;min-width:800px}.progress-page .charts-section .progress-chart svg{min-width:800px}.progress-page .workout-history-table{padding:10px}.progress-page .workout-history-table .history-toolbar{align-items:flex-start;flex-direction:column}.progress-page .workout-history-table .history-toolbar .sets-filter{justify-content:space-between;width:100%}.progress-page .workout-history-table .history-toolbar .sets-filter select{flex:1 1}.progress-page .workout-history-table table{font-size:12px}.progress-page .workout-history-table table tbody td,.progress-page .workout-history-table table thead th{font-size:12px;padding:8px 6px}.progress-page .workout-history-table table tbody td.set-cell .set-data .weight{font-size:13px}.progress-page .workout-history-table table tbody td.set-cell .set-data .reps{font-size:11px}.progress-page .workout-history-table table tbody td.actions-cell{width:60px}.progress-page .workout-history-table table tbody td.actions-cell .btn-delete{font-size:16px;padding:2px 6px}}.training-programs .program-history-export{background:#f8fbf8;border:1px solid #c8e6c9;border-radius:8px;margin-bottom:24px;padding:16px}.training-programs .program-history-export .program-history-export-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.training-programs .program-history-export .program-history-export-header h2{font-size:18px;margin:0}.training-programs .program-history-export .program-history-export-header p{color:#666;font-size:13px;margin:4px 0 0}.training-programs .program-history-export .program-history-export-header label{align-items:center;color:#444;display:flex;font-size:13px;font-weight:600;gap:8px;white-space:nowrap}.training-programs .program-history-export .program-history-export-header input{border:1px solid #bdbdbd;border-radius:4px;font:inherit;padding:6px 8px;width:76px}.training-programs .program-history-export textarea{background:#fff;border:1px solid #c8c8c8;border-radius:4px;box-sizing:border-box;color:#333;display:block;font:12px/1.45 monospace;padding:10px;resize:vertical;width:100%}.training-programs .program-history-export .program-history-export-actions{align-items:center;color:#2e7d32;display:flex;font-size:13px;gap:10px;margin-top:10px}.training-programs .program-history-export .program-history-export-actions button{background:#388e3c;border:0;border-radius:4px;color:#fff;cursor:pointer;font:inherit;font-weight:600;padding:7px 14px}.training-programs .program-history-export .program-history-export-actions button:hover{background:#2e7d32}.training-programs .program-history-export .program-history-export-actions .program-history-settings-error{color:#b71c1c}.training-programs .programs-header{margin-bottom:16px}.training-programs .programs-header h2{font-size:24px;margin:0}.training-programs .programs-header .programs-subtitle{color:#888;font-size:13px;margin:4px 0 0}.training-programs .empty-state,.training-programs .loading-state{color:#888;padding:32px;text-align:center}.training-programs .programs-list{display:flex;flex-direction:column;gap:12px}.training-programs .program-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.training-programs .program-day-header{align-items:center;background:#f5f5f5;border:none;border-bottom:1px solid #e8e8e8;cursor:pointer;display:flex;font-family:inherit;gap:10px;padding:12px 14px;text-align:left;width:100%}.training-programs .program-day-header:hover{background:#eee}.training-programs .program-day-header .day-toggle{color:#999;font-size:12px}.training-programs .program-day-header .day-date{color:#333;font-size:16px;font-weight:700}.training-programs .program-day-header .day-stats{color:#777;font-size:13px;margin-left:auto;white-space:nowrap}.training-programs .program-sessions{display:flex;flex-direction:column}.training-programs .program-session{padding:12px 14px}.training-programs .program-session+.program-session{border-top:1px dashed #e8e8e8}.training-programs .program-session .session-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.training-programs .program-session .session-header .session-order{align-items:center;background:#4caf50;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:700;height:22px;justify-content:center;width:22px}.training-programs .program-session .session-header .session-title{color:#333;font-size:15px;font-weight:600}.training-programs .program-session .session-header .session-time{color:#999;font-size:12px;margin-left:auto;white-space:nowrap}.training-programs .program-session .session-header .session-unfinished{background:#fff3cd;border-radius:3px;color:#856404;font-size:11px;padding:1px 6px;white-space:nowrap}.training-programs .program-session .session-empty{color:#aaa;font-size:13px;margin:0 0 0 30px}.training-programs .session-exercise{margin-left:30px}.training-programs .session-exercise+.session-exercise{margin-top:8px}.training-programs .session-exercise .exercise-name{color:#666;font-size:13px;margin-bottom:4px}.training-programs .session-exercise .exercise-sets{display:flex;flex-wrap:wrap;gap:5px}.training-programs .session-exercise .set-chip{align-items:baseline;background:#e8f5e9;border:1px solid #c8e6c9;border-radius:4px;color:#2e7d32;display:inline-flex;font-size:13px;gap:2px;padding:3px 7px;white-space:nowrap}.training-programs .session-exercise .set-chip .set-reps,.training-programs .session-exercise .set-chip .set-weight{font-weight:700}.training-programs .session-exercise .set-chip .set-times,.training-programs .session-exercise .set-chip .set-unit{font-size:11px;opacity:.75}.training-programs .session-exercise .set-chip .set-side{background:#2e7d32;border-radius:2px;color:#fff;font-size:10px;font-weight:700;margin-left:2px;padding:0 3px}.training-programs .session-exercise .set-chip .set-rest{color:#999;font-size:10px;margin-left:3px}@media(max-width:768px){.training-programs .program-history-export{padding:12px}.training-programs .program-history-export .program-history-export-header{flex-direction:column;gap:10px}.training-programs .program-day-header{flex-wrap:wrap;gap:6px;padding:10px}.training-programs .program-day-header .day-date{font-size:15px}.training-programs .program-day-header .day-stats{flex-basis:100%;font-size:12px;margin-left:22px}.training-programs .program-session{padding:10px}.training-programs .program-session .session-header .session-title{font-size:14px}.training-programs .session-exercise{margin-left:0}.training-programs .session-exercise .set-chip{font-size:12px;padding:2px 5px}.training-programs .session-exercise .set-chip .set-rest{display:none}.training-programs .program-session .session-empty{margin-left:0}}.gym-settings-page{padding:24px}.gym-settings-card{background:linear-gradient(135deg,#22c55e1f,#f9731624),#fff;border:1px solid #22c55e33;border-radius:18px;box-shadow:0 18px 40px #0f172a14;display:flex;flex-direction:column;gap:18px;margin:0 auto;max-width:900px;padding:28px}.gym-settings-copy h2{color:#0f172a;margin:4px 0 10px}.gym-settings-copy p{color:#334155;line-height:1.55;margin:0}.gym-settings-eyebrow{color:#15803d;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.gym-settings-example{color:#475569;font-size:14px}.gym-settings-field{display:flex;flex-direction:column;gap:8px}.gym-settings-field span{color:#0f172a;font-size:14px;font-weight:600}.gym-settings-field input,.gym-settings-field textarea{background:#ffffffeb;border:1px solid #cbd5e1;border-radius:12px;box-sizing:border-box;color:#0f172a;font:inherit;padding:12px 14px;width:100%}.gym-settings-field textarea{min-height:220px;resize:vertical}.gym-settings-field input:focus,.gym-settings-field textarea:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a24;outline:none}.gym-settings-actions{align-items:center;display:flex;gap:14px}.gym-settings-actions button{background:linear-gradient(135deg,#166534,#22c55e);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:700;padding:12px 18px}.gym-settings-actions button:disabled{cursor:wait;opacity:.7}.gym-settings-success{color:#166534;font-weight:600}.gym-settings-error{background:#dc26261a;border-radius:12px;color:#991b1b;padding:12px 14px}.gym-settings-preview{background:#ffffffdb;border:1px solid #94a3b859;border-radius:16px;padding:18px}.gym-settings-preview-header{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.gym-settings-preview-header h3{color:#0f172a;margin:0}.gym-settings-preview-header span{color:#64748b;font-size:12px}.gym-settings-preview-body{color:#111827;line-height:1.6}.gym-settings-empty-preview{color:#64748b;margin:0}@media(max-width:768px){.gym-settings-page{padding:12px}.gym-settings-card{border-radius:14px;gap:16px;padding:18px}.gym-settings-actions,.gym-settings-preview-header{align-items:stretch;flex-direction:column}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.active-run{display:flex;flex-direction:column;gap:16px;min-height:400px;padding:20px}.active-run--idle{align-items:center;justify-content:center}.active-run-idle-card{align-items:center;background:linear-gradient(135deg,#ef44440f,#3b82f614),#fff;border:1px solid #ef444426;border-radius:20px;display:flex;flex-direction:column;gap:16px;max-width:400px;padding:40px 24px;text-align:center}.active-run-idle-card h2{color:#0f172a;margin:0}.active-run-idle-card p{color:#64748b;font-size:15px;line-height:1.5;margin:0}.active-run-idle-icon{font-size:64px}.active-run-resume-note{color:#d97706!important;font-weight:600}.active-run--running{padding:16px}.active-run-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.ar-stat{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-direction:column;gap:3px;padding:14px 16px}.ar-stat--big{background:linear-gradient(135deg,#ef44441a,#ef44440a);border-color:#ef444433}.ar-stat--big .ar-stat-value{color:#dc2626;font-size:28px}.ar-stat-value{color:#0f172a;font-size:18px;font-weight:700}.ar-stat-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.active-run-gps-status{font-size:13px;font-weight:600;padding:4px 0}.gps-acquiring{color:#d97706}.gps-active{color:#16a34a}.gps-error{color:#dc2626}.active-run-map{border:1px solid #e2e8f0;border-radius:16px;flex-shrink:0;height:320px;overflow:hidden}.active-run-actions{display:flex;gap:12px}.btn-start{background:linear-gradient(135deg,#dc2626,#ef4444);border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:17px;font-weight:700;padding:14px 32px;transition:opacity .15s}.btn-start:hover{opacity:.9}.btn-finish{background:linear-gradient(135deg,#16a34a,#22c55e);border:none;border-radius:999px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;padding:14px}.btn-finish:hover{opacity:.9}.btn-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px}.btn-cancel:hover{border-color:#dc2626;color:#dc2626}.active-run--notes{align-items:center;justify-content:center}.active-run-notes-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 8px 30px #0f172a14;display:flex;flex-direction:column;gap:18px;max-width:460px;padding:28px;width:100%}.active-run-notes-card h3{color:#0f172a;font-size:20px;margin:0}.active-run-finish-stats{display:flex;gap:12px}.active-run-finish-stats .ar-stat{flex:1 1}.active-run-notes-label{display:flex;flex-direction:column;gap:6px}.active-run-notes-label span{color:#0f172a;font-size:14px;font-weight:600}.active-run-notes-label textarea{border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;font:inherit;padding:10px 14px;resize:vertical}.active-run-notes-label textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;outline:none}.active-run-notes-actions{display:flex;gap:10px}.btn-save{background:linear-gradient(135deg,#16a34a,#22c55e);border:none;border-radius:999px;color:#fff;cursor:pointer;flex:1 1;font-weight:700;padding:12px}.btn-save:disabled{cursor:wait;opacity:.7}.btn-back{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;cursor:pointer;font-weight:600;padding:12px 20px}.active-run-error{background:#dc26261a;border-radius:10px;color:#991b1b;font-size:14px;padding:10px 14px}@media(max-width:768px){.active-run{padding:12px}.active-run-map{height:260px}.ar-stat--big .ar-stat-value{font-size:24px}.active-run-finish-stats{flex-direction:column}}.run-details{display:flex;flex-direction:column;gap:18px;padding:20px 24px}.run-details-back{align-self:flex-start;background:none;border:none;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:0}.run-details-back:hover{text-decoration:underline}.run-details-header h2{color:#0f172a;font-size:20px;margin:0 0 4px}.run-details-finished-at{color:#64748b;font-size:14px;margin:0}.run-details-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.run-details-stat{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:14px;display:flex;flex-direction:column;gap:4px;padding:16px}.run-details-stat-value{color:#1d4ed8;font-size:20px;font-weight:700}.run-details-stat-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.run-details-notes{background:#fefce8;border:1px solid #fde68a;border-radius:10px;color:#92400e;font-size:14px;font-style:italic;margin:0;padding:12px 16px}.run-details-map{border:1px solid #e2e8f0;border-radius:16px;height:420px;overflow:hidden}.run-details-no-map{align-items:center;background:#f8fafc;color:#64748b;display:flex;height:100%;justify-content:center}.run-details-error{color:#991b1b}@media(max-width:768px){.run-details{padding:12px}.run-details-map{height:300px}}.run-history{padding:24px}.run-history-title{color:#0f172a;font-size:20px;margin:0 0 18px}.run-history-error,.run-history-loading{color:#64748b;padding:12px 0}.run-history-error{color:#991b1b}.run-history-empty{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:12px;padding:60px 20px;text-align:center}.run-history-empty-icon{font-size:48px}.run-history-list{display:flex;flex-direction:column;gap:10px}.run-history-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:16px 20px;position:relative;transition:background .15s}.run-history-item:hover{background:#eff6ff;border-color:#bfdbfe}.run-history-item-date{color:#64748b;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.run-history-item-stats{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px}.run-stat-distance{color:#1d4ed8;font-size:22px;font-weight:700}.run-stat-sep{color:#94a3b8;font-size:16px}.run-stat{color:#475569;font-size:16px;font-weight:500}.run-history-item-times{color:#475569;font-size:13px;font-weight:500}.run-history-item-notes{color:#64748b;font-size:13px;font-style:italic;margin-top:2px}.run-history-delete{align-items:center;background:#0000;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;position:absolute;right:12px;top:12px;width:28px}.run-history-delete:hover{background:#dc26261a;color:#dc2626}@media(max-width:768px){.run-history{padding:12px}}.run-settings{padding:24px}.run-settings,.run-settings-card{display:flex;flex-direction:column;gap:18px}.run-settings-card{background:linear-gradient(135deg,#3b82f614,#10b9811a),#fff;border:1px solid #3b82f633;border-radius:18px;box-shadow:0 18px 40px #0f172a14;margin:0 auto;max-width:600px;padding:28px}.run-settings-eyebrow{color:#1d4ed8;font-size:12px;font-weight:700;letter-spacing:.08em;margin:0 0 4px;text-transform:uppercase}.run-settings-copy h2{color:#0f172a;margin:4px 0 8px}.run-settings-copy p{color:#334155;line-height:1.55;margin:0}.run-settings-example{background:#3b82f614;border-radius:10px;color:#1e293b!important;margin-top:6px!important;padding:10px 12px}.run-settings-field{display:flex;flex-direction:column;gap:6px}.run-settings-field span{color:#0f172a;font-size:14px;font-weight:600}.run-settings-field small{color:#64748b;font-size:12px}.run-settings-field input[type=number]{border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;font:inherit;padding:10px 14px;width:180px}.run-settings-field input[type=number]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f624;outline:none}.run-settings-checks-label{color:#0f172a;font-size:14px;font-weight:600;margin:0 0 10px}.run-settings-checks{display:flex;flex-direction:column;gap:10px}.run-settings-checkbox{align-items:center;cursor:pointer;display:flex;gap:10px}.run-settings-checkbox input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.run-settings-checkbox span{color:#334155;font-size:14px}.run-settings-actions{align-items:center;display:flex;gap:14px}.run-settings-actions button{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:700;padding:11px 22px}.run-settings-actions button:disabled{cursor:wait;opacity:.7}.run-settings-preview{border-top:1px solid #94a3b833;display:flex;flex-direction:column;gap:12px;padding-top:6px}.run-settings-preview-header{display:flex;flex-direction:column;gap:4px}.run-settings-preview-header h3{color:#0f172a;font-size:16px;margin:0}.run-settings-preview-header span{color:#64748b;font-size:12px}.run-settings-preview-body{background:#eff6ffcc;border:1px solid #3b82f62e;border-radius:12px;color:#0f172a;line-height:1.65;padding:16px}.run-settings-preview-body b,.run-settings-preview-body strong{color:#1d4ed8}.run-settings-preview-body p:first-child{margin-top:0}.run-settings-preview-body p:last-child{margin-bottom:0}.run-settings-empty-preview{color:#64748b;margin:0}.run-settings-success{color:#166534;font-weight:600}.run-settings-error{background:#dc26261a;border-radius:10px;color:#991b1b;padding:12px 14px}@media(max-width:768px){.run-settings{padding:12px}.run-settings-card{padding:18px}}.running-tab{padding:0}.running-tab-loading{color:#64748b;padding:24px}.running-subtabs{border-bottom:1px solid #e2e8f0;display:flex;gap:0;padding:0 16px}.running-subtabs button{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:-1px;padding:12px 18px;transition:color .15s}.running-subtabs button:hover{color:#0f172a}.running-subtabs button.active{border-bottom-color:#dc2626;color:#dc2626}.running-tab-content{min-height:300px}@media(max-width:768px){.running-subtabs{padding:0 8px}.running-subtabs button{font-size:13px;padding:10px 12px}}.gym-page{margin:0 auto;max-width:1400px;padding:20px}.gym-page .gym-header{margin-bottom:0}.gym-page .gym-header h1{color:#333;margin-bottom:0;margin-top:0}.gym-page .gym-header .gym-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;padding-bottom:10px}.gym-page .gym-header .gym-tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:16px;padding:10px 20px;transition:all .3s}.gym-page .gym-header .gym-tabs button:hover:not(:disabled){color:#333}.gym-page .gym-header .gym-tabs button.active{border-bottom-color:#4caf50;color:#4caf50}.gym-page .gym-header .gym-tabs button:disabled{cursor:not-allowed;opacity:.5}.gym-page .gym-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2px}.h-30px{height:30px}@media(max-width:768px){.gym-page{padding:2px}.gym-page .gym-header .gym-tabs{flex-wrap:wrap}.gym-page .gym-header .gym-tabs button{flex:1 1;font-size:14px;min-width:120px;padding:8px 12px}.gym-page .gym-content{padding:0}}.steps-page{margin:0 auto;max-width:1200px;padding:20px}.steps-header{margin-bottom:30px}.steps-header h1{color:#333;margin-bottom:20px}.steps-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.steps-table{border-collapse:collapse;width:100%}.steps-table thead{background-color:#f8f9fa}.steps-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px;text-align:left}.steps-table td{border-bottom:1px solid #dee2e6;padding:12px}.steps-table tbody tr:hover{background-color:#f8f9fa}.steps-table tbody tr.today-row{background-color:#e7f3ff}.steps-table tbody tr.today-row:hover{background-color:#d0e9ff}.steps-value{border-radius:4px;cursor:pointer;display:inline-block;padding:4px 8px}.steps-value:hover{background-color:#e9ecef}.steps-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px;width:120px}.steps-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}@media (max-width:768px){.steps-page{padding:10px}.date-navigation{align-items:stretch;flex-direction:column}.date-navigation button{width:100%}.current-period{padding:8px 0;text-align:center}.steps-table td,.steps-table th{font-size:13px;padding:8px}.cancel-button,.delete-button,.edit-button,.save-button{font-size:12px;margin-right:4px;padding:4px 8px}}.weight-page{margin:0 auto;max-width:1200px;padding:20px}.weight-header{margin-bottom:30px}.weight-header h1{color:#333;margin-bottom:20px}.date-navigation{gap:15px}.date-navigation button{font-size:14px;padding:8px 16px}.current-period{font-size:16px}.weight-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.weight-table{border-collapse:collapse;width:100%}.weight-table thead{background-color:#f8f9fa}.weight-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px;text-align:left}.weight-table td{border-bottom:1px solid #dee2e6;padding:12px}.weight-table tbody tr:hover{background-color:#f8f9fa}.weight-table tbody tr.today-row{background-color:#e7f3ff}.weight-table tbody tr.today-row:hover{background-color:#d0e9ff}.weight-value{border-radius:4px;cursor:pointer;display:inline-block;padding:4px 8px}.weight-value:hover{background-color:#e9ecef}.weight-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px;width:100px}.weight-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.cancel-button,.delete-button,.edit-button,.save-button{margin-right:8px;padding:6px 12px}@media (max-width:768px){.weight-page{padding:10px}.date-navigation{align-items:stretch;flex-direction:column}.date-navigation button{width:100%}.current-period{padding:8px 0;text-align:center}.weight-table td,.weight-table th{font-size:13px;padding:8px}.cancel-button,.delete-button,.edit-button,.save-button{font-size:12px;margin-right:4px;padding:4px 8px}}.health-page{margin:0 auto;max-width:1000px;padding:20px}.health-header{margin-bottom:30px}.health-header h1{color:#333;margin-bottom:20px}.health-filters{margin-top:16px}.health-filter{max-width:420px}.health-filter label{color:#495057;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.health-metric-select{font-size:14px}.health-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.health-table{border-collapse:collapse;width:100%}.health-table thead{background-color:#f8f9fa}.health-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px;text-align:left}.health-table td{border-bottom:1px solid #dee2e6;padding:12px;vertical-align:middle}.health-table tbody tr:hover{background-color:#f8f9fa}.health-table tbody tr.today-row{background-color:#e7f3ff}.health-table tbody tr.today-row:hover{background-color:#d0e9ff}.health-table tbody tr.empty-row{background-color:#fcfcfd}.health-table tbody tr.empty-row:hover{background-color:#f3f6f9}.metric-badge{border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:2px 10px}.metric-badge.eyes{background-color:#17a2b8}.metric-badge.skin{background-color:#fd7e14}.metric-badge.hands{background-color:#6f42c1}.metric-badge.dandruff{background-color:#20c997}.metric-badge.happyness{background-color:#e83e8c}.metric-badge.sleep{background-color:#2b6cb0}.severity-value{border-radius:4px;cursor:pointer;display:inline-block;font-weight:600;padding:4px 8px}.severity-value:hover{background-color:#e9ecef}.severity-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px;width:70px}.severity-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.cancel-button,.delete-button,.edit-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:13px;margin-right:6px;padding:5px 10px}.edit-button{background-color:#007bff;color:#fff}.edit-button:hover{background-color:#0056b3}@media (max-width:768px){.health-page{padding:10px}.health-filter{max-width:100%}.health-table td,.health-table th{font-size:13px;padding:8px}}.water-page{margin:0 auto;max-width:900px;padding:20px}.water-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.water-header h1{color:#333;margin:0}.settings-button{background-color:#6c757d;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.settings-button:hover{background-color:#5a6268}.water-today{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.water-total{align-items:baseline;display:flex;gap:8px;margin-bottom:8px}.water-total-value{color:#007bff;font-size:2.4rem;font-weight:700}.water-total-goal{color:#6c757d;font-size:1.1rem}.water-wakeup-badge{background-color:#d4edda;border-radius:12px;color:#155724;display:inline-block;font-size:12px;margin-bottom:10px;padding:3px 10px}.water-wakeup-none{background-color:#e2e3e5;color:#383d41}.water-next-milestone{color:#495057;font-size:14px;margin-bottom:10px}.water-progress-bar{background-color:#e9ecef;border-radius:6px;height:12px;margin-bottom:16px;overflow:hidden}.water-progress-fill{background-color:#007bff;border-radius:6px;height:100%;transition:width .3s ease}.water-milestones{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.milestone-badge{align-items:center;border-radius:6px;display:flex;flex-direction:column;font-size:13px;font-weight:500;padding:6px 12px}.milestone-hit{background-color:#d4edda;color:#155724}.milestone-upcoming{background-color:#e2e3e5;color:#383d41}.milestone-missed{background-color:#f8d7da;color:#721c24}.milestone-target{font-weight:700}.milestone-time{font-size:11px;opacity:.8}.water-quick-add{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.quick-add-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 14px}.quick-add-btn:hover{background-color:#0056b3}.quick-add-btn:disabled{background-color:#adb5bd;cursor:not-allowed}.custom-add{display:flex;gap:6px}.custom-add-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:7px;width:100px}.custom-add-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.water-log h3{color:#495057;font-size:15px;margin:0 0 8px}.water-log-list{list-style:none;margin:0;padding:0}.water-log-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;font-size:14px;gap:12px;padding:6px 0}.water-log-item:last-child{border-bottom:none}.log-amount{color:#007bff;font-weight:600;min-width:60px}.log-time{color:#6c757d;flex:1 1}.water-history{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.water-history-header{margin-bottom:16px}.water-history-header h2{color:#333;font-size:1.2rem;margin:0 0 12px}.date-navigation{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-navigation button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:7px 14px}.date-navigation button:hover{background-color:#0056b3}.date-navigation .today-button{background-color:#28a745}.date-navigation .today-button:hover{background-color:#218838}.current-period{color:#495057;font-size:14px;font-weight:600}.water-table-container{overflow-x:auto}.water-table{border-collapse:collapse;width:100%}.water-table thead{background-color:#f8f9fa}.water-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;text-align:left}.water-table td,.water-table th{font-size:14px;padding:10px 12px}.water-table td{border-bottom:1px solid #dee2e6}.water-table tbody tr:hover{background-color:#f8f9fa}.water-table tbody tr.today-row{background-color:#e7f3ff}.water-table tbody tr.today-row:hover{background-color:#d0e9ff}.delete-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 10px}.delete-button:hover{background-color:#c82333}.save-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 18px}.save-button:hover{background-color:#218838}.cancel-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 18px}.cancel-button:hover{background-color:#5a6268}.settings-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.settings-modal{background:#fff;border-radius:8px;max-height:90vh;max-width:480px;overflow-y:auto;padding:28px;width:100%}.settings-modal h2{font-size:1.2rem;margin:0 0 20px}.settings-field{margin-bottom:16px}.settings-field label{color:#495057;display:block;font-size:14px;margin-bottom:6px}.settings-field input[type=number],.settings-field input[type=text]{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:14px;padding:7px 10px;width:100%}.settings-milestones h3{color:#495057;font-size:15px;margin:0 0 6px}.presets-hint{color:#6c757d;font-size:12px;margin:0 0 14px}.milestone-preset{background-color:#fafafa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:12px;padding:12px 14px}.preset-header{align-items:center;color:#343a40;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:10px}.remove-preset-btn{background-color:#fff0f0;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545;cursor:pointer;font-size:12px;margin-left:auto;padding:3px 10px}.remove-preset-btn:hover{background-color:#f8d7da}.add-preset-btn{background-color:#f8f9fa;border:1px dashed #6c757d;border-radius:4px;color:#495057;cursor:pointer;font-size:13px;margin-top:4px;padding:8px 16px;width:100%}.add-preset-btn:hover{background-color:#e9ecef}.milestone-row{align-items:center;display:flex;font-size:14px;gap:8px;margin-bottom:8px}.milestone-ml-input{width:80px}.milestone-ml-input,.milestone-time-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px}.remove-milestone-btn{background:none;border:none;color:#dc3545;cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.remove-milestone-btn:hover{color:#c82333}.add-milestone-btn{background-color:#f8f9fa;border:1px dashed #ced4da;border-radius:4px;color:#495057;cursor:pointer;font-size:13px;margin-top:4px;padding:6px 12px}.add-milestone-btn:hover{background-color:#e9ecef}.settings-actions{gap:10px;justify-content:flex-end;margin-top:24px}@media (max-width:768px){.water-page{padding:10px}.water-total-value{font-size:1.8rem}.water-quick-add{gap:6px}.quick-add-btn{font-size:13px;padding:7px 10px}.date-navigation{align-items:stretch;flex-direction:column}.date-navigation button{width:100%}.current-period{text-align:center}.water-table td,.water-table th{font-size:13px;padding:8px}.settings-modal{margin:16px;padding:20px}}.word-learning-page{background:radial-gradient(circle at top right,#6b8e2324,#0000 30%),linear-gradient(180deg,#0f1115,#151a21);color:#f5f7fa;min-height:calc(100vh - 70px);padding:32px 20px 48px}.word-learning-study-timer{font-feature-settings:"tnum";background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;display:flex;flex-direction:column;font-variant-numeric:tabular-nums;gap:2px;left:22px;padding:8px 13px;pointer-events:none;position:fixed;top:18px;transition:opacity .2s ease,background .2s ease,border-color .2s ease;-webkit-user-select:none;user-select:none;z-index:40}.word-learning-study-timer-time{color:#f5f7fa;font-size:18px;font-weight:600;letter-spacing:.02em;line-height:1.1}.word-learning-study-timer-hint{color:#6f7885;font-size:10px;letter-spacing:.02em}@media (max-width:768px){.word-learning-study-timer{display:none}}.word-learning-shell{display:flex;flex-direction:column;gap:18px;margin:0 auto;max-width:920px}.review-screen-shell{min-height:calc(100vh - 150px)}.shortcut-perform-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080c12eb;inset:0;padding:0;position:fixed;z-index:3000}.shortcut-perform-button,.shortcut-perform-overlay{align-items:center;display:flex;justify-content:center}.shortcut-perform-button{background:linear-gradient(135deg,#d7f06b,#7faf37 55%,#556c2d);border:0;border-radius:0;box-shadow:0 28px 80px #00000073;color:#11151b;cursor:pointer;flex-direction:column;gap:18px;height:100%;min-height:100%;padding:max(32px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));transition:transform .16s ease,opacity .16s ease;width:100%}.shortcut-perform-button:hover{transform:scale(1.01)}.shortcut-perform-button:disabled{cursor:progress;opacity:.8;transform:none}.shortcut-perform-title{font-size:clamp(40px,11vw,88px);font-weight:900;letter-spacing:.02em}.shortcut-perform-subtitle{font-size:clamp(18px,4vw,28px);font-weight:700;opacity:.82;text-align:center}.shortcut-action-panel{background:#080c12f5;display:flex;flex-direction:column;inset:0;padding-bottom:max(12px,env(safe-area-inset-bottom));padding-top:max(12px,env(safe-area-inset-top));position:fixed;z-index:2900}.shortcut-action-half{-webkit-touch-callout:none;align-items:center;border:0;border-radius:0;color:#f5f7fa;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:center;padding:24px 18px;text-align:center;transition:transform .16s ease,filter .16s ease,opacity .16s ease;user-select:none;-webkit-user-select:none;width:100%}.shortcut-action-half:disabled{cursor:progress;opacity:.75}.shortcut-action-half-top{background:linear-gradient(180deg,#1f6b3b,#153d2d);border-bottom:1px solid #ffffff24}.shortcut-action-half-bottom{background:linear-gradient(180deg,#7a2f2f,#401f29)}.shortcut-action-half.holding{filter:brightness(1.15);transform:scale(.985)}.shortcut-action-label{font-size:clamp(42px,11vw,86px);font-weight:900;letter-spacing:.02em}.shortcut-action-answer{font-size:clamp(34px,8vw,68px);font-weight:900;line-height:1.02}.shortcut-action-transcription{font-size:clamp(20px,5vw,36px);font-weight:700;opacity:.82}.shortcut-action-hint{font-size:clamp(18px,4.4vw,30px);font-weight:700;opacity:.88}.shortcut-action-hint.secondary{opacity:.68}.review-words-card{position:relative}.word-learning-header{align-items:flex-start}.review-page-topbar,.word-learning-header{display:flex;gap:16px;justify-content:space-between}.review-page-topbar{align-items:center}.header-actions{align-items:center;display:flex;gap:12px}.word-learning-utility-row{display:flex;flex-wrap:wrap;gap:12px}.eyebrow{color:#a7bf7a;font-size:12px;letter-spacing:.18em;margin:0 0 8px;text-transform:uppercase}.word-learning-header h1{font-size:clamp(32px,6vw,54px);line-height:.95;margin:0}.subtle-copy{color:#b7c0cc;margin:12px 0 0;max-width:700px}.action-button,.refresh-button,.reveal-answer-button,.secondary-nav-button{border:0;border-radius:14px;cursor:pointer;transition:transform .16s ease,opacity .16s ease,background-color .16s ease}.action-button:hover,.refresh-button:hover,.reveal-answer-button:hover,.secondary-nav-button:hover{transform:translateY(-1px)}.action-button:disabled,.refresh-button:disabled,.reveal-answer-button:disabled{cursor:not-allowed;opacity:.65;transform:none}.refresh-button{background:#f5f7fa;color:#11151b;font-weight:700;padding:12px 18px}.secondary-nav-button{align-items:center;background:#ffffff14;border:1px solid #ffffff1f;color:#f5f7fa;display:inline-flex;font-weight:700;justify-content:center;padding:12px 18px;text-decoration:none}.secondary-nav-button.danger{background:#8f4b3f2e;border-color:#8f4b3f59}.configuration-warning,.empty-state,.helper-panel,.learning-card,.review-words-card,.selected-categories,.stat-card{box-shadow:0 18px 42px #0000002e}.configuration-warning,.empty-state,.learning-card,.review-words-card,.selected-categories{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#13181fc7;border:1px solid #ffffff14;border-radius:24px}.configuration-warning{color:#ffd59a;padding:16px 18px}.walking-mode-panel{background:linear-gradient(180deg,#1c222af0,#11171deb);border:1px solid #ffffff14;border-radius:24px;box-shadow:0 18px 42px #0000002e;display:flex;flex-direction:column;gap:16px;padding:20px 22px}.walking-mode-main{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.walking-mode-main h2{font-size:28px;margin:0}.walking-mode-button{background:linear-gradient(135deg,#d7f06b,#92a73b);border:0;border-radius:16px;color:#11151b;cursor:pointer;font-weight:800;padding:14px 20px;transition:transform .16s ease,opacity .16s ease}.walking-mode-button.active{background:linear-gradient(135deg,#32617b,#213e52);color:#f5f7fa}.walking-mode-button:disabled{cursor:not-allowed;opacity:.6}.walking-mode-command-list,.walking-mode-state-row{display:flex;flex-wrap:wrap;gap:10px}.command-chip,.state-pill{border:1px solid #ffffff14;border-radius:999px;font-size:13px;padding:9px 13px}.state-pill{background:#ffffff0d;color:#b7c0cc}.state-pill.enabled,.state-pill.live{background:#a7bf7a29;border-color:#a7bf7a4d;color:#f5f7fa}.state-pill.unsupported{background:#8f4b3f29;border-color:#8f4b3f4d;color:#ffd2ca}.command-chip{background:#ffffff14;color:#f5f7fa}.voice-debug-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.voice-debug-card{background:#ffffff0d;border:1px solid #ffffff14;border-radius:18px;display:flex;flex-direction:column;gap:8px;padding:16px}.voice-debug-card span,.voice-mapping-note strong{color:#98a3b3;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.voice-debug-card strong{font-size:18px;line-height:1.35}.voice-mapping-note{color:#dce4ef;line-height:1.5;margin-top:18px}.tts-settings-panel{background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;display:flex;flex-direction:column;gap:16px;padding:18px}.tts-settings-header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.tts-settings-header h3{font-size:22px;margin:0}.save-tts-button{background:linear-gradient(135deg,#32617b,#213e52);border:0;border-radius:14px;color:#f5f7fa;cursor:pointer;font-weight:800;padding:12px 18px}.save-tts-button:disabled{cursor:not-allowed;opacity:.65}.tts-settings-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.tts-field{display:flex;flex-direction:column;gap:8px}.tts-field span{color:#98a3b3;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.tts-field input,.tts-field select,.tts-field textarea{background:#0a0d118f;border:1px solid #ffffff1f;border-radius:12px;color:#f5f7fa;font:inherit;padding:12px 14px;width:100%}.tts-field textarea{min-height:86px;resize:vertical}.tts-field.full-width{width:100%}.settings-subcopy{margin-top:10px;max-width:520px}.setting-toggle-card{align-items:flex-start;background:#0a0d1161;border:1px solid #ffffff14;border-radius:18px;display:flex;gap:16px;padding:18px}.setting-toggle-card input{accent-color:#8cbb42;height:20px;margin-top:2px;width:20px}.setting-toggle-copy{display:flex;flex-direction:column;gap:8px}.setting-toggle-copy strong{font-size:18px}.setting-toggle-copy span{color:#b7c0cc;line-height:1.5}.setting-number-card{align-items:center;background:#0a0d1161;border:1px solid #ffffff14;border-radius:18px;display:flex;gap:16px;justify-content:space-between;padding:18px}.setting-number-card input{accent-color:#8cbb42;background:#06090c99;border:1px solid #ffffff1f;border-radius:12px;color:#eef2f7;font-size:18px;padding:10px 12px;text-align:center;width:96px}.setting-number-card input:disabled{opacity:.45}.word-learning-toast{animation:word-learning-toast-in .24s ease-out;background:#142010f5;border:1px solid #8cbb428c;border-radius:14px;bottom:28px;box-shadow:0 12px 34px #00000073;color:#eef7e2;font-size:16px;font-weight:600;left:50%;max-width:min(92vw,420px);padding:14px 20px;position:fixed;text-align:center;transform:translateX(-50%);z-index:1000}@keyframes word-learning-toast-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.word-learning-grade-toast{animation:word-learning-grade-toast-in .2s ease-out;border-radius:12px;box-shadow:0 12px 34px #00000073;color:#fff;font-size:18px;font-weight:700;padding:13px 22px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:1100}.word-learning-grade-toast.positive{background:#4f7a3af7;border:1px solid #8cbb42b3}.word-learning-grade-toast.negative{background:#8c3a3af7;border:1px solid #d67878b3}@keyframes word-learning-grade-toast-in{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}.word-learning-stats{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.compact-stats .stat-card{padding:14px 16px}.compact-stats .stat-card strong{font-size:22px}.stat-card{background:linear-gradient(180deg,#2f3a49e0,#181e26eb);border:1px solid #ffffff14;border-radius:20px;display:flex;flex-direction:column;gap:8px;padding:18px}.answer-card span,.helper-panel span,.prompt-label,.selected-categories>span,.stat-card span{color:#98a3b3;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.stat-card strong{font-size:28px;font-weight:800}.action-row,.card-badges,.category-list,.word-learning-meta{display:flex;flex-wrap:wrap;gap:10px}.card-badge,.category-chip,.meta-chip{border-radius:999px;font-size:13px;padding:8px 12px}.category-chip,.meta-chip{background:#ffffff14;border:1px solid #ffffff14}.selected-categories{display:flex;flex-direction:column;gap:14px;padding:18px}.category-empty{color:#98a3b3}.empty-state,.learning-card{padding:24px}.review-words-card{display:flex;flex:1 1 auto;flex-direction:column;min-height:min(78vh,760px);overflow:hidden;padding:0}.review-card-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:100%;position:relative;touch-action:pan-y;transition:transform .22s cubic-bezier(.22,.61,.36,1),box-shadow .22s ease;-webkit-user-select:none;user-select:none;will-change:transform;z-index:1}.review-card-content.swipe-animating{transition:transform .16s ease-out,box-shadow .16s ease-out}.review-card-content.swipe-armed{box-shadow:0 24px 48px #00000042}.review-card-content.swiping-left{box-shadow:-18px 26px 42px #0000003d}.review-card-content.swiping-right{box-shadow:18px 26px 42px #0000003d}.review-progress-shell{display:flex;flex-direction:column;gap:8px;padding:0 2px}.review-progress-text{color:#98a3b3;font-size:13px}.review-progress-row{align-items:center;display:flex;gap:12px}.review-progress-bar{background:#ffffff1f;border-radius:999px;height:4px;overflow:hidden;width:100%}.review-progress-bar-fill{background:#7dbeff;border-radius:999px;height:100%;transition:width .2s ease}.review-undo-button{align-items:center;background:#ffffff14;border:0;border-radius:999px;color:#f5f7fa;cursor:pointer;display:inline-flex;flex:0 0 36px;height:36px;justify-content:center;width:36px}.review-undo-button.hidden{cursor:default;visibility:hidden}.review-undo-button:disabled{opacity:.55}.review-undo-icon{height:18px;width:18px}.review-card-status-row{align-items:center;display:flex;gap:16px;justify-content:flex-start;min-height:46px;padding:14px 18px 10px}.review-card-status{align-items:center;display:flex;gap:12px}.word-card-menu{margin-left:auto;position:relative}.word-card-menu-button{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:12px;color:#f5f7fa;cursor:pointer;font-size:25px;height:38px;line-height:16px;width:38px}.word-card-menu-button:disabled{cursor:not-allowed;opacity:.55}.word-card-menu-popup{background:#202832;border:1px solid #ffffff24;border-radius:14px;box-shadow:0 16px 34px #00000052;padding:14px;position:absolute;right:0;top:46px;width:220px;z-index:5}.word-card-menu-popup p{color:#d6dce4;font-size:13px;line-height:1.35;margin:0 0 12px}.word-card-remove-button{background:#9f4e4e;border:0;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:10px 12px;width:100%}.word-card-remove-button:disabled{cursor:not-allowed;opacity:.6}.review-status-icon{border-radius:4px;display:inline-block;height:14px;width:14px}.review-status-new{background:#d7f06b}.review-status-inprogress{background:#f3ba5c}.review-status-review{background:#6cb8ff}.review-card-top-hint,.review-status-availability,.review-status-label{color:#c8d0da;font-size:14px}.review-status-availability{align-items:center;color:#9da8b7;display:inline-flex;gap:8px}.review-status-availability-separator{color:#697586;font-size:16px;line-height:1}.review-card-top-hint{color:#8e98a6;font-size:13px;padding:0 40px 10px}.review-card-main{display:flex;flex:1 1 auto;flex-direction:column;padding:8px 40px 0}.review-card-prompt{color:#f5f7fa;font-size:clamp(34px,6vw,54px);line-height:1.02;min-height:120px}.review-card-answer-block{border-top:1px solid #ffffff14;margin-top:18px;padding-top:16px}.review-card-answer-row{align-items:flex-start;display:flex;gap:18px}.review-card-answer-copy{flex:1 1 auto;min-width:0}.review-card-answer{color:#f5f7fa;font-size:clamp(28px,4.4vw,40px);line-height:1.1}.review-card-transcription{color:#b7c0cc;cursor:text;font-size:20px;margin-top:8px}.review-card-transcription-editor{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:8px}.review-card-transcription-input{background:#1c2230;border:1px solid #3a4452;border-radius:8px;color:#e6ebf2;font-size:20px;max-width:320px;padding:8px 12px;text-align:center;width:100%}.review-card-transcription-input:focus{border-color:#5b8cff;outline:none}.review-card-transcription-actions{display:flex;gap:10px}.review-card-transcription-cancel,.review-card-transcription-save{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:6px 18px}.review-card-transcription-save{background:#4f7a3a;color:#fff}.review-card-transcription-cancel{background:#3a4452;color:#e6ebf2}.review-card-transcription-cancel:disabled,.review-card-transcription-save:disabled{cursor:default;opacity:.6}.review-card-guess{display:flex;justify-content:center;margin-top:18px}.review-card-guess-input{background:#1c2230;border:1px solid #3a4452;border-radius:10px;color:#e6ebf2;font-size:22px;max-width:420px;padding:12px 16px;text-align:center;width:100%}.review-card-guess-input::placeholder{color:#6b7688}.review-card-guess-input:focus{border-color:#5b8cff;outline:none}.review-card-guess-recall{background:#5b8cff14;border:1px solid #5b8cff38;border-radius:10px;display:flex;flex-direction:column;gap:2px;margin-bottom:14px;padding:10px 14px}.review-card-guess-recall-label{color:#8fa4c8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.review-card-guess-recall-text{color:#e6ebf2;font-size:22px;word-break:break-word}.review-card-examples{display:flex;flex-direction:column;gap:12px;margin-top:20px}.review-example-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:18px;overflow:hidden}.review-example-card.expanded{background:#7dbeff12;border-color:#7dbeff47}.review-example-main{align-items:stretch;display:flex;gap:10px;padding:12px}.review-example-number{align-items:center;align-self:flex-start;background:#5b8cff24;border:1px solid #5b8cff47;border-radius:6px;color:#8fa4c8;display:inline-flex;flex:0 0 auto;font-size:13px;font-weight:600;height:22px;justify-content:center;min-width:22px;padding:0 6px}.review-example-copy{align-items:flex-start;background:#0000;border:0;color:#f5f7fa;display:flex;flex:1 1 auto;gap:12px;min-width:0;padding:0;text-align:left}.review-example-copy.static{cursor:default}.review-example-sentence,.review-example-translation{color:#f5f7fa;flex:1 1 auto;font-size:18px;line-height:1.35;min-width:0}.review-example-sentence strong,.review-example-translation strong{color:#fff;font-weight:800}.review-example-arrow{color:#98a3b3;flex:0 0 20px;height:20px;margin-top:2px;transition:transform .18s ease,color .18s ease;width:20px}.review-example-card.expanded .review-example-arrow{color:#7dbeff;transform:rotate(180deg)}.review-example-translation-row{align-items:flex-start;border-top:1px solid #ffffff14;display:flex;gap:10px;padding:0 12px 12px}.review-example-translation{color:#b7c0cc;padding-top:12px}.review-example-tts-button{align-items:center;background:#7dbeff14;border:1px solid #7dbeff3d;border-radius:14px;color:#7dbeff;display:inline-flex;flex:0 0 44px;height:44px;justify-content:center;padding:0;width:44px}.review-example-tts-button.translation{margin-top:12px}.review-example-tts-icon{height:22px;width:22px}.review-pronunciation-button{align-self:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:18px;color:#7dbeff;flex:0 0 54px;height:54px;padding:0;width:54px}.review-pronunciation-icon{height:24px;width:24px}.review-large-pronunciation-button{background:#7dbeff14;color:#7dbeff}.review-large-pronunciation-icon{height:34px;width:34px}.review-card-controls{align-items:stretch;display:flex;flex:1 1 auto;justify-content:stretch;padding:18px 24px 0}.review-eye-button{align-items:center;align-self:stretch!important;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:16px;color:#f5f7fa;display:inline-flex;flex:1 1 auto;height:auto;justify-content:center;max-width:none;min-height:0;padding:0;width:100%}.review-eye-icon{height:22px;width:22px}.review-action-row{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.review-action-row .action-button{border-radius:0;font-size:16px;min-height:68px;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.review-action-row .action-button:first-child{border-bottom-left-radius:24px}.review-action-row .action-button:last-child{border-bottom-right-radius:24px}.review-action-row .action-button.action-button-active{box-shadow:inset 0 0 0 999px #ffffff14}.mode-menu-section-title{color:#98a3b3;font-size:13px;letter-spacing:.04em;text-transform:none}.menu-shell{max-width:720px;padding-top:12px}.word-learning-menu-stats-card{background:linear-gradient(180deg,#fafcfffa,#eff4f9fa);border:1px solid #10151b14;border-radius:24px;box-shadow:0 20px 50px #00000038;color:#1d2430;display:flex;flex-direction:column;gap:16px;padding:18px 18px 16px}.word-learning-menu-stats-header{display:flex;flex-direction:column;gap:14px}.word-learning-menu-stats-title{font-size:22px;font-weight:800;line-height:1}.word-learning-menu-stats-subtitle{color:#566273;font-size:15px;font-weight:600;margin-top:6px}.word-learning-menu-period-tabs{display:flex;flex-wrap:wrap;gap:8px}.word-learning-menu-period-tab{background:#6989ff1a;border:0;border-radius:999px;color:#3056da;cursor:pointer;font-weight:700;padding:10px 14px;transition:transform .16s ease,background-color .16s ease,color .16s ease}.word-learning-menu-period-tab:hover{transform:translateY(-1px)}.word-learning-menu-period-tab.active{background:#6989ff;box-shadow:0 10px 20px #6989ff47;color:#fff}.word-learning-stats-mode-toggle{align-self:flex-start;background:#10151b0f;border-radius:999px;display:inline-flex;gap:4px;padding:4px}.word-learning-stats-mode-button{background:#0000;border:0;border-radius:999px;color:#566273;cursor:pointer;font-size:13px;font-weight:700;padding:7px 14px;transition:background-color .16s ease,color .16s ease}.word-learning-stats-mode-button:hover{color:#1d2430}.word-learning-stats-mode-button.active{background:#fff;box-shadow:0 4px 12px #111a261f;color:#1d2430}.word-learning-stats-chart-shell{background:#ffffffb8;border:1px solid #10151b0f;border-radius:20px;overflow:hidden;padding:12px 10px 0;position:relative}.word-learning-stats-chart-single{border-radius:14px 14px 10px 10px;box-shadow:0 8px 20px #111a261f;min-width:12px;position:relative;width:min(30px,100%)}.word-learning-stats-chart-single.time{background:linear-gradient(180deg,#19c2b3,#14a89b)}.word-learning-stats-chart-single.rate{background:linear-gradient(180deg,#f7c948,#f0b429)}.word-learning-stats-chart-single-value{color:#3a4656;font-size:11px;font-weight:800;left:50%;position:absolute;top:-18px;transform:translateX(-50%);white-space:nowrap}.word-learning-stats-chart-grid{background-image:linear-gradient(0deg,#78849424 1px,#0000 0);background-size:100% 25%;inset:12px 10px 24px;pointer-events:none;position:absolute}.word-learning-stats-chart-bars{grid-gap:6px;align-items:end;display:grid;gap:6px;min-height:220px;position:relative}.word-learning-stats-chart-column{align-items:center;display:flex;flex-direction:column;gap:8px;min-width:0}.word-learning-stats-chart-track{align-items:flex-end;display:flex;height:176px;justify-content:center;width:100%}.word-learning-stats-chart-stack{border-radius:14px 14px 10px 10px;box-shadow:0 8px 20px #111a261f;display:flex;flex-direction:column-reverse;min-width:12px;overflow:hidden;width:min(30px,100%)}.word-learning-stats-chart-segment{align-items:center;display:flex;justify-content:center;min-height:0;overflow:hidden}.word-learning-stats-chart-value{color:#fff;font-size:11px;font-weight:800;line-height:1;padding:0 2px;pointer-events:none;text-shadow:0 1px 2px #0f151e59}.word-learning-stats-chart-segment.new,.word-learning-stats-dot.new{background:#df7a9a}.word-learning-stats-chart-segment.reviewed,.word-learning-stats-dot.reviewed{background:#ffcc80}.word-learning-stats-chart-segment.mastered,.word-learning-stats-dot.mastered{background:#58c581}.word-learning-stats-chart-segment.known,.word-learning-stats-dot.known{background:#6989ff}.word-learning-stats-dot.time{background:#14a89b}.word-learning-stats-table-label.time-row,.word-learning-stats-table-value.time-row{background:#0000;border-radius:0;border-top:1px solid #10151b1a;margin-top:6px;padding-top:12px}.word-learning-stats-table-value.time-row{color:#0f766e;font-weight:800;justify-content:center}.word-learning-stats-chart-label{color:#657182;font-size:12px;font-weight:700;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.stats-error-card,.word-learning-stats-chart-empty{color:#566273;font-weight:600}.word-learning-stats-table{grid-gap:8px 12px;align-items:center;display:grid;gap:8px 12px;grid-template-columns:minmax(0,1.7fr) minmax(72px,.65fr) minmax(72px,.8fr)}.word-learning-stats-table-head{color:#7c8797;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.word-learning-stats-table-head.spacer{visibility:hidden}.word-learning-stats-table-label{align-items:center;color:#263140;display:flex;font-weight:700;gap:10px;min-width:0}.word-learning-stats-dot{border-radius:3px;flex:0 0 10px;height:10px;width:10px}.word-learning-stats-table-value{align-items:center;background:#1e28340d;border-radius:14px;color:#1d2430;display:inline-flex;font-weight:800;justify-content:center;min-height:36px}.mode-menu-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#13181fc7;border:1px solid #ffffff14;border-radius:24px;box-shadow:0 18px 42px #0000002e;overflow:hidden}.mode-menu-row{align-items:center;border-bottom:1px solid #ffffff14;color:inherit;display:flex;gap:16px;padding:16px 20px;text-decoration:none}.mode-menu-row:last-child{border-bottom:0}.mode-menu-row.disabled{opacity:.5}.mode-menu-row.active:hover{background:#ffffff0a}.mode-menu-icon{flex:0 0 24px;font-size:24px;line-height:1;text-align:center;width:24px}.mode-menu-icon.new{color:#f08db0}.mode-menu-icon.review{color:#f3ba5c}.mode-menu-icon.walking{color:#7dd8b2}.mode-menu-icon.listening{color:#b49de8}.mode-menu-icon.mixed{color:#7dbeff}.mode-menu-copy{display:flex;flex-direction:column;gap:4px}.mode-menu-title{color:#f5f7fa;font-size:18px}.mode-menu-subtitle{color:#98a3b3;font-size:13px}.card-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.card-badge{background:#d7f06b;color:#101410;font-weight:800}.card-badge.outlined{background:#0000;border:1px solid #d7f06b73;color:#d7f06b}.due-at{color:#98a3b3;font-size:14px}.prompt-block{margin-bottom:22px}.prompt-text{font-size:clamp(28px,5vw,48px);font-weight:800;line-height:1.05;margin-top:10px}.helper-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.helper-panel{background:#ffffff0d;border:1px solid #ffffff14;border-radius:18px;display:flex;flex-direction:column;gap:8px;padding:16px}.answer-card strong,.helper-panel strong{font-size:20px}.answer-section{display:flex;flex-direction:column;gap:14px;margin:24px 0 18px}.reveal-answer-button{align-self:flex-start;background:#ffffff14;color:#f5f7fa;font-weight:700;padding:12px 18px}.answer-card{background:linear-gradient(135deg,#a7bf7a2e,#ffffff14);border:1px solid #a7bf7a4d;border-radius:18px;display:flex;flex-direction:column;gap:10px;padding:18px}.listening-header{align-items:center;display:flex;gap:14px}.listening-back-link{color:#a7bf7abf;font-size:14px;font-weight:600;text-decoration:none}.listening-back-link:hover{color:#a7bf7a}.listening-page-title{color:#f5f7fa;font-size:22px;font-weight:800}.listening-generate-card,.listening-player-card,.listening-recent-card{background:#ffffff0a;border:1px solid #ffffff17;border-radius:18px;display:flex;flex-direction:column;gap:14px;padding:20px}.listening-form-row{display:flex;flex-wrap:wrap;gap:12px}.listening-form-group{display:flex;flex-direction:column;gap:6px}.listening-form-topic{flex:2 1 220px}.listening-form-difficulty,.listening-form-lang{flex:1 1 140px}.listening-form-count{flex:0 0 90px}.listening-label{color:#f5f7fa80;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.listening-input,.listening-select{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;color:#f5f7fa;font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s}.listening-input:focus,.listening-select:focus{border-color:#a7bf7a80}.listening-input::placeholder{color:#f5f7fa4d}.listening-select option{background:#1a2030}.listening-generate-button{align-self:flex-start;background:linear-gradient(135deg,#a7bf7a,#6b8e23);border:none;border-radius:10px;color:#0f1115;cursor:pointer;font-size:14px;font-weight:700;padding:11px 22px;transition:opacity .15s}.listening-generate-button:disabled{cursor:not-allowed;opacity:.55}.listening-error{background:#ff50501a;border:1px solid #ff505033;border-radius:8px;color:#ff7878;font-size:13px;padding:8px 12px}.listening-story-header{border-bottom:1px solid #ffffff14;padding-bottom:12px}.listening-story-title{color:#f5f7fa;font-size:20px;font-weight:800}.listening-story-meta{color:#f5f7fa66;font-size:12px;letter-spacing:.04em;margin-top:4px;text-transform:uppercase}.listening-sentence-display{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;display:flex;flex-direction:column;gap:8px;min-height:140px;padding:16px}.listening-sentence-counter{color:#f5f7fa4d;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.listening-sentence-english{color:#f5f7fa;font-size:22px;font-weight:700;line-height:1.35;transition:color .2s}.listening-sentence-english.listening-active{color:#d7f06b}.listening-sentence-translation{color:#f5f7fa8c;font-size:15px;transition:color .2s}.listening-sentence-translation.listening-active{color:#a7bf7a}.listening-words-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.listening-word-chip{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;display:inline-flex;font-size:13px;gap:5px;padding:5px 10px;transition:background .2s,border-color .2s}.listening-word-chip.listening-active{background:#a7bf7a2e;border-color:#a7bf7a73}.listening-word-en{color:#f5f7fa;font-weight:700}.listening-word-sep{color:#f5f7fa40;font-size:11px}.listening-word-native{color:#f5f7fa8c}.listening-controls{gap:12px}.listening-controls,.listening-ctrl-btn{align-items:center;display:flex;justify-content:center}.listening-ctrl-btn{background:#ffffff12;border:1px solid #ffffff1f;border-radius:50%;color:#f5f7fa;cursor:pointer;font-size:16px;height:48px;transition:background .15s;width:48px}.listening-ctrl-btn:hover:not(:disabled){background:#ffffff1f}.listening-ctrl-btn:disabled{cursor:not-allowed;opacity:.3}.listening-ctrl-primary{background:linear-gradient(135deg,#a7bf7a40,#6b8e2333);border-color:#a7bf7a66;font-size:22px;height:60px;width:60px}.listening-ctrl-primary:hover:not(:disabled){background:linear-gradient(135deg,#a7bf7a59,#6b8e234d)}.listening-all-sentences{border-top:1px solid #ffffff14;display:flex;flex-direction:column;gap:4px;max-height:280px;overflow-y:auto;padding-top:12px}.listening-sentence-item{align-items:flex-start;border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .15s}.listening-sentence-item:hover{background:#ffffff0d}.listening-sentence-item.listening-sentence-current{background:#a7bf7a1a;border-color:#a7bf7a40}.listening-sentence-num{color:#f5f7fa4d;font-size:11px;font-weight:700;min-width:18px;padding-top:2px}.listening-sentence-item-en{color:#f5f7fa;font-size:14px;font-weight:600}.listening-sentence-item-native{color:#f5f7fa73;font-size:12px;margin-top:2px}.listening-recent-title{color:#f5f7fa80;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.listening-recent-list{display:flex;flex-direction:column;gap:4px}.listening-recent-item{background:#ffffff0a;border:1px solid #ffffff12;border-radius:10px;color:#f5f7fa;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 14px;text-align:left;transition:background .15s}.listening-recent-item:hover{background:#ffffff14}.listening-recent-item.listening-recent-active{background:#a7bf7a1a;border-color:#a7bf7a4d}.listening-recent-item-title{font-size:14px;font-weight:700}.listening-recent-item-meta{color:#f5f7fa66;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.listening-empty-hint{color:#f5f7fa4d;font-size:14px;padding:24px 0;text-align:center}.in-card{margin-bottom:22px}.action-row{margin-top:10px}.action-button{color:#f5f7fa;font-weight:700;padding:12px 16px}.action-GotIt,.action-Memorized,.action-StartLearning{background:linear-gradient(135deg,#7faf37,#556c2d)}.action-AlreadyKnow{background:linear-gradient(135deg,#32617b,#213e52)}.action-KeepShowing,.action-MissedIt{background:linear-gradient(135deg,#8f4b3f,#5a3029)}.empty-state h2{font-size:30px;margin-top:0}.empty-state p{color:#b7c0cc;margin-bottom:0;max-width:620px}.settings-shell{max-width:880px}.history-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.history-list{display:flex;flex-direction:column;gap:16px}.nested-history-list{margin-top:16px}.history-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#13181fc7;border:1px solid #ffffff14;border-radius:24px;box-shadow:0 18px 42px #0000002e;padding:20px}.history-card-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.history-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.secondary-history-toolbar{margin-top:8px}.empty-state.compact{padding:12px 0 4px}.history-outcome.action_success{background:#d7f06b;color:#101410}.history-outcome.action_error,.history-outcome.command_not_available,.history-outcome.command_not_recognized{background:#8f4b3f;color:#f5f7fa}.history-outcome.answer,.history-outcome.recognized,.history-outcome.repeat{background:#32617b;color:#f5f7fa}.history-outcome.mastered{background:#58c581;color:#101410}.history-outcome.reviewed{background:#ffcc80;color:#101410}.history-outcome.new-word{background:#df7a9a;color:#101410}.history-outcome.already-known{background:#6989ff;color:#f5f7fa}.history-action{background:#0000;border:1px solid #d7f06b73;color:#d7f06b}.history-action.gotit{background:#58c581;border:1px solid #58c58166;color:#101410}.history-action.missedit{background:#b94b4b;border:1px solid #b94b4b6b;color:#fff}@media (max-width:720px){.word-learning-page{padding:20px 14px 36px}.card-head,.header-actions,.history-card-head,.history-toolbar,.review-card-status-row,.review-page-topbar,.tts-settings-header,.walking-mode-main,.word-learning-header,.word-learning-menu-stats-header{align-items:stretch;flex-direction:column}.action-button,.refresh-button,.reveal-answer-button,.save-tts-button,.secondary-nav-button,.walking-mode-button,.word-learning-utility-row{width:100%}.review-card-main,.review-card-top-hint{padding-left:18px;padding-right:18px}.review-words-card{min-height:min(72vh,680px)}.review-card-prompt{min-height:0}.review-eye-button{max-width:none;min-height:0}.review-example-main,.review-example-translation-row{gap:8px}.review-example-sentence,.review-example-translation{font-size:16px}.word-learning-menu-period-tab{flex-basis:calc(50% - 8px);flex-grow:1;flex-shrink:1}.word-learning-stats-chart-bars{gap:4px}.word-learning-stats-chart-track{height:148px}.word-learning-stats-table{gap:8px;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr))}}.menu-category-filter{display:flex;flex-direction:column;gap:10px}.menu-category-filter-label{color:#98a3b3;font-size:13px;letter-spacing:.02em}.menu-category-chips{display:flex;flex-wrap:wrap;gap:8px}.menu-category-chip{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;color:#c5cdd8;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s ease}.menu-category-chip:hover{background:#ffffff1c;transform:translateY(-1px)}.menu-category-chip:disabled{cursor:progress;opacity:.6;transform:none}.menu-category-chip.active{background:#d7f06b24;border-color:#d7f06b66;color:#d7f06b}.menu-category-chip.active:hover{background:#d7f06b33}.menu-category-chip-count{font-size:11px;font-weight:700;min-width:14px;opacity:.6;text-align:center}.alarm-page{margin:0 auto;max-width:800px;padding:20px}.alarm-page h1{margin-bottom:30px;text-align:center}.alarm-controls{background:#f5f5f5;border-radius:8px;margin-bottom:20px;padding:20px}.time-input{margin-bottom:15px}.time-input label{display:block;font-weight:700;margin-bottom:5px}.time-input input[type=time]{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;width:100%}.action-buttons{display:flex;gap:10px}.action-buttons button{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:16px;padding:12px 20px;transition:background-color .3s}.start-button{background-color:#4caf50;color:#fff}.start-button:hover{background-color:#45a049}.stop-button{background-color:#f44336;color:#fff}.stop-button:hover{background-color:#da190b}.settings-button{background-color:#2196f3;color:#fff}.settings-button:hover{background-color:#0b7dda}.camera-preview{background:#000;border-radius:8px;margin:0 auto 20px;max-width:640px;overflow:hidden;position:relative;width:100%}.camera-preview video{display:block;height:auto;width:100%}.camera-preview video.inactive{opacity:.3}.status-indicator{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:15px}.monitoring-badge{align-items:center;color:#4caf50;display:flex;font-weight:700;gap:10px;margin-bottom:10px}.pulse-dot{animation:pulse 2s infinite;background-color:#4caf50;border-radius:50%;height:12px;width:12px}.last-check{color:#666;font-size:14px}.last-check p{margin:5px 0}.alarm-alert{animation:shake .5s infinite;background:red;border-radius:12px;box-shadow:0 4px 20px #00000080;color:#fff;left:50%;padding:40px;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:9999}.alarm-alert h2{animation:blink 1s infinite;font-size:32px;margin-bottom:20px}.stop-alarm-button{background-color:#fff;border:none;border-radius:8px;color:red;cursor:pointer;font-size:20px;font-weight:700;padding:15px 30px;transition:transform .2s}.stop-alarm-button:hover{transform:scale(1.1)}.stop-alarm-button:active{transform:scale(.95)}.ai-response-history{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:30px;padding:20px}.history-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.history-header h3{color:#333;margin:0}.clear-history-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 15px;transition:background-color .3s}.clear-history-button:hover{background-color:#5a6268}.response-list{max-height:400px;overflow-y:auto}.response-item{background-color:#f8f9fa;border-left:4px solid;border-radius:6px;margin-bottom:10px;padding:12px}.response-item.sleeping{background-color:#fff5f5;border-left-color:#dc3545}.response-item.awake{background-color:#f0fff4;border-left-color:#28a745}.response-header{align-items:center;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.timestamp{color:#666;font-weight:500}.status{font-weight:700}.response-item.sleeping .status{color:#dc3545}.response-item.awake .status{color:#28a745}.confidence{background-color:#007bff;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:2px 8px}.response-text{background-color:#fff;border-radius:4px;color:#333;font-size:14px;line-height:1.5;margin-top:5px;padding:8px}@media (max-width:768px){.alarm-page{padding:10px}.action-buttons{flex-direction:column}.alarm-alert{padding:30px 20px;width:90%}.alarm-alert h2{font-size:24px}.stop-alarm-button{font-size:18px;padding:12px 24px}}.eye-timer-page{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px;transition:background-color .5s ease}.eye-timer-page.time-up{animation:pulse 1s infinite;background-color:red}@keyframes pulse{0%,to{background-color:red}50%{background-color:#c00}}.timer-container{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000001a;max-width:600px;padding:40px;text-align:center;width:100%}.eye-timer-page.time-up .timer-container{background:#fffffff2;box-shadow:0 8px 40px #0000004d}.timer-container h1{color:#333;font-size:36px;margin:0 0 30px}.timer-display{color:#007bff;font-family:Courier New,monospace;font-size:48px;font-weight:700;margin-bottom:30px}.eye-timer-page.time-up .timer-display{animation:blink .5s infinite;color:red}@keyframes blink{0%,50%,to{opacity:1}25%,75%{opacity:.5}}.progress-bar-container{background-color:#e0e0e0;border-radius:20px;box-shadow:inset 0 2px 4px #0000001a;height:40px;margin-bottom:20px;overflow:hidden;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#4caf50,#ffc107 50%,#ff5722);border-radius:20px;height:100%;transition:width .3s ease}.eye-timer-page.time-up .progress-bar-fill{background:red}.progress-percentage{color:#666;font-size:24px;font-weight:500;margin-bottom:30px}.eye-timer-page.time-up .progress-percentage{color:red;font-weight:700}.time-up-message{animation:shake .5s infinite;background-color:#fff3cd;border:2px solid #ffc107;border-radius:10px;color:#856404;font-size:20px;font-weight:700;margin-bottom:20px;padding:20px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.reset-button{background-color:#007bff;border:none;border-radius:10px;box-shadow:0 4px 10px #007bff4d;color:#fff;cursor:pointer;font-size:20px;font-weight:700;padding:15px 40px;transition:all .3s ease}.reset-button:hover{background-color:#0056b3;box-shadow:0 6px 15px #007bff66;transform:translateY(-2px)}.reset-button:active{box-shadow:0 2px 5px #007bff4d;transform:translateY(0)}.eye-timer-page.time-up .reset-button{background-color:#28a745;box-shadow:0 4px 10px #28a7454d}.eye-timer-page.time-up .reset-button:hover{background-color:#218838;box-shadow:0 6px 15px #28a74566}@media (max-width:768px){.timer-container{padding:30px 20px}.timer-container h1{font-size:28px}.timer-display{font-size:36px}.progress-bar-container{height:30px}.progress-percentage{font-size:20px}.time-up-message{font-size:16px;padding:15px}.reset-button{font-size:18px;padding:12px 30px}}.products-page{font-family:sans-serif;padding:20px}.products-page h1{margin-bottom:20px;text-align:center}.products-view-switcher{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.products-view-button{background:#fff;border:1px solid #ced4da;border-radius:999px;color:#495057;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px}.products-view-button.is-active{background:#0d6efd;border-color:#0d6efd;color:#fff}.products-search-container{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.products-search-container input{border:1px solid #ccc;border-radius:5px;font-size:16px;padding:8px 12px;width:300px}.products-search-container button{border:none;border-radius:5px;cursor:pointer;font-size:14px;padding:8px 15px}.products-toolbar{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.products-toolbar button{border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:8px 15px}.products-table-wrapper{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.products-table{border-collapse:collapse;width:100%}.products-table td,.products-table th{border:1px solid #ddd;padding:8px;text-align:left}.products-table th{background-color:#f2f2f2;cursor:pointer;-webkit-user-select:none;user-select:none}.products-table th:hover{background-color:#e2e2e2}.products-table tbody tr:nth-child(2n){background-color:#f9f9f9}.products-table tbody tr:hover{background-color:#e9ecef}.products-table tbody button{border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.9em;margin-right:5px;padding:5px 10px}.bundles-panel{margin:0 auto;max-width:1100px}.bundles-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.bundles-toolbar{display:flex;gap:8px;margin-bottom:16px}.bundles-list{display:flex;flex-direction:column;gap:10px}.bundle-card{background:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 1px 3px #0000001a;padding:12px}.bundle-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.bundle-card-actions{display:flex;flex-shrink:0;gap:6px}.bundles-count{color:#666;font-size:14px;margin-top:10px;text-align:center}.bundle-editor-row{align-items:center;display:flex;gap:8px;margin-bottom:6px}.product-modal-form{display:flex;flex-direction:column;gap:15px}.product-modal-form label{display:block;font-weight:700;margin-bottom:5px}.product-modal-form input[type=number],.product-modal-form input[type=text]{border:1px solid #ccc;border-radius:3px;box-sizing:border-box;padding:8px;width:100%}.product-modal-form .form-row{display:flex;gap:10px}.product-modal-form .form-row>div{flex:1 1}.product-modal-form .checkbox-row{align-items:center;display:flex;gap:10px}.product-modal-form .checkbox-row input[type=checkbox]{cursor:pointer;height:20px;width:20px}.product-modal-form .form-actions{display:flex;gap:10px;margin-top:10px}.product-modal-form .form-actions button{border:none;border-radius:3px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;padding:12px 20px}@media (max-width:768px){.products-page{padding:10px}.products-view-switcher{flex-wrap:wrap}.products-search-container{align-items:stretch;flex-direction:column}.products-search-container input{width:100%}.products-table{font-size:14px;min-width:700px}.products-table td,.products-table th{font-size:12px;padding:6px 4px}.bundle-card-actions,.bundle-card-header,.bundle-editor-row,.bundles-header,.bundles-toolbar{align-items:stretch;flex-direction:column}.bundle-card-actions{margin-left:0}.product-modal-form .form-row{flex-direction:column}.product-modal-form input[type=number],.product-modal-form input[type=text]{font-size:16px;min-height:44px}.product-modal-form .form-actions button{min-height:44px}}@media (max-width:480px){.products-page{padding:8px}.products-table{min-width:600px}.products-table td,.products-table th{font-size:11px;padding:4px 2px}}.books-page{margin:0 auto;max-width:700px;padding:16px}.books-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.books-header h1{font-size:24px;margin:0}.books-search{background:#1e1e1e;border:1px solid #444;border-radius:8px;box-sizing:border-box;color:#fff;font-size:16px;margin-bottom:16px;padding:10px 14px;width:100%}.books-search::placeholder{color:#777}.books-search:focus{border-color:#666;outline:none}.books-list{display:flex;flex-direction:column;gap:10px}.book-item{align-items:center;background:#1e1e1e;border-radius:10px;color:#f0f0f0;cursor:pointer;display:flex;justify-content:space-between;padding:14px 16px;transition:background .15s}.book-item:hover{background:#2a2a2a}.book-item:active{background:#333}.book-info{display:flex;flex-direction:column;gap:2px}.book-name{font-size:17px;font-weight:500}.book-position{color:#888;font-size:13px}.books-empty{color:#666;margin-top:40px;text-align:center}.btn-primary{background:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;padding:10px 18px}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-primary:hover:not(:disabled){background:#357abd}.btn-secondary{background:#333;border:none;border-radius:8px;color:#ccc;cursor:pointer;font-size:15px;padding:10px 18px}.btn-secondary:disabled{opacity:.5}.btn-secondary:hover:not(:disabled){background:#444}.btn-delete{background:none;border:none;border-radius:6px;color:#888;cursor:pointer;font-size:18px;padding:4px 8px}.btn-delete:hover{background:#2a1a1a;color:#e74c3c}.books-modal-backdrop{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.books-modal{background:#252525;border-radius:14px;max-width:420px;padding:24px;width:100%}.books-modal h2{font-size:20px;margin:0 0 20px}.books-modal form{display:flex;flex-direction:column;gap:14px}.books-modal input[type=text]{background:#1a1a1a;border:1px solid #444;border-radius:8px;color:#fff;font-size:16px;padding:12px 14px}.books-modal input[type=text]::placeholder{color:#666}.books-modal input[type=text]:focus{border-color:#4a90e2;outline:none}.file-drop-zone{border:2px dashed #444;border-radius:8px;color:#888;cursor:pointer;font-size:15px;padding:16px;text-align:center;transition:border-color .15s}.file-drop-zone:hover{border-color:#4a90e2;color:#ccc}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.error-text{color:#e74c3c;font-size:14px;margin:0}.player-page{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:480px;min-height:70vh;padding:20px 16px 40px}.player-back{align-self:flex-start;background:none;border:none;color:#4a90e2;cursor:pointer;font-size:16px;margin-bottom:24px;padding:4px 0}.player-title{color:#000;font-size:22px;font-weight:600;line-height:1.3;margin-bottom:40px;text-align:center}.player-progress-bar{-webkit-tap-highlight-color:rgba(0,0,0,0);background:#333;border-radius:3px;cursor:pointer;height:6px;margin-bottom:8px;position:relative;touch-action:none;width:100%}.player-progress-fill{background:#4a90e2;border-radius:3px;height:100%;pointer-events:none;transition:width .25s linear}.player-times{color:#888;font-size:13px;justify-content:space-between;width:100%}.player-controls,.player-times{display:flex;margin-bottom:36px}.player-controls{align-items:center;gap:28px}.player-btn{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:none;border:none;color:#f0f0f0;cursor:pointer;display:flex;flex-direction:column}.player-btn.play{background:#4a90e2;border-radius:50%;font-size:28px;height:72px;justify-content:center;padding:0;transition:background .15s;width:72px}.player-btn.play:hover{background:#357abd}.player-btn.play:active{background:#2a6099}.player-btn.skip{height:52px;justify-content:center;position:relative;width:52px}.player-btn.skip .skip-icon{font-size:28px;line-height:1}.player-btn.skip .skip-label{color:#888;font-size:11px;margin-top:2px}.player-btn.skip:active{opacity:.7}.player-speed-control{align-items:center;display:flex;gap:16px;margin-bottom:12px}.speed-step-btn{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:#1e1e1e;border:1px solid #444;border-radius:50%;color:#ccc;cursor:pointer;display:flex;font-size:22px;height:40px;justify-content:center;line-height:1;transition:all .15s;width:40px}.speed-step-btn:hover:not(:disabled){border-color:#4a90e2;color:#4a90e2}.speed-step-btn:active:not(:disabled){background:#2a2a2a}.speed-step-btn:disabled{cursor:default;opacity:.3}.speed-display{color:#000;font-size:20px;font-weight:600;min-width:52px;text-align:center}.speed-slider{appearance:none;-webkit-appearance:none;background:#333;border-radius:2px;cursor:pointer;height:4px;margin-bottom:4px;max-width:320px;outline:none;width:100%}.speed-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#4a90e2;border-radius:50%;cursor:pointer;height:20px;-webkit-transition:background .15s;transition:background .15s;width:20px}.speed-slider::-webkit-slider-thumb:hover{background:#357abd}.speed-slider::-moz-range-thumb{background:#4a90e2;border:none;border-radius:50%;cursor:pointer;height:20px;width:20px}.speed-slider::-webkit-slider-runnable-track{background:#333;border-radius:2px;height:4px}.speed-slider::-moz-range-track{background:#333;border-radius:2px;height:4px}.player-volume-control{align-items:center;display:flex;gap:16px;margin-bottom:12px;margin-top:20px}.volume-display{color:#000;font-size:20px;font-weight:600;min-width:52px;text-align:center}.volume-slider{appearance:none;-webkit-appearance:none;background:#333;border-radius:2px;cursor:pointer;height:4px;margin-bottom:4px;max-width:320px;outline:none;width:100%}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#4a90e2;border-radius:50%;cursor:pointer;height:20px;-webkit-transition:background .15s;transition:background .15s;width:20px}.volume-slider::-webkit-slider-thumb:hover{background:#357abd}.volume-slider::-moz-range-thumb{background:#4a90e2;border:none;border-radius:50%;cursor:pointer;height:20px;width:20px}.volume-slider::-webkit-slider-runnable-track{background:#333;border-radius:2px;height:4px}.volume-slider::-moz-range-track{background:#333;border-radius:2px;height:4px}.player-error,.player-loading{color:#888;font-size:18px;margin-top:80px;text-align:center}.player-error{color:#e74c3c}.scorecard-page{background:#14181c;color:#e8e8e8;margin:0 auto;max-width:1200px;min-height:100vh;padding:16px}.scorecard-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.scorecard-header h1{font-size:22px;margin:0}.scorecard-controls{align-items:center;display:flex;gap:10px}.range-buttons button,.settings-toggle{background:#2a2f34;border:1px solid #3a3f44;border-radius:6px;color:#e8e8e8;cursor:pointer;padding:6px 10px}.range-buttons button.active{background:#0d6efd;border-color:#0d6efd}.range-buttons button+button{margin-left:4px}.scorecard-settings{background:#1f2429;border:1px solid #3a3f44;border-radius:8px;margin-bottom:16px;padding:14px}.settings-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.settings-row>label{color:#aab2bd;font-size:14px;width:120px}.scorecard-settings input,.scorecard-settings select{background:#2a2f34;border:1px solid #3a3f44;border-radius:6px;color:#e8e8e8;padding:6px 8px}.settings-row.weights{gap:16px}.settings-row.weights>div{display:flex;flex-direction:column;gap:4px}.settings-row.weights label{color:#aab2bd;font-size:12px}.settings-row.weights input{width:80px}.settings-actions{display:flex;gap:8px;margin-top:4px}.settings-actions button{background:#2a2f34;border:1px solid #3a3f44;border-radius:6px;color:#e8e8e8;cursor:pointer;padding:6px 14px}.settings-actions button.save{background:#198754;border-color:#198754}.settings-hint{color:#8a929c;font-size:12px;margin:10px 0 0}.summary-cards{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.summary-card{background:#1f2429;border:1px solid #3a3f44;border-radius:8px;flex:1 1 140px;padding:12px;text-align:center}.summary-card.average{background:#16202b;border-color:#0d6efd}.summary-card.blind-spot{border-color:#dc3545;box-shadow:inset 0 0 0 1px #dc354566}.summary-card.unconfigured{opacity:.7}.summary-label{color:#aab2bd;font-size:13px;margin-bottom:4px}.summary-value{font-size:26px;font-weight:700}.summary-value.muted{color:#6c757d}.summary-sub{color:#8a929c;font-size:12px;margin-top:2px}.summary-target{color:#6c757d;font-size:11px;margin-top:2px}.scorecard-table-container{border:1px solid #3a3f44;border-radius:8px;overflow-x:auto}.scorecard-table{border-collapse:collapse;font-size:14px;width:100%}.scorecard-table td,.scorecard-table th{border-bottom:1px solid #2a2f34;padding:8px;text-align:center;white-space:nowrap}.scorecard-table thead th{background:#1f2429;color:#aab2bd;font-weight:600;position:-webkit-sticky;position:sticky;top:0}.scorecard-table th.unconfigured{color:#6c757d}.scorecard-table .date-col{text-align:left}.scorecard-table td.date-col{color:#e8e8e8;font-weight:600}.scorecard-table .today-row{background:#0d6efd1f}.goal-cell{vertical-align:middle}.dot{align-items:center;border-radius:50%;color:#fff;display:inline-flex;font-size:12px;height:22px;justify-content:center;line-height:1;width:22px}.dot.faint{background:#0000;border:1px dashed #4a4f54;color:#6c757d}.dot.legend{height:14px;margin-right:4px;vertical-align:middle;width:14px}.cell-value{color:#8a929c;display:block;font-size:10px;margin-top:2px}.score-col{min-width:70px}.score-pill{border-radius:12px;color:#fff;display:inline-block;font-size:13px;font-weight:700;min-width:44px;padding:3px 8px}.score-points{color:#8a929c;font-size:10px;margin-top:2px}.scorecard-legend{color:#aab2bd;display:flex;flex-wrap:wrap;font-size:12px;gap:16px;margin-top:12px}.scorecard-status{color:#aab2bd;padding:12px 0}.scorecard-status.error{color:#dc3545}
/*# sourceMappingURL=main.b96f90d8.css.map*/