*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:#0a0a0a;color:#fff;min-height:100vh;display:flex;justify-content:center;align-items:center;overscroll-behavior:none;padding:0}:root{--overlay-backdrop-bg: rgba(0, 0, 0, .9);--overlay-backdrop-blur: 10px;--overlay-surface-bg: #1c1c1e;--overlay-surface-border: rgba(255, 255, 255, .04);--overlay-surface-radius: 20px;--overlay-surface-shadow: 0 18px 48px rgba(0, 0, 0, .45);--overlay-header-padding: 20px;--overlay-header-border: #3a3a3c;--overlay-title-size: 18px;--overlay-title-weight: 600;--overlay-close-bg: #2c2c2e;--overlay-close-bg-hover: #3a3a3c;--overlay-close-color: #8e8e93;--overlay-close-color-hover: #ffffff;--overlay-motion-duration: .22s;--overlay-motion-ease: cubic-bezier(.22, 1, .36, 1);--overlay-top-inset: 28px;--overlay-side-inset: 12px;--overlay-canvas-width: 560px;--overlay-canvas-height: calc(100dvh - (var(--overlay-top-inset) * 2));--overlay-header-min-height: 72px;--overlay-title-line-height: 1.2;--overlay-title-letter-spacing: -.01em}.container{width:100%;max-width:393px;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;padding:8px 8px 100px;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;background-color:#000;margin:0 auto}@media (min-width: 500px){.container{border-radius:40px;box-shadow:0 20px 60px #00000080;border:1px solid #1c1c1e}}header{text-align:center;margin-bottom:30px;padding-top:env(safe-area-inset-top)}h1{font-size:28px;font-weight:700;margin-bottom:8px;letter-spacing:-.5px}.subtitle{color:#888;font-size:16px;font-weight:400}.app-title{font-size:18px;font-weight:600;color:#fff;text-align:center;margin:0;letter-spacing:.5px;flex:1}.activity-matrix{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);gap:3px;padding:15px;background-color:#1c1c1e;border-radius:16px;margin:80px auto 0;box-sizing:border-box;overflow:hidden;width:360px;height:360px;min-width:360px;min-height:360px;max-width:360px;max-height:360px;aspect-ratio:1 / 1;flex-shrink:0}.matrix-short{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:5px}.matrix-weekly{grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr)}.matrix-medium{grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);gap:2px}.matrix-long{grid-template-columns:repeat(18,1fr);grid-template-rows:repeat(18,1fr);gap:1px;padding:10px}.tab-panels{width:100%}.tab-panel{display:none;width:100%}#tab-go{display:flex;flex-direction:column;align-items:center;padding:75px 16px 16px;min-height:calc(100dvh - 60px);overflow-y:auto;gap:12px}.go-top-switcher{width:360px;perspective:800px;-webkit-tap-highlight-color:transparent;position:relative;display:flex;flex-direction:column;align-items:center}.go-flip-inner{width:360px;height:360px;position:relative;transition:transform .5s ease;transform-style:preserve-3d;-webkit-transform-style:preserve-3d}.go-top-switcher.flipped .go-flip-inner{transform:rotateY(180deg)}.go-flip-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:16px;background-color:#1c1c1e;overflow:hidden;transition:opacity .2s ease;will-change:opacity}.go-flip-front{opacity:1;pointer-events:auto}.go-flip-back{transform:rotateY(180deg);opacity:0;pointer-events:none}.go-top-switcher.flipped .go-flip-front{opacity:0;pointer-events:none}.go-top-switcher.flipped .go-flip-back{opacity:1;pointer-events:auto}.go-volume-gauges{width:360px;height:360px;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.go-volume-gauges .explain-systems{width:100%}.go-volume-gauges .explain-system-row{padding:8px 0}.go-volume-gauges .explain-bar-track{height:24px}.go-volume-gauges .explain-systems-title{font-size:13px;margin-bottom:12px}.go-volume-gauges .explain-system-label{font-size:13px;width:110px}.go-volume-gauges .explain-bar-value{font-size:12px}.go-flip-back .activity-matrix{margin:0;width:360px;height:360px}.go-view-switch{display:flex;background:#2c2c2e;border-radius:8px;padding:2px;margin-bottom:8px;align-self:center}.go-view-btn{flex:1;padding:6px 16px;font-size:11px;font-weight:500;color:#ffffff80;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.go-view-btn-active{background:#3a3a3c;color:#fff}.go-nav-row{display:flex;gap:8px;width:100%;max-width:360px;touch-action:manipulation}.go-nav-row .suggest-filter-btn,.go-nav-row .suggest-back-btn,.go-nav-row .suggest-next-btn{flex:1;padding:9px 0;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;background-color:#2c2c2e;color:#ffffffb3;border:1px solid #3a3a3c;touch-action:manipulation;user-select:none;-webkit-user-select:none}.go-nav-row .suggest-back-btn:disabled,.go-nav-row .suggest-next-btn:disabled{opacity:.3;cursor:default}.go-nav-row .suggest-filter-btn:active,.go-nav-row .suggest-back-btn:active:not(:disabled),.go-nav-row .suggest-next-btn:active:not(:disabled){background-color:#3a3a3c;transform:scale(.97)}.matrix-square{width:100%;height:100%;border-radius:2px;transition:all .2s ease;cursor:pointer}.matrix-square.empty{background-color:#2c2c2e;border:1px solid #3a3a3c}.matrix-square.completed{border:1px solid rgba(255,255,255,.2)}.matrix-square.completed.catalog-workout{border:1px dashed rgba(255,255,255,.3)}.matrix-square.today{background-color:#48484a;border:1px solid #636366;animation:pulse 2s infinite}.matrix-square.today.clickable{background-color:#007aff;border:2px solid #0056b3;cursor:pointer;animation:todayPulse 4.5s ease-in-out infinite;position:relative}.matrix-square.today.clickable:hover{background-color:#0056b3;animation:none;transform:scale(1.05);transition:all .2s ease}.matrix-square.active{border:2px solid #ffffff!important;box-shadow:0 0 0 2px #ffffff4d,0 0 8px #ffffff80;transform:scale(1.1);z-index:10;position:relative}.matrix-square[data-accountability=avoided]{box-shadow:0 0 12px #fff9,0 0 24px #fff6;animation:breathing 5s ease-in-out infinite}.matrix-square[data-accountability=avoided]:nth-child(2n){animation-delay:.5s}.matrix-square[data-accountability=avoided]:nth-child(3n){animation-delay:1s}.matrix-square[data-accountability=avoided]:nth-child(5n){animation-delay:1.5s}.matrix-square[data-accountability=avoided]:nth-child(7n){animation-delay:2s}.matrix-square[data-accountability=avoided]:nth-child(11n){animation-delay:2.5s}.matrix-square[data-accountability=avoided]:nth-child(13n){animation-delay:3s}.matrix-square[data-accountability=avoided]:nth-child(17n){animation-delay:3.5s}.matrix-square[data-accountability=avoided]:nth-child(19n){animation-delay:4s}@keyframes breathing{0%,to{box-shadow:0 0 8px #fff6,0 0 16px #fff3;transform:scale(1)}50%{box-shadow:0 0 20px #fff,0 0 40px #ffffffb3,0 0 60px #fff6;transform:scale(1.02)}}.matrix-square.active[data-accountability]{border:2px solid #ffffff!important;box-shadow:0 0 0 2px #ffffff4d,0 0 8px #ffffff80!important;animation:none!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes todayPulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 8px #007aff99,0 0 16px #007aff66}50%{opacity:.35;transform:scale(1.05);box-shadow:0 0 12px #007affcc,0 0 24px #007aff99}}@media (max-width: 350px){.activity-matrix{grid-template-columns:repeat(30,1fr);gap:1px;padding:10px}}.testing-controls{background-color:#1c1c1e;border-radius:12px;padding:15px;width:100%;box-sizing:border-box}.testing-header{font-size:14px;font-weight:600;color:#888;margin-bottom:12px;text-align:center}.testing-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.testing-buttons #fast-forward-btn,.testing-buttons #reset-timeline-btn{grid-column:1 / -1}.testing-buttons button{padding:8px 12px;border:none;border-radius:6px;background-color:#2c2c2e;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.testing-buttons button:hover{background-color:#3a3a3c}.testing-buttons button:active{transform:scale(.95)}.admin-tuning-panel{position:fixed;right:12px;bottom:12px;width:min(420px,calc(100vw - 24px));max-height:min(78vh,720px);overflow:auto;z-index:3000;background:#1c1c1ef5;border:1px solid #3a3a3c;border-radius:14px;box-shadow:0 10px 30px #00000059;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-tuning-panel.collapsed .admin-tuning-body{display:none}.admin-tuning-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #2c2c2e}.admin-tuning-title{font-size:13px;font-weight:700;letter-spacing:.02em}.admin-tuning-collapse{border:1px solid #3a3a3c;background:#2c2c2e;color:#fff;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.admin-tuning-body{padding:10px 12px 12px}.admin-tuning-status{font-size:11px;color:#8e8e93;margin-bottom:10px;line-height:1.35}.admin-tuning-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-tuning-field{display:flex;flex-direction:column;gap:4px;background:#232325;border:1px solid #2f2f31;border-radius:10px;padding:8px}.admin-tuning-label{font-size:11px;color:#c7c7cc;line-height:1.25;min-height:28px}.admin-tuning-field input{width:100%;box-sizing:border-box;border:1px solid #3a3a3c;background:#111214;color:#fff;border-radius:8px;padding:7px 8px;font-size:13px}.admin-tuning-default{font-size:10px;color:#8e8e93}.admin-tuning-default.changed{color:#ffd60a}.admin-tuning-actions{display:flex;gap:8px;margin-top:10px}.admin-tuning-actions button{flex:1;border:1px solid #3a3a3c;background:#2c2c2e;color:#fff;border-radius:8px;padding:8px 10px;font-size:12px;cursor:pointer}.admin-tuning-actions button:hover{background:#3a3a3c}.admin-tuning-summary{margin-top:10px;font-size:11px;color:#c7c7cc;line-height:1.4;display:grid;gap:4px}@media (max-width: 640px){.admin-tuning-panel{left:8px;right:8px;width:auto;bottom:8px;max-height:66vh}.admin-tuning-grid{grid-template-columns:1fr}}.workout-tooltip{position:absolute;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:500;color:#fff;white-space:nowrap;z-index:1000;opacity:0;transform:scale(.8);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}.workout-tooltip.visible{opacity:1;transform:scale(1)}.tooltip-content{line-height:1.3}.tooltip-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.tooltip-view-btn{padding:2px 8px;background-color:#007aff;color:#fff;border:none;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.tooltip-view-btn:hover{background-color:#0051d5}.tooltip-view-btn:active{background-color:#004bb8}.tooltip-cycle-workout{margin-bottom:4px}.tooltip-separator{height:1px;background-color:#3a3a3c;margin:6px 0}.tooltip-catalog-workouts{display:flex;flex-direction:column;gap:4px}.tooltip-catalog-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#8e8e93}.tooltip-catalog-item .tooltip-view-btn{margin-left:auto;flex-shrink:0}.tooltip-catalog-item .catalog-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tooltip-catalog-item .catalog-info{white-space:nowrap}#workout-view{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999;display:none;align-items:center;justify-content:center;pointer-events:none}#workout-view.active{display:flex;pointer-events:auto;animation:overlayShow .3s cubic-bezier(.16,1,.3,1)}@media (max-width: 768px){#workout-view{align-items:flex-end;padding:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes overlayShow{0%{opacity:0}to{opacity:1}}#workout-view:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity .3s ease}#workout-view.active:before{opacity:1}.workout-card{background-color:#1c1c1e;border-radius:20px;position:relative;padding:20px;display:flex;flex-direction:column;gap:10px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;transform:scale(.9) translateY(20px);transition:all .3s cubic-bezier(.16,1,.3,1);z-index:1}#workout-view.active .workout-card{transform:scale(1) translateY(0)}.historical-weights{display:flex;flex-direction:column;gap:12px;padding:16px;background-color:#2c2c2e;border-radius:12px}.historical-weight-item{font-size:15px;font-weight:500;color:#fff;padding:8px 0}.workout-card.historical .weight-tracking{margin-top:0}@media (max-width: 768px){.workout-card{width:100%;max-width:none;border-radius:20px 20px 0 0;max-height:70vh;margin:0;transform:translateY(100%)}#workout-view.active .workout-card{transform:translateY(0)}}.workout-close-btn{position:absolute;top:15px;right:15px;background:#2c2c2ecc;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;z-index:10;transition:all .2s ease}.workout-close-btn:hover{background:#fff3;transform:scale(1.1)}.workout-preview{margin-bottom:12px}.workout-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;position:relative}.exercise-info-icon{display:none}.exercise-details-btn{margin-top:8px;padding:6px 12px;background-color:transparent;border:1px solid #3a3a3c;border-radius:8px;color:#0a84ff;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-block}.exercise-details-btn:hover{background-color:#0a84ff1a;border-color:#0a84ff}.exercise-details-btn:active{transform:scale(.98)}.exercise-details-btn.expanded{background-color:#0a84ff;color:#fff;border-color:#0a84ff}.workout-number{display:none}.workout-info{flex:1}.workout-title{font-size:20px;font-weight:600;color:#fff;margin-bottom:4px;cursor:pointer;transition:opacity .2s ease;display:inline-flex;align-items:center;gap:6px}.workout-title:hover{opacity:.8}.workout-title:active{opacity:.6}.external-link-icon{font-size:16px;color:#0a84ff;opacity:.9}.workout-summary{font-size:14px;color:#8e8e93}.workout-focus{display:none}.workout-thumbnail{width:200px;height:177px;border-radius:12px;object-fit:cover;flex-shrink:0;cursor:pointer;transition:all .2s ease}.workout-thumbnail:hover{transform:scale(1.02);box-shadow:0 4px 12px #0006}.workout-thumbnail:active{transform:scale(.98)}.workout-details,.detail-item,.detail-label,.detail-value,.exercise-toggle-btn,#exercise-toggle-icon{display:none}.workout-blocks{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;margin-top:-4px}.exercise-block{background-color:#2c2c2e;border-radius:12px;padding:12px 16px}.block-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.block-number{background-color:#0a84ff;color:#fff;font-size:12px;font-weight:600;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center}.block-title{font-size:14px;font-weight:600;color:#fff}.block-count{font-size:12px;color:#8e8e93;margin-left:auto}.exercise-list{display:flex;flex-direction:column;gap:8px}.exercise-item{background-color:#3a3a3c;border-radius:8px;padding:10px 12px;transition:background-color .2s ease}.exercise-item:hover{background-color:#48484a}.exercise-name{font-size:14px;font-weight:600;color:#fff;margin-bottom:4px}.exercise-description{font-size:12px;color:#8e8e93;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exercise-chip{background-color:#3a3a3c;color:#fff;font-size:12px;font-weight:500;padding:4px 8px;border-radius:6px;white-space:nowrap;display:inline-block}@media (max-width: 480px){.exercise-list{gap:6px}.exercise-item{padding:8px 10px}.exercise-name{font-size:13px}.exercise-description{font-size:11px;-webkit-line-clamp:1}}@media (max-width: 480px){.workout-header{gap:12px}.workout-number{font-size:36px;min-width:45px}.workout-title{font-size:17px}.workout-summary{font-size:13px}.workout-focus{font-size:12px}.workout-details{padding:10px 14px}}.workout-rating{background-color:#2c2c2e;border-radius:16px;padding:12px}.rating-group{margin-bottom:12px}.rating-group:last-child{margin-bottom:0}.rating-label{display:block;color:#8e8e93;font-size:13px;font-weight:500;margin-bottom:8px}.rating-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.rating-btn{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;background-color:#1c1c1e;border:2px solid #3a3a3c;border-radius:10px;cursor:pointer;transition:all .2s ease;opacity:.5;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rating-btn:hover{opacity:.7;background-color:#2c2c2e}.rating-btn:active{transform:scale(.95)}.rating-btn.selected{border-color:#0a84ff;background-color:#0a84ff1a;opacity:1}.rating-emoji{font-size:24px;line-height:1}.rating-confirm-btn{width:100%;padding:12px 16px;margin-top:12px;background-color:#48484a;color:#8e8e93;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:not-allowed;transition:all .2s ease;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rating-confirm-btn:not(:disabled){background-color:#0a84ff;color:#fff;cursor:pointer}.rating-confirm-btn:not(:disabled):hover{background-color:#0077ed}.rating-confirm-btn:not(:disabled):active{transform:scale(.98)}.rating-confirm-btn.saved{background-color:#34c759;color:#fff}.historical-ratings{margin-top:16px;padding:12px;background-color:#2c2c2e;border-radius:12px}.historical-rating-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.historical-rating-item .rating-label{font-size:14px;color:#8e8e93;margin:0}.historical-rating-item .rating-value{font-size:15px;font-weight:500;color:#fff}.workout-notes{background-color:#2c2c2e;border-radius:16px;padding:12px;margin-top:10px}.notes-label{display:block;color:#8e8e93;font-size:13px;font-weight:500;margin-bottom:8px}.notes-textarea{width:100%;min-height:80px;padding:10px;background-color:#1c1c1e;border:2px solid #3a3a3c;border-radius:10px;color:#fff;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;resize:vertical;transition:border-color .2s ease}.notes-textarea:focus{outline:none;border-color:#0a84ff}.notes-textarea::placeholder{color:#636366}.notes-char-count{text-align:right;font-size:11px;color:#8e8e93;margin-top:4px}.historical-notes{margin-top:16px;padding:12px;background-color:#2c2c2e;border-radius:12px}.historical-notes .notes-label{font-size:13px;color:#8e8e93;margin-bottom:8px}.historical-notes .notes-content{font-size:14px;color:#fff;line-height:1.5;white-space:pre-wrap}.workout-actions{display:flex;gap:12px;width:100%}.completion-toggle-container{width:100%;display:flex;align-items:center;justify-content:center}.completion-toggle-label{display:flex;align-items:center;justify-content:space-between;width:100%;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:14px;padding:12px 16px;cursor:pointer;transition:all .2s ease;min-height:56px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.completion-toggle-label:active{transform:scale(.98)}.toggle-label-text{font-size:15px;font-weight:600;color:#fff;flex:1}.completion-toggle-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.completion-toggle-slider{position:relative;width:51px;height:31px;background-color:#3a3a3c;border-radius:31px;transition:background-color .3s ease;flex-shrink:0}.completion-toggle-slider:before{content:"";position:absolute;height:27px;width:27px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:transform .3s ease}.completion-toggle-input:checked+.completion-toggle-slider{background-color:#34c759}.completion-toggle-input:checked+.completion-toggle-slider:before{transform:translate(20px)}.completion-toggle-input:disabled~.toggle-label-text{color:#8e8e93}.completion-toggle-input:disabled+.completion-toggle-slider{opacity:.6;cursor:not-allowed}.completion-toggle-label:has(.completion-toggle-input:disabled){cursor:not-allowed;transform:none!important}.completion-toggle-label:has(.completion-toggle-input:disabled):active{transform:none!important}.video-player-modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.video-player-container{position:relative;width:90vw;max-width:1200px;max-height:90vh;background-color:#1c1c1e;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #00000080}.video-player-header{position:absolute;top:0;right:0;z-index:10001;padding:16px}.video-close-btn{background-color:#000000b3;color:#fff;border:none;width:44px;height:44px;border-radius:22px;font-size:24px;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.video-close-btn:hover{background-color:#000000e6;transform:scale(1.05)}.workout-video{width:100%;height:auto;max-height:90vh;display:block;border-radius:16px}.weight-tracking{background-color:#2c2c2e;border-radius:16px;padding:12px}.weight-title{display:none}.weight-inputs-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.weight-input-group{display:flex;flex-direction:column;gap:8px}.weight-input-group label{color:#8e8e93;font-size:13px;font-weight:500}.weight-input-group input{width:100%;padding:10px;background-color:#1c1c1e;border:2px solid transparent;border-radius:10px;color:#fff;text-align:center;font-size:16px;font-weight:600;transition:border-color .2s ease}.weight-input-group input:focus{outline:none;border-color:#0a84ff}.weight-input-group .unit{color:#8e8e93;font-size:14px;text-align:center;margin-top:-4px}.weight-comparison{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;min-height:20px}.previous-weight{color:#8e8e93;font-size:12px;font-weight:400;white-space:nowrap}.trend-indicator{font-size:14px;font-weight:600;height:16px;width:16px;display:flex;align-items:center;justify-content:center}.trend-indicator.increase{color:#34c759}.trend-indicator.same{color:#8e8e93}.trend-indicator.decrease{color:#ff453a}.complete-btn{background-color:#34c759;color:#fff;border:none;padding:16px 12px;border-radius:14px;font-size:15px;font-weight:600;cursor:pointer;flex:1;transition:all .2s ease;-webkit-touch-callout:none;min-height:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.complete-btn:active{transform:scale(.97);background-color:#28a745}.complete-btn:disabled{background-color:#48484a!important;cursor:not-allowed!important;opacity:.8}.complete-btn:disabled:active{transform:none}.trophy-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:10px 0}.trophy-item{aspect-ratio:1;background-color:#1c1c1e;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:20px}.trophy-item.completed{background:linear-gradient(135deg,#0a84ff,#0051d5)}.trophy{font-size:64px;margin-bottom:10px}.trophy-date{font-size:12px;color:#fffc;text-align:center;font-weight:500}.trophy-placeholder{width:80px;height:80px;border:3px dashed #48484a;border-radius:50%;margin-bottom:10px}.loading{text-align:center;padding:40px;color:#8e8e93}.error{background-color:#ff3b30;color:#fff;padding:12px 20px;border-radius:10px;margin-bottom:20px;text-align:center}@keyframes celebrate{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(180deg);opacity:1}to{transform:scale(1) rotate(360deg);opacity:1}}.celebrate{animation:celebrate .6s cubic-bezier(.68,-.55,.265,1.55)}@supports (padding: env(safe-area-inset-bottom)){.container{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}.settings-btn{position:fixed;top:max(env(safe-area-inset-top,0px),12px);right:12px;width:44px;height:44px;background-color:#2c2c2e;border:none;border-radius:12px;color:#8e8e93;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:998}.settings-btn:hover{background-color:#3a3a3c;color:#fff}.settings-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;display:none;align-items:flex-start;justify-content:center;padding:var(--overlay-top-inset) var(--overlay-side-inset);background-color:var(--overlay-backdrop-bg);-webkit-backdrop-filter:blur(var(--overlay-backdrop-blur));backdrop-filter:blur(var(--overlay-backdrop-blur))}.settings-modal.visible{display:flex!important}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center}#user-modal-overlay{z-index:2300}.modal-content{position:relative;background-color:var(--overlay-surface-bg);border-radius:var(--overlay-surface-radius);width:90%;max-width:600px;max-height:80vh;overflow:visible;transform:scale(.9);transition:transform var(--overlay-motion-duration) var(--overlay-motion-ease);display:flex;flex-direction:column}.settings-modal.visible .modal-content{transform:scale(1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:25px 25px 20px;border-bottom:1px solid #3a3a3c}.modal-header h2{font-size:24px;font-weight:700;color:#fff;margin:0}.modal-close{width:32px;height:32px;background-color:var(--overlay-close-bg);border:none;border-radius:8px;color:var(--overlay-close-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close:hover{background-color:var(--overlay-close-bg-hover);color:var(--overlay-close-color-hover)}.modal-body{padding:0;flex:1;min-height:0;overflow-y:auto}.overlay-shell{background-color:var(--overlay-backdrop-bg);backdrop-filter:blur(var(--overlay-backdrop-blur));-webkit-backdrop-filter:blur(var(--overlay-backdrop-blur));padding:var(--overlay-top-inset) var(--overlay-side-inset)}.overlay-shell.overlay-shell--top{align-items:flex-start}.overlay-shell.overlay-shell--center{align-items:center}.overlay-panel{background-color:var(--overlay-surface-bg);border-radius:var(--overlay-surface-radius);box-shadow:var(--overlay-surface-shadow);border:1px solid var(--overlay-surface-border);overflow:hidden;display:flex;flex-direction:column}.overlay-panel--narrow{width:min(460px,100%);max-width:460px;max-height:min(var(--overlay-canvas-height),80dvh)}.overlay-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--overlay-header-padding);border-bottom:1px solid var(--overlay-header-border);gap:12px;min-height:var(--overlay-header-min-height)}.overlay-panel-title{font-size:var(--overlay-title-size);font-weight:var(--overlay-title-weight);line-height:var(--overlay-title-line-height);letter-spacing:var(--overlay-title-letter-spacing);color:#fff;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:8px}.overlay-panel-header .overlay-panel-title{font-size:var(--overlay-title-size);font-weight:var(--overlay-title-weight);line-height:var(--overlay-title-line-height);letter-spacing:var(--overlay-title-letter-spacing)}.overlay-panel-body{flex:1;min-height:0;overflow-y:auto}.settings-modal .modal-content,.catalog-workout-modal-content{background-color:var(--overlay-surface-bg);border-radius:var(--overlay-surface-radius);box-shadow:var(--overlay-surface-shadow);border:1px solid var(--overlay-surface-border);overflow:hidden}.settings-modal .modal-content{width:min(var(--overlay-canvas-width),100%);max-width:var(--overlay-canvas-width);height:var(--overlay-canvas-height);max-height:var(--overlay-canvas-height);transform:translateY(10px) scale(.985)}.settings-modal.visible .modal-content{transform:translateY(0) scale(1)}.settings-modal .modal-header{padding:var(--overlay-header-padding);border-bottom:1px solid var(--overlay-header-border);gap:12px;min-height:var(--overlay-header-min-height)}.settings-modal .modal-header h2{font-size:var(--overlay-title-size);font-weight:var(--overlay-title-weight);line-height:var(--overlay-title-line-height);letter-spacing:var(--overlay-title-letter-spacing);margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:8px}.settings-modal .modal-close{flex-shrink:0}.settings-modal .modal-body{display:flex;flex-direction:column;flex:1;max-height:none;overflow-y:auto;padding:0}.settings-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #3a3a3c;gap:0}.tab-btn{flex:1 1 auto;min-width:0;padding:14px 12px;background-color:transparent;border:none;color:#8e8e93;font-size:24px;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;justify-content:center}.tab-btn.active{color:#0a84ff}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background-color:#0a84ff}.tab-btn:hover:not(.active){color:#fff}.tab-content{padding:25px;display:flex;flex-direction:column;flex:1;min-height:0}.settings-modal .tab-content{overflow:hidden}.tab-panel{display:none}.tab-panel.active{display:block}.settings-modal .tab-panel.active{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.colors-content{padding:10px 0}.settings-modal #colors.tab-panel.active .colors-content{display:flex;flex-direction:column;flex:1;min-height:100%}.colors-content h3{margin:0 0 10px;color:#fff;font-size:18px}.colors-description{margin:0 0 20px;color:#8e8e93;font-size:14px}.palette-picker{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;min-height:0;overflow-y:auto;padding-right:5px}.settings-modal #colors .palette-picker{flex:1}.palette-card{background-color:#2c2c2e;border:2px solid transparent;border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease}.palette-card:hover{background-color:#3a3a3c;border-color:#ffffff1a}.palette-card.selected{border-color:#007aff;background-color:#007aff1a}.palette-header{margin-bottom:12px}.palette-name{margin:0 0 4px;color:#fff;font-size:16px;font-weight:600}.palette-description{margin:0;color:#8e8e93;font-size:13px}.palette-colors{display:flex;gap:4px;margin-top:12px}.color-swatch{flex:1;height:36px;border-radius:6px;border:1px solid rgba(255,255,255,.1);transition:transform .2s ease}.color-swatch:hover{transform:scale(1.1);z-index:1}.saved-indicator{margin-top:10px;padding:6px 12px;background-color:#007aff;color:#fff;font-size:12px;font-weight:600;border-radius:6px;display:inline-block}.weight-unit-section{margin-top:24px;padding-top:24px;border-top:1px solid #3a3a3c}.weight-unit-toggle-label{display:flex;align-items:center;justify-content:space-between;width:100%;background-color:#2c2c2e;border-radius:12px;padding:14px 16px;cursor:pointer;transition:transform .1s ease;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.weight-unit-toggle-label:active{transform:scale(.98)}.weight-unit-label-text{font-size:15px;font-weight:600;color:#fff;flex:1}.weight-unit-toggle-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.weight-unit-toggle-slider{position:relative;width:51px;height:31px;background-color:#3a3a3c;border-radius:31px;transition:background-color .3s ease;flex-shrink:0}.weight-unit-toggle-slider:before{content:"";position:absolute;height:27px;width:27px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:transform .3s ease}.weight-unit-toggle-input:checked+.weight-unit-toggle-slider{background-color:#34c759}.weight-unit-toggle-input:checked+.weight-unit-toggle-slider:before{transform:translate(20px)}.accountability-tracking-section{margin-top:24px;padding:16px;background-color:#1c1c1e;border-radius:12px}.accountability-tracking-toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.accountability-tracking-label-text{font-size:16px;font-weight:500;color:#fff}.accountability-tracking-toggle-input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.accountability-tracking-toggle-slider{position:relative;width:51px;height:31px;background-color:#48484a;border-radius:16px;transition:background-color .3s ease;flex-shrink:0}.accountability-tracking-toggle-slider:before{content:"";position:absolute;width:27px;height:27px;border-radius:50%;background-color:#fff;top:2px;left:2px;transition:transform .3s ease}.accountability-tracking-toggle-input:checked+.accountability-tracking-toggle-slider{background-color:#34c759}.accountability-tracking-toggle-input:checked+.accountability-tracking-toggle-slider:before{transform:translate(20px)}.feature-description{margin-top:8px;font-size:13px;color:#8e8e93;line-height:1.4}.catalog-region-section{margin-top:24px;padding:16px;background-color:#1c1c1e;border-radius:12px}.catalog-region-toggle-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.catalog-region-label-text{font-size:16px;font-weight:500;color:#fff}.catalog-region-select{background-color:#3a3a3c;color:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:14px;cursor:pointer;min-width:140px}.catalog-region-select:focus{outline:2px solid #0a84ff;outline-offset:2px}.colors-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:12px;border-top:1px solid #3a3a3c}.action-btn.secondary{background-color:#48484a}.action-btn.secondary:hover{background-color:#5a5a5c}.data-actions{display:flex;flex-direction:column;gap:15px}.action-btn{padding:15px 20px;background-color:#2c2c2e;border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn:hover{background-color:#3a3a3c}.action-btn:active{transform:scale(.98)}.danger-zone{margin-top:40px;padding:20px;border:2px solid #ff3b30;border-radius:12px;background-color:#ff3b301a}.danger-zone h4{margin:0 0 10px;color:#ff3b30;font-size:18px;font-weight:600}.danger-warning{margin:0 0 15px;color:#ff9f0a;font-size:14px;line-height:1.5}.action-btn.danger{background-color:#ff3b30;color:#fff}.action-btn.danger:hover{background-color:#ff453a}.action-btn.danger:active{background-color:#d70015;transform:scale(.98)}.loading{text-align:center;color:#8e8e93;font-style:italic;margin:20px 0}.workout-list{min-height:0;overflow-y:auto;gap:15px;display:flex;flex-direction:column}.workout-item{background-color:#2c2c2e;border-radius:12px;padding:20px;border:1px solid #3a3a3c}.workout-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.workout-date{font-size:16px;font-weight:600;color:#fff}.workout-cycle,.workout-category{font-size:14px;font-weight:500}.workout-title-display{font-size:15px;color:#fff;margin-bottom:15px;font-weight:500}.catalog-workout-item{border-left:3px solid #8e8e93}.workout-weights{display:flex;gap:12px;margin-bottom:15px}.workout-weights .no-weights-message{padding:12px;text-align:center;color:#8e8e93;font-size:14px;font-style:italic;background-color:#1c1c1e;border-radius:8px;width:100%}.weight-entry{flex:1;display:flex;align-items:center;gap:6px}.weight-entry label{font-size:14px;color:#8e8e93;min-width:45px;flex-shrink:0}.weight-entry input{width:60px;max-width:60px;padding:8px 6px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:14px;text-align:center;flex-shrink:0}.weight-entry input:focus{outline:none;border-color:#0a84ff}.weight-entry span{font-size:14px;color:#8e8e93;flex-shrink:0}.workout-ratings,.workout-metrics-edit{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.workout-metrics-edit-title{font-size:13px;font-weight:600;color:#c7c7cc;margin-bottom:2px}.rating-entry{flex:1;display:flex;align-items:center;gap:6px}.rating-entry label{font-size:14px;color:#8e8e93;min-width:90px;flex-shrink:0}.rating-entry input{width:60px;max-width:60px;padding:8px 6px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:14px;text-align:center;flex-shrink:0}.rating-entry input:focus{outline:none;border-color:#0a84ff}.workout-notes-edit{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.workout-notes-edit label{font-size:14px;color:#8e8e93}.workout-notes-edit textarea{width:100%;min-height:60px;padding:10px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;resize:vertical}.workout-notes-edit textarea:focus{outline:none;border-color:#0a84ff}.workout-actions{display:flex;gap:10px}.save-btn,.delete-btn{flex:1;padding:10px 15px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.save-btn{background-color:#0a84ff;color:#fff}.save-btn:hover{background-color:#0056d6}.delete-btn{background-color:#ff3b30;color:#fff}.delete-btn:hover{background-color:#d70015}.save-btn:active,.delete-btn:active{transform:scale(.98)}.accountability-content{padding:20px}.accountability-content h3{margin-bottom:8px;color:#fff;font-size:18px}.accountability-description{color:#8e8e93;font-size:14px;margin-bottom:20px;line-height:1.5}.accountability-list{min-height:0;overflow-y:auto;gap:10px;display:flex;flex-direction:column}.accountability-day{background-color:#2c2c2e;border-radius:12px;padding:12px;border:1px solid #3a3a3c;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:8px;align-items:center}.accountability-day-date{grid-column:1;grid-row:1 / 3;font-size:13px;font-weight:600;color:#fff;min-width:50px;padding-right:8px}.accountability-day-status{grid-column:2;grid-row:1;font-size:12px;color:#8e8e93;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accountability-day-status.completed{color:#34c759}.accountability-day-control{grid-column:2 / 4;grid-row:2;display:flex;align-items:center;gap:8px}.accountability-day-control label{display:none}.accountability-day-control select{flex:1;min-width:0;padding:6px 28px 6px 10px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:13px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238e8e93' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.accountability-day-control select:focus{outline:none;border-color:#0a84ff}@media (max-height: 600px){.container{gap:clamp(8px,1.5vh,12px);padding:clamp(8px,1.5vh,12px)}.activity-matrix{height:clamp(80px,15vh,120px);gap:1px;padding:clamp(8px,1.5vw,12px)}.workout-card{padding:clamp(12px,2vh,16px);gap:clamp(8px,1.5vh,12px)}}@media (min-height: 900px) and (max-width: 1023px){.container{gap:clamp(30px,4vh,40px)}.activity-matrix{height:clamp(200px,28vh,320px)}}@media (max-width: 480px){.modal-content{width:95%;max-height:85vh}.modal-header{padding:20px 20px 15px}.modal-header h2{font-size:20px}.tab-content{padding:20px}}.top-bar{position:fixed;top:max(env(safe-area-inset-top,0px),12px);left:12px;right:12px;display:flex;justify-content:space-between;align-items:center;z-index:998;pointer-events:none}.top-bar>*{pointer-events:auto}.user-indicator{width:44px;height:44px;background-color:#1c1c1ee6;border:1px solid rgba(255,255,255,.1);border-radius:22px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.user-indicator:hover{background-color:#303034e6;border-color:#fff3}.user-indicator:active{transform:scale(.95)}.user-indicator .user-avatar{font-size:20px;line-height:1}.settings-btn{position:static;top:auto;right:auto;width:44px;height:44px;background-color:#1c1c1ee6;border:1px solid rgba(255,255,255,.1);border-radius:22px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.settings-btn:hover{background-color:#303034e6;border-color:#fff3}.settings-btn:active{transform:scale(.95)}.user-modal{width:min(var(--overlay-canvas-width),100%);max-width:var(--overlay-canvas-width);height:var(--overlay-canvas-height);max-height:var(--overlay-canvas-height);position:relative;display:flex;flex-direction:column;overflow:hidden}.user-modal .modal-header{padding:var(--overlay-header-padding)}.user-modal .modal-body{padding:25px;flex:1;min-height:0;overflow-y:hidden;overflow-x:hidden;display:flex;flex-direction:column}.user-modal .overlay-panel-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.user-view{display:block;height:100%;min-height:0}.migration-content{display:flex;flex-direction:column;gap:24px}.migration-message{text-align:center;margin-bottom:24px}.migration-icon{font-size:48px;margin-bottom:16px}.migration-message h3{font-size:20px;font-weight:600;margin-bottom:8px;color:#fff}.migration-message p{color:#8e8e93;font-size:14px;line-height:1.4}.migration-summary{padding:16px;background-color:#007aff1a;border:1px solid rgba(0,122,255,.3);border-radius:12px;color:#fff}.migration-summary h4{font-size:16px;font-weight:600;margin-bottom:8px;color:#007aff}.migration-summary p{font-size:14px;color:#e5e5e7;margin-bottom:0}.migration-options{display:flex;flex-direction:column;gap:12px}.migration-option{display:flex;align-items:center;gap:12px;padding:16px;background-color:#1c1c1e99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s ease}.migration-option:hover{background-color:#30303499;border-color:#fff3}.migration-option.selected{border-color:#007aff;background-color:#007aff1a}.migration-option input[type=radio]{margin:0;accent-color:#007AFF}.migration-option-info{flex:1}.migration-option-title{font-size:16px;font-weight:500;color:#fff;margin-bottom:4px}.migration-option-description{font-size:14px;color:#8e8e93;margin-bottom:8px}.migration-option-stats{font-size:12px;color:#007aff;font-weight:500}.migration-actions{display:flex;gap:12px;justify-content:center;padding-top:8px}.welcome-message{text-align:center;margin-bottom:32px}.welcome-icon{font-size:48px;margin-bottom:16px}.welcome-message h3{font-size:20px;font-weight:600;margin-bottom:8px;color:#fff}.welcome-message p{color:#8e8e93;font-size:14px;line-height:1.4}.user-selection-content{display:flex;flex-direction:column;height:100%;flex:1;min-height:0;overflow:hidden}#user-selection-view{min-height:0;flex:1}.user-selection-list{display:flex;flex-direction:column;gap:15px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;scrollbar-color:#3a3a3c #1c1c1e;padding-bottom:16px;touch-action:pan-y;-webkit-overflow-scrolling:touch}.user-selection-list::-webkit-scrollbar{width:6px}.user-selection-list::-webkit-scrollbar-track{background:#1c1c1e;border-radius:3px}.user-selection-list::-webkit-scrollbar-thumb{background:#3a3a3c;border-radius:3px}.user-selection-list::-webkit-scrollbar-thumb:hover{background:#48484a}@media (max-width: 768px){.user-selection-option{padding:16px}}.user-selection-option{display:flex;align-items:center;gap:16px;padding:20px;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:12px;cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.user-selection-option:hover{background-color:#3a3a3c;border-color:#48484a}.user-selection-option.selected{border-color:#007aff;background-color:#007aff1a}.user-selection-option .user-avatar{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border-radius:20px}.user-selection-option .user-name{font-size:16px;font-weight:500;color:#fff}.add-user-option{border:2px dashed rgba(0,122,255,.3);background-color:#007aff0d}.add-user-option:hover{border-color:#007aff80;background-color:#007aff1a}.add-user-option .user-avatar{background-color:#007aff33;color:#007aff}.add-user-option .user-name{color:#007aff}.user-search-container{position:relative;background-color:#1c1c1e;border-top:1px solid rgba(255,255,255,.1);padding-top:12px;margin-top:12px}.user-search-input{width:100%;padding:12px 16px;background-color:#1c1c1e99;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:16px;font-family:inherit;transition:all .2s ease}.user-search-input:focus{outline:none;border-color:#007aff;background-color:#1c1c1ecc}.user-search-input::placeholder{color:#8e8e93}.add-user-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.back-btn{background:none;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#007aff;padding:8px 12px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.back-btn:hover{background-color:#007aff1a;border-color:#007aff4d}.add-user-header h3{font-size:18px;font-weight:600;color:#fff;flex:1}.user-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#fff}.form-group input{padding:12px 16px;background-color:#1c1c1e99;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:16px;font-family:inherit;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#007aff;background-color:#1c1c1ecc}.form-group input::placeholder{color:#8e8e93}.form-help{font-size:12px;color:#8e8e93;font-weight:400}.pin-icon{font-size:32px;text-align:center;margin-bottom:12px}.pin-message{text-align:center;margin-bottom:24px}.pin-message h3{font-size:20px;font-weight:600;margin:8px 0;color:#fff}.pin-message p{color:#8e8e93;font-size:14px;margin:0}.pin-actions{display:flex;gap:12px;justify-content:space-between}.pin-actions .action-btn{flex:1}.confirm-box{background-color:#1c1c1efa;border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:32px 28px;max-width:360px;width:90%;box-shadow:0 20px 60px #00000080;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.confirm-message{color:#fff;font-size:16px;line-height:1.6;margin-bottom:28px;white-space:pre-line;text-align:left}.confirm-actions{display:flex;gap:12px;justify-content:space-between}.confirm-actions .action-btn{flex:1;font-size:15px;padding:14px 20px}.inline-pin-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000bf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}.inline-pin-card{background-color:#1c1c1ef2;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:24px;max-width:340px;width:100%;box-shadow:0 10px 40px #0006}.inline-pin-card h3{font-size:18px;font-weight:600;color:#fff;margin:0 0 20px;text-align:center}.inline-pin-card .form-group{margin-bottom:16px}.inline-pin-card input{width:100%;padding:14px 16px;background-color:#3a3a3c99;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:16px;text-align:center;letter-spacing:.5em;font-weight:500;transition:all .2s ease}.inline-pin-card input:focus{outline:none;border-color:#007aff;background-color:#3a3a3ccc;box-shadow:0 0 0 3px #007aff33}.inline-pin-error{color:#ff453a;font-size:13px;text-align:center;margin:8px 0 0;font-weight:500}.inline-pin-actions{display:flex;gap:12px;margin-top:20px}.inline-pin-btn{flex:1;padding:12px 20px;border-radius:12px;font-size:15px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.inline-pin-btn.cancel-btn{background-color:#3a3a3c99;color:#fff;border:1px solid rgba(255,255,255,.1)}.inline-pin-btn.cancel-btn:hover{background-color:#3a3a3ccc}.inline-pin-btn.submit-btn{background-color:#007aff;color:#fff}.inline-pin-btn.submit-btn:hover{background-color:#0056cc}.inline-pin-btn:disabled{opacity:.5;cursor:not-allowed}.avatar-selector{display:flex;flex-wrap:wrap;gap:8px}.avatar-option{width:48px;height:48px;border:2px solid rgba(255,255,255,.2);border-radius:24px;background-color:#1c1c1e99;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.avatar-option:hover{background-color:#30303499;border-color:#ffffff4d}.avatar-option.active{border-color:#007aff;background-color:#007aff33}.action-btn.primary{background-color:#007aff;border-color:#007aff;color:#fff;font-weight:600}.action-btn.primary:hover{background-color:#0056cc;border-color:#0056cc}.action-btn.primary:disabled{background-color:#007aff4d;border-color:#007aff4d;color:#ffffff80;cursor:not-allowed}.loading{text-align:center;color:#8e8e93;font-style:italic;padding:20px}.error-message{color:#ff3b30;font-size:14px;text-align:center;padding:12px;background-color:#ff3b301a;border:1px solid rgba(255,59,48,.3);border-radius:8px;margin-top:16px}.success-message{color:#30d158;font-size:14px;text-align:center;padding:12px;background-color:#30d1581a;border:1px solid rgba(48,209,88,.3);border-radius:8px;margin-top:16px}.catalog-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2000;display:none;align-items:center;justify-content:center;background-color:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.catalog-modal.visible{display:flex!important}.catalog-modal-content{position:relative;background-color:#1c1c1e;border-radius:20px;width:95%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.catalog-modal-header{display:flex;align-items:center;padding:20px 20px 16px;border-bottom:1px solid #3a3a3c;gap:12px}.catalog-modal-header h2{font-size:20px;font-weight:700;color:#fff;margin:0;flex-shrink:0}.catalog-result-count{font-size:13px;color:#8e8e93;flex:1}.catalog-modal-header .modal-close{width:32px;height:32px;background-color:#2c2c2e;border:none;border-radius:8px;color:#8e8e93;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.catalog-modal-header .modal-close:hover{background-color:#3a3a3c;color:#fff}.catalog-search-container{padding:0 20px 16px}.catalog-search{width:100%;padding:12px 16px;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:10px;color:#fff;font-size:15px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.catalog-search::placeholder{color:#8e8e93}.catalog-search:focus{border-color:#0a84ff}.catalog-category-tabs{display:flex;gap:8px;padding:0 20px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.catalog-category-tabs::-webkit-scrollbar{display:none}.catalog-tab{display:flex;align-items:center;gap:6px;padding:8px 14px;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:20px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.catalog-tab:hover{background-color:#3a3a3c}.catalog-tab.active{background-color:#0a84ff;border-color:#0a84ff}.catalog-tab .tab-icon{font-size:14px}.catalog-modal-body{flex:1;overflow-y:auto;padding:0 20px 20px}.catalog-workout-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.catalog-workout-card{background-color:#2c2c2e;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease}.catalog-workout-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.catalog-workout-card:active{transform:scale(.98)}.catalog-workout-card .card-image{position:relative;aspect-ratio:16 / 9;background-color:#1c1c1e;overflow:hidden}.catalog-workout-card .card-image img{width:100%;height:100%;object-fit:cover}.catalog-workout-card .card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:32px;background:linear-gradient(135deg,#3a3a3c,#2c2c2e)}.catalog-workout-card .history-badge{position:absolute;top:8px;right:8px;background-color:#0a84ffe6;color:#fff;font-size:11px;font-weight:600;padding:4px 8px;border-radius:12px}.catalog-workout-card .card-content{padding:12px}.catalog-workout-card .card-title{font-size:14px;font-weight:600;color:#fff;line-height:1.3;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-workout-card .card-meta{display:flex;gap:8px;font-size:12px;color:#8e8e93;margin-bottom:4px}.catalog-workout-card .card-duration{color:#0a84ff;font-weight:500}.catalog-workout-card .card-focus{font-size:11px;color:#636366}.catalog-empty-state{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#8e8e93}.catalog-empty-state .empty-icon{font-size:48px;margin-bottom:16px}.catalog-empty-state p{margin:0 0 8px;font-size:16px}.catalog-empty-state .empty-hint{font-size:13px;color:#636366}.catalog-load-more{display:block;width:100%;padding:14px;margin-top:20px;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:10px;color:#0a84ff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.catalog-load-more:hover{background-color:#3a3a3c}@media (max-width: 480px){.catalog-modal-content{width:100%;height:100%;max-height:100vh;border-radius:0}.catalog-workout-grid{grid-template-columns:repeat(2,1fr);gap:12px}.catalog-workout-card .card-title{font-size:13px}.catalog-workout-card .card-content{padding:10px}}.catalog-workout-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2100;display:none;align-items:flex-start;justify-content:center;padding:var(--overlay-top-inset) var(--overlay-side-inset);background-color:var(--overlay-backdrop-bg);-webkit-backdrop-filter:blur(var(--overlay-backdrop-blur));backdrop-filter:blur(var(--overlay-backdrop-blur))}.catalog-workout-modal.visible{display:flex!important}.catalog-workout-modal-content{position:relative;width:min(var(--overlay-canvas-width),100%);max-width:var(--overlay-canvas-width);height:var(--overlay-canvas-height);max-height:var(--overlay-canvas-height);display:flex;flex-direction:column}.catalog-workout-header{display:flex;align-items:center;justify-content:space-between;padding:var(--overlay-header-padding);border-bottom:1px solid var(--overlay-header-border);min-height:var(--overlay-header-min-height)}.catalog-workout-header h2{font-size:var(--overlay-title-size);font-weight:var(--overlay-title-weight);line-height:var(--overlay-title-line-height);letter-spacing:var(--overlay-title-letter-spacing);color:#fff;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:12px}.catalog-workout-header .modal-close{width:32px;height:32px;background-color:var(--overlay-close-bg);border:none;border-radius:8px;color:var(--overlay-close-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--overlay-motion-duration) var(--overlay-motion-ease);flex-shrink:0}.catalog-workout-header .modal-close:hover{background-color:var(--overlay-close-bg-hover);color:var(--overlay-close-color-hover)}.catalog-workout-body{flex:1;overflow-y:auto;padding:20px}.catalog-workout-preview{margin-bottom:20px}.catalog-workout-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:12px;margin-bottom:12px}.catalog-workout-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:#8e8e93;margin-bottom:12px}.catalog-workout-meta .meta-duration{color:#0a84ff;font-weight:500}.catalog-workout-meta .meta-separator{color:#48484a}.catalog-open-link-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;background-color:#0a84ff;border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.catalog-open-link-btn:hover{background-color:#0077ed}.catalog-open-link-btn:focus{outline:2px solid #0077ed;outline-offset:2px}.catalog-open-link-btn .external-icon{font-size:12px}.catalog-workout-info{margin-bottom:16px}.catalog-workout-description{font-size:14px;color:#fff;line-height:1.5;margin:0 0 8px}.catalog-workout-equipment{font-size:13px;color:#8e8e93;margin:0 0 8px}.catalog-trainer-notes{font-size:13px;color:#0a84ff;font-style:italic;margin:0}.catalog-workout-moves{background-color:#2c2c2e;border-radius:12px;padding:16px;margin-bottom:20px}.catalog-workout-moves .moves-header{font-size:14px;font-weight:600;color:#fff;margin-bottom:12px}.catalog-workout-moves .moves-content{font-size:13px;color:#8e8e93;line-height:1.6}.catalog-workout-weights{margin-bottom:20px}.catalog-workout-weights .weights-title{font-size:14px;font-weight:600;color:#fff;margin-bottom:12px}.catalog-workout-weights .no-weights-message{font-size:13px;color:#8e8e93;text-align:center;padding:16px;background-color:#2c2c2e;border-radius:12px}.catalog-weight-inputs{display:flex;gap:12px}.catalog-weight-input-group{flex:1;background-color:#2c2c2e;border-radius:12px;padding:12px}.catalog-weight-input-group label{display:block;font-size:13px;font-weight:500;color:#fff;margin-bottom:4px}.catalog-weight-input-group .weight-previous{font-size:11px;color:#8e8e93;margin-bottom:8px}.catalog-weight-input-group .weight-input-row{display:flex;align-items:center;gap:8px}.catalog-weight-input{flex:1;padding:10px 12px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:16px;outline:none}.catalog-weight-input:focus{border-color:#0a84ff}.catalog-weight-input-group .weight-unit{font-size:13px;color:#8e8e93}.catalog-workout-ratings{margin-bottom:20px}.catalog-rating-group{margin-bottom:16px}.catalog-rating-group:last-child{margin-bottom:0}.catalog-rating-label{display:block;font-size:13px;font-weight:500;color:#8e8e93;margin-bottom:8px}.catalog-rating-scale{display:flex;gap:8px}.catalog-rating-btn{flex:1;padding:12px 8px;background-color:#2c2c2e;border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s ease}.catalog-rating-btn:hover{background-color:#3a3a3c}.catalog-rating-btn.selected{background-color:#0a84ff20;border-color:#0a84ff}.catalog-rating-btn .rating-emoji{font-size:20px}.catalog-workout-metrics{margin-bottom:20px}.catalog-workout-metrics .metrics-title{font-size:13px;font-weight:500;color:#8e8e93;margin-bottom:8px}.catalog-workout-metrics .metrics-help{font-size:11px;color:#636366;margin-bottom:10px}.catalog-metric-inputs{display:flex;gap:12px}.catalog-metric-input-group{flex:1;background-color:#2c2c2e;border-radius:12px;padding:12px}.catalog-metric-input-group label{display:block;font-size:13px;font-weight:500;color:#fff;margin-bottom:4px}.catalog-metric-input-group .metric-previous{font-size:11px;color:#8e8e93;margin-bottom:8px}.catalog-metric-input-group .metric-input-row{display:flex;align-items:center;gap:8px}.catalog-metric-input{flex:1;padding:10px 12px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:8px;color:#fff;font-size:16px;outline:none}.catalog-metric-input:focus{border-color:#0a84ff}.catalog-metric-input-group .metric-unit{font-size:13px;color:#8e8e93;white-space:nowrap}.catalog-workout-notes-section{margin-bottom:20px}.catalog-notes-label{display:block;font-size:13px;font-weight:500;color:#8e8e93;margin-bottom:8px}.catalog-notes-textarea{width:100%;padding:12px;background-color:#2c2c2e;border:1px solid #3a3a3c;border-radius:10px;color:#fff;font-size:14px;font-family:inherit;resize:none;outline:none;box-sizing:border-box}.catalog-notes-textarea:focus{border-color:#0a84ff}.catalog-notes-textarea::placeholder{color:#636366}.catalog-notes-char-count{text-align:right;font-size:11px;color:#636366;margin-top:4px}.catalog-workout-history{margin-bottom:20px}.catalog-workout-history .history-title{font-size:14px;font-weight:600;color:#fff;margin-bottom:12px}.catalog-workout-history .history-empty{font-size:13px;color:#8e8e93;text-align:center;padding:16px;background-color:#2c2c2e;border-radius:12px}.catalog-workout-history .history-list{display:flex;flex-direction:column;gap:8px}.catalog-workout-history .history-item{background-color:#2c2c2e;border-radius:10px;padding:12px}.catalog-workout-history .history-date{font-size:13px;font-weight:500;color:#fff;margin-bottom:4px}.catalog-workout-history .history-details{font-size:12px;color:#8e8e93;display:flex;gap:12px}.catalog-workout-history .history-notes{font-size:12px;color:#636366;font-style:italic;margin-top:6px}.catalog-complete-btn{width:100%;padding:16px;background-color:#34c759;border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.catalog-complete-btn:disabled{background-color:#3a3a3c;color:#636366;cursor:not-allowed}.catalog-complete-btn:not(:disabled):hover{background-color:#2db84d}.catalog-complete-btn.success{background-color:#34c759}@media (max-width: 480px){:root{--overlay-top-inset: 0px;--overlay-side-inset: 0px;--overlay-canvas-height: 100dvh}.catalog-workout-modal-content{width:100%;height:100%;max-height:100dvh;border-radius:0}.catalog-weight-inputs{flex-direction:column}}.thumbnail-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:none;align-items:center;justify-content:center}.thumbnail-modal[aria-hidden=false]{display:flex}.thumbnail-modal-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000000f2;animation:fadeIn .3s ease}.thumbnail-modal-content{position:relative;z-index:1;max-width:90vw;max-height:90vh;animation:scaleIn .3s cubic-bezier(.16,1,.3,1)}.thumbnail-modal-close{position:absolute;top:20px;right:20px;background:#2c2c2ee6;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;z-index:10;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.thumbnail-modal-close:hover{background:#fff3;transform:scale(1.1)}.thumbnail-modal-close:active{transform:scale(.95)}.thumbnail-modal-image-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:16px;touch-action:pan-x pan-y pinch-zoom}.thumbnail-modal-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:16px;box-shadow:0 20px 60px #0009}@media (max-width: 768px){.thumbnail-modal-content{max-width:95vw;max-height:80vh}.thumbnail-modal-close{top:10px;right:10px;width:40px;height:40px}.thumbnail-modal-image{max-height:80vh;border-radius:12px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width: 480px){.user-modal{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0}.user-modal .modal-body{padding:20px}.avatar-selector{justify-content:center}.user-actions{flex-direction:column}}.catalog-workout-card.blank-card{border:2px dashed rgba(255,255,255,.3);background-color:transparent;cursor:pointer;transition:all .2s ease}.catalog-workout-card.blank-card:hover{border-color:#ffffff80;background-color:#ffffff0d}.catalog-workout-card.blank-card:active{transform:scale(.98)}.catalog-workout-card.blank-card .card-image{background-color:transparent;display:flex;align-items:center;justify-content:center}.catalog-workout-card.blank-card .blank-card-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:100%}.blank-plus-icon{font-size:2rem;color:#ffffff80;font-weight:300;line-height:1}.blank-category-icon{font-size:1.2rem;opacity:.7}.catalog-workout-card.blank-card .card-title{color:#ffffffb3}.catalog-workout-card.blank-card .card-duration{color:#ffffff80;font-size:.75rem}.catalog-edit-form{display:flex;flex-direction:column;gap:12px;padding:0}.catalog-edit-row{display:flex;flex-direction:column;gap:4px}.catalog-edit-row.two-col{flex-direction:row;gap:12px}.catalog-edit-row.two-col .catalog-edit-field{flex:1}.catalog-edit-field{display:flex;flex-direction:column;gap:4px}.catalog-edit-field label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.catalog-edit-input,.catalog-edit-select,.catalog-edit-textarea{background-color:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#fff;font-size:.95rem;font-family:inherit;transition:all .2s ease}.catalog-edit-input:focus,.catalog-edit-select:focus,.catalog-edit-textarea:focus{outline:none;border-color:#0a84ff99;background-color:#0006}.catalog-edit-input::placeholder,.catalog-edit-textarea::placeholder{color:#ffffff4d}.catalog-edit-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='rgba(255,255,255,0.5)'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.catalog-edit-select option{background-color:#1c1c1e;color:#fff}.catalog-edit-duration-wrapper{display:flex;align-items:center;gap:8px}.catalog-edit-duration-wrapper input{flex:1;text-align:center}.catalog-edit-duration-unit{color:#ffffff80;font-size:.85rem}.catalog-edit-textarea{resize:vertical;min-height:60px}.catalog-edit-char-count{text-align:right;font-size:.7rem;color:#fff6}.catalog-save-as-custom-section{margin:16px 0;padding:12px;background-color:#ffffff0d;border-radius:10px;border:1px solid rgba(255,255,255,.08)}.catalog-save-as-custom-label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.catalog-save-as-custom-checkbox{width:20px;height:20px;accent-color:#0a84ff;cursor:pointer}.catalog-save-as-custom-text{color:#fff;font-size:.9rem;font-weight:500}.catalog-save-as-custom-hint{width:100%;font-size:.75rem;color:#ffffff80;margin-left:28px}@media (max-width: 480px){.catalog-edit-row.two-col{flex-direction:column}.catalog-save-as-custom-hint{margin-left:0;margin-top:4px}}.suggest-card{display:none;flex-direction:column;gap:10px;background-color:#1c1c1e;border:1px solid #3a3a3c;border-radius:14px;padding:14px 16px;width:100%;max-width:360px}@keyframes suggest-pulse{0%{opacity:.6;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.suggest-card.suggest-updated{animation:suggest-pulse .4s ease-out}.suggest-preview{display:flex;align-items:flex-start;gap:12px}.suggest-thumb{width:80px;height:80px;border-radius:8px;object-fit:cover;flex-shrink:0}.suggest-thumb-placeholder{width:80px;height:80px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:32px;background:linear-gradient(135deg,#3a3a3c,#2c2c2e)}.suggest-preview-info{flex:1;min-width:0}.suggest-title{font-size:14px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggest-title[role=button]{cursor:pointer;color:#0a84ff}.suggest-title[role=button]:hover{text-decoration:underline}.suggest-meta{font-size:12px;color:#ffffff80;margin-top:2px}.suggest-reason{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px;min-height:20px}.suggest-context-chip{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;border:1px solid transparent;font-size:10px;line-height:16px;padding:0 8px;border-radius:999px;color:#ffffffeb;background:#ffffff14}.suggest-context-chip.include{color:#8bc0ff;background:#0a84ff29;border-color:#0a84ff59}.suggest-context-chip.exclude{color:#ffb2ac;background:#ff453a26;border-color:#ff453a52;text-decoration:line-through}.suggest-context-badge{font-size:10px;line-height:16px;padding:0 8px;border-radius:999px;color:#d6ffe8;background:#30d1582e;border:1px solid rgba(48,209,88,.42)}.suggest-context-muted{font-size:11px;color:#ffffff73}.explain-systems{margin-bottom:0}.explain-system-row{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:12px}.explain-system-label{width:90px;flex-shrink:0;color:#ffffffb3;font-size:12px}.explain-bar-track{flex:1;min-width:0;height:8px;background:linear-gradient(to right,#3a3a3c,#3a3a3c 50%,#2d3442 50%,#2d3442);border-radius:4px;overflow:hidden;position:relative}.explain-bar-fill{height:100%;left:0;top:0;position:absolute;border-radius:4px;transition:width .3s ease;z-index:1;background:var(--segment-color, var(--bar-color))}.explain-bar-impact{height:100%;top:0;position:absolute;border-radius:3px;background:repeating-linear-gradient(-45deg,#ffffff70,#ffffff70 3px,#ffffff1f 3px,#ffffff1f 7px),var(--impact-color, var(--bar-color));opacity:.82;transition:width .3s ease;z-index:3;min-width:2px;will-change:filter,opacity,box-shadow;box-shadow:inset 0 0 0 1px #ffffff3d,inset 1px 0 #ffffff8c,inset -1px 0 #ffffff38,inset 0 1px #fff3,inset 0 -1px #fff3;display:flex;align-items:center;justify-content:center}.explain-bar-impact.pulse{animation:explainAddedPulse 6.8s ease-in-out infinite}.explain-bar-target{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#ffffffd9;transform:translate(-1px);z-index:4}.explain-bar-overfill{position:absolute;top:0;height:100%;border-radius:3px;background:var(--segment-color, var(--bar-color));transition:width .3s ease;z-index:2}.explain-bar-value{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:10px;letter-spacing:.2px;color:#ffffffed;text-shadow:0 0 6px rgba(0,0,0,.65);font-variant-numeric:tabular-nums;white-space:nowrap;z-index:6}@keyframes explainAddedPulse{0%,to{filter:brightness(.84) saturate(.9);opacity:.64;box-shadow:inset 0 0 0 1px #ffffff1a,inset 1px 0 #ffffff2e,inset -1px 0 #ffffff0f,inset 0 1px #ffffff0d,inset 0 -1px #ffffff0d}50%{filter:brightness(1.28) saturate(1.16);opacity:.97;box-shadow:inset 0 0 0 2px #ffffff4d,inset 1px 0 #ffffffad,inset -1px 0 #ffffff47,inset 0 1px #ffffff42,inset 0 -1px #ffffff42,0 0 8px color-mix(in srgb,var(--impact-color, var(--bar-color)) 70%,black 30%)}}.explain-systems-title{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.suggest-filters{display:flex;flex-wrap:wrap;gap:6px}.suggest-filter-pill{padding:4px 10px;border-radius:12px;font-size:11px;background:#2c2c2e;color:#fff9;border:1px solid #3a3a3c;cursor:pointer;transition:all .15s ease}.suggest-filter-pill:hover{border-color:#555;color:#ffffffd9}.suggest-filter-pill.include{background:#0a84ff33;color:#0a84ff;border-color:#0a84ff66}.suggest-filter-pill.exclude{background:#ff453a26;color:#ff453a;border-color:#ff453a4d;text-decoration:line-through}.finetune-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;justify-content:center}.finetune-content{width:min(460px,100%);height:var(--overlay-canvas-height);max-height:var(--overlay-canvas-height)}.finetune-header{margin-bottom:0}.finetune-header h2{color:#fff}.finetune-close{font-size:18px;line-height:1}.finetune-body{padding:14px 16px 16px;min-height:0}.finetune-section{margin-bottom:16px}.finetune-section-title{font-size:11px;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.finetune-pills{display:flex;flex-wrap:wrap;gap:6px}.finetune-pill{padding:5px 12px;border-radius:14px;font-size:12px;background:#2c2c2e;color:#fff9;border:1px solid #3a3a3c;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.finetune-pill.include{background:#0a84ff33;color:#0a84ff;border-color:#0a84ff66}.finetune-pill.exclude{background:#ff453a26;color:#ff453a;border-color:#ff453a4d;text-decoration:line-through}.finetune-pill-count{font-size:11px;padding:0 6px;height:16px;line-height:16px;border-radius:999px;background:#ffffff14;color:#ffffffb3;border:1px solid rgba(255,255,255,.1)}.finetune-pill.include .finetune-pill-count{background:#0a84ff26;color:#8bc0ff;border-color:#0a84ff40}.finetune-pill.exclude .finetune-pill-count{background:#ff453a1f;color:#ff9d96;border-color:#ff453a33}.finetune-pill.disabled,.finetune-pill:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.3)}.recommendations-content h3{font-size:16px;font-weight:600;color:#fff;margin:0 0 16px}.rec-section{margin-bottom:20px}.rec-section-title{font-size:14px;font-weight:600;color:#fff;margin:0 0 4px}.rec-section-desc{font-size:12px;color:#fff6;margin:0 0 10px}.rec-category-pills{display:flex;flex-wrap:wrap;gap:6px}.rec-category-pill{padding:5px 12px;border-radius:14px;font-size:12px;background:#2c2c2e;color:#fff9;border:1px solid #3a3a3c;cursor:pointer;transition:all .15s ease}.rec-category-pill.excluded{background:#ff453a26;color:#ff453a;border-color:#ff453a4d;text-decoration:line-through}.rec-weight-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06)}.rec-weight-row:last-of-type{border-bottom:none}.rec-weight-row label{flex:1;font-size:13px;color:#ffffffb3}.rec-weight-row input[type=number]{width:56px;padding:6px 4px;border-radius:8px;background:#2c2c2e;border:1px solid #3a3a3c;color:#fff;font-size:13px;text-align:center;-moz-appearance:textfield}.rec-weight-row input[type=number]::-webkit-inner-spin-button,.rec-weight-row input[type=number]::-webkit-outer-spin-button{opacity:1}.rec-weight-pct{font-size:12px;color:#fff6;width:12px}.rec-weight-total{text-align:right;font-size:12px;color:#ffffff80;margin-top:8px}.rec-weight-total.invalid{color:#ff9f0a}
