.modal{background-color:#000000e6;box-sizing:border-box;height:100%;justify-content:flex-start;left:0;overflow:hidden;padding:60px 5px 5px;position:fixed;top:0;width:100%;z-index:1000}.modal,.modal .modal-content{align-items:center;display:flex;flex-direction:column}.modal .modal-content{background:#000;border-radius:5px;max-height:calc(100vh - 80px);max-height:calc(var(--visual-viewport-height, 100vh) - 80px);max-width:100%;overflow-y:auto;padding:0;position:relative;width:500px}.close-button{background-color:red;border-radius:5px;color:#fff;font-size:1rem;margin-right:0;margin-top:0;padding:10px 15px;position:fixed;right:10px;transition:background-color .3s ease}.close-button:not(.disabled):hover{background-color:darkred}.close-button.disabled{background-color:gray;cursor:not-allowed;opacity:.5}.modal-open{overflow:hidden}.top-bar{background-color:#333;box-shadow:0 2px 4px #0000001a;overflow:visible;padding:10px;position:-webkit-sticky;position:sticky;top:0;transition:transform .3s ease-in-out;width:100%;z-index:1000}.top-bar.hidden{transform:translateY(-100%)}.top-bar-content{display:flex;justify-content:center;margin:10px}.app-name{color:#fff;font-size:1.5rem;font-weight:700}.top-bar-items{align-items:center;display:flex}.top-bar-item{color:#fff;margin-right:20px}.top-bar-items>*{margin-right:10px}.top-bar-items>:last-child{margin-right:0}.workout-exercise-list{display:flex;flex-direction:column;gap:.75rem;padding:1em}.workout-exercise-parent{align-items:center;background-color:#1a1a1a;background-position:50%;background-size:cover;border:1px solid #333;border-radius:12px;box-sizing:border-box;display:flex;justify-content:center;min-height:150px;overflow:hidden;padding:.5em;position:relative;transition:all .3s ease;vertical-align:middle;width:100%}.workout-exercise-parent.loading{background-color:#111827;background-color:var(--color-bg-card,#111827);border:1px dashed #fff3;color:#ffffff80;min-height:150px;overflow:hidden;position:relative}.workout-exercise-parent.loading:after{animation:shimmer-loading 1.5s linear infinite;background:linear-gradient(90deg,#0000,#ffffff08 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@keyframes shimmer-loading{to{transform:translateX(100%)}}.exercise-loading-container{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%;z-index:2}.exercise-loading-text{color:#fff6;font-size:.85rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.workout-exercise-parent.removed{opacity:.3}.workout-exercise-parent.active{border:4px solid #fff;border:4px solid var(--exercise-border,#fff);box-shadow:0 0 10px #00000059,0 0 8px #ffffff80;box-shadow:0 0 10px #00000059,0 0 8px var(--exercise-border,#ffffff80);z-index:10}.exercise-overlay{content:"";filter:grayscale(20%);z-index:0}.exercise-overlay,.exercise-overlay-darken{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.exercise-overlay-darken{background:#000;mask-composite:add;-webkit-mask-composite:source-over;mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000);-webkit-mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000)}.exercise-video-background{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.exercise-video-background video{height:100%;object-fit:cover;width:100%}.exercise-container{position:relative;width:100%;z-index:2}.exercise-name{text-align:center;text-decoration:underline;width:100%}.exercise-title{background:#00000014;background:var(--exercise-bg,#00000014);border:2px solid #00000014;border:2px solid var(--exercise-border,#00000014);border-radius:5px;color:#fff;color:var(--exercise-fg,#fff);cursor:pointer;display:inline-block;padding:0 5px}.exercise-title.selected{background:#000;background:var(--exercise-border,#000);color:#fff;color:var(--exercise-fg,#fff)}.exercise-title:focus{outline:2px solid #0000001f}.exercise-recommendation{align-items:center;background:linear-gradient(135deg,#3b82f626,#9333ea1a);border:1px solid #3b82f699;border-radius:8px;display:flex;font-size:1rem;gap:.9rem;line-height:1.5;margin:1rem;padding:.7rem .9rem;transition:all .3s ease-out}.exercise-recommendation .recommendation-icon{display:inline-block;flex-shrink:0;font-size:1.75rem;transition:transform .3s ease}.recommendation-icon.robot-speaking{animation:robot-speak .15s ease-in-out infinite alternate;transform-origin:center bottom}.recommendation-icon.robot-thinking{animation:robot-think 2s ease-in-out infinite;transform-origin:center center}@keyframes robot-think{0%,to{filter:brightness(1);transform:scale(1) rotate(0deg)}25%{filter:brightness(1.1);transform:scale(1.05) rotate(-5deg) translateY(-1px)}50%{filter:brightness(1.2);transform:scale(1) rotate(0deg) translateY(-2px)}75%{filter:brightness(1.1);transform:scale(1.05) rotate(5deg) translateY(-1px)}}.exercise-recommendation .recommendation-text{color:#ffffffe6;flex:1 1;text-align:left;transition:opacity .3s ease}.exercise-recommendation.exercise-recommendation-loading{background:linear-gradient(135deg,#64646426,#6464641a);border-color:#6464644d}.exercise-recommendation.exercise-recommendation-loading .recommendation-text{color:#fff9;font-style:italic}.exercise-recommendation.exercise-recommendation-updating{animation:recommendation-pulse .8s ease-in-out infinite;background:linear-gradient(135deg,#9333ea33,#3b82f626);border-color:#9333eacc}.exercise-recommendation.exercise-recommendation-updating .recommendation-text{animation:recommendation-text-pulse .8s ease-in-out infinite;opacity:.6}.exercise-recommendation.exercise-recommendation-updating .recommendation-icon{animation:robot-bounce .5s ease-in-out infinite}.exercise-recommendation.exercise-recommendation-updated{animation:recommendation-updated 1.5s ease-out forwards}.exercise-recommendation.exercise-recommendation-updated .recommendation-text{animation:recommendation-text-fade-in .5s ease-out forwards}@keyframes recommendation-pulse{0%,to{border-color:#9333ea66;box-shadow:0 0 4px 1px #9333ea33;transform:scale(1)}50%{border-color:#9333ea;box-shadow:0 0 16px 4px #9333ea80;transform:scale(1.01)}}@keyframes recommendation-text-pulse{0%,to{opacity:.6}50%{opacity:.4}}@keyframes robot-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.thinking-dots{display:inline-flex;font-size:1.5em;font-weight:700;gap:4px;letter-spacing:2px}.thinking-dots .dot{animation:dot-bounce 1s ease-in-out infinite;color:#a78bfa}.thinking-dots .dot:first-child{animation-delay:0s}.thinking-dots .dot:nth-child(2){animation-delay:.15s}.thinking-dots .dot:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}@keyframes recommendation-updated{0%{background:linear-gradient(135deg,#22c55e4d,#3b82f633);border-color:#22c55e99;box-shadow:0 0 12px 4px #22c55e66;transform:scale(1.02)}50%{background:linear-gradient(135deg,#22c55e33,#9333ea26);border-color:#22c55e66;box-shadow:0 0 6px 2px #22c55e33;transform:scale(1.01)}to{background:linear-gradient(135deg,#3b82f626,#9333ea1a);border-color:#3b82f64d;box-shadow:none;transform:scale(1)}}@keyframes recommendation-text-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.exercise-recommendation.exercise-recommendation-typing{min-height:2.5em}.typewriter-cursor{animation:typewriter-blink .6s infinite;color:#9333eae6;display:inline-block;font-weight:700;margin-left:2px}.exercise-question{animation:question-fade-in .3s ease-out;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:8px;margin:8px 16px;padding:10px 14px}@keyframes question-fade-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.question-text{align-items:flex-start;color:#fffffff2;display:flex;font-size:.9em;gap:8px;margin-bottom:10px}.question-icon{flex-shrink:0;font-size:1.1em}.question-answers{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.question-btn{border:none;border-radius:16px;cursor:pointer;font-size:.85em;font-weight:500;padding:6px 14px;transition:all .15s ease}.question-btn:disabled{cursor:not-allowed;opacity:.5}.question-btn-yes{background:#22c55e33;border:1px solid #22c55e66;color:#4ade80}.question-btn-yes:hover:not(:disabled){background:#22c55e4d}.question-btn-no{background:#ef444433;border:1px solid #ef444466;color:#f87171}.question-btn-no:hover:not(:disabled){background:#ef44444d}.question-btn-choice{background:#6366f133;border:1px solid #6366f166;color:#a5b4fc}.question-btn-choice:hover:not(:disabled){background:#6366f14d}.question-btn-submit{background:#3b82f64d;border:1px solid #3b82f680;color:#93c5fd}.question-btn-submit:hover:not(:disabled){background:#3b82f666}.question-btn-skip{background:#0000;border:1px solid #fff3;color:#ffffff80;font-size:.8em}.question-btn-skip:hover:not(:disabled){background:#ffffff1a;color:#ffffffb3}.question-btn-cancel{background:#0000;border:1px solid #fff3;color:#ffffff80}.question-btn-cancel:hover:not(:disabled){background:#ffffff1a}.question-open-input{display:flex;flex:1 1;gap:8px;min-width:200px}.question-open-input input{background:#0000004d;border:1px solid #fff3;border-radius:16px;color:#fff;flex:1 1;font-size:.85em;padding:6px 12px}.question-open-input input:focus{border-color:#3b82f680;outline:none}.exercise-user-message{display:flex;justify-content:center;margin:8px 16px}.ask-coach-btn{align-items:center;background:#0000;border:1px solid #9333ea66;border-radius:16px;color:#9333eae6;cursor:pointer;display:flex;font-size:.85em;gap:6px;padding:6px 14px;transition:all .15s ease}.ask-coach-btn:hover{background:#9333ea1a;border-color:#9333ea99}.workout-exercise-parent.all-complete:not(.volume-record) .ask-coach-btn{background:#0000004d;border-color:#fff6;color:#ffffffe6}.workout-exercise-parent.all-complete:not(.volume-record) .ask-coach-btn:hover{background:#0006;border-color:#fff9}.workout-exercise-parent.all-complete.volume-record .ask-coach-btn{background:#0000004d;border-color:#fff6;color:#ffffffe6}.workout-exercise-parent.all-complete.volume-record .ask-coach-btn:hover{background:#0006;border-color:#fff9}.user-message-input{animation:question-fade-in .2s ease-out;display:flex;gap:8px}.user-message-input input{background:#0000004d;border:1px solid #9333ea66;border-radius:16px;color:#fff;flex:1 1;font-size:.9em;padding:8px 14px}.user-message-input input:focus{border-color:#9333eab3;outline:none}.exercise-coach-chat{display:flex;flex-direction:column;gap:.5rem;margin:.75rem 1rem}.chat-history-toggle{align-self:center;background:#0000;border:none;color:#ffffff80;cursor:pointer;font-size:.75em;padding:4px 12px;transition:color .15s ease}.chat-history-toggle:hover{color:#fffc}.chat-history{animation:chat-expand .2s ease-out;background:#0003;border-radius:8px;display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;padding:8px}@keyframes chat-expand{0%{max-height:0;opacity:0}to{max-height:200px;opacity:1}}.chat-message{align-items:flex-start;display:flex;font-size:.85em;gap:6px;line-height:1.4;padding:4px 0}.chat-message .chat-icon{flex-shrink:0;font-size:1em;opacity:.7}.chat-message .chat-content{color:#ffffffbf}.chat-message-user_message,.chat-message-user_response{justify-content:flex-end}.chat-message-user_message .chat-content,.chat-message-user_response .chat-content{background:#9333ea33;border-radius:12px;color:#ffffffe6;padding:4px 10px}.chat-message-ai_message .chat-content,.chat-message-ai_question .chat-content,.chat-message-ai_recommendation .chat-content{opacity:.7}.chat-message-set_complete{justify-content:center}.chat-message-set_complete .chat-content.set-complete{background:#22c55e1a;border-radius:10px;color:#22c55eb3;font-size:.75em;padding:2px 10px;text-align:center}.chat-current-message{align-items:flex-start;background:linear-gradient(135deg,#3b82f61f,#9333ea14);border:1px solid #3b82f640;border-radius:8px;display:flex;font-size:.95rem;gap:.6rem;line-height:1.5;padding:.5rem .6rem;transition:all .3s ease-out}.chat-current-message .chat-icon{flex-shrink:0;font-size:1.4rem;transition:transform .3s ease}.chat-current-message .chat-content{color:#ffffffe6;flex:1 1}.chat-current-message .chat-icon.robot-speaking{animation:robot-speak .15s ease-in-out infinite alternate;transform-origin:center bottom}.chat-current-message .chat-icon.robot-thinking{animation:robot-think 2s ease-in-out infinite}.chat-current-message.updating{animation:recommendation-pulse .8s ease-in-out infinite;border-color:#9333ea80}.chat-current-message.updated{animation:recommendation-updated 1.5s ease-out forwards}.chat-question{animation:question-fade-in .3s ease-out;background:#3b82f614;border:1px solid #3b82f633;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:.5rem .6rem}.exercise-coach-chat>.chat-question-text{align-items:flex-start;animation:question-fade-in .3s ease-out;color:#ffffffd9;display:flex;font-size:.85em;gap:6px;padding:0 .2rem}.exercise-coach-chat>.chat-question-text .chat-icon{flex-shrink:0;font-size:1em;opacity:.8}.chat-question-text{align-items:flex-start;color:#ffffffe6;display:flex;font-size:.9em;gap:6px}.chat-question-text .chat-icon{flex-shrink:0;font-size:1.1em}.chat-input-row{gap:6px}.chat-input-row,.chat-quick-answers{align-items:center;display:flex;flex-wrap:wrap}.chat-quick-answers{gap:4px}.quick-answer-btn{background:#6366f126;border:1px solid #6366f14d;border-radius:14px;color:#a5b4fce6;cursor:pointer;font-size:.75em;padding:4px 10px;transition:all .15s ease;white-space:nowrap}.quick-answer-btn:hover:not(:disabled){background:#6366f140;border-color:#6366f180}.quick-answer-btn:disabled{cursor:not-allowed;opacity:.5}.quick-answer-btn.skip{background:#0000;border-color:#ffffff26;color:#fff6;font-size:.7em}.quick-answer-btn.skip:hover:not(:disabled){background:#ffffff0d;color:#fff9}.chat-input-container{align-items:center;display:flex;flex:1 1;gap:6px;min-width:120px}.chat-input{background:#00000040;border:1px solid #ffffff26;border-radius:18px;font-size:.85em;padding:8px 12px;transition:border-color .15s ease,background .15s ease}.chat-input:focus{background:#00000059;border-color:#9333ea66}.chat-input::placeholder{color:#ffffff59}.chat-send-btn{align-items:center;background:#9333ea4d;border:none;border-radius:50%;color:#fffc;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .15s ease;width:32px}.chat-send-btn:hover:not(:disabled){background:#9333ea80;color:#fff}.chat-send-btn:disabled{cursor:not-allowed;opacity:.3}.workout-exercise-parent.all-complete .chat-current-message{background:linear-gradient(135deg,#0003,#00000026);border-color:#fff3}.workout-exercise-parent.all-complete .chat-question{background:#00000026;border-color:#ffffff26}.workout-exercise-parent.all-complete .chat-input{border-color:#fff3}.workout-exercise-parent.all-complete .chat-send-btn{background:#fff3}.workout-exercise-parent.all-complete .chat-send-btn:hover:not(:disabled){background:#ffffff4d}.exercise-image{border-radius:10px;height:75px;object-fit:cover;object-position:center;width:75px}.exercise-table{margin-top:.5em}.calories-field,.distance-field,.duration-field,.exercise-sets,.repetitions-field,.weight-field{width:100%}.checkmark{color:var(--color-add)!important}.checkmark,.cross{height:40px;width:40px}.cross{color:red!important}.workout-section{border-radius:5px}.set-map-container{box-sizing:border-box;padding-bottom:.5rem}.set-map-container>div{border-radius:12px;box-shadow:0 2px 6px #00000014;height:100%;overflow:hidden;width:100%}.leaflet-container{border-radius:12px!important}.setmap-user-divicon{background:#0000;border:none}.setmap-user-marker{background-position:50%;background-repeat:no-repeat;background-size:cover;border:2px solid #fff;border-radius:9999px;box-sizing:border-box;height:28px;width:28px}.workout-row{width:100%}.checkmark{color:var(--color-add)}.checkmark,.cross{height:1.5rem;margin:0;padding:0;width:1.5rem}.cross{color:red}.spinner{align-items:center;display:flex;font-size:1.5rem;height:100px;justify-content:center;margin:auto}.btn-add-set{background-color:var(--color-add);color:#fff;margin:.7rem;padding:.2em}.removed-exercises{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-top:1rem;padding:1rem}.removed-exercises h4{color:#721c24;margin-bottom:.5rem}.removed-exercises ul{list-style-type:disc;padding-left:1.5rem}.removed-exercises li{color:#721c24}.workout-exercise-parent.all-complete:not(.volume-record) .exercise-overlay-darken{background:linear-gradient(135deg,#00800099,#0080004d),#000;mask-composite:add;-webkit-mask-composite:source-over;mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000);-webkit-mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000)}.workout-exercise-parent.all-complete:not(.volume-record) .exercise-overlay:after{animation:checkmark-pulse 3s ease-in-out infinite alternate;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");background-repeat:repeat;background-size:64px 64px;content:"";height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}@keyframes checkmark-pulse{0%{opacity:.8}to{opacity:1}}.complete-overlay-base{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.complete-overlay-vignette{background:radial-gradient(ellipse at center,#0000 20%,#0009 100%);z-index:2}.complete-overlay-green{background:linear-gradient(135deg,#00800059,#00800033);z-index:1}.complete-overlay-checkmarks{animation:checkmark-pulse 3s ease-in-out infinite alternate;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.25)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");background-repeat:repeat;background-size:64px 64px;z-index:3}.workout-exercise-parent.all-complete.volume-record .exercise-overlay-darken{background:linear-gradient(135deg,#322300f0,#503705b3),#000;mask-composite:add;-webkit-mask-composite:source-over;mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000);-webkit-mask-image:linear-gradient(90deg,#000 0,#00000077 25%,#00000077 75%,#000),linear-gradient(180deg,#000 0,#000 5%,#00000077 25%,#00000077 75%,#000)}.workout-exercise-parent.all-complete.volume-record .exercise-overlay:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 18h18l-1.2-9-3.6 4L12 6.8 7.8 13 4.2 9z' fill='rgba(255,215,0,0.65)'/%3E%3Cpath d='M4 18h16'/%3E%3C/svg%3E");background-repeat:repeat;background-size:72px 72px;content:"";height:100%;left:0;opacity:.75;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.workout-exercise-parent.all-complete .exercise-overlay{filter:grayscale(0) brightness(1.1) saturate(1.1)}.workout-exercise-parent.all-complete.volume-record .exercise-overlay{filter:grayscale(0) brightness(1.2) saturate(1.3)}.workout-exercise-video-container{border-radius:8px}.start-workout-container{display:flex;justify-content:center;margin:15px 0}.exercise-history-chart-wrapper{margin:0 auto;max-height:0;opacity:0;overflow:hidden;padding-bottom:0;padding-top:0;transition:max-height .26s ease,opacity .18s ease,margin-top .26s ease,margin-bottom .26s ease,padding-top .26s ease,padding-bottom .26s ease;width:90%}.exercise-history-chart-wrapper.is-visible{margin-bottom:10px;margin-top:40px;max-height:240px;opacity:1}.exercise-history-chart{margin:0;padding:0;width:100%}.exercise-history-header{align-items:center;display:flex;flex-direction:column;gap:.25rem;justify-content:center;margin-bottom:.35rem;text-align:center}.exercise-history-header h5{font-size:.9rem;letter-spacing:.04em;margin:0;text-align:center;text-transform:uppercase}.exercise-history-pill{background:#ffffff26;border-radius:999px;font-size:.75rem;padding:.1rem .45rem}.exercise-history-chart-body{align-items:center;display:flex;height:160px;justify-content:center;position:relative}.exercise-history-chart-empty-message{color:#ffffffb3;font-size:.95rem;left:50%;line-height:1.4;max-width:85%;pointer-events:none;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.exercise-history-chart-body>.echarts-for-react,.exercise-history-chart-body>.recharts-responsive-container{margin:0 auto;max-width:520px;width:100%!important}.exercise-history-chart-body .recharts-cartesian-axis-tick,.exercise-history-chart-body .recharts-cartesian-grid,.exercise-history-chart-body .recharts-layer,.exercise-history-chart-body .recharts-surface,.exercise-history-chart-body .recharts-wrapper,.exercise-history-chart-body :focus{outline:none!important}.exercise-history-empty{color:#fffc;font-size:.85rem}.exercise-history-controls{display:flex;gap:6px;justify-content:center;margin-bottom:12px}.exercise-history-controls button{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fffc;cursor:pointer;font-size:.7rem;padding:2px 8px;transition:all .2s ease}.exercise-history-controls button:hover{background:#fff3;border-color:#ffffff4d;color:#fff}.exercise-history-controls button.active{background:#ffffff4d;border-color:#ffffff80;color:#fff;font-weight:600}.exercise-history-loading-large{align-items:center;color:#ffffff80;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:12px;height:100%;justify-content:center;letter-spacing:.1em;min-height:160px;text-transform:uppercase}.exercise-history-loading-large:before{animation:spin-sm .8s linear infinite;border:2px solid #3b82f633;border-radius:50%;border-top:2px solid var(--color-primary,#3b82f6);content:"";display:block;height:24px;width:24px}@keyframes spin-sm{to{transform:rotate(1turn)}}.set-value-with-indicator{align-items:center;display:inline-flex;gap:6px;justify-content:center}.set-indicator-stack{gap:4px}.set-indicator,.set-indicator-stack{align-items:center;display:inline-flex}.set-indicator{justify-content:center}.set-indicator svg{height:16px;width:16px}.set-indicator.warmup svg{color:#f97316}.set-indicator.overload svg{color:#22c55e}.set-indicator.decrease svg{color:#ef4444}.exercise-history-chart .recharts-default-tooltip{background-color:#ffffffb3!important;border:none!important;border-radius:4px!important;font-size:14px!important;line-height:1.2!important;padding:4px 8px!important}.exercise-history-chart .recharts-tooltip-item{color:#000!important;margin:0!important;padding:0!important}.exercise-history-chart .recharts-tooltip-label{color:#000!important;font-weight:600!important;margin-bottom:2px!important}.exercise-history-chart .exercise-history-axis-tick{transition:transform .22s ease,opacity .22s ease}.exercise-history-chart .exercise-history-axis-tick text{transition:fill .22s ease,opacity .22s ease}.workout-sets-container{display:flex;flex-direction:column;margin-top:1rem;width:100%}.workout-sets-header{background:#0003;border-bottom:1px solid #ffffff1a;border-top-left-radius:8px;border-top-right-radius:8px;color:#a3a3a3;display:flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem .75rem;text-transform:uppercase}.workout-sets-header-item{flex:1 1;padding:0 4px;text-align:center}.workout-sets-header-item.action-col{flex:0 0 40px}.workout-sets-header-item.check-col{flex:0 0 50px}.workout-set-row{align-items:center;background-color:#1e1e1ed9;border-bottom:1px solid #ffffff14;border-left:1px solid #ffffff14;border-right:1px solid #ffffff14;display:flex;padding:.75rem;transition:background-color .2s}.workout-set-row:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.workout-set-row:hover{background-color:#2d2d2de6}.workout-set-cell{align-items:center;display:flex;flex:1 1;justify-content:center;padding:0 4px}.workout-set-cell.action-col{flex:0 0 40px}.workout-set-cell.check-col{flex:0 0 50px}.workout-set-cell input:not([type=checkbox]){background:#0000004d;border:1px solid #0000;border-radius:4px;color:#fff;font-size:1rem;max-width:80px;padding:6px 4px;text-align:center;transition:border-color .2s,background-color .2s;width:100%}.workout-set-cell input:not([type=checkbox]):focus{background:#00000080;border-color:var(--color-primary);outline:none}.workout-set-cell input:not([type=checkbox]):disabled{background:#0000;border:none;color:#e0e0e0;font-weight:500}.workout-set-cell input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:20px;width:20px}.trash-button{background:#0000;border-radius:4px;color:var(--color-danger);display:flex;padding:6px;transition:background-color .2s}.trash-button:hover{background-color:#ef44441a;color:var(--color-danger-hover)}.trash-button svg{height:20px;width:20px}.btn-add-set-modern{align-items:center;background-color:#22c55e1a;border:1px dashed var(--color-success);border-radius:8px;color:var(--color-success);cursor:pointer;display:flex;font-weight:600;gap:8px;justify-content:center;margin:.5rem auto 0;padding:.75rem 1.5rem;transition:all .2s;width:-webkit-fit-content;width:fit-content}.btn-add-set-modern:hover{background-color:var(--color-success);border-color:var(--color-success);box-shadow:0 4px 6px -1px #22c55e4d;color:#fff}.btn-add-set-modern:active{transform:translateY(1px)}.workout-comment-display{background-color:#ffffff08;border:1px dashed #404040;border-radius:8px;color:#a3a3a3;font-style:italic;margin:16px auto 0;max-width:90%;padding:12px;text-align:center}.workout-aux-actions{display:flex;gap:12px;justify-content:center;margin-bottom:8px;margin-top:16px}.btn-aux{align-items:center;background-color:#262626;border:1px solid #404040;border-radius:8px;color:#d4d4d4;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s}.btn-aux:hover{background-color:#333;border-color:#555;color:#fff}.superset-selection-header{align-items:center;background:linear-gradient(135deg,#6366f126,#a855f726);border:1px solid #6366f14d;border-radius:12px;color:#c4b5fd;display:flex;flex-direction:column;font-size:.95rem;gap:12px;margin-bottom:16px;padding:16px}.superset-selection-actions{display:flex;gap:12px}.btn-superset-confirm{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.btn-superset-confirm:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#7c3aed);transform:translateY(-1px)}.btn-superset-confirm:disabled{cursor:not-allowed;opacity:.5}.btn-superset-cancel{align-items:center;background:#374151;border:1px solid #4b5563;border-radius:8px;color:#d1d5db;cursor:pointer;display:flex;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.btn-superset-cancel:hover{background:#4b5563;color:#fff}.btn-superset{background:linear-gradient(135deg,#6366f133,#a855f733)!important;border:1px solid #6366f166!important;color:#c4b5fd!important}.btn-superset:hover:not(:disabled){background:linear-gradient(135deg,#6366f14d,#a855f74d)!important;border-color:#6366f199!important}.workout-action-buttons{align-items:center;display:flex;flex-direction:column;gap:12px}.superset-group{display:flex;margin:8px 0;position:relative}.superset-group-wrapper{background:#1a1a1a;border:1px solid #333;border-radius:12px;cursor:pointer;margin:8px 0;overflow:hidden;transition:all .2s ease}.superset-group-wrapper.active{border:3px solid #6366f1;box-shadow:0 0 10px #00000059,0 0 8px #6366f180;z-index:10}.superset-group-header{align-items:center;background:#6366f11a;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:6px 12px}.superset-label-inline{align-items:center;color:#8b8bfa;display:flex;font-size:.7rem;font-weight:600;gap:6px;letter-spacing:.08em;text-transform:uppercase}.superset-dissolve-btn-inline{align-items:center;background:#0000;border:1px solid #fff3;border-radius:4px;color:#888;cursor:pointer;display:flex;font-size:.7rem;font-weight:500;gap:4px;padding:4px 8px;transition:all .2s}.superset-dissolve-btn-inline:hover{background:#ef444433;border-color:#ef444466;color:#f87171}.superset-bracket{align-items:center;display:flex;flex-direction:column;margin-right:4px;min-width:28px;position:relative;width:28px}.superset-bracket:before{background:linear-gradient(180deg,#6366f1,#8b5cf6,#a855f7);border-radius:2px;bottom:16px;content:"";left:8px;position:absolute;top:16px;width:3px}.superset-bracket:after{background:#6366f1;border-radius:2px 0 0 2px;content:"";height:3px;left:8px;position:absolute;top:16px;width:10px}.superset-label{align-items:center;background:#1a1a1a;border-radius:4px;color:#a78bfa;display:flex;font-size:.65rem;font-weight:700;gap:4px;left:-4px;letter-spacing:.1em;padding:2px 6px;position:absolute;text-transform:uppercase;top:50%;transform:translateY(-50%) rotate(-90deg);white-space:nowrap;z-index:5}.superset-dissolve-btn{align-items:center;background:#ef444433;border:1px solid #ef444466;border-radius:4px;color:#f87171;cursor:pointer;display:flex;height:18px;justify-content:center;padding:0;transition:all .2s;width:18px}.superset-dissolve-btn:hover{background:#ef444466;color:#fff}.superset-exercises{display:flex;flex:1 1;flex-direction:column;gap:4px}.superset-exercise-wrapper{border-left:2px solid #0000;position:relative;transition:all .2s;z-index:1}.superset-exercise-wrapper:not(.superset-last):after{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid #6366f1;bottom:-4px;content:"";height:0;left:50%;opacity:.6;position:absolute;transform:translateX(-50%);width:0;z-index:10}.superset-remove-btn{align-items:center;background:#ef4444cc;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;opacity:1;padding:0;pointer-events:auto;position:absolute;right:8px;top:8px;transition:all .2s;width:24px;z-index:100}.superset-remove-btn:hover{background:#ef4444;border-color:#ffffff80;transform:scale(1.1)}.single-exercise-wrapper{transition:all .2s}.superset-selected{border-radius:12px;outline:3px solid #6366f1;outline-offset:2px}.superset-selected .workout-exercise-parent{background:linear-gradient(135deg,#6366f11a,#a855f71a)}.superset-selection-header~.single-exercise-wrapper,.superset-selection-header~.superset-group .superset-exercise-wrapper{cursor:pointer}.superset-selection-header~.single-exercise-wrapper:hover,.superset-selection-header~.superset-group .superset-exercise-wrapper:hover{transform:scale(1.01)}.single-exercise-wrapper.reorder-mode,.superset-group-wrapper.reorder-mode{align-items:stretch;background:#3b82f60d;border:1px dashed #3b82f64d;border-radius:12px;display:flex;gap:8px;margin-bottom:8px;padding:8px}.reorder-controls{flex-direction:column;flex-shrink:0;gap:4px}.reorder-btn,.reorder-controls{display:flex;justify-content:center}.reorder-btn{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;height:36px;transition:all .15s ease;width:36px}.reorder-btn svg{fill:currentColor;color:#fff;height:18px;width:18px}.reorder-btn:hover:not(:disabled){background:#3b82f6;transform:scale(1.05)}.reorder-btn:active:not(:disabled){transform:scale(.95)}.reorder-btn:disabled{background:#374151;color:#6b7280;cursor:not-allowed;opacity:.5}.reorder-btn:disabled svg{color:#6b7280}.single-exercise-wrapper.reorder-mode>.workout-exercise-parent,.superset-group-wrapper.reorder-mode .superset-group-content{flex:1 1;min-width:0}.superset-reorder-summary{display:flex;flex-direction:column;gap:6px;padding:12px}.superset-reorder-item{background:#6366f126;border-radius:6px;color:#e5e7eb;font-size:.9rem;padding:8px 12px}.reorder-exercise-summary{align-items:center;background:#1f1f1f;border-radius:10px;display:flex;flex:1 1;justify-content:space-between;min-width:0;padding:16px 20px}.reorder-exercise-name{font-size:1rem}.btn-reorder{background:#3b82f61a!important;border:1px solid #3b82f64d!important;color:#60a5fa!important}.btn-reorder:hover:not(:disabled){background:#3b82f633!important;border-color:#3b82f680!important}.btn-reorder-done{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;justify-content:center;padding:10px 20px;transition:all .15s ease}.btn-reorder-done:hover{background:linear-gradient(135deg,#4ade80,#22c55e);box-shadow:0 4px 12px #22c55e4d;transform:translateY(-1px)}@keyframes compactFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.reorder-compact-item:first-child{animation-delay:0s}.reorder-compact-item:nth-child(2){animation-delay:.02s}.reorder-compact-item:nth-child(3){animation-delay:.04s}.reorder-compact-item:nth-child(4){animation-delay:.06s}.reorder-compact-item:nth-child(5){animation-delay:.08s}.reorder-compact-item:nth-child(6){animation-delay:.1s}.reorder-compact-item:nth-child(7){animation-delay:.12s}.reorder-compact-item:nth-child(8){animation-delay:.14s}.reorder-compact-item:nth-child(9){animation-delay:.16s}.reorder-compact-item:nth-child(10){animation-delay:.18s}.reorder-compact-item.is-superset{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border-color:#6366f14d}.reorder-compact-item.is-superset:hover{border-color:#6366f180}.reorder-drag-handle{transition:color .15s ease;width:24px}.reorder-compact-item:hover .reorder-drag-handle{color:#9ca3af}.reorder-drag-handle svg{height:20px;width:20px}.reorder-exercise-content{align-items:center;display:flex;flex:1 1;justify-content:space-between;min-width:0}.reorder-exercise-name{color:#e5e7eb;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorder-exercise-sets{color:#9ca3af;flex-shrink:0;font-size:.85rem;margin-left:12px}.reorder-superset-content{flex:1 1;min-width:0}.reorder-superset-label{align-items:center;color:#818cf8;display:inline-flex;font-size:.7rem;font-weight:700;gap:6px;margin-bottom:6px}.reorder-superset-label svg{height:12px;width:12px}.reorder-superset-exercises{display:flex;flex-wrap:wrap;gap:4px}.reorder-superset-exercise-name{color:#e5e7eb;font-size:.9rem;font-weight:500}.custom-drag-layer{z-index:10000}.custom-drag-layer .drag-preview{align-items:center;background:#262626;border:2px solid #3b82f6;border-radius:10px;box-shadow:0 12px 28px #0006,0 0 0 1px #3b82f64d;cursor:grabbing;display:flex;gap:12px;max-width:300px;padding:12px 16px;transform-origin:0 0}.custom-drag-layer .drag-preview .reorder-drag-handle{color:#60a5fa}.custom-drag-layer .drag-preview .reorder-exercise-content{align-items:center;display:flex;flex:1 1;justify-content:space-between;min-width:0}.custom-drag-layer .drag-preview .reorder-exercise-name{color:#e5e7eb;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-drag-layer .drag-preview .reorder-exercise-sets{color:#9ca3af;flex-shrink:0;font-size:.85rem;margin-left:12px}.superset-exercise-parent{background:#0000;overflow:hidden;position:relative}.superset-exercise-parent.active{outline:none}.superset-exercise-parent.loading{color:#888;padding:20px;text-align:center}.superset-exercise-parent.all-complete .exercise-history-chart-wrapper,.superset-exercise-parent.all-complete .exercise-recommendation,.superset-exercise-parent.all-complete .superset-header,.superset-exercise-parent.all-complete .superset-sets-container{position:relative;z-index:10}.superset-header{background:#0000;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px}.superset-exercise-title{align-items:center;border:2px solid;border-radius:6px;cursor:pointer;display:inline-flex;font-weight:500;gap:6px;padding:6px 10px;text-decoration:underline;transition:all .2s}.superset-exercise-title:hover{filter:brightness(1.2)}.superset-exercise-letter{align-items:center;background:#ffffff26;border-radius:4px;display:flex;font-size:.75rem;font-weight:700;height:20px;justify-content:center;width:20px}.superset-exercise-name{font-size:.9rem}.superset-sets-container{overflow-x:auto;padding:0 8px 8px}.superset-table{background-color:#1e1e1ed9;border:1px solid #ffffff14;border-collapse:collapse;border-radius:8px;font-size:1rem;overflow:hidden;width:100%}.superset-table thead{background:#0003}.superset-table th{border-bottom:1px solid #ffffff1a;color:#a3a3a3;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:8px 6px;text-align:center;text-transform:uppercase}.superset-round-header{width:45px}.superset-exercise-header{width:35px}.superset-set-row{border-bottom:1px solid #ffffff14;border-left:3px solid #0000;transition:background-color .2s}.superset-set-row:hover{background-color:#2d2d2de6}.superset-set-row.round-start{margin-top:0}.superset-set-row.round-end{border-bottom:1px solid #ffffff1f}.superset-round-cell{background:#0003;padding:6px 4px;text-align:center;vertical-align:middle}.superset-round-content{align-items:center;display:flex;flex-direction:column;gap:6px;justify-content:center}.superset-round-number{background:#ffffff1a;border-radius:4px;color:#aaa;display:inline-flex;font-size:.8rem;font-weight:600}.superset-round-delete-btn,.superset-round-number{align-items:center;height:22px;justify-content:center;width:22px}.superset-round-delete-btn{background:#0000;border:1px solid #ef44444d;border-radius:4px;color:#999;cursor:pointer;display:flex;transition:all .2s}.superset-round-delete-btn svg{height:12px;width:12px}.superset-round-delete-btn:hover{background:#ef444433;border-color:#ef444480;color:#f87171}.superset-exercise-cell{padding:6px 4px;text-align:center;vertical-align:middle}.superset-exercise-indicator{align-items:center;border-radius:3px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:600;height:20px;justify-content:center;width:20px}.superset-action-cell,.superset-set-cell{padding:8px 6px;text-align:center;vertical-align:middle}.superset-action-cell{background:#00000026}.superset-set-cell input[type=number],.superset-set-cell input[type=text]{max-width:70px;text-align:center}.superset-set-cell input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;display:block;height:20px;margin:0 auto;width:20px}.superset-empty-cell{color:#444}.superset-delete-round-btn{align-items:center;background:#0000;border:1px solid #fff3;border-radius:4px;color:#999;cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .2s;width:24px}.superset-delete-round-btn svg{fill:currentColor;height:14px;width:14px}.superset-delete-round-btn:hover{background:#ef444433;border-color:#ef444466;color:#f87171}.superset-add-row td{background:#0000;padding:10px;text-align:center}.superset-add-round-btn{align-items:center;background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;color:#aaa;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.superset-add-round-btn:hover:not(:disabled){background:#ffffff1f;color:#fff}.superset-add-round-btn:disabled{cursor:not-allowed;opacity:.4}.workout-gym-bar{background:#22c55e26;border:1px solid #22c55e4d;border-radius:10px;margin:0 1em .75rem;padding:10px 14px;position:relative}.workout-gym-bar.unconfirmed{background:#fbbf2426;border-color:#fbbf244d}.gym-info{align-items:center;color:#fff;cursor:pointer;display:flex;font-size:.9rem}.gym-name{font-weight:500}.gym-unconfirmed-label{color:#fbbf24e6;font-size:.8rem;font-style:italic;margin-left:8px}.gym-selector-dropdown{border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px}.gym-confirm-btn{align-items:center;background:#22c55e40;border:1px solid #22c55e66;border-radius:8px;color:#22c55e;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;justify-content:center;padding:10px 16px;transition:all .2s}.gym-confirm-btn:hover{background:#22c55e59}.gym-list{display:flex;flex-direction:column;gap:4px;max-height:150px;overflow-y:auto}.gym-option{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;padding:10px 12px;text-align:left;transition:all .2s}.gym-option:hover{background:#ffffff1a}.gym-new-input input{background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;box-sizing:border-box;color:#fff;font-size:.85rem;padding:10px 12px;width:100%}.gym-new-input input::placeholder{color:#fff6}.gym-new-input input:focus{background:#ffffff1a;border-color:#ffffff4d;outline:none}.gym-clear-btn{align-items:center;background:#0000;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;font-size:.8rem;justify-content:center;padding:8px 14px;transition:all .2s}.gym-clear-btn:hover{background:#ef444426}.gym-section-label{color:#ffffff80;font-size:.75rem;letter-spacing:.5px;margin-bottom:4px;margin-top:8px;padding-left:4px;text-transform:uppercase}.gym-search-section{display:flex;flex-direction:column;gap:8px;margin-top:4px}.gym-search-btn{align-items:center;background:#3b82f626;border:1px solid #3b82f64d;border-radius:8px;color:#3b82f6;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;justify-content:center;padding:10px 16px;transition:all .2s}.gym-search-btn:hover:not(:disabled){background:#3b82f640}.gym-search-btn:disabled{cursor:wait;opacity:.6}.gym-list.nearby-gyms{max-height:200px}.gym-option.search-gym{align-items:flex-start;flex-direction:column;gap:4px}.gym-option-main{align-items:center;display:flex;width:100%}.gym-option-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gym-option-meta{color:#ffffff80;display:flex;flex-direction:column;font-size:.75rem;gap:2px;padding-left:20px}.gym-distance{color:#fff9}.gym-address{color:#fff6;font-size:.7rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gym-name.gym-prompt{color:#ffffffb3;font-style:italic}.duration-input-row{align-items:center;display:flex;flex-direction:row;gap:.1rem;justify-content:space-between;margin:0;max-width:100%;overflow:hidden;padding:0}.duration-input-container{max-width:100%}.duration-input{display:flex;flex-direction:row;gap:.1rem;justify-content:center;margin:0;overflow:hidden;padding:0}.duration-input span{flex:1 1;text-align:center}.duration-input label{align-items:center;display:flex;flex:1 1;margin:0;max-width:100%;padding:0;width:1.7em}.duration-input label input{order:-1;width:1.7em}.duration-input-fields-parent{align-items:center;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:10px;width:100%}.duration-input-field{box-sizing:border-box;max-width:100%;text-align:center;width:3rem}.clockwatch-button{align-items:center;background-color:#3b82f61a;border:1px dashed #3b82f6;border-radius:.5rem;color:#3b82f6;cursor:pointer;display:flex;justify-content:center;margin:0 0 0 .5em;min-height:36px;min-width:36px;padding:8px;transition:all .2s ease}.clockwatch-button:hover{background-color:#3b82f633;border-color:#3b82f6cc;color:#3b82f6}.clockwatch-button:active{transform:translateY(1px)}.clockwatch-button svg{height:20px;width:20px}.timer-modal{display:flex;flex-direction:column;margin-bottom:0;margin-top:0;max-height:calc(100vh - 80px);max-height:calc(var(--visual-viewport-height, 100vh) - 80px);width:100%}.timer-modal-content{display:flex;flex:1 1;flex-direction:column;justify-content:space-between;overflow:hidden;width:100%}.timer-display{border-radius:.5rem;color:#fff;display:block;flex-shrink:0;font-size:4rem;line-height:1.1;margin-top:1.5rem;overflow:hidden;padding:0;position:relative;text-align:center;transition:background .3s ease}.timer-under{background:linear-gradient(to right,var(--color-accept) 0,var(--color-accept) 100%)}.timer-over{background:linear-gradient(to right,var(--color-add) 0,var(--color-add) 100%)}.timer-controls-row{align-items:center;display:flex;flex-direction:row;gap:.1rem;justify-content:space-evenly;margin:0;max-width:100%;overflow:hidden;padding:.5em 0 0;width:100%}.timer-check-buttons{gap:.5rem}.timer-check-button,.timer-check-buttons{align-items:center;display:flex;flex-direction:column;justify-content:center}.timer-check-button{background-color:var(--color-add);border-radius:.25rem;color:#fff;cursor:pointer;font-size:3.5em;margin:.2em;padding:0;width:2.5em}.accept-timer{background-color:initial;width:1.5em}.timer-pause-button,.timer-reset-button{align-items:center;background-color:initial;border-radius:.25rem;color:#fff;cursor:pointer;display:flex;font-size:3.5em;justify-content:center;margin:.2em;padding:0;width:1em}.target-time-display{display:block;font-size:1.5rem;margin-top:.5em;padding-top:1em;text-align:center}.icon{color:#fff;height:2em;width:2.5em}.accept-timer .icon{color:#fff;height:1.3em;width:1.3em}.timer-check-button-label{color:#fff;font-size:.3em;margin:.1em .1em .3em;text-align:center}.goal-achieved{position:relative}.goal-achieved-overlay{bottom:0;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0;z-index:10}.confetti{animation:confetti-fall 3s ease-in-out infinite;font-size:2rem;opacity:.9;position:absolute}.confetti-1{animation-delay:0s;left:10%}.confetti-2{animation-delay:.5s;left:25%}.confetti-3{animation-delay:.2s;left:50%}.confetti-4{animation-delay:.7s;left:70%}.confetti-5{animation-delay:.3s;left:85%}.confetti-6{animation-delay:.9s;left:40%}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100%) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}.goal-achieved-banner{align-items:center;animation:goal-banner-pulse 1s ease-in-out infinite alternate,goal-banner-glow 2s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffb347,gold);border-radius:.5rem;box-shadow:0 0 20px #ffd70099,0 0 40px #ffd7004d;display:flex;justify-content:center;margin:.5rem 0;padding:.75rem 1rem}.goal-achieved-text{animation:goal-text-bounce .5s ease-in-out infinite alternate;color:#1a1a2e;font-size:1.3rem;font-weight:700;text-shadow:0 1px 2px #ffffff80}@keyframes goal-banner-pulse{0%{transform:scale(1)}to{transform:scale(1.02)}}@keyframes goal-banner-glow{0%,to{box-shadow:0 0 20px #ffd70099,0 0 40px #ffd7004d}50%{box-shadow:0 0 30px #ffd700cc,0 0 60px #ffd70080}}@keyframes goal-text-bounce{0%{transform:translateY(0)}to{transform:translateY(-2px)}}.timer-check-button.goal-unlocked{animation:goal-button-glow 1s ease-in-out infinite alternate;box-shadow:0 0 15px #4caf50b3,0 0 30px #4caf5066;transform:scale(1.05);transition:transform .3s ease,box-shadow .3s ease}@keyframes goal-button-glow{0%{box-shadow:0 0 15px #4caf50b3,0 0 30px #4caf5066}to{box-shadow:0 0 25px #4caf50e6,0 0 50px #4caf5099}}.timer-check-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.4}.exercise-detail-parent{position:relative;width:100%}.exercise-detail-name{font-size:1.7rem;font-weight:700;margin-bottom:20px;text-align:center}.exercise-detail-images-container{display:flex;flex:1 1;flex-wrap:nowrap;justify-content:space-evenly;margin-bottom:20px;margin-top:1em;overflow-x:auto;overflow-y:hidden;width:100%}.exercise-detail-image{border-radius:8px;flex:1 1;height:200px;margin-right:10px;max-width:500px;object-fit:contain;object-position:center}.exercise-detail-instructions{background-color:initial;color:#fff;flex:2 1;overflow-y:auto;padding:0}.exercise-detail-instructions-item{align-items:center;background-color:#222;border-radius:5px;color:#fff;display:flex;font-size:1rem;margin-bottom:10px;padding:10px 25px 10px 10px}.exercise-detail-instructions-number{color:#fff;font-size:2rem;margin-right:10px;opacity:.6;padding:0 15px}.exercise-detail-loading{align-items:center;display:flex;height:240px;justify-content:center}.exercise-detail-empty{color:#ddd;padding:40px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff1f;border-top-color:#ffffffe6;height:40px;width:40px}.underlined-text{cursor:pointer;text-decoration:underline}.underlined-text[disabled]{color:gray;cursor:not-allowed}.plate-calc-floating-trigger{bottom:80px;left:50%;opacity:0;pointer-events:none;position:fixed;transform:translateX(-50%);transition:opacity .18s ease,transform .18s ease;z-index:1200}.plate-calc-floating-trigger.visible{opacity:1;pointer-events:auto}.plate-calc-floating-btn{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#111827e6;border:1px solid #ffffff1a;border-radius:999px;box-shadow:0 4px 16px #0006;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:10px 24px;transition:all .12s ease}.plate-calc-floating-btn:before{content:"◎";font-size:1.2em;opacity:.8}.plate-calc-floating-btn:hover{background:#1f2937f2;border-color:#fff3;transform:scale(1.02)}.plate-calc-floating-btn:active{transform:scale(.98)}.plate-calc-floating-btn:disabled{cursor:not-allowed;opacity:.4}.plate-calculator{animation:plateSlideUp .2s ease-out;background:#141419fa;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 8px 32px #0006;max-width:320px;min-width:280px;padding:16px}@keyframes plateSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.plate-calculator-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.plate-calculator-title{color:#fff9;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.plate-calculator-total{color:#fff;font-size:1.4em;font-weight:700}.plate-calculator-plates{display:flex;flex-direction:column;gap:6px}.plate-row{gap:8px;padding:4px 0}.plate-btn,.plate-row{align-items:center;display:flex}.plate-btn{background:#ffffff0d;border:1px solid #ffffff26;border-radius:8px;color:#fff;cursor:pointer;font-size:1.4em;font-weight:600;height:36px;justify-content:center;line-height:1;transition:all .12s ease;width:36px}.plate-btn:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff40}.plate-btn:active:not(:disabled){transform:scale(.95)}.plate-btn:disabled{cursor:not-allowed;opacity:.3}.plate-btn-up{background:#22c55e26;border-color:#22c55e4d}.plate-btn-up:hover:not(:disabled){background:#22c55e40;border-color:#22c55e80}.plate-btn-down{background:#ef44441a;border-color:#ef444433}.plate-btn-down:hover:not(:disabled){background:#ef444433;border-color:#ef444466}.plate-info{align-items:center;background:#ffffff08;border-radius:8px;display:flex;flex:1 1;gap:8px;justify-content:center;padding:8px 12px}.plate-size{color:#fff;font-size:1.1em;font-weight:600;min-width:40px;text-align:right}.plate-count{color:#ffffff80;font-size:1em;min-width:28px}.plate-subtotal{color:#fff6;font-size:.9em;min-width:50px;text-align:right}.plate-row.has-plates .plate-info{background:#4f46e526;border:1px solid #4f46e54d}.plate-row.has-plates .plate-count{color:#a5b4fc;font-weight:600}.plate-row.has-plates .plate-subtotal{color:#a5b4fc}.plate-calculator-bar-section{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.bar-label{color:#ffffff80;font-size:.8em;letter-spacing:.5px;text-transform:uppercase}.bar-select{-webkit-appearance:none;appearance:none;background:#ffffff0d;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23fff'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;border:1px solid #ffffff26;border-radius:8px;color:#fff;cursor:pointer;font-size:.95em;padding:10px 36px 10px 12px;width:100%}.bar-select:hover{background-color:#ffffff14;border-color:#ffffff40}.bar-select:focus{border-color:#4f46e599;box-shadow:0 0 0 2px #4f46e533;outline:none}.bar-select option{background:#1a1a1f;color:#fff}.plate-calculator-breakdown{background:#ffffff08;border:1px solid #ffffff0f;border-radius:8px;display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:10px 12px}.breakdown-row{align-items:center;display:flex;font-size:.9em;justify-content:space-between}.breakdown-label{color:#fff9}.breakdown-value{color:#fffc;font-family:monospace}.breakdown-total{border-top:1px solid #ffffff1a;margin-top:4px;padding-top:6px}.breakdown-total .breakdown-label{color:#fff;font-weight:600}.breakdown-total .breakdown-value{color:#a5b4fc;font-weight:700}.plate-calculator-remainder{align-items:center;background:#fbbf241a;border:1px solid #fbbf2433;border-radius:8px;display:flex;justify-content:space-between;margin-top:12px;padding:8px 12px}.remainder-label{color:#fbbf24cc;font-size:.85em}.remainder-value{color:#fbbf24;font-weight:600}.plate-calculator-actions{border-top:1px solid #ffffff1a;display:flex;gap:10px;margin-top:16px;padding-top:12px}.plate-calc-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:12px 16px;transition:all .15s ease}.plate-calc-btn-cancel{background:#ffffff14;border-color:#ffffff26;color:#fffc}.plate-calc-btn-cancel:hover{background:#ffffff1f;border-color:#ffffff40}.plate-calc-btn-accept{background:#4f46e54d;border-color:#4f46e580;color:#fff}.plate-calc-btn-accept:hover{background:#4f46e573;border-color:#4f46e5b3}.plate-calc-btn:active{transform:scale(.98)}.exercise-selection-modal{background:linear-gradient(145deg,#1a1e2ee6,#121520eb);border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 24px 60px #00000073;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;height:100%;max-height:100vh;max-height:var(--visual-viewport-height,100vh);overflow:hidden;padding:16px;position:relative;width:100%}.exercise-selection-modal .category-selector{grid-gap:8px;display:grid;flex-shrink:0;gap:8px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));width:100%}.exercise-selection-modal .category-button{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff05;border:1px solid #ffffff14;border-radius:14px;color:#e5e7eb;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:center;padding:10px 8px;transition:transform .12s ease,border-color .12s ease,box-shadow .2s ease,background .2s ease}.exercise-selection-modal .category-button:hover{background:#ffffff0a;border-color:#ffffff29;box-shadow:0 4px 12px #00000040;transform:translateY(-1px)}.exercise-selection-modal .category-button.active{background:linear-gradient(135deg,#3b82f6,#22d3ee);background:linear-gradient(135deg,var(--color-primary,#3b82f6),#22d3ee);border-color:#0000;box-shadow:0 4px 12px #22d3ee4d;color:#0b1221}.exercise-selection-modal .category-icon{height:20px;width:20px}.exercise-selection-modal .category-name{font-size:.85rem;font-weight:600;line-height:1.1;text-align:center}.exercise-selection-modal .search-container{flex:0 0 auto}.exercise-selection-modal .search-input-wrapper{align-items:center;display:flex;position:relative}.exercise-selection-modal .search-icon{color:#9ca3af;height:18px;left:14px;position:absolute;width:18px;z-index:10}.exercise-selection-modal .search-input{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;box-sizing:border-box;color:#f8fafc;font-size:1rem;padding:12px 14px 12px 42px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.exercise-selection-modal .search-input:focus{border-color:#3b82f6;border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f62e;outline:none}.exercise-selection-modal .exercise-list-container{background:#0d111ccc;border:1px solid #ffffff0f;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff0a;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.exercise-selection-modal .exercise-list{flex:1 1;overflow-x:hidden;overflow-y:auto;width:100%}.exercise-selection-modal .exercise-item{border-bottom:1px solid #ffffff0f;cursor:pointer;padding:12px;transition:background-color .12s ease,transform .12s ease}.exercise-selection-modal .exercise-item:last-child{border-bottom:none}.exercise-selection-modal .exercise-item:hover{background:#ffffff08;transform:translateX(2px)}.exercise-selection-modal .exercise-item.selected{background:linear-gradient(90deg,#3b82f61f,#22d3ee14);border-left:3px solid #3b82f6;border-left:3px solid var(--color-primary,#3b82f6)}.exercise-selection-modal .exercise-row{align-items:center;display:flex;gap:10px}.exercise-selection-modal .exercise-icon-wrapper{align-items:center;background:#ffffff0d;border-radius:8px;color:#a5b4fc;display:flex;flex-shrink:0;height:32px;justify-content:center;line-height:0;width:32px}.exercise-selection-modal .exercise-icon-wrapper .category-icon,.exercise-selection-modal .exercise-icon-wrapper svg{display:block;height:20px;margin:auto;width:20px}.exercise-selection-modal .exercise-name{color:#e5e7eb;flex:1 1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-selection-modal .info-button{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:color .2s,background-color .2s}.exercise-selection-modal .info-button:hover{background-color:#ffffff1a;color:#fff}.exercise-selection-modal .info-icon{height:20px;width:20px}.exercise-selection-modal .no-results{color:#9ca3af;font-style:italic;padding:24px;text-align:center}.exercise-selection-modal .button-container{display:flex;flex-shrink:0;gap:12px;justify-content:space-between;margin-top:auto}.exercise-selection-modal .btn-add,.exercise-selection-modal .btn-cancel{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:12px;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.exercise-selection-modal .btn-add{background:linear-gradient(135deg,#3b82f6,#22d3ee);background:linear-gradient(135deg,var(--color-primary,#3b82f6),#22d3ee);box-shadow:0 14px 30px #22d3ee59;color:#0b1221}.exercise-selection-modal .btn-add:hover:not(:disabled){transform:translateY(-1px)}.exercise-selection-modal .btn-add:disabled{background:#ffffff0a;box-shadow:none;color:#9ca3af;cursor:not-allowed}.exercise-selection-modal .btn-cancel{background:#ffffff0f;border:1px solid #ffffff14;color:#e5e7eb}.exercise-selection-modal .btn-cancel:hover{box-shadow:0 10px 18px #00000040;transform:translateY(-1px)}.exercise-selection-modal .detail-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.exercise-selection-modal .detail-modal-content{background:linear-gradient(145deg,#1a1e2e,#121520);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 24px 60px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow-y:auto;padding:20px;position:relative;width:100%}.exercise-selection-modal .detail-close-button{background:#ffffff0d;border:1px solid #ffffff0d;border-radius:50%;color:#9ca3af;cursor:pointer;padding:6px;position:absolute;right:14px;top:14px;transition:all .2s ease;z-index:10}.exercise-selection-modal .detail-close-button:hover{background-color:#ffffff26;color:#fff;transform:rotate(90deg)}.exercise-selection-modal .detail-close-icon{height:20px;width:20px}.exercise-selection-modal .detail-modal-content .exercise-detail-parent{width:100%}.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}}.food-selection-embedded,.food-selection-modal{color:#e0e0e0;display:flex;flex-direction:column;height:100%;max-width:500px;min-height:0;position:relative;width:100%}.fsm-step-create,.fsm-step-quantity,.fsm-step-search{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.fsm-close-absolute{background:#0000;border:none;color:#9ca3af;cursor:pointer;font-size:1.5rem;position:absolute;right:-10px;top:-10px;z-index:10}.fsm-close-absolute:hover{color:#fff}.fsm-search-bar{align-items:center;background:#0000;border:none;display:flex;flex-shrink:0;margin-bottom:1rem;padding:0;position:relative}.fsm-icon{color:#888;height:18px;left:10px;margin:0;position:absolute;width:18px;z-index:1}.fsm-search-bar input{background:#ffffff0a!important;border:1px solid #ffffff14!important;border-radius:6px;box-shadow:none!important;box-sizing:border-box;color:#fff!important;font-size:1rem;margin:0!important;outline:none!important;padding:10px 12px 10px 40px!important;width:100%}.fsm-search-bar input:focus{background:#ffffff0f!important;border-color:#ffffff29!important;box-shadow:0 0 0 3px #3b82f61a!important;outline:none!important}.fsm-icon-small{margin-right:5px;width:16px}.fsm-results-list{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-height:0;overflow-y:auto}.fsm-result-item{align-items:center;background:#1f1f1f;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem;transition:background .2s}.fsm-result-item:hover{background:#333}.fsm-item-main{display:flex;flex-direction:column}.fsm-item-name{font-size:1rem;font-weight:500}.fsm-item-brand{color:#9ca3af;font-size:.8rem}.fsm-item-meta{text-align:right}.fsm-tag{background:#374151;border-radius:4px;color:#d1d5db;font-size:.7rem;margin-right:8px;padding:2px 6px}.fsm-cals{color:#10b981;font-weight:600}.fsm-loading-container{display:flex;justify-content:center;padding:2rem;width:100%}.fsm-spinner{animation:fsm-spin 1s linear infinite;border:3px solid #374151;border-radius:50%;border-top-color:#3b82f6;height:32px;width:32px}@keyframes fsm-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fsm-empty-state{color:#9ca3af;padding:2rem;text-align:center}.fsm-btn-secondary{align-items:center;background:#374151;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;margin:1rem auto;padding:.5rem 1rem}.fsm-btn-secondary:hover{background:#4b5563}.fsm-btn-secondary.full-width{margin:0;width:100%}.fsm-search-footer{border-top:1px solid #404040;margin-top:.5rem;padding-top:1rem}.fsm-camera-section{margin-bottom:1.5rem}.hidden-file-input{display:none}.fsm-link-btn{background:none;border:none;color:#3b82f6;cursor:pointer;text-decoration:underline}.fsm-step-create,.fsm-step-quantity{padding:2px}.fsm-header{align-items:center;display:flex;flex-shrink:0;margin-bottom:1.5rem}.fsm-back-btn{background:none;border:none;color:#9ca3af;cursor:pointer;margin-right:.5rem;padding:.25rem}.fsm-back-btn:hover{color:#fff}.fsm-duplicate-check{display:flex;flex-direction:column;gap:1.5rem;height:100%}.fsm-dup-warning{background-color:#451a03;border:1px solid #78350f;border-radius:8px;color:#ffdce0;font-size:.9rem;padding:1rem}.fsm-comparison{display:flex;gap:1rem;overflow-x:auto}.fsm-comp-card{background:#262626;border:1px solid #404040;border-radius:8px;display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:140px;padding:.75rem}.fsm-comp-card.new{border-color:#3b82f6}.fsm-comp-header{color:#9ca3af;font-size:.9rem;font-weight:700;margin-bottom:.25rem;text-transform:uppercase}.fsm-comp-row{border-bottom:1px solid #333;display:flex;font-size:.85rem;justify-content:space-between;padding:4px 0}.fsm-comp-row.highlight{color:#f59e0b;font-weight:600}.fsm-dup-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:auto}.fsm-btn-dup-use{background-color:#10b981}.fsm-btn-dup-update,.fsm-btn-dup-use{border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px}.fsm-btn-dup-update{background-color:#f59e0b}.fsm-btn-dup-create{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px}.fsm-btn-cancel{background:#0000;border:1px solid #4b5563;border-radius:6px;color:#9ca3af;cursor:pointer;margin-top:5px;padding:8px}.fsm-header h3{font-size:1.25rem;margin:0}.fsm-field-group{margin-bottom:1.5rem}.fsm-field-group label{color:#9ca3af;display:block;font-size:.9rem;margin-bottom:.5rem}.fsm-input-group{display:flex;gap:.5rem}.fsm-input-group input,.fsm-input-group select{background:#262626;border:1px solid #404040;border-radius:6px;color:#fff;font-size:1rem;padding:.5rem}.fsm-input-group input{flex:1 1}.fsm-input-group select{width:100px}.fsm-readonly-field{margin-bottom:1rem}.fsm-readonly-field label{color:#9ca3af;display:block;font-size:.8rem;margin-bottom:.25rem}.fsm-readonly-value{color:#e0e0e0;font-size:.95rem}.fsm-food-hero{background:linear-gradient(135deg,#3b82f61a,#9333ea1a);border:1px solid #ffffff0f;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem 1rem;text-align:center}.fsm-food-name{word-wrap:break-word;color:#fff;font-size:1.4rem;font-weight:700;line-height:1.3;margin:0 0 .5rem}.fsm-food-brand{color:#9ca3af;display:block;font-size:.85rem;font-weight:500;letter-spacing:.02em;margin-bottom:.75rem;text-transform:uppercase}.fsm-food-serving-badge{background:#ffffff14;border:1px solid #ffffff1f;border-radius:20px;color:#d1d5db;display:block;font-size:.8rem;margin-left:auto;margin-right:auto;margin-top:.25rem;padding:.4rem .9rem;width:-webkit-fit-content;width:fit-content}.fsm-quantity-display{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;margin-bottom:1.5rem;padding:1rem;text-align:center}.fsm-quantity-value{color:#3b82f6;font-size:2rem;font-weight:700;line-height:1}.fsm-quantity-unit{color:#6b7280;font-size:1.2rem;font-weight:500}.fsm-quantity-display .fsm-serving-hint{margin-top:.5rem;text-align:center}.fsm-serving-hint{color:#6b7280;font-size:.8rem;font-style:italic;margin-top:.5rem}.fsm-summary{grid-gap:.5rem;background:#262626;border-radius:8px;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem;padding:1rem;text-align:center}.fsm-stat label{color:#9ca3af;display:block;font-size:.75rem;margin-bottom:.25rem}.fsm-stat .val{font-size:1.1rem;font-weight:600}.fsm-btn-primary{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem;width:100%}.fsm-btn-primary:hover{background:#2563eb}.fsm-btn-primary:disabled{cursor:not-allowed;opacity:.6}.fsm-actions,.fsm-ai-section{flex-shrink:0}.fsm-create-form,.fsm-quantity-form{flex:1 1;min-height:0;overflow-y:auto;padding:4px 8px 4px 4px}.fsm-create-form .fsm-form-row{margin-bottom:1rem}.fsm-create-form label{color:#9ca3af;display:block;font-size:.85rem;margin-bottom:.4rem}.fsm-create-form input,.fsm-create-form select{background:#262626!important;border:1px solid #404040!important;border-radius:4px;box-sizing:border-box;color:#fff!important;padding:8px;width:100%}.two-col{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.three-col{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr 1fr}.fsm-subtitle{border-bottom:1px solid #404040;color:#d1d5db;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem;padding-bottom:.25rem}.recipe-selection-embedded,.recipe-selection-modal{color:#e0e0e0;display:flex;flex-direction:column;gap:1rem;height:100%;max-width:500px;min-height:0;padding:4px;position:relative;width:100%}.rsm-header{flex-shrink:0;justify-content:space-between}.rsm-header,.rsm-title{align-items:center;display:flex}.rsm-title{color:#fff;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0}.rsm-icon{color:#a78bfa;height:24px;width:24px}.rsm-icon-sm{height:16px;width:16px}.rsm-create-btn{align-items:center;background:linear-gradient(135deg,#8b5cf6,#a78bfa);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:4px;padding:8px 14px;transition:all .2s}.rsm-create-btn:hover{box-shadow:0 4px 12px #8b5cf666;transform:translateY(-1px)}.rsm-back-btn{align-items:center;background:#0000;border:none;color:#9ca3af;cursor:pointer;display:flex;font-size:.9rem;gap:4px;margin-bottom:.5rem;padding:0}.rsm-back-btn:hover{color:#fff}.rsm-description{color:#9ca3af;font-size:.9rem;margin:0}.rsm-search-bar{align-items:center;display:flex;flex-shrink:0;margin-bottom:1rem;position:relative}.rsm-search-icon{color:#888;height:18px;left:10px;position:absolute;width:18px;z-index:1}.rsm-search-bar input{background:#ffffff0a!important;border:1px solid #ffffff14!important;border-radius:6px!important;box-shadow:none!important;box-sizing:border-box!important;color:#fff!important;font-size:1rem!important;margin:0!important;outline:none!important;padding:10px 12px 10px 40px!important;width:100%!important}.rsm-search-bar input:focus{background:#ffffff0f!important;border-color:#ffffff29!important;box-shadow:0 0 0 3px #3b82f61a!important;outline:none!important}.rsm-recipes-list{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-height:0;overflow-y:auto}.rsm-recipe-card{align-items:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;padding:12px;transition:all .2s}.rsm-recipe-card:hover{background:#ffffff0f;border-color:#8b5cf64d;transform:translateX(2px)}.rsm-recipe-info{display:flex;flex-direction:column;gap:2px}.rsm-recipe-name{color:#fff;font-weight:600}.rsm-recipe-meta{color:#9ca3af;font-size:.8rem}.rsm-recipe-actions{display:flex;gap:4px}.rsm-action-btn{background:#ffffff0d;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;padding:6px;transition:all .2s}.rsm-action-btn:hover{background:#ffffff1a;color:#fff}.rsm-action-danger:hover{background:#ef444433;color:#ef4444}.rsm-empty,.rsm-loading,.rsm-loading-more{color:#9ca3af;padding:2rem;text-align:center}.rsm-empty{align-items:center;gap:1rem}.rsm-empty,.rsm-scale-section{display:flex;flex-direction:column}.rsm-scale-section{background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:12px;gap:12px;padding:16px}.rsm-label{align-items:center;color:#a78bfa;display:flex;font-weight:600;gap:6px}.rsm-scale-controls{gap:16px}.rsm-scale-btn,.rsm-scale-controls{align-items:center;display:flex;justify-content:center}.rsm-scale-btn{background:#ffffff0d;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;height:40px;transition:all .2s;width:40px}.rsm-scale-btn:hover{background:#8b5cf64d;border-color:#8b5cf6}.rsm-scale-value{color:#fff;font-size:1.5rem;font-weight:700;min-width:80px;text-align:center}.rsm-scale-presets{display:flex;gap:8px;justify-content:center}.rsm-scale-presets button{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:.85rem;padding:6px 12px;transition:all .2s}.rsm-scale-presets button:hover{background:#8b5cf633;border-color:#8b5cf6;color:#fff}.rsm-ingredients-preview{background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;max-height:200px;overflow-y:auto;padding:12px}.rsm-ingredients-preview h4{color:#9ca3af;font-size:.9rem;margin:0 0 8px}.rsm-ingredient-row{border-bottom:1px solid #ffffff0d;display:flex;justify-content:space-between;padding:6px 0}.rsm-ingredient-row:last-child{border-bottom:none}.rsm-ing-name{color:#e5e7eb}.rsm-ing-qty{color:#a78bfa;font-weight:500}.rsm-nutrition-summary{grid-gap:8px;background:#ffffff05;border-radius:10px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);padding:12px}.rsm-nutr-item{text-align:center}.rsm-nutr-val{color:#fff;display:block;font-size:1.1rem;font-weight:700}.rsm-nutr-label{color:#9ca3af;font-size:.75rem}.rsm-form{display:flex;flex-direction:column;gap:12px}.rsm-input,.rsm-textarea{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;box-sizing:border-box;color:#fff;font-size:1rem;padding:12px 14px;width:100%}.rsm-input:focus,.rsm-textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf633;outline:none}.rsm-textarea{min-height:60px;resize:vertical}.rsm-ingredients-section{display:flex;flex:1 1;flex-direction:column;min-height:0}.rsm-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.rsm-section-header h4{color:#9ca3af;margin:0}.rsm-add-btn{align-items:center;background:#8b5cf633;border:1px solid #8b5cf64d;border-radius:6px;color:#a78bfa;cursor:pointer;display:flex;font-size:.85rem;gap:4px;padding:6px 10px;transition:all .2s}.rsm-add-btn:hover{background:#8b5cf64d;color:#fff}.rsm-empty-msg{color:#6b7280;font-style:italic;padding:2rem;text-align:center}.rsm-ingredients-list{display:flex;flex:1 1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.rsm-ingredient-edit-row{align-items:center;background:#ffffff08;border:1px solid #0000;border-radius:8px;display:flex;gap:8px;padding:8px 10px;transition:all .2s ease}.rsm-ingredient-edit-row.dragging{border-color:#8b5cf6;opacity:.5}.rsm-ingredient-edit-row.long-press{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf64d}.rsm-drag-handle{align-items:center;color:#6b7280;cursor:grab;display:flex;padding:0 2px;touch-action:none}.rsm-drag-handle:active{cursor:grabbing}.rsm-ingredient-edit-row .rsm-ing-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rsm-qty-input{background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;color:#fff;padding:6px 8px;text-align:center;width:60px}.rsm-qty-input:focus{border-color:#8b5cf6;outline:none}.rsm-unit-select{background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;color:#fff;cursor:pointer;padding:6px 8px}.rsm-unit-select:focus{border-color:#8b5cf6;outline:none}.rsm-unit-select option{background:#1f1f1f;color:#e0e0e0}.rsm-remove-btn{align-items:center;background:#0000;border:none;color:#6b7280;cursor:pointer;display:flex;padding:4px;transition:color .2s}.rsm-remove-btn:hover{color:#ef4444}.rsm-actions,.rsm-footer{border-top:1px solid #ffffff1a;display:flex;flex-shrink:0;gap:12px;margin-top:auto;padding-top:12px}.rsm-btn-primary{background:linear-gradient(135deg,#8b5cf6,#a78bfa);border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:14px;transition:all .2s}.rsm-btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #8b5cf666;transform:translateY(-1px)}.rsm-btn-primary:disabled{cursor:not-allowed;opacity:.5}.rsm-btn-secondary{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;color:#e5e7eb;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px;transition:all .2s}.rsm-btn-secondary:hover{background:#ffffff14}.unified-add-modal{background:linear-gradient(145deg,#1a1e2ee6,#121520eb);border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 24px 60px #00000073;box-sizing:border-box;color:#e0e0e0;display:flex;flex-direction:column;gap:14px;height:100%;max-height:100vh;max-height:var(--visual-viewport-height,100vh);overflow:hidden;padding:16px;position:relative;width:100%}.uam-tabs-container{grid-gap:12px;display:grid;flex-shrink:0;gap:12px;grid-template-columns:1fr 1fr;width:100%}.uam-tab-button{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff05;border:1px solid #ffffff14;border-radius:14px;color:#9ca3af;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:center;padding:12px;transition:transform .12s ease,border-color .12s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.uam-tab-button:hover{background:#ffffff0a;border-color:#ffffff29;box-shadow:0 4px 12px #00000040;color:#e5e7eb;transform:translateY(-1px)}.uam-tab-button.active{background:linear-gradient(135deg,#3b82f6,#22d3ee);background:linear-gradient(135deg,var(--color-primary,#3b82f6),#22d3ee);border-color:#0000;box-shadow:0 4px 12px #22d3ee4d;color:#0b1221}.uam-tab-icon{height:24px;width:24px}.uam-tab-label{font-size:.95rem;font-weight:600;line-height:1.1}.uam-content{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;position:relative}.meal-container{border-radius:8px;color:#e0e0e0;padding-left:1em;padding-right:1em}.meal-summary-card{align-items:center;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.meal-summary-cals{align-items:baseline;color:#3b82f6;display:flex;font-size:1.4rem;font-weight:700;gap:.3rem}.meal-summary-cals .unit{color:#6b7280;font-size:.75rem;font-weight:500}.meal-summary-bar{background:#ffffff1a;border-radius:3px;display:flex;height:6px;max-width:280px;overflow:hidden;width:100%}.meal-summary-bar .bar-segment{height:100%;transition:width .3s ease}.meal-summary-bar .bar-protein{background:#8b5cf6}.meal-summary-bar .bar-carbs{background:#f59e0b}.meal-summary-bar .bar-fat{background:#ef4444}.meal-summary-macros{display:flex;gap:1rem}.meal-summary-macros .macro{align-items:baseline;display:flex;font-size:.85rem;font-weight:600;gap:.15rem}.meal-summary-macros .macro.protein{color:#8b5cf6}.meal-summary-macros .macro.carbs{color:#f59e0b}.meal-summary-macros .macro.fat{color:#ef4444}.meal-summary-macros .macro .g{font-size:.65rem;font-weight:400;opacity:.7}.meal-foods-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.meal-food-card{align-items:center;background:#1e1e1e80;border:1px solid #3b82f626;border-left:2px solid #3b82f666;border-radius:8px;display:flex;gap:.5rem;justify-content:space-between;padding:.75rem .5rem .75rem .75rem;transition:border-color .2s,background .2s}.meal-food-card:hover{background:#3b82f614;border-color:#3b82f64d}.meal-food-info{flex-grow:1;min-width:0;text-align:center}.meal-food-name{word-wrap:break-word;color:#f3f4f6;font-size:1rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;margin-bottom:.1rem;overflow-wrap:break-word}.meal-food-brand{color:#9ca3af;font-size:.75rem;font-style:italic;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-food-macros{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.75rem;gap:.5rem;justify-content:center;line-height:1.2}.meal-food-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.meal-quantity-wrapper{align-items:flex-end;background-color:#262626;border:1px solid #444;border-radius:6px;display:flex;flex-direction:column;gap:2px;padding:.25rem .35rem}.meal-qty-unit-row{align-items:center;display:flex;gap:.25rem}.meal-serving-hint{color:#6b7280;font-size:.7rem}.meal-qty-input{background:#0000;border:none;border-bottom:1px solid #0000;color:#e0e0e0;font-size:.9rem;font-weight:500;text-align:right;width:45px}.meal-qty-input:focus{border-bottom:1px solid #3b82f6;outline:none}.meal-unit-label{color:#9ca3af;font-size:.8rem;min-width:20px}.meal-quantity-display{color:#e0e0e0;font-size:.9rem}.btn-remove-food{align-items:center;background:#0000;border:none;border-radius:4px;color:#ef4444;cursor:pointer;display:flex;padding:4px}.btn-remove-food:hover{background:#ef44441a}.icon-sm{width:18px}.meal-action-buttons,.meal-actions{align-items:center;display:flex;flex-direction:column;gap:1rem}.meal-action-row{display:flex;gap:.5rem}.btn-add-food{align-items:center;background:#22c55e33;border:1px solid #22c55e66;border-radius:8px;color:#86efac;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.4rem;justify-content:center;padding:.5rem .8rem;transition:all .2s ease}.btn-add-food.btn-photo{background:#8b5cf633;border:1px solid #8b5cf666;color:#c4b5fd}.btn-add-food.btn-photo:hover{background:#8b5cf659;border-color:#8b5cf699}.btn-add-food.icon-only{padding:.6rem}.meal-unit-select{background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-family:inherit;font-size:.8rem;margin-left:4px;padding:2px}.meal-unit-select:focus{background:#404040;color:#fff;outline:none}.meal-unit-select option{background:#262626;color:#e0e0e0}.btn-add-food:hover{background:#22c55e59;border-color:#22c55e99}.btn-submit-meal{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#93c5fd;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.6rem 1.2rem;transition:all .2s ease}.btn-submit-meal:hover{background:#3b82f659;border-color:#3b82f699}.recipe-group{background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);border:1px solid #8b5cf64d;border-radius:12px;margin-bottom:.5rem;padding:.75rem}.recipe-group-header{border-bottom:1px solid #8b5cf633;margin-bottom:.5rem;padding-bottom:.5rem}.recipe-group-header,.recipe-group-info{align-items:center;display:flex;gap:.5rem}.recipe-group-info{color:#c4b5fd;flex:1 1}.recipe-group-info .icon-sm{color:#a78bfa}.recipe-group-name{font-size:.95rem;font-weight:600}.recipe-group-scale{color:#9ca3af;font-size:.8rem;font-weight:400}.recipe-group-actions{display:flex;gap:.5rem}.btn-remove-recipe,.btn-scale-recipe{align-items:center;background:#0000;border:none;border-radius:6px;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.btn-scale-recipe{color:#a78bfa}.btn-scale-recipe:hover{background:#8b5cf633}.btn-remove-recipe{color:#ef4444}.btn-remove-recipe:hover{background:#ef444426}.recipe-group-foods{display:flex;flex-direction:column;gap:.5rem}.recipe-group-foods .meal-food-card{background:#1e1e1e80;border-color:#8b5cf626;border-left:2px solid #8b5cf666}.recipe-group-foods .meal-food-card.recipe-item{margin-left:.5rem}.reorder-toggle-row{display:flex;gap:16px;justify-content:center;margin-bottom:8px}.reorder-toggle-link{align-items:center;background:#0000;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:6px;padding:6px 12px;transition:all .15s ease}.reorder-toggle-link:hover{background:#ffffff0d;color:#9ca3af}.reorder-toggle-link.done{color:#22c55e}.reorder-toggle-link.action-green,.reorder-toggle-link.done:hover{background:#22c55e1a;color:#4ade80}.reorder-toggle-link.action-green{border:1px solid #22c55e33}.reorder-toggle-link.action-purple{background:#8b5cf61a;border:1px solid #8b5cf633;color:#a78bfa}.reorder-compact-item{align-items:center;background:#1f1f1f;border:1px solid #333;border-radius:10px;cursor:grab;display:flex;gap:12px;margin-bottom:8px;padding:12px 16px;touch-action:none;transition:background .15s ease,border-color .15s ease,box-shadow .2s ease,opacity .15s ease;-webkit-user-select:none;user-select:none}.reorder-compact-item:hover{background:#262626;border-color:#3b82f666}.reorder-compact-item:active{cursor:grabbing}.reorder-compact-item.dragging{opacity:0;pointer-events:none}.reorder-compact-item.is-recipe{background:linear-gradient(135deg,#8b5cf626,#8b5cf614);border-color:#8b5cf666}.reorder-compact-item.is-recipe:hover{background:linear-gradient(135deg,#8b5cf633,#8b5cf61f);border-color:#8b5cf680}.reorder-drag-handle{align-items:center;color:#6b7280;display:flex;flex-shrink:0;justify-content:center}.reorder-item-summary{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.reorder-item-name{color:#e5e7eb;font-size:1rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reorder-item-detail{color:#9ca3af;flex-shrink:0;font-size:.85rem;margin-left:auto}.custom-drag-layer{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:100}.drag-preview{align-items:center;background:#2563eb;border:1px solid #3b82f6;border-radius:10px;box-shadow:0 8px 24px #2563eb66;display:flex;gap:12px;max-width:300px;min-width:200px;padding:12px 16px}.drag-preview .reorder-drag-handle{color:#fff}.drag-preview .reorder-exercise-content{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.drag-preview .reorder-exercise-name{color:#fff;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drag-preview .reorder-exercise-sets{color:#fffc;flex-shrink:0;font-size:.8rem;margin-left:auto}.meal-food-card.recipe-item .drag-handle{color:#a78bfa}.selection-mode{border:1px solid #0000;cursor:pointer;position:relative;transition:all .2s}.selection-mode:hover{background:#ffffff05}.selection-mode.selected{background:#7c3aed26!important;border-color:#7c3aed!important}.selection-checkbox{align-items:center;background:#1f2937cc;border:2px solid #6b7280;border-radius:50%;display:flex;height:24px;justify-content:center;position:absolute;right:10px;top:10px;width:24px;z-index:20}.selection-mode.selected .selection-checkbox{background:#7c3aed;border-color:#7c3aed;color:#fff}.selection-checkbox svg{stroke-width:3;height:16px;width:16px}.meal-notification-toast{align-items:center;animation:slideUpFade .3s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2937f2;border:1px solid #7c3aed80;border-radius:12px;bottom:100px;box-shadow:0 10px 15px -3px #00000080;color:#fff;display:flex;gap:12px;left:50%;max-width:90vw;padding:12px 20px;pointer-events:auto;position:fixed;transform:translateX(-50%);width:-webkit-max-content;width:max-content;z-index:2000}.meal-notification-message{color:#f3f4f6;font-size:14px;font-weight:500}.meal-notification-action{background:#7c3aede6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:background .2s;white-space:nowrap}.meal-notification-action:hover{background:#7c3aed}.meal-notification-close{align-items:center;background:#0000;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;padding:4px}.meal-notification-close:hover{background:#ffffff1a;color:#fff}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,20px) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}.media{margin-top:20px}.media-upload{gap:10px;margin-bottom:20px}.media-upload,.media-upload label{display:flex;flex-direction:column}.media-upload label{gap:5px}.media-files{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.media-file{height:150px;position:relative;width:150px}.media-preview{background-color:#000;border:1px solid gray;border-radius:8px;height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.media-file-delete{align-items:center;border:none;color:#fff;height:1.2rem;margin:5px;padding:0;position:absolute;right:5px;top:5px;width:1.2rem;z-index:10}.media-file-delete,.media-overlay{cursor:pointer;display:flex;justify-content:center}.media-overlay{align-items:flex-start;background-color:initial;flex-direction:row;left:0;min-height:100%;top:0;width:100%;z-index:1000}.media-overlay-middle{display:flex;flex-direction:column;margin:auto;padding-left:.5rem;padding-right:.5rem;width:100%}.media-title{color:#fff;margin-bottom:15px;text-align:center;text-shadow:0 1px 3px #000c}.media-title h3{font-size:1.2rem;margin:0 0 5px}.media-title span{font-size:.9rem;opacity:.9}.media-zone{object-fit:contain}.media-loading-placeholder,.media-zone{border-radius:8px;flex:1 1;max-height:70vh;max-width:100%}.media-loading-placeholder{background:linear-gradient(135deg,#ffffff14,#ffffff05);border:1px solid #ffffff1a;color:#e5e7eb;font-size:.95rem;min-height:200px;text-shadow:0 1px 2px #0006}.media-display-container,.media-loading-placeholder{align-items:center;display:flex;justify-content:center}.media-display-container{gap:10px;width:100%}.media-arrow{align-items:center;background-color:initial;border:none;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:4rem;height:3rem;justify-content:center;margin:0;padding:0;width:3rem;z-index:1001}.media-arrow:disabled{background-color:initial;cursor:not-allowed;opacity:.3}.loading-cue{align-items:center;background-color:#0000001a;border:1px solid gray;border-radius:8px;color:gray;font-size:1rem;height:100%;width:100%}.loading-cue,.media-buttons{display:flex;justify-content:center}.media-buttons{gap:10px}.media-button{align-items:center;background-color:initial;border:none;cursor:pointer;height:3.5rem;justify-content:center;margin-top:2rem;padding:0;width:3.5rem}.media-button svg{color:#fff;height:2rem;padding:0;width:2rem}.video-icon{bottom:8px;color:#fff;height:24px;padding:4px;position:absolute;right:8px;width:24px}.media-delete-button{background-color:red;border:none;border-radius:4px;bottom:20px;color:#fff;cursor:pointer;font-size:1rem;margin-top:.5em;padding:10px 15px;right:20px;z-index:1001}.inference-indicator{background-color:#000000b3;border-radius:4px;bottom:5px;color:#fff;font-size:12px;left:5px;padding:2px 5px;position:absolute;right:5px;text-align:center;z-index:10}.inference-results{border-radius:8px;color:#fff;margin-top:10px;padding:10px}.inference-content p{margin:5px 0}.inference-indicator-modal{background-color:#000000b3;border-radius:4px;color:#fff;font-size:14px;left:50%;padding:5px 10px;position:absolute;top:10px;transform:translateX(-50%);z-index:20}.btn-small{background:#22c55e33;border:1px solid #22c55e66;border-radius:6px;color:#86efac;cursor:pointer;font-size:.85rem;font-weight:600;padding:.4rem .8rem;transition:all .2s ease}.btn-small:hover{background:#22c55e59;border-color:#22c55e99}.btn-small:disabled{background:#64646433;border-color:#6464644d;color:#6b7280;cursor:not-allowed}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.pulsing{animation:pulse 1.5s infinite}.inference-analyzing-text{background-color:#000000b3;border-radius:4px;bottom:10px;color:#fff;font-size:12px;left:50%;padding:2px 8px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}.inference-corner-sparkle{bottom:5px;cursor:default;font-size:18px;position:absolute;right:5px;text-shadow:0 0 3px #000c;z-index:10}.media-actions-row{display:flex;gap:10px;justify-content:center;margin-top:10px;width:100%}.inference-results-table{border-collapse:collapse;width:100%}.inference-results-table td{border-bottom:1px solid #ffffff1a;padding:5px;vertical-align:top}.inference-results-table tr:last-child td{border-bottom:none}.inference-results-table td:first-child{color:#ccc;font-weight:700;width:40%}.media-requirements-section{background-color:#282828;border:1px solid #444;border-radius:8px;margin-bottom:20px;padding:15px}.requirements-header{color:#eee;font-size:1rem;font-weight:700;margin-bottom:10px}.requirements-list{list-style:none;margin:0 0 15px;padding:0}.requirement-item{align-items:center;border-bottom:1px solid #444;display:flex;padding:8px 0}.requirement-item:last-child{border-bottom:none}.req-icon{height:20px;margin-right:10px;width:20px}.req-icon.success{color:#4caf50}.req-icon-placeholder{border:2px solid #666;border-radius:50%;box-sizing:border-box;height:20px;margin-right:10px;width:20px}.req-text{color:#fff;flex:1 1;font-size:.95rem}.req-delete-btn{background:none;border:none;color:#999;cursor:pointer;padding:4px}.req-delete-btn:hover{color:#d32f2f}.add-requirement-row{display:flex;gap:10px}.req-input{background-color:#f0f0f0;border:1px solid #666;border-radius:4px;color:#000;flex:1 1;font-size:.9rem;padding:8px}.req-input::placeholder{color:#555}.btn-add-req{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#93c5fd;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;height:auto;justify-content:center;padding:.6rem 1.2rem;transition:all .2s ease}.btn-add-req:hover{background:#3b82f659;border-color:#3b82f699}.btn-add-req:disabled{background:#64646433;border-color:#6464644d;color:#6b7280;cursor:not-allowed}.icon-small{height:20px;width:20px}.add-measurement-modal{padding:20px;width:100%}.measurement-selection-container{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.measurement-selection-container input,.measurement-selection-container select{font-size:1rem;padding:10px}.metrics{margin-top:1rem}.metrics h4{margin-bottom:1rem}.survey-container{border-radius:8px;color:#e0e0e0;padding:1rem}.survey-question-card{background-color:#262626;border:1px solid #333;border-radius:8px;box-shadow:0 4px 6px #0000004d;margin-bottom:1.5rem;padding:1.5rem}.survey-question-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.survey-question-text{color:#fff;flex-grow:1;font-size:1.1rem;font-weight:600}.survey-question-title-edit{background-color:#333;border:1px solid #444;border-radius:4px;color:#fff;font-size:1rem;padding:.5rem;width:100%}.survey-question-controls{align-items:center;display:flex;gap:.5rem}.survey-type-select{background-color:#333;border:1px solid #444;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.4rem .8rem}.survey-type-select:hover{border-color:#555}.btn-icon-danger{background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;padding:.4rem;transition:background-color .2s}.btn-icon-danger:hover{background-color:#ef44441a}.btn-icon-danger svg{height:1rem;width:1rem}.survey-text-input{background-color:#1a1a1a;border:1px solid #444;border-radius:6px;color:#e0e0e0;font-family:inherit;font-size:1rem;min-height:100px;padding:.75rem;resize:vertical;transition:border-color .2s;width:100%}.survey-text-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.survey-boolean-group{display:flex;gap:1rem;justify-content:center}.survey-choice-group{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.btn-choice{background-color:#333;border:1px solid #444;border-radius:20px;color:#d1d5db;cursor:pointer;font-size:.95rem;padding:.6rem 1.25rem;transition:all .2s ease}.btn-choice:hover:not(:disabled):not(.selected){background-color:#404040;border-color:#555}.btn-choice:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.btn-choice.selected{box-shadow:0 2px 4px #3b82f64d;color:#fff;font-weight:500}.btn-choice.selected,.btn-choice.selected:focus,.btn-choice.selected:hover{background-color:#3b82f6;border-color:#3b82f6}.btn-choice:disabled{cursor:not-allowed;opacity:.7}.btn-add-choice{align-items:center;background:#0000;border:2px dashed #555;border-radius:50%;color:#777;cursor:pointer;display:flex;font-size:1.2rem;height:36px;justify-content:center;transition:all .2s;width:36px}.btn-add-choice:hover{background-color:#3b82f61a;border-color:#3b82f6;color:#3b82f6}.btn-add-question{align-items:center;background:#22c55e33;border:1px solid #22c55e66;border-radius:8px;color:#86efac;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.6rem 1.2rem;transition:all .2s ease;width:100%}.btn-add-question:hover:not(:disabled){background:#22c55e59;border-color:#22c55e99}.btn-add-question svg{height:1.25rem;width:1.25rem}.survey-actions{display:flex;justify-content:center;margin-top:2rem}.btn-complete-survey{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#93c5fd;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.6rem 1.2rem;transition:all .2s ease}.btn-complete-survey:hover{background:#3b82f659;border-color:#3b82f699}.btn-complete-survey svg{height:1.25rem;width:1.25rem}.new-activity-modal{background:linear-gradient(145deg,#1a1e2ee6,#121520eb);border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 24px 60px #00000073;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 80px);max-height:calc(var(--visual-viewport-height, 100vh) - 80px);overflow-y:auto;padding:16px;position:relative;width:100%}.new-activity-modal .new-activity-type-selector{grid-gap:8px;display:grid;flex-shrink:0;gap:8px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));width:100%}.new-activity-modal .new-activity-type-button{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff05;border:1px solid #ffffff14;border-radius:14px;color:#e5e7eb;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:center;padding:10px 8px;transition:transform .12s ease,border-color .12s ease,box-shadow .2s ease,background .2s ease}.new-activity-modal .new-activity-type-button:hover{background:#ffffff0a;border-color:#ffffff29;box-shadow:0 4px 12px #00000040;transform:translateY(-1px)}.new-activity-modal .new-activity-type-button.active{background:linear-gradient(135deg,#3b82f6,#22d3ee);background:linear-gradient(135deg,var(--color-primary,#3b82f6),#22d3ee);border-color:#0000;box-shadow:0 4px 12px #22d3ee4d;color:#0b1221}.new-activity-modal .new-activity-type-button svg{height:20px;width:20px}.new-activity-modal .new-activity-type-label{font-size:.88rem;font-weight:600;line-height:1.15;text-align:center}.new-activity-modal .new-activity-body{background:#ffffff05;border:none;border-radius:14px;box-shadow:none;display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;padding:12px}.new-activity-modal .new-activity-help{color:#9ca3af;font-size:.92rem;margin-bottom:8px;text-align:center}.new-activity-modal .new-activity-redo,.new-activity-modal .new-activity-redo-scroll{display:flex;flex:1 1;flex-direction:column;min-height:0}.new-activity-modal .new-activity-redo-scroll{background:#0d111ccc;border:1px solid #ffffff0f;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff0a;overflow-y:auto;width:100%}.new-activity-modal .new-activity-source-list{width:100%}.new-activity-modal .activity-item{border-bottom:1px solid #ffffff0f;cursor:pointer;padding:12px;transition:background-color .12s ease,transform .12s ease}.new-activity-modal .activity-item:last-child{border-bottom:none}.new-activity-modal .activity-item:hover{background:#ffffff08;transform:translateX(2px)}.new-activity-modal .activity-item.selected{background:linear-gradient(90deg,#3b82f61f,#22d3ee14);border-left:3px solid #3b82f6;border-left:3px solid var(--color-primary,#3b82f6)}.new-activity-modal .new-activity-source-row{align-items:center;display:flex;gap:10px}.new-activity-modal .new-activity-source-icon{align-items:center;color:#cbd5e1;display:inline-flex;justify-content:center}.new-activity-modal .new-activity-source-icon svg{height:20px;width:20px}.new-activity-modal .new-activity-source-name{color:#e5e7eb;flex:1 1;font-weight:600;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-activity-modal .new-activity-source-meta{color:#a5b4fc;flex:0 0 auto;font-size:.85rem}.new-activity-modal .new-activity-source-date{color:#9ca3af;flex:0 0 auto;font-size:.85rem;margin-left:auto}.new-activity-modal .new-activity-form{display:flex;flex-direction:column;gap:8px;margin-top:4px}.new-activity-modal .new-activity-label{color:#cbd5e1;font-size:.95rem;font-weight:600}.new-activity-modal .new-activity-input{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;box-sizing:border-box;color:#f8fafc;font-size:1rem;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.new-activity-modal .new-activity-input:focus{border-color:#3b82f6;border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f62e;outline:none}.new-activity-modal .button-container{display:flex;flex-shrink:0;gap:12px;justify-content:space-between;margin-top:auto;padding-top:0}.new-activity-modal .btn-add,.new-activity-modal .btn-cancel{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:12px;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.new-activity-modal .btn-add{background:linear-gradient(135deg,#3b82f6,#22d3ee);background:linear-gradient(135deg,var(--color-primary,#3b82f6),#22d3ee);box-shadow:0 14px 30px #22d3ee59;color:#0b1221}.new-activity-modal .btn-add:hover:not(:disabled){transform:translateY(-1px)}.new-activity-modal .btn-add:disabled{background:#ffffff0a;box-shadow:none;color:#9ca3af;cursor:not-allowed}.new-activity-modal .btn-cancel{background:#ffffff0f;border:1px solid #ffffff14;color:#e5e7eb}.new-activity-modal .btn-cancel:hover{box-shadow:0 10px 18px #00000040;transform:translateY(-1px)}.recommendations-modal{max-width:600px;width:100%}.recommendations-content{background:linear-gradient(180deg,#1a1a1a,#000);border-radius:8px;padding:24px}.rec-header{align-items:center;border-bottom:1px solid #333;display:flex;flex-direction:column;margin-bottom:30px;padding-bottom:20px}.rec-header-icon{animation:float 3s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(255,215,0,.3));font-size:48px;margin-bottom:10px}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.recommendations-content h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#fff,#e0e0e0);-webkit-background-clip:text;color:#fff;font-size:24px;letter-spacing:.5px;margin:0;text-align:center}.rec-body{display:flex;flex-direction:column;gap:25px}.rec-section{background:#ffffff08;border:1px solid #ffffff0d;border-radius:12px;padding:16px}.rec-section-title{align-items:center;border-bottom:none;color:#a0c4ff;display:flex;font-size:18px;letter-spacing:.5px;margin-bottom:12px;margin-top:0;padding-bottom:0}.rec-icon{font-size:20px;margin-right:10px}.rec-text{color:#d1d5db;font-size:15px;line-height:1.6;margin:0}.rec-list{margin:0;padding-left:20px}.rec-list li{color:#d1d5db;line-height:1.5;margin-bottom:10px}.rec-list li::marker{color:#a0c4ff}.loading-state{color:#777;font-style:italic;padding:40px;text-align:center}.modal-actions{display:flex;justify-content:flex-end;margin-top:30px}.primary-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;padding:10px 20px;text-align:center;text-decoration:none}.filter-dropdown-container{display:flex;justify-content:center;position:relative;width:100%}.filter-toggle-btn{align-items:center;background:#ffffff08;border:1px solid #ffffff1a;border-radius:20px;color:#fff9;cursor:pointer;display:flex;font-size:.85rem;gap:8px;padding:8px 16px;transition:all .2s ease}.filter-toggle-btn:hover{background:#ffffff0f;border-color:#fff3;color:#ffffffe6}.arrow{font-size:.6rem;opacity:.7;transition:transform .2s ease}.filter-toggle-btn:hover .arrow{opacity:1}.filter-dropdown-content{animation:filterDropdownEnter .25s cubic-bezier(.34,1.56,.64,1) forwards;background:linear-gradient(180deg,#1e1e23fa,#141419fa);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 8px 32px #0006,inset 0 0 0 1px #ffffff0d;box-sizing:border-box;left:50%;margin-top:8px;max-width:380px;min-width:280px;padding:16px;position:absolute;top:100%;transform:translateX(-50%) translateY(0);transform-origin:top center;width:90vw;z-index:401}@keyframes filterDropdownEnter{0%{opacity:0;transform:translateX(-50%) translateY(-8px) scale(.95)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.filter-row{display:flex;gap:12px;margin-bottom:14px}@media (max-width:420px){.filter-row{flex-direction:column;gap:8px}}.filter-group{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.filter-group.full-width{width:100%}.filter-group label{color:#ffffff80;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.filter-input,.filter-select{background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;box-sizing:border-box;color:#fff!important;color-scheme:dark;font-size:.85rem;padding:8px 10px;transition:border-color .2s ease,background-color .2s ease;width:100%}.filter-input:hover,.filter-select:hover{background-color:#ffffff14;border-color:#ffffff26}.filter-input:focus,.filter-select:focus{background-color:#ffffff14;border-color:#ffd70066}.filter-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.8}.filter-input:focus,.filter-select:focus{border-color:#666;outline:none}.filter-actions{border-top:1px solid #ffffff14;display:flex;gap:10px;justify-content:center;margin-top:16px;padding-top:14px}.filter-toggle-grid{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{align-items:center;background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;color:#fff9;cursor:pointer;display:inline-flex;font-size:.8rem;gap:6px;line-height:1;padding:6px 12px;transition:all .15s ease}.filter-chip:hover{background-color:#ffffff1a;border-color:#fff3;color:#fff}.filter-chip.active{background-color:#ffd70026;border-color:#ffd70066;color:gold}.filter-chip.active:hover{background-color:#ffd70033}.filter-chip-icon{align-items:center;display:inline-flex;justify-content:center}.filter-chip-label{display:inline-block}.btn-text{background:none;border:1px solid #ffffff1a;border-radius:6px;color:#fff9;cursor:pointer;font-size:.8rem;padding:8px 16px;transition:all .15s ease}.btn-text:hover{background:#ffffff0d;border-color:#fff3;color:#fff}.btn-primary-small{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:6px 12px}.btn-primary-small:hover{background-color:#0056b3}.onboarding-story{align-items:center;animation:onboardingFadeIn .5s ease-out;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;overflow:hidden;padding:14px 16px;position:fixed;right:0;top:0;transition:background .8s ease;z-index:9999}@keyframes onboardingFadeIn{0%{opacity:0}to{opacity:1}}.onboarding-story.bg-potato{--bg-primary:#2d1f0f;--bg-secondary:#1a1206;--accent:#c4a574;--glow:#c4a5744d}.onboarding-story.bg-awakening{--bg-primary:#0f2d1a;--bg-secondary:#061a0d;--accent:#4ade80;--glow:#4ade804d}.onboarding-story.bg-evolution{--bg-primary:#1f0f2d;--bg-secondary:#12061a;--accent:#a78bfa;--glow:#a78bfa4d}.onboarding-story.bg-temple{--bg-primary:#0f1f2d;--bg-secondary:#06121a;--accent:#60a5fa;--glow:#60a5fa4d}.onboarding-story.bg-powers{--bg-primary:#2d1f0f;--bg-secondary:#1a1206;--accent:#fbbf24;--glow:#fbbf2466}.onboarding-story.bg-dragon{--bg-primary:#2d0f0f;--bg-secondary:#1a0606;--accent:#ef4444;--glow:#ef444466}.onboarding-story.bg-begin{--bg-primary:#1a0f2d;--bg-secondary:#0d061a;--accent:#f59e0b;--glow:#f59e0b66}.story-bg-gradient{background:radial-gradient(ellipse at center,var(--bg-primary) 0,var(--bg-secondary) 100%);inset:0;position:absolute;transition:background .8s ease}.story-bg-stars{animation:twinkle 4s ease-in-out infinite;background-image:radial-gradient(2px 2px at 20px 30px,#ffffff4d,#0000),radial-gradient(2px 2px at 40px 70px,#fff3,#0000),radial-gradient(1px 1px at 90px 40px,#fff6,#0000),radial-gradient(2px 2px at 160px 120px,#ffffff4d,#0000),radial-gradient(1px 1px at 230px 80px,#fff3,#0000),radial-gradient(2px 2px at 300px 150px,#ffffff4d,#0000),radial-gradient(1px 1px at 350px 60px,#fff6,#0000);background-size:400px 200px;inset:0;position:absolute}.story-bg-glow{animation:pulseGlow 3s ease-in-out infinite;background:radial-gradient(circle,var(--glow) 0,#0000 70%);height:600px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:background .8s ease;width:600px}.story-particles{inset:0;overflow:hidden;pointer-events:none;position:absolute}.story-particle{animation:floatUp var(--duration) linear infinite;animation-delay:var(--delay);bottom:-60px;font-size:1.8rem;left:var(--x-start);opacity:0;position:absolute}@keyframes floatUp{0%{opacity:0;transform:translateY(0) scale(.6)}5%{opacity:.7;transform:translateY(-5vh) scale(1)}50%{opacity:.8;transform:translateY(-50vh) scale(1)}95%{opacity:.5;transform:translateY(-95vh) scale(.8)}to{opacity:0;transform:translateY(-100vh) scale(.6)}}.story-content{align-items:center;display:flex;flex-direction:column;max-width:500px;opacity:0;position:relative;text-align:center;transform:translateY(30px);transition:all .6s cubic-bezier(.34,1.56,.64,1);z-index:10}.story-content.visible{opacity:1;transform:translateY(0)}.story-content.transitioning{opacity:0;transform:translateY(-30px) scale(.95)}.story-emoji-container{align-items:center;display:flex;height:70px;justify-content:center;margin-bottom:8px;position:relative;width:70px}.story-emoji{animation:emojiFloat 3s ease-in-out infinite;filter:drop-shadow(0 10px 30px var(--glow));font-size:3rem;z-index:2}.story-emoji.dragon-mode{animation:dragonPulse 1.5s ease-in-out infinite,emojiFloat 3s ease-in-out infinite}@keyframes emojiFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes dragonPulse{0%,to{filter:drop-shadow(0 10px 30px var(--glow)) brightness(1)}50%{filter:drop-shadow(0 20px 50px var(--glow)) brightness(1.2)}}.story-emoji-glow{animation:glowPulse 2s ease-in-out infinite;background:radial-gradient(circle,var(--glow) 0,#0000 70%);border-radius:50%;height:120px;position:absolute;width:120px}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.3)}}.story-emoji-ring{animation:ringExpand 2s ease-out infinite;border:2px solid var(--accent);border-radius:50%;height:130px;opacity:.3;position:absolute;width:130px}.story-emoji-ring.ring-2{animation-delay:1s}.dragon-fire{bottom:-20px;display:flex;gap:5px;position:absolute}.dragon-fire span{animation:fireFlicker .3s ease-in-out infinite alternate;font-size:1.5rem}.dragon-fire span:nth-child(2){animation-delay:.1s}.dragon-fire span:nth-child(3){animation-delay:.2s}@keyframes fireFlicker{0%{opacity:.8;transform:translateY(0) scale(1)}to{opacity:1;transform:translateY(-5px) scale(1.1)}}.story-title{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 4px;overflow:hidden;position:relative}.story-title-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff 0,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;position:relative;z-index:1}.story-title-shimmer{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#fff6 50%,#0000);height:100%;left:-100%;position:absolute;top:0;width:100%}.story-subtitle{animation:subtitleFade .8s ease-out .3s both;color:var(--accent);font-size:.9rem;font-weight:500;margin:0 0 8px;opacity:.9}@keyframes subtitleFade{0%{opacity:0;transform:translateY(10px)}to{opacity:.9;transform:translateY(0)}}.evolution-showcase{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:20px;min-height:50px}.evolution-animal{animation:animalPop .5s cubic-bezier(.34,1.56,.64,1) both;animation-delay:var(--delay);font-size:2rem}@keyframes animalPop{0%{opacity:0;transform:scale(0) rotate(-180deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.evolution-arrow{animation:arrowSlide .4s ease-out both;animation-delay:var(--delay);color:var(--accent);font-size:1.2rem}@keyframes arrowSlide{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.evolution-dots{animation:dotsPulse 1s ease-in-out infinite;color:var(--accent);font-size:1.5rem}@keyframes dotsPulse{0%,to{opacity:.3}50%{opacity:1}}.story-description{color:#d1d5db;font-size:.85rem;line-height:1.4;margin:0 0 10px;min-height:30px}.typing-cursor{animation:cursorBlink .8s step-end infinite;color:var(--accent);font-weight:300}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.story-actions{align-items:center;animation:actionsSlideUp .6s cubic-bezier(.34,1.56,.64,1) .5s both;display:flex;flex-direction:column;gap:16px;max-width:320px;width:100%}@keyframes actionsSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.story-btn{align-items:center;border:none;border-radius:14px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;overflow:hidden;padding:16px 24px;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:100%}.story-btn-primary{background:linear-gradient(135deg,#f59e0b,#ea580c);box-shadow:0 4px 20px #f59e0b66,0 0 40px #f59e0b33;color:#fff}.story-btn-primary:hover{box-shadow:0 8px 30px #f59e0b80,0 0 60px #f59e0b4d;transform:translateY(-3px) scale(1.02)}.story-btn-primary:active{transform:translateY(0) scale(.98)}.story-btn-shimmer{animation:storyBtnShimmer 2s ease-in-out infinite;background:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes storyBtnShimmer{0%{left:-100%}50%,to{left:100%}}.story-btn-icon{font-size:1.2rem}.story-btn-secondary{background:#60a5fa26;border:1px solid #60a5fa4d;color:#60a5fa}.story-btn-secondary:hover{background:#60a5fa40;border-color:#60a5fa80;box-shadow:0 4px 20px #60a5fa33;transform:translateY(-2px)}.story-actions-divider{align-items:center;color:#6b7280;display:flex;font-size:.85rem;gap:12px;width:100%}.story-actions-divider:after,.story-actions-divider:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";flex:1 1;height:1px}.story-btn-skip{background:none;border:none;color:#6b7280;cursor:pointer;font-size:.85rem;margin-top:8px;padding:8px 16px;transition:color .2s ease}.story-btn-skip:hover{color:#9ca3af}.story-navigation{align-items:center;bottom:30px;display:flex;flex-direction:column;gap:20px;left:50%;position:absolute;transform:translateX(-50%);z-index:20}.story-dots{display:flex;gap:10px}.story-dot{background:#fff3;border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:all .3s ease;width:10px}.story-dot:hover{background:#fff6;transform:scale(1.2)}.story-dot.active{background:var(--accent);box-shadow:0 0 10px var(--glow);transform:scale(1.3)}.story-dot.completed{background:var(--accent);opacity:.5}.story-arrows{display:flex;gap:16px}.story-arrow{align-items:center;border:none;border-radius:30px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.story-arrow-prev{background:#ffffff1a;border:1px solid #ffffff1a;color:#9ca3af}.story-arrow-prev:hover:not(.disabled){background:#ffffff26;color:#fff}.story-arrow-prev.disabled{cursor:not-allowed;opacity:.3}.story-arrow-next{background:linear-gradient(135deg,var(--accent) 0,var(--accent) 100%);box-shadow:0 4px 15px var(--glow);color:#000}.story-arrow-next:hover{box-shadow:0 6px 25px var(--glow);transform:translateY(-2px)}.arrow-icon{transition:transform .2s ease}.story-arrow-next:hover .arrow-icon{transform:translateX(3px)}.story-skip{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;color:#6b7280;cursor:pointer;font-size:.8rem;padding:8px 16px;position:absolute;right:20px;top:20px;transition:all .2s ease;z-index:20}.story-skip:hover{background:#ffffff1a;border-color:#fff3;color:#9ca3af}@media (max-width:480px){.story-emoji{font-size:4rem}.story-title{font-size:1.6rem}.story-subtitle{font-size:1rem}.story-description{font-size:.9rem}.evolution-animal{font-size:1.5rem}.story-navigation{bottom:20px}.story-arrows{flex-direction:column;gap:10px}}.onboarding-story.bg-powers .story-emoji-container:after{animation:powerRotate 3s linear infinite;background:conic-gradient(from 0deg,#0000 0deg,var(--accent) 60deg,#0000 120deg);border-radius:50%;content:"";height:200px;opacity:.3;position:absolute;width:200px}@keyframes powerRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.onboarding-story.bg-dragon .story-bg-glow{animation:dragonGlow 1.5s ease-in-out infinite}@keyframes dragonGlow{0%,to{filter:hue-rotate(0deg);opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{filter:hue-rotate(20deg);opacity:1;transform:translate(-50%,-50%) scale(1.3)}}.onboarding-story.bg-begin .story-title-text{-webkit-text-fill-color:#0000;animation:rainbowShift 5s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#ef4444 25%,#a78bfa 50%,#60a5fa 75%,#4ade80);-webkit-background-clip:text;background-clip:text;background-size:200% 200%}@keyframes rainbowShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.onboarding-options{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:12px auto;max-width:500px;padding:0 10px}.onboarding-option-btn{align-items:center;background:#ffffff0d;border:2px solid #fff3;border-radius:20px;color:#ccc;cursor:pointer;display:flex;font-size:.75rem;gap:4px;padding:6px 10px;transition:all .2s ease}.onboarding-option-btn:hover{background:#ffffff1a;border-color:#f59e0b;border-color:var(--accent,#f59e0b);transform:translateY(-1px)}.onboarding-option-btn.selected{background:linear-gradient(135deg,#f59e0b4d,#ea580c33);border-color:#f59e0b;border-color:var(--accent,#f59e0b);box-shadow:0 0 10px #f59e0b4d;color:#fff}.option-emoji{font-size:.9rem}.option-label{font-weight:500}.onboarding-other-input{background:#0000004d;border:2px solid #fff3;border-radius:10px;color:#fff;font-size:.85rem;max-width:280px;outline:none;padding:10px 14px;transition:border-color .2s ease;width:100%}.onboarding-text-inputs{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:12px;width:100%}.onboarding-other-input:focus{border-color:#f59e0b;border-color:var(--accent,#f59e0b)}.onboarding-other-input::placeholder{color:#666}.onboarding-coach-section{-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:12px;margin:0 auto;max-height:50vh;max-width:420px;overflow-y:auto;padding:0 10px}.coach-section-label{color:#fff9;font-size:.7rem;letter-spacing:.05em;margin-bottom:6px;text-align:center;text-transform:uppercase}.coach-emoji-grid{flex-wrap:wrap;gap:6px;padding:4px}.coach-emoji-btn,.coach-emoji-grid{display:flex;justify-content:center}.coach-emoji-btn{align-items:center;background:#ffffff0d;border:2px solid #ffffff26;border-radius:10px;cursor:pointer;font-size:1.3rem;height:40px;transition:all .2s ease;width:40px}.coach-emoji-btn:hover{background:#ffffff1a}.coach-emoji-btn.selected,.coach-emoji-btn:hover{border-color:#60a5fa;border-color:var(--accent,#60a5fa);transform:scale(1.1)}.coach-emoji-btn.selected{background:linear-gradient(135deg,#60a5fa4d,#8b5cf633);box-shadow:0 0 12px #60a5fa66}.coach-tone-grid{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.coach-tone-btn{align-items:center;background:#ffffff0d;border:2px solid #ffffff26;border-radius:10px;color:#ccc;cursor:pointer;display:flex;flex-direction:column;gap:1px;min-width:60px;padding:8px 10px;transition:all .2s ease}.coach-tone-btn:hover{background:#ffffff1a;transform:translateY(-2px)}.coach-tone-btn.selected,.coach-tone-btn:hover{border-color:#60a5fa;border-color:var(--accent,#60a5fa)}.coach-tone-btn.selected{background:linear-gradient(135deg,#60a5fa40,#8b5cf626);box-shadow:0 0 12px #60a5fa4d;color:#fff}.tone-emoji{font-size:1.1rem}.tone-label{font-size:.65rem;font-weight:600}.tone-desc{font-size:.65rem;opacity:.6}.coach-intensity-slider{display:flex;gap:6px;justify-content:center}.coach-intensity-btn{align-items:center;background:#ffffff0d;border:2px solid #ffffff26;border-radius:8px;color:#999;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:8px 12px;transition:all .2s ease}.coach-intensity-btn:hover{background:#ffffff14;border-color:#60a5fa;border-color:var(--accent,#60a5fa)}.coach-intensity-btn.selected{background:linear-gradient(135deg,#60a5fa40,#8b5cf626);border-color:#60a5fa;border-color:var(--accent,#60a5fa);color:#fff}.intensity-bar{color:#60a5fa;color:var(--accent,#60a5fa);font-size:.7rem;letter-spacing:2px}.intensity-label{font-size:.7rem;font-weight:500;text-transform:capitalize}.coach-preview{align-items:center;background:#0000004d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:10px;padding:10px 14px}.coach-preview-emoji{animation:coachBounce 2s ease-in-out infinite;font-size:1.6rem}@keyframes coachBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.coach-preview-text{color:#e5e7eb;font-size:.8rem;font-style:italic;line-height:1.3}.plan-wizard{display:flex;flex-direction:column;margin:0 auto;max-width:600px;min-height:500px;padding:20px;width:100%}.wizard-progress{display:flex;justify-content:space-between;margin-bottom:30px;padding:0;position:relative}.wizard-progress-step{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px;z-index:2}.wizard-progress-dot{align-items:center;background:#2a2a2a;border:2px solid #444;border-radius:50%;color:#888;display:flex;font-size:.85rem;font-weight:600;height:36px;justify-content:center;transition:all .3s ease;width:36px}.wizard-progress-step.active .wizard-progress-dot{background:linear-gradient(135deg,#f59e0b,#ea580c);border-color:#f59e0b;box-shadow:0 0 20px #f59e0b66;color:#fff;transform:scale(1.1)}.wizard-progress-step.completed .wizard-progress-dot{background:#10b981;border-color:#10b981;color:#fff}.wizard-progress-label{color:#666;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase;transition:color .3s ease}.wizard-progress-step.active .wizard-progress-label{color:#f59e0b}.wizard-progress-step.completed .wizard-progress-label{color:#10b981}.wizard-progress-bar{background:#333;height:.4em;left:12.5%;position:absolute;right:12.5%;top:18px;transform:translateY(-50%);width:75%;z-index:1}.wizard-progress-bar:after{background:linear-gradient(90deg,#10b981,#f59e0b);content:"";height:100%;left:0;max-width:100%;position:absolute;top:0;transition:width .5s ease;width:var(--progress)}.wizard-content{flex:1 1;overflow-y:auto;padding-bottom:20px}.wizard-step{animation:stepFadeIn .4s ease-out}@keyframes stepFadeIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.step-header{margin-bottom:24px;text-align:center}.step-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 8px}.step-subtitle{color:#888;font-size:.95rem;margin:0}.goals-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.goal-card{align-items:flex-start;background:#1a1a1a;border:2px solid #333;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;padding:20px 16px;position:relative;text-align:left;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:100%}.goal-card:hover{border-color:#555;box-shadow:0 8px 25px #0000004d;transform:translateY(-4px)}.goal-card.selected{background:linear-gradient(135deg,rgba(var(--goal-color),.1) 0,#0000 100%);border-color:var(--goal-color);box-shadow:0 0 30px rgba(var(--goal-color),.2)}.goal-card.selected:before{background:linear-gradient(135deg,var(--goal-color),#0000);border-radius:18px;content:"";inset:-2px;opacity:.3;position:absolute;z-index:-1}.goal-emoji{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));font-size:2.5rem;margin-bottom:12px}.goal-content{display:flex;flex-direction:column;gap:4px}.goal-title{color:#fff;font-size:1rem;font-weight:600;margin:0 0 8px;text-align:left}.goal-subtitle{color:#888;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.goal-description{color:#666;font-size:.8rem;line-height:1.4;margin:8px 0 0;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease,margin .3s ease}.goal-card.selected .goal-description,.goal-card:hover .goal-description{margin-top:8px;max-height:100px;opacity:1}.goal-check{align-items:center;animation:checkPop .3s cubic-bezier(.34,1.56,.64,1);background:var(--goal-color);border-radius:50%;color:#fff;display:flex;font-size:.8rem;font-weight:700;height:24px;justify-content:center;position:absolute;right:10px;top:10px;width:24px}@keyframes checkPop{0%{transform:scale(0)}to{transform:scale(1)}}.custom-goal-input{animation:slideUp .3s ease-out;display:flex;flex-direction:column;gap:12px;margin-top:20px}.custom-goal-textarea{background:#1a1a1a;border:2px solid #444;border-radius:12px;color:#fff;font-family:inherit;font-size:1rem;padding:16px;resize:none;transition:border-color .2s ease;width:100%}.custom-goal-textarea:focus{border-color:#6366f1;outline:none}.custom-goal-textarea::placeholder{color:#555}.btn-custom-goal-submit{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .2s ease}.btn-custom-goal-submit:hover:not(:disabled){box-shadow:0 4px 15px #6366f166;transform:translateY(-2px)}.btn-custom-goal-submit:disabled{cursor:not-allowed;opacity:.5}.customize-form{gap:20px}.customize-form,.form-field{display:flex;flex-direction:column}.form-field{gap:8px}.field-label{color:#aaa;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.field-input,.field-textarea{background:#1a1a1a;border:2px solid #333;border-radius:10px;color:#fff;font-family:inherit;font-size:1rem;padding:14px 16px;transition:border-color .2s ease,background .2s ease}.field-input:focus,.field-textarea:focus{background:#222;border-color:#f59e0b;outline:none}.field-textarea{resize:none}.field-hint{color:#666;margin:0}.goal-preview{display:flex;justify-content:center}.goal-preview-badge{align-items:center;border-radius:20px;color:#fff;display:inline-flex;font-size:.85rem;font-weight:600;gap:8px;padding:8px 16px}.activities-list{display:flex;flex-direction:column;gap:12px}.activity-config-card{background:#1a1a1a;border:2px solid #333;border-radius:14px;overflow:hidden;transition:all .3s ease}.activity-config-card.enabled{background:linear-gradient(135deg,#f59e0b0d,#0000);border-color:#f59e0b}.activity-toggle-row{padding:0}.activity-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:14px;padding:16px;text-align:left;width:100%}.activity-emoji{font-size:1.8rem;text-align:center;width:40px}.activity-info{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:4px}.activity-label{color:#fff;display:block;font-size:1rem;font-weight:600;line-height:1.2}.activity-description{color:#666;display:block;font-size:.8rem;line-height:1.3}.wizard-toggle-switch{background:#333;border-radius:14px;flex-shrink:0;height:28px;position:relative;transition:background .3s ease;width:50px}.wizard-toggle-switch.on{background:linear-gradient(135deg,#f59e0b,#ea580c)}.wizard-toggle-knob{background:#fff;border-radius:50%;box-shadow:0 2px 6px #0000004d;height:22px;left:3px;position:absolute;top:3px;transition:transform .3s cubic-bezier(.34,1.56,.64,1);width:22px}.wizard-toggle-switch.on .wizard-toggle-knob{transform:translateX(22px)}.activity-frequency{align-items:center;animation:freqSlideDown .3s ease-out;background:#f59e0b1a;border-top:1px solid #f59e0b33;display:flex;gap:10px;padding:12px 16px}@keyframes freqSlideDown{0%{max-height:0;opacity:0}to{max-height:60px;opacity:1}}.frequency-label{color:#888;font-size:.85rem}.frequency-label.frequency-fixed{color:#10b981;font-style:italic}.frequency-input{background:#222;border:1px solid #444;border-radius:6px;color:#fff;font-size:.9rem;padding:8px;text-align:center;width:50px}.frequency-text{color:#888;font-size:.85rem}.frequency-select{background:#222;border:1px solid #444;border-radius:6px;color:#fff;font-size:.9rem;padding:8px 12px}.meal-selection{align-items:flex-start;flex-direction:column;gap:10px}.meal-checkboxes{display:flex;flex-wrap:wrap;gap:16px}.meal-checkbox-label{align-items:center;background:#222;border:1px solid #444;border-radius:8px;cursor:pointer;display:flex;gap:6px;padding:6px 12px;transition:all .2s ease}.meal-checkbox-label:hover{border-color:#f59e0b}.meal-checkbox-label:has(.meal-checkbox:checked){background:#f59e0b26;border-color:#f59e0b}.meal-checkbox{accent-color:#f59e0b;cursor:pointer;height:16px;width:16px}.meal-checkbox-text{color:#ccc;font-size:.9rem}.meal-checkbox-label:has(.meal-checkbox:checked) .meal-checkbox-text{color:#fff}.workout-days-selection{align-items:flex-start;flex-direction:column;gap:10px}.workout-day-checkboxes{display:flex;flex-wrap:nowrap;gap:2px;justify-content:center;margin:0 auto;max-width:350px;width:100%}.workout-day-label{align-items:center;aspect-ratio:1;background:#222;border:2px solid #444;border-radius:50%;cursor:pointer;display:flex;flex:1 1;justify-content:center;max-width:48px;min-width:32px;transition:all .2s ease}.workout-day-label:hover{border-color:#f59e0b;transform:scale(1.05)}.workout-day-label.selected{background:linear-gradient(135deg,#f59e0b,#ea580c);border-color:#f59e0b}.workout-day-checkbox{display:none}.workout-day-text{color:#888;font-size:.55rem;font-weight:600;text-transform:uppercase}.workout-day-label.selected .workout-day-text{color:#fff}.activities-summary{align-items:center;background:#f59e0b1a;border-radius:10px;display:flex;gap:8px;justify-content:center;margin-top:20px;padding:12px}.summary-count{color:#f59e0b;font-size:1.5rem;font-weight:700}.summary-text{color:#888;font-size:.9rem}.review-card{background:linear-gradient(135deg,#1a1a1a,#222);border:2px solid #333;border-radius:16px;gap:20px;padding:24px}.review-card,.review-header{display:flex;flex-direction:column}.review-header{align-items:center;gap:12px;text-align:center}.review-goal-emoji{filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));font-size:3rem}.review-titles{align-items:center;display:flex;flex-direction:column;gap:4px}.review-plan-title{color:#fff;font-size:1.3rem;font-weight:700;margin:0}.review-goal-type{color:#f59e0b;font-size:.85rem;font-weight:500}.review-label{color:#666;display:block;font-size:.75rem;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.review-goal-statement p{color:#ccc;font-size:.95rem;line-height:1.5;margin:0}.review-activity-list{display:flex;flex-wrap:wrap;gap:10px}.review-activity-item{align-items:center;background:#ffffff0d;border-radius:10px;display:flex;gap:8px;padding:10px 14px}.review-activity-emoji{font-size:1.2rem}.review-activity-name{color:#fff;font-size:.9rem;font-weight:500}.review-activity-freq{background:#ffffff0d;border-radius:6px;color:#888;font-size:.8rem;padding:2px 8px}.review-ai-note{align-items:center;background:linear-gradient(135deg,#f59e0b1a,#ea580c0d);border:1px solid #f59e0b33;border-radius:10px;display:flex;gap:10px;padding:12px 16px}.ai-sparkle{font-size:1.2rem}.review-ai-note p{color:#fbbf24;font-size:.85rem;margin:0}.wizard-navigation{border-top:1px solid #333;display:flex;gap:12px;justify-content:space-between;margin-top:auto;padding-top:20px}.btn-wizard-back{background:#0000;border:2px solid #444;border-radius:10px;color:#888;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-wizard-back:hover{border-color:#666;color:#fff}.btn-wizard-next{background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:10px;box-shadow:0 4px 15px #f59e0b4d;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;margin-left:auto;max-width:250px;padding:14px 24px;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.btn-wizard-next:hover:not(:disabled){box-shadow:0 8px 25px #f59e0b66;transform:translateY(-2px)}.btn-wizard-next:disabled{cursor:not-allowed;opacity:.5;transform:none}.wizard-creating{gap:30px;justify-content:center;min-height:400px}.creating-animation,.wizard-creating{align-items:center;display:flex;flex-direction:column}.creating-animation{gap:24px}.creating-spinner{animation:spin 1s linear infinite;border:4px solid #333;border-radius:50%;border-top-color:#f59e0b;height:60px;width:60px}.creating-icons{align-items:center;display:flex;flex-direction:column;gap:8px}.creating-icon{animation:bounce 1s ease-in-out infinite;font-size:2rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.creating-text{color:#888;font-size:1rem}.wizard-success{align-items:center;display:flex;flex-direction:column;gap:24px;justify-content:center;min-height:400px;text-align:center}.success-animation{height:100px;position:relative;width:100px}.success-circle{align-items:center;animation:successPop .5s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;box-shadow:0 10px 40px #10b98166;display:flex;height:100%;justify-content:center;width:100%}@keyframes successPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.success-check{animation:checkDraw .3s ease-out .3s both;color:#fff;font-size:3rem}@keyframes checkDraw{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.success-sparkles{inset:-30px;position:absolute}.success-sparkle{animation:sparkleFloat 1s ease-out forwards;animation-delay:var(--delay);font-size:1.5rem;opacity:0;position:absolute}.success-sparkle:first-child{left:50%;top:0}.success-sparkle:nth-child(2){right:0;top:20%}.success-sparkle:nth-child(3){bottom:20%;right:10%}.success-sparkle:nth-child(4){bottom:0;left:30%}.success-sparkle:nth-child(5){left:0;top:30%}@keyframes sparkleFloat{0%{opacity:0;transform:scale(0) translateY(0)}50%{opacity:1;transform:scale(1) translateY(-10px)}to{opacity:0;transform:scale(.5) translateY(-20px)}}.success-title{color:#fff;font-size:1.8rem;font-weight:700;margin:0}.success-message{color:#888;font-size:1rem;margin:0}.success-actions{margin-top:10px}.btn-success-primary{background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:12px;box-shadow:0 4px 20px #f59e0b66;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px 40px;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.btn-success-primary:hover{box-shadow:0 8px 30px #f59e0b80;transform:translateY(-3px)}@media (max-width:480px){.goals-grid{grid-template-columns:1fr}.goal-card{flex-direction:row;padding:16px;text-align:left}.goal-emoji{font-size:2rem;margin-bottom:0;margin-right:12px}.goal-description{display:block}.wizard-navigation{flex-direction:column}.btn-wizard-next{max-width:none;width:100%}.activity-frequency{flex-wrap:wrap}}.social-activity-feed{display:flex;flex-direction:column;overflow-x:auto;padding-bottom:400px;width:100%}.dojo-compliance-banner{align-items:flex-start;animation:pulse-banner 2s infinite;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:12px;box-shadow:0 4px 15px #ee5a244d;color:#fff;display:flex;gap:12px;margin-bottom:16px;padding:16px 20px}@keyframes pulse-banner{0%,to{box-shadow:0 4px 15px #ee5a244d;transform:scale(1)}50%{box-shadow:0 4px 20px #ee5a2480;transform:scale(1.005)}}.dojo-compliance-banner-icon{flex-shrink:0;font-size:2rem}.dojo-compliance-banner-content{flex:1 1}.dojo-compliance-banner-content strong{display:block;font-size:1.1rem;margin-bottom:4px}.dojo-compliance-banner-content p{font-size:.9rem;margin:0 0 8px;opacity:.95}.dojo-compliance-violations{font-size:.85rem;margin:8px 0 0;padding-left:20px}.dojo-compliance-violations li{margin:4px 0;opacity:.9}.dojo-compliance-banner-btn{align-self:center;background:#fff3;border:1px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-weight:500;padding:10px 16px;transition:all .2s}.dojo-compliance-banner-btn:hover{background:#ffffff4d;border-color:#fff9}.social-feed-empty,.social-feed-loading{align-items:center;color:#9ca3af;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.social-feed-loading{opacity:0;transition:opacity .15s ease-in}.social-feed-loading.visible{opacity:1}.social-feed-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-radius:50%;border-top-color:#3b82f6;height:32px;margin-bottom:12px;width:32px}.social-feed-empty p{font-size:1.1rem;margin:0}.social-feed-empty-hint{color:#6b7280;font-size:.9rem!important;margin-top:8px!important}.social-feed-empty-action{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #3b82f64d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:16px;padding:10px 20px;transition:all .2s ease}.social-feed-empty-action:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.social-feed-empty-action:active{transform:translateY(0)}.swim-lanes-header{background:#1a1a1a;border-bottom:1px solid #333;display:flex;padding:8px 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.swim-lane-date-spacer{flex-shrink:0;min-width:90px}.swim-lane-user-header{align-items:center;display:flex;flex-direction:column;gap:6px;max-width:100px;min-width:80px;padding:8px 4px}.swim-lane-avatar{object-fit:cover}.swim-lane-avatar,.swim-lane-avatar-placeholder{border:2px solid #333;border-radius:50%;height:40px;width:40px}.swim-lane-avatar-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;font-size:16px;font-weight:600;justify-content:center}.swim-lane-user-name{color:#9ca3af;font-size:.7rem;max-width:80px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.swim-lanes-body{display:flex;flex-direction:column}.swim-lane-date-row{border-bottom:1px solid #2a2a2a}.swim-lane-day-header{background:#1f1f1f;color:#9ca3af;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.swim-lanes-row{display:flex;margin-left:90px;min-height:50px;padding:8px 0}.swim-lane-cell{gap:6px;max-width:100px;min-width:80px;padding:4px}.mini-activity-card,.swim-lane-cell{align-items:center;display:flex;flex-direction:column}.mini-activity-card{background:#262626;border:2px solid #0000;border-radius:10px;cursor:pointer;height:48px;justify-content:center;position:relative;transition:all .15s ease;width:48px}.mini-activity-card:hover{background:#333;transform:scale(1.1);z-index:5}.mini-activity-card.has-linked{border-color:#8b5cf6}.mini-activity-card.has-linked:hover{box-shadow:0 0 12px #8b5cf666}.mini-activity-icon{font-size:1.25rem}.mini-activity-points{color:#10b981;font-size:.6rem;font-weight:600;margin-top:2px}.mini-activity-link-indicator{background:#1a1a1a;border-radius:50%;font-size:.7rem;padding:2px;position:absolute;right:-4px;top:-4px}.activity-detail-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}.activity-detail-popover{background:#1f1f1f;border:1px solid #333;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:360px;padding:20px;position:relative;width:100%}.activity-detail-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;line-height:1;padding:4px;position:absolute;right:12px;top:12px}.activity-detail-close:hover{color:#e5e7eb}.activity-detail-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.activity-detail-avatar{border-radius:50%;height:48px;object-fit:cover;width:48px}.activity-detail-avatar-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;color:#fff;display:flex;font-size:20px;font-weight:600;height:48px;justify-content:center;width:48px}.activity-detail-user-info{display:flex;flex-direction:column;gap:2px}.activity-detail-user-name{color:#e5e7eb;font-size:1rem;font-weight:600}.activity-detail-time{color:#6b7280;font-size:.8rem}.activity-detail-body{border-top:1px solid #333;padding-top:12px}.activity-detail-type{align-items:center;display:flex;gap:10px;margin-bottom:12px}.activity-detail-icon{font-size:1.5rem}.activity-detail-name{color:#e5e7eb;flex:1 1;font-size:1rem;font-weight:500}.activity-detail-points{background:#10b98126;border-radius:12px;color:#10b981;font-size:.85rem;font-weight:600;padding:4px 8px}.activity-detail-stats{display:flex;gap:20px;margin-top:12px}.activity-detail-stats .stat{align-items:center;display:flex;flex-direction:column;gap:2px}.activity-detail-stats .stat-value{color:#e5e7eb;font-size:1.25rem;font-weight:700}.activity-detail-stats .stat-label{color:#6b7280;font-size:.75rem}@media (max-width:600px){.swim-lane-user-header{max-width:70px;min-width:60px}.swim-lane-avatar,.swim-lane-avatar-placeholder{font-size:14px;height:32px;width:32px}.swim-lane-cell{max-width:70px;min-width:60px}.mini-activity-card{height:40px;width:40px}.mini-activity-icon{font-size:1rem}.swim-lanes-row{margin-left:70px}.swim-lane-date-spacer{min-width:70px}}.activity-detail-modal{background:#1f1f1f;border:1px solid #333;border-radius:16px;box-shadow:0 20px 40px #00000080;max-height:85vh;max-width:500px;overflow-y:auto;padding:24px;position:relative;width:100%}.activity-detail-error,.activity-detail-loading{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:40px 20px}.activity-detail-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-radius:50%;border-top-color:#3b82f6;height:24px;width:24px}.activity-detail-type-header{align-items:center;border-bottom:1px solid #333;display:flex;gap:10px;margin-bottom:16px;padding-bottom:12px}.social-activity-content{padding:12px 0}.nutrition-summary{background:#262626;border-radius:12px;display:flex;justify-content:space-around;margin-bottom:16px;padding:16px}.nutrition-item{align-items:center;display:flex;flex-direction:column;gap:4px}.nutrition-value{color:#e5e7eb;font-size:1.25rem;font-weight:700}.nutrition-label{color:#6b7280;font-size:.7rem;text-transform:uppercase}.exercises-list h4,.foods-list h4{color:#9ca3af;font-size:.8rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.food-item{align-items:center;background:#262626;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:6px;padding:10px 12px}.food-name{color:#e5e7eb;flex:1 1;font-size:.9rem;margin-right:12px}.food-quantity{color:#9ca3af;font-size:.85rem;white-space:nowrap}.volume-summary{align-items:center;background:#262626;border-radius:12px;display:flex;flex-direction:column;margin-bottom:16px;padding:20px}.volume-value{color:#e5e7eb;font-size:1.75rem;font-weight:700}.volume-label{color:#6b7280;font-size:.75rem;margin-top:4px;text-transform:uppercase}.exercise-item{background:#262626;border-radius:8px;display:flex;flex-direction:column;margin-bottom:8px;padding:12px}.exercise-name{color:#e5e7eb;font-size:.9rem;font-weight:500;margin-bottom:6px}.exercise-sets{color:#9ca3af;font-size:.8rem}.set-details{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.set-info{background:#333;border-radius:4px;color:#d1d5db;font-size:.75rem;padding:3px 8px}.media-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.media-item{aspect-ratio:1;background:#262626;border-radius:8px;overflow:hidden}.media-image,.media-video{height:100%;object-fit:cover;width:100%}.media-placeholder{align-items:center;color:#6b7280;display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.no-media,.no-metrics,.no-responses{color:#6b7280;font-size:.9rem;padding:20px;text-align:center}.metrics-list{display:flex;flex-direction:column;gap:8px}.metric-entry{align-items:center;background:#262626;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.metric-name{color:#e5e7eb;font-size:.9rem}.metric-value{color:#3b82f6;font-size:1rem;font-weight:600}.survey-responses{display:flex;flex-direction:column;gap:12px}.survey-response{background:#262626;border-radius:8px;padding:12px}.survey-question{color:#9ca3af;display:block;font-size:.85rem;margin-bottom:6px}.survey-answer{color:#e5e7eb;display:block;font-size:.95rem}.swim-lane-user-header.clickable{cursor:pointer;transition:all .2s ease}.swim-lane-user-header.clickable:hover{transform:translateY(-2px)}.swim-lane-user-header.clickable:hover .swim-lane-avatar,.swim-lane-user-header.clickable:hover .swim-lane-avatar-placeholder{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f666}.swim-lane-user-header.clickable:hover .swim-lane-user-name{color:#3b82f6}.social-profile-modal{box-sizing:border-box;color:#ddd;display:flex;flex-direction:column;height:100%;max-height:calc(100vh - 40px);max-width:450px;padding:20px;width:100%}.social-profile-modal-header h2{color:#fff;flex-shrink:0;font-size:1.5rem;margin:0 0 15px;text-align:center}.social-profile-modal-footer{border-top:1px solid #444;flex-shrink:0;margin-top:auto;padding-top:15px}.social-profile-error,.social-profile-loading{align-items:center;color:#9ca3af;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.social-profile-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-radius:50%;border-top-color:#3b82f6;height:32px;margin-bottom:12px;width:32px}.social-profile-content{display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding-right:5px}.social-profile-header{align-items:center;display:flex;gap:16px}.social-profile-avatar{object-fit:cover}.social-profile-avatar,.social-profile-avatar-placeholder{border:3px solid #333;border-radius:50%;height:64px;width:64px}.social-profile-avatar-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;font-size:24px;font-weight:600;justify-content:center}.social-profile-info{flex:1 1}.social-profile-info h3{color:#f3f4f6;font-size:1.2rem;margin:0 0 4px}.social-profile-relationship{color:#9ca3af;font-size:.85rem;margin:0 0 4px}.social-profile-member-since{color:#6b7280;font-size:.8rem;margin:0}.social-profile-badge-section{text-align:center}.social-profile-badge-section h4{color:#9ca3af;font-size:.9rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.social-profile-badge-container{display:flex;justify-content:center}.social-profile-stats{display:flex;flex-direction:column;gap:16px}.social-profile-stats h4{border-bottom:1px solid #333;color:#9ca3af;font-size:.9rem;letter-spacing:.5px;margin:0 0 8px;padding-bottom:8px;text-transform:uppercase}.social-profile-stat-group{display:flex;flex-direction:column;gap:8px}.social-profile-stat-group h5{color:#d1d5db;font-size:.85rem;font-weight:500;margin:0}.social-profile-stat-row{align-items:center;background:#262626;border-radius:6px;display:flex;font-size:.85rem;justify-content:space-between;padding:8px 12px}.social-profile-stat-row span:first-child{color:#9ca3af}.social-profile-stat-row .stat-value{color:#3b82f6;font-weight:600}.social-profile-stat-row .stat-value-time{color:#9ca3af;font-weight:500}.social-profile-status-section{background:#1f1f1f;border:1px solid #333;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}.social-profile-online-status{align-items:center;display:flex;gap:8px}.online-indicator{border-radius:50%;flex-shrink:0;height:10px;width:10px}.online-indicator.online{animation:pulse-online 2s infinite;background:#22c55e;box-shadow:0 0 8px #22c55e99}.online-indicator.offline{background:#6b7280}@keyframes pulse-online{0%,to{box-shadow:0 0 8px #22c55e99}50%{box-shadow:0 0 16px #22c55ee6}}.status-text{color:#d1d5db;font-size:.85rem}.social-profile-current-activity{align-items:center;background:linear-gradient(135deg,#059669,#10b981);border-radius:6px;color:#fff;display:flex;font-size:.85rem;font-weight:500;gap:8px;padding:8px 12px}.activity-pulse{animation:activity-pulse 1s infinite;background:#fff;border-radius:50%;height:8px;width:8px}@keyframes activity-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.current-activity-text{flex:1 1}.social-modal{box-sizing:border-box;color:#ddd;display:flex;flex-direction:column;height:100%;max-height:calc(100vh - 40px);max-width:800px;padding:20px;width:100%}.you-indicator{color:#4fc3f7;font-size:.85em;font-weight:400;opacity:.9}.social-avatar-clickable,.social-avatar-wrapper{display:inline-block;position:relative}.avatar-online-indicator{border:2px solid #1a1a2e;border-radius:50%;bottom:2px;height:12px;position:absolute;right:2px;width:12px}.avatar-online-indicator.online{background:#22c55e;box-shadow:0 0 6px #22c55e99}.avatar-online-indicator.working-out{animation:pulse-workout 1.5s infinite;background:#ef4444;box-shadow:0 0 6px #ef444499}@keyframes pulse-workout{0%,to{box-shadow:0 0 6px #ef444499}50%{box-shadow:0 0 12px #ef4444e6}}.avatar-online-indicator.offline{background:#6b7280}.social-modal-header h2{color:#fff;flex-shrink:0;font-size:1.5rem;margin:0 0 15px;text-align:center}.social-tabs{border-bottom:1px solid #444;display:flex;flex-shrink:0;gap:2px;margin-bottom:10px;padding-bottom:10px;width:100%}.social-tab{align-items:center;background:#0000;border:none;border-radius:8px 8px 0 0;color:#888;cursor:pointer;display:flex;flex:1 1;font-size:.85rem;gap:4px;justify-content:center;min-width:0;overflow:hidden;padding:10px 6px;transition:all .2s;white-space:nowrap}.social-tab:hover{background:#ffffff0d;color:#ddd}.social-tab.active{background:#404040;color:#fff}.request-badge{background:#e74c3c;border-radius:10px;color:#fff;font-size:.7rem;min-width:16px;padding:2px 6px;text-align:center}.tab-count{color:inherit;font-size:.8rem}.social-modal-body{flex:1 1;overflow-y:auto}.conversations-fullscreen,.social-modal-body{display:flex;flex-direction:column;min-height:0}.conversations-fullscreen{flex:1 1}.conversations-header{align-items:center;border-bottom:1px solid #444;display:flex;justify-content:space-between;padding:10px 15px}.conversations-header h3{color:#fff;font-size:1rem;margin:0}.new-chat-btn{align-items:center;background:#3498db;border:none;border-radius:15px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;gap:5px;padding:6px 12px;transition:background .2s}.new-chat-btn:hover{background:#2980b9}.conversations-list-full{flex:1 1;overflow-y:auto}.no-conversations-hint{color:#888;font-size:.9rem;padding:30px 20px;text-align:center}.new-conversation{align-items:center;border-bottom:1px solid #333;cursor:pointer;display:flex;gap:12px;padding:12px 15px;transition:background .2s}.new-conversation:hover{background:#404040}.new-conversation .friend-avatar{align-items:center;background:#555;border-radius:50%;color:#fff;display:flex;font-size:1.2rem;height:40px;justify-content:center;overflow:hidden;width:40px}.new-conversation .friend-avatar img{height:100%;object-fit:cover;width:100%}.new-conversation .friend-name{color:#fff;flex:1 1;font-size:.95rem}.new-conversation .start-chat-hint{color:#888;font-size:.8rem}.chat-fullscreen{display:flex;flex:1 1;flex-direction:column;min-height:0}.chat-back-btn{align-items:center;background:none;border:none;color:#888;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:5px;transition:color .2s}.chat-back-btn:hover{color:#fff}.conversations-list-full .conversation-item{align-items:center;border-bottom:1px solid #333;cursor:pointer;display:flex;gap:10px;padding:12px 15px;transition:background .2s}.conversations-list-full .conversation-item:hover{background:#404040}.messages-container{display:flex;flex-direction:column;height:100%}.conversations-list{border-right:1px solid #444;display:flex;flex-direction:column;max-height:450px;overflow-y:auto;padding-right:15px}.conversations-header h4{color:#888;font-size:.85rem;margin:0 0 10px;text-transform:uppercase}.no-conversations{align-items:center;color:#666;display:flex;flex-direction:column;gap:15px;justify-content:center;padding:30px}.conversation-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:10px;transition:background .2s}.conversation-item:hover{background:#333}.conversation-item.selected{background:#404040}.conversation-info{flex:1 1;min-width:0}.conversation-name{align-items:center;color:#fff;display:flex;font-size:.9rem;font-weight:500;gap:6px}.unread-badge{background:#3498db;border-radius:8px;color:#fff;font-size:.65rem;min-width:14px;padding:2px 5px;text-align:center}.conversation-preview{color:#888;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-preview.new-chat{color:#666;font-style:italic}.you-prefix{color:#666}.conversation-time{color:#666;font-size:.7rem}.chat-area{display:flex;flex:1 1;flex-direction:column;min-height:0}.no-chat-selected{color:#666;height:100%;justify-content:center}.chat-header,.no-chat-selected{align-items:center;display:flex}.chat-header{border-bottom:1px solid #444;gap:10px;padding:10px}.chat-name{color:#fff;font-weight:500}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:10px;overflow-y:auto;padding:15px}.no-messages{align-items:center;color:#666;display:flex;height:100%;justify-content:center}.message{border-radius:16px;max-width:70%;padding:10px 14px;position:relative}.message.sent{align-self:flex-end;background:#3498db;border-bottom-right-radius:4px;color:#fff}.message.received{align-self:flex-start;background:#404040;border-bottom-left-radius:4px;color:#fff}.message-content{word-wrap:break-word;font-size:.95rem;line-height:1.4}.message-time{font-size:.65rem;margin-top:4px;opacity:.7;text-align:right}.chat-input-form{border-top:1px solid #444;display:flex;gap:10px;padding:10px}.chat-input{background:#404040;border:1px solid #555;border-radius:20px;color:#fff;flex:1 1;font-size:.95rem;padding:12px 15px}.chat-input:focus{border-color:#3498db;outline:none}.chat-input::placeholder{color:#888}.send-btn{align-items:center;background:#3498db;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:44px;justify-content:center;transition:background .2s;width:44px}.send-btn:hover:not(:disabled){background:#2980b9}.send-btn:disabled{background:#555;cursor:not-allowed}.friends-list-container{flex:1 1;min-height:0;overflow-y:auto}.no-friends{align-items:center;color:#666;display:flex;flex-direction:column;gap:15px;height:200px;justify-content:center}.friends-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.friend-card{align-items:center;background:#333;border-radius:10px;display:flex;gap:12px;padding:12px}.friend-card-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.friend-card-name{color:#fff;font-weight:500}.friend-card-email,.friend-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-card-email{color:#888;font-size:.8rem}.friend-card-actions{display:flex;gap:6px}.requests-container{display:flex;flex:1 1;flex-direction:column;gap:20px;min-height:0;overflow-y:auto}.requests-section h4{color:#aaa;font-size:.95rem;margin:0 0 10px}.requests-empty{color:#666;font-style:italic;padding:10px}.request-item{align-items:center;background:#333;border-radius:8px;display:flex;gap:12px;padding:10px}.request-info{flex:1 1;min-width:0}.request-name{color:#fff;font-weight:500}.request-actions{display:flex;gap:8px}.search-container{display:flex;flex:1 1;flex-direction:column;gap:15px;min-height:0;overflow-y:auto}.search-input{background:#404040;border:1px solid #555;border-radius:8px;box-sizing:border-box;color:#fff;font-size:1rem;padding:12px 15px;width:100%}.search-input:focus{border-color:#666;outline:none}.search-input::placeholder{color:#888}.search-empty,.search-loading{color:#888;padding:20px;text-align:center}.search-results{display:flex;flex-direction:column;gap:8px}.search-result-item{align-items:center;background:#333;border-radius:8px;display:flex;gap:12px;padding:10px}.search-result-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.search-result-name{color:#fff;font-weight:500}.search-result-email{color:#888;font-size:.8rem}.search-result-actions{flex-shrink:0}.friendship-status{font-size:.85rem;padding:5px 10px}.friendship-status.friends{color:#27ae60}.social-avatar{border-radius:50%;object-fit:cover}.social-avatar-placeholder{align-items:center;background:#555;border-radius:50%;color:#fff;display:flex;font-size:1rem;font-weight:600;justify-content:center}.social-avatar-clickable{border-radius:50%;cursor:pointer;display:inline-flex;transition:all .2s ease}.social-avatar-clickable:hover{transform:scale(1.08)}.social-avatar-clickable:hover .social-avatar,.social-avatar-clickable:hover .social-avatar-placeholder{border:2px solid #3b82f6;box-shadow:0 2px 8px #3b82f680}.social-btn{background:#404040;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;padding:8px 14px;transition:all .2s;white-space:nowrap}.social-btn:hover:not(:disabled){background:#4a4a4a}.social-btn:disabled{cursor:not-allowed;opacity:.6}.social-btn.small{font-size:.8rem;padding:5px 10px}.social-btn.primary{background:#3498db;border-color:#3498db}.social-btn.primary:hover:not(:disabled){background:#2980b9}.social-btn.danger{background:#0000;border-color:#e74c3c;color:#e74c3c}.social-btn.danger:hover:not(:disabled){background:#e74c3c;color:#fff}.social-modal-footer{border-top:1px solid #444;display:flex;flex-shrink:0;justify-content:center;margin-top:10px;padding-top:10px}.social-close-btn{background:#404040;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 30px;transition:all .2s}.social-close-btn:hover{background:#4a4a4a}.dojo-empty-state{display:flex;flex:1 1;flex-direction:column;gap:20px;min-height:0;overflow-y:auto;padding:20px 0}.dojo-no-dojo{align-items:center;display:flex;flex-direction:column;padding:30px;text-align:center}.dojo-icon{font-size:3rem;margin-bottom:10px}.dojo-no-dojo h3{color:#fff;margin:0 0 8px}.dojo-no-dojo p{color:#888;margin:0 0 20px}.dojo-no-dojo-actions{display:flex;gap:12px}.dojo-invites-section,.dojo-members-section,.dojo-requests-section{background:#2a2a2a;border-radius:10px;padding:15px}.dojo-invites-section h4,.dojo-members-section h4,.dojo-requests-section h4{color:#fff;font-size:.95rem;margin:0 0 12px}.dojo-invite-item,.dojo-request-item{align-items:center;background:#333;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px}.dojo-invite-item:last-child,.dojo-request-item:last-child{margin-bottom:0}.dojo-invite-info,.dojo-request-info{display:flex;flex-direction:column;gap:2px}.dojo-invite-name{color:#fff;font-weight:500}.dojo-invite-from{color:#888;font-size:.8rem}.dojo-invite-actions,.dojo-request-actions{display:flex;gap:8px}.dojo-create-container,.dojo-find-container{display:flex;flex:1 1;flex-direction:column;gap:15px;min-height:0;overflow-y:auto}.dojo-create-header,.dojo-find-header{align-items:center;display:flex;gap:12px}.dojo-create-header h4,.dojo-find-header h4{color:#fff;margin:0}.dojo-search-bar{display:flex;gap:10px}.dojo-search-bar input{background:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;flex:1 1;font-size:.95rem;padding:10px 14px}.dojo-search-bar input:focus{border-color:#3498db;outline:none}.dojo-results{display:flex;flex-direction:column;gap:10px}.dojo-empty,.dojo-loading{color:#666;padding:30px;text-align:center}.dojo-result-item{background:#2a2a2a;gap:12px;padding:12px}.dojo-result-emoji,.dojo-result-item{align-items:center;border-radius:10px;display:flex}.dojo-result-emoji{background:#333;flex-shrink:0;font-size:1.8rem;height:50px;justify-content:center;width:50px}.dojo-result-emoji img{border-radius:10px;height:100%;object-fit:cover;width:100%}.dojo-result-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.dojo-result-name{color:#fff;font-weight:500}.dojo-result-desc{color:#888;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dojo-result-meta{color:#666;font-size:.8rem}.dojo-result-actions{flex-shrink:0}.dojo-pending-badge{background:#3a3a2e;border-radius:6px;color:#fa0;font-size:.85rem;padding:8px 14px}.dojo-create-form{display:flex;flex-direction:column;gap:15px}.dojo-form-group{display:flex;flex-direction:column;gap:6px}.dojo-form-group label{color:#888;font-size:.85rem}.dojo-form-group input,.dojo-form-group select,.dojo-form-group textarea{background:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;font-size:.95rem;padding:10px 12px}.dojo-form-group input:focus,.dojo-form-group select:focus,.dojo-form-group textarea:focus{border-color:#3498db;outline:none}.dojo-form-group textarea{min-height:70px;resize:vertical}.dojo-form-row{display:flex;gap:12px}.dojo-form-row .dojo-form-group{flex:1 1;min-width:0}.dojo-form-actions{display:flex;gap:10px;margin-top:5px}.dojo-my-container{display:flex;flex:1 1;flex-direction:column;gap:15px;min-height:0;overflow-y:auto;position:relative}.dojo-settings-overlay{align-items:center;background:#000c;border-radius:10px;display:flex;inset:0;justify-content:center;position:absolute;z-index:10}.dojo-settings-form{background:#2a2a2a;border-radius:12px;display:flex;flex-direction:column;gap:12px;max-width:300px;padding:20px;width:90%}.dojo-settings-form h4{color:#fff;margin:0 0 5px}.dojo-header{align-items:flex-start;display:flex;gap:15px}.dojo-header-emoji{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:14px;display:flex;flex-shrink:0;font-size:2.2rem;height:70px;justify-content:center;width:70px}.dojo-header-info{flex:1 1}.dojo-header-info h3{color:#fff;font-size:1.2rem;margin:0 0 5px}.dojo-header-info p{color:#888;font-size:.9rem;margin:0 0 10px}.dojo-header-meta{display:flex;flex-wrap:wrap;font-size:.8rem;gap:12px}.dojo-member-count,.dojo-visibility-badge{color:#888}.dojo-role-badge{background:#333;border-radius:12px;color:#3498db;padding:2px 10px}.dojo-compliance-warning{align-items:center;animation:pulse-warning 2s infinite;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:6px;color:#fff;display:flex;font-size:.85rem;font-weight:500;gap:6px;margin-top:8px;padding:8px 12px;width:100%}.dojo-compliance-warning.clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.dojo-compliance-warning.clickable:hover{box-shadow:0 4px 12px #ee5a2466;transform:scale(1.02)}.dojo-compliance-warning.clickable:after{content:"↓";font-size:1rem;margin-left:auto}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.85}}.requirements-summary ul li{align-items:center;display:flex;gap:10px;justify-content:space-between}.requirements-summary ul li .req-label{flex:1 1}.requirements-summary ul li.req-compliant{color:#4ade80}.requirements-summary ul li.req-not-compliant{color:#f87171}.compliance-indicator{font-size:.8rem;padding:2px 6px;white-space:nowrap}.compliance-indicator.compliant{color:#4ade80}.compliance-indicator.not-compliant{background:#f8717133;color:#f87171}.overall-compliance-status{border-radius:8px;font-weight:500;margin-top:15px;padding:12px 15px;text-align:center}.overall-compliance-status.compliant{background:#4ade8026;border:1px solid #4ade804d;color:#4ade80}.overall-compliance-status.non-compliant{background:#f8717126;border:1px solid #f871714d;color:#f87171}.dojo-ai-settings{align-items:center;background:#2a2a2a;border-radius:10px;color:#888;display:flex;font-size:.9rem;gap:15px;padding:12px 15px}.dojo-ai-settings button{margin-left:auto}.dojo-members-header{align-items:center;display:flex;justify-content:space-between}.invite-panel{background:#333;border:1px solid #444;border-radius:10px;margin:10px 0;padding:15px}.invite-panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.invite-panel-header h5{color:#fff;font-size:1rem;margin:0}.invite-panel-header .close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.invite-panel-header .close-btn:hover{color:#fff}.invite-section{margin-bottom:15px}.invite-section:last-child{margin-bottom:0}.invite-section label{color:#888;display:block;font-size:.85rem;margin-bottom:8px}.invite-email-row,.invite-link-row{display:flex;gap:8px}.invite-email-input,.invite-link-input{background:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;flex:1 1;font-size:.85rem;padding:8px 12px}.invite-email-input:focus,.invite-link-input:focus{border-color:#4a9eff;outline:none}.invite-friends-list{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto}.invite-friend-item{align-items:center;background:#2a2a2a;border-radius:6px;display:flex;gap:10px;padding:8px}.invite-friend-item span{color:#fff;flex:1 1;font-size:.9rem}.invite-friend-item .social-btn{font-size:.75rem;padding:4px 10px}.no-friends-message{color:#888;font-size:.85rem;font-style:italic;padding:10px;text-align:center}.dojo-members-list{display:flex;flex-direction:column;gap:8px}.dojo-member-item{align-items:center;background:#333;border-radius:8px;display:flex;gap:10px;padding:10px}.dojo-member-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.dojo-member-name{color:#fff;font-size:.95rem}.dojo-member-role{color:#888;font-size:.8rem}.dojo-member-actions{align-items:center;display:flex;gap:8px}.dojo-member-actions select{background:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:.8rem;padding:5px 8px}.dojo-actions{border-top:1px solid #444;display:flex;justify-content:center;padding-top:10px}.dojo-requirements-button-section{display:flex;justify-content:center;margin:15px 0}.requirements-btn{align-items:center;display:flex;font-size:.95rem;gap:8px;padding:10px 20px}.requirements-btn.warning{background:linear-gradient(135deg,#e74c3c22,#e74c3c11);border-color:#e74c3c}.requirements-warning-badge{font-size:1rem}.dojo-requirements-section{background:#2a2a3e;border:1px solid #3a3a5a;border-radius:8px;margin-top:15px;padding:15px}.dojo-requirements-section h4{color:#fff;font-size:1rem;margin:0 0 12px}.requirements-summary{margin-bottom:12px}.requirements-summary .req-item{margin-bottom:10px}.requirements-summary .req-item span{color:#aaa;font-weight:500}.requirements-summary .req-item ul{list-style:disc;margin:5px 0 0 20px;padding:0}.requirements-summary .req-item li{color:#ddd;font-size:.9rem;margin:3px 0}.requirements-summary .no-requirements{color:#888;font-style:italic;margin:0}.requirements-summary .grace-period{color:#888;font-size:.85rem;margin-top:10px}.edit-requirements-btn{margin-top:10px}.dojo-requirements-form{border-top:1px solid #444;margin-top:15px;padding-top:15px}.dojo-requirements-form .req-section{border-bottom:1px solid #3a3a5a;margin-bottom:20px;padding-bottom:15px}.dojo-requirements-form .req-section:last-of-type{border-bottom:none}.dojo-requirements-form h5{color:#fff;font-size:.95rem;margin:0 0 10px}.dojo-requirements-form .req-hint{color:#888;font-size:.85rem;margin:0 0 10px}.dojo-requirements-form .checkbox-label{align-items:center;color:#ddd;cursor:pointer;display:flex;gap:8px;margin:8px 0}.dojo-requirements-form .checkbox-label input[type=checkbox]{accent-color:#6c5ce7;height:16px;width:16px}.dojo-requirements-form .form-group{margin:10px 0}.dojo-requirements-form .form-group label{color:#aaa;display:block;font-size:.85rem;margin-bottom:5px}.dojo-requirements-form .form-group.inline{align-items:center;color:#ddd;display:flex;gap:8px;margin-left:24px}.dojo-requirements-form .form-group.inline input{width:70px}.dojo-requirements-form input[type=number],.dojo-requirements-form select{background:#1a1a2e;border:1px solid #444;border-radius:4px;color:#fff;font-size:.9rem;padding:8px 10px}.dojo-requirements-form input[type=number]:focus,.dojo-requirements-form select:focus{border-color:#6c5ce7;outline:none}.dojo-requirements-form .form-actions{display:flex;gap:10px;margin-top:15px}.conversation-item.dojo-conversation{background:linear-gradient(135deg,#2a2a3e,#1a1a2e);border:1px solid #4a4a6a}.dojo-conversation-avatar{align-items:center;background:#3a3a5a;border-radius:50%;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.dojo-emoji-large{font-size:24px}.dojo-badge{background:#6366f1;border-radius:4px;color:#fff;font-size:.65rem;font-weight:600;margin-left:8px;padding:2px 6px;text-transform:uppercase}.dojo-chat-emoji{font-size:24px;margin-right:8px}.dojo-chat-member-count{color:#888;font-size:.85rem;margin-left:8px}.dojo-message-sender{color:#6366f1;font-size:.75rem;font-weight:600;margin-bottom:2px}.dojo-chat-section{border-top:1px solid #333;padding:15px}.dojo-chat-btn{align-items:center;display:flex;flex-direction:column;gap:8px;padding:15px;width:100%}.dojo-chat-preview{color:#ffffffb3;font-size:.8rem;font-weight:400}.gym-search-container{display:flex;flex-direction:column;gap:15px;height:100%}.gym-filter-section{align-items:center;background:#2a2a2a;border-radius:8px;display:flex;gap:10px;padding:12px}.gym-filter-label{color:#aaa;font-size:.9rem;white-space:nowrap}.gym-filter-select{background:#1e1e1e;border:1px solid #444;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:.95rem;padding:8px 12px}.gym-filter-select:focus{border-color:#667eea;outline:none}.gym-search-empty{color:#888;padding:40px 20px;text-align:center}.gym-search-empty p{margin:5px 0}.gym-search-empty p:first-child{color:#aaa;font-size:1.1rem}.gym-search-hint{color:#666;font-size:.85rem}.search-result-item.gym-result{padding:12px}.gym-stats-info{align-items:center;color:#888;display:flex;flex-wrap:wrap;font-size:.8rem;gap:6px}.gym-name-badge{background:#667eea33;border-radius:4px;color:#667eea;font-size:.75rem;padding:2px 6px}.join-confirm-overlay{align-items:center;background:#000c;border-radius:inherit;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.join-confirm-modal{background:#2a2a2a;border:1px solid #444;border-radius:12px;max-height:80%;max-width:450px;overflow-y:auto;padding:24px;width:90%}.join-confirm-modal h3{color:#fff;font-size:1.3rem;margin:0 0 16px;text-align:center}.join-requirements-section{background:#1e1e1e;border-radius:8px;margin-bottom:16px;padding:16px}.join-requirements-section h4{color:#667eea;font-size:1rem;margin:0 0 12px}.join-req-category{margin-bottom:12px}.join-req-category:last-child{margin-bottom:0}.join-req-label{color:#aaa;display:block;font-size:.9rem;margin-bottom:6px}.join-req-category ul{color:#ccc;font-size:.85rem;margin:0;padding-left:20px}.join-req-category li{margin-bottom:4px}.join-eligible-status{border-radius:8px;margin-bottom:16px;padding:12px 16px}.join-eligible-status.success{background:#2ecc7126;border:1px solid #2ecc714d;color:#2ecc71;font-weight:500;text-align:center}.join-eligible-status.warning{background:#f1c40f1a;border:1px solid #f1c40f4d}.join-eligible-status.warning p{color:#f1c40f;margin:0 0 10px}.join-eligible-status.warning ul{color:#e0e0e0;font-size:.9rem;margin:0;padding-left:20px}.join-eligible-status.warning li{margin-bottom:6px}.join-adjust-privacy{border-top:1px solid #f1c40f33;margin-top:16px;padding-top:16px}.join-adjust-checkbox{align-items:flex-start;cursor:pointer;display:flex;gap:10px}.join-adjust-checkbox input[type=checkbox]{accent-color:#667eea;flex-shrink:0;height:16px;margin-top:3px;width:16px}.join-adjust-checkbox span{color:#fff;font-size:.9rem}.join-privacy-changes{background:#667eea1a;border-radius:6px;margin-top:12px;padding:10px}.join-privacy-changes small{color:#888;display:block;margin-bottom:6px}.join-privacy-changes ul{color:#667eea;font-size:.85rem;margin:0;padding-left:18px}.join-privacy-changes li{margin-bottom:4px}.join-warning-note{background:#e74c3c1a;border-radius:4px;color:#e74c3c;font-size:.85rem;margin:12px 0 0;padding:8px}.join-confirm-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.join-confirm-buttons .social-btn{padding:10px 20px}.join-confirm-buttons .social-btn.primary{background:#667eea;border-color:#667eea}.join-confirm-buttons .social-btn.primary:hover:not(:disabled){background:#5a6fd6}.join-confirm-buttons .social-btn.primary:disabled{cursor:not-allowed;opacity:.5}.dojo-requirements-badge{align-items:center;background:#f1c40f26;border-radius:4px;color:#f1c40f;display:inline-flex;font-size:.75rem;gap:4px;margin-left:8px;padding:2px 8px}.friend-invite-section{background:linear-gradient(135deg,#4a9eff1a,#4a9eff0d);border:1px solid #4a9eff4d;border-radius:12px;margin-top:20px;padding:16px}.friend-invite-header{margin-bottom:12px}.friend-invite-title{color:#fff;font-size:.9rem;font-weight:600}.friend-invite-row{display:flex;gap:8px;margin-bottom:10px}.friend-invite-input{background:#2a2a2a;border:1px solid #444;border-radius:8px;color:#fff;flex:1 1;font-size:.9rem;padding:10px 14px}.friend-invite-input::placeholder{color:#888}.friend-invite-input:focus{border-color:#4a9eff;outline:none}.contact-picker-btn{align-items:center;background:#0000;border:1px dashed #555;color:#aaa;display:flex;font-size:.85rem;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s;width:100%}.contact-picker-btn:hover{background:#4a9eff1a;border-color:#4a9eff;color:#4a9eff}.dojo-requirements-modal{background:#1a1a1a;background:var(--modal-bg,#1a1a1a);border-radius:12px;color:#fff;color:var(--text-color,#fff);display:flex;flex-direction:column;max-height:85vh;max-width:500px;width:90vw}.dojo-requirements-modal-header{align-items:center;border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:16px 20px}.dojo-requirements-modal-header h2{font-size:1.25rem;margin:0}.dojo-requirements-modal-header .close-btn{background:none;border:none;color:#fff;color:var(--text-color,#fff);cursor:pointer;font-size:1.5rem;line-height:1;opacity:.7;padding:0;transition:opacity .2s}.dojo-requirements-modal-header .close-btn:hover{opacity:1}.dojo-requirements-modal-body{flex:1 1;overflow-y:auto;padding:20px}.dojo-requirements-modal-footer{border-top:1px solid #333;border-top:1px solid var(--border-color,#333);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.loading-spinner-container{align-items:center;color:#888;color:var(--text-secondary,#888);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:40px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #333;border-top-color:#3498db;border:3px solid var(--border-color,#333);border-radius:50%;border-top-color:var(--primary-color,#3498db);height:32px;width:32px}.overall-compliance-banner{border-radius:8px;font-weight:500;margin-bottom:20px;padding:12px 16px;text-align:center}.overall-compliance-banner.compliant{background:#2ecc7126;border:1px solid #2ecc714d;color:#2ecc71}.overall-compliance-banner.non-compliant{background:#e74c3c26;border:1px solid #e74c3c4d;color:#e74c3c}.requirements-display{display:flex;flex-direction:column;gap:20px}.req-category{background:#252525;background:var(--card-bg,#252525);border-radius:8px;padding:16px}.req-category h3{color:#fff;color:var(--text-color,#fff);font-size:1rem;margin:0 0 12px}.req-category .req-subtitle{color:#888;color:var(--text-secondary,#888);font-size:.85rem;margin:-8px 0 12px}.req-category ul{list-style:none;margin:0;padding:0}.req-category li{align-items:center;border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:8px 0}.req-category li:last-child{border-bottom:none}.req-label{flex:1 1}.compliance-indicator{border-radius:4px;font-size:.85rem;padding:2px 8px}.compliance-indicator.compliant{color:#2ecc71}.compliance-indicator.warning{background:#f1c40f26;color:#f1c40f}.compliance-indicator.not-compliant{background:#e74c3c26;color:#e74c3c}.req-compliant{background:#2ecc710d}.req-warning{background:#f1c40f14}.req-not-compliant{background:#e74c3c14}.no-requirements-message{color:#888;color:var(--text-secondary,#888);padding:30px;text-align:center}.no-requirements-message p{font-size:1.1rem;margin:0}.grace-period-info{background:#252525;background:var(--card-bg,#252525);border-radius:8px;color:#888;color:var(--text-secondary,#888);font-size:.9rem;padding:12px;text-align:center}.requirements-edit-form{display:flex;flex-direction:column;gap:20px}.req-edit-section{background:#252525;background:var(--card-bg,#252525);border-radius:8px;padding:16px}.req-edit-section h3{font-size:1rem;margin:0 0 12px}.req-edit-section .req-hint{color:#888;color:var(--text-secondary,#888);font-size:.85rem;margin:-8px 0 12px}.req-edit-options{display:flex;flex-direction:column;gap:8px;margin-left:24px}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:8px;padding:4px 0}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-group{align-items:center;gap:10px;margin-top:8px}.form-group label{color:#888;color:var(--text-secondary,#888);min-width:120px}.form-group input[type=number],.form-group select{background:#1a1a1a;background:var(--input-bg,#1a1a1a);border:1px solid #333;border:1px solid var(--border-color,#333);border-radius:6px;color:#fff;color:var(--text-color,#fff);flex:1 1;font-size:.95rem;padding:8px 12px}.form-group.inline{margin-left:26px}.form-group.inline input[type=number]{flex:none;width:80px}.modal-btn{background:#252525;background:var(--card-bg,#252525);border:1px solid #333;border:1px solid var(--border-color,#333);border-radius:6px;color:#fff;color:var(--text-color,#fff);cursor:pointer;font-size:.95rem;padding:10px 20px;transition:all .2s}.modal-btn:hover{background:#333;background:var(--border-color,#333)}.modal-btn.primary{background:#3498db;background:var(--primary-color,#3498db);border-color:#3498db;border-color:var(--primary-color,#3498db)}.modal-btn.primary:hover{filter:brightness(1.1)}.modal-btn:disabled{cursor:not-allowed;opacity:.6}.fix-privacy-section{background:#3498db1a;border:1px solid #3498db4d;border-radius:8px;margin-top:16px;padding:16px}.fix-privacy-description{color:#e0e0e0;font-size:.9rem;margin:0 0 12px}.fix-privacy-btn{background:#3498db;background:var(--primary-color,#3498db);border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:500;padding:12px 20px;transition:all .2s;width:100%}.fix-privacy-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.fix-privacy-btn:disabled{cursor:not-allowed;opacity:.6}.fix-privacy-hint{color:#888;font-size:.8rem;margin:10px 0 0;text-align:center}.default-name{color:gray;font-style:italic}.activities-header{align-items:center;display:flex;flex-direction:column;gap:16px;padding:8px 0 24px}.add-activity-row{display:flex;justify-content:center;margin-top:4px;padding:12px 0}.btn-add-activity-subtle{background:#0000;border:1px dashed #5a5a5a;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:.75rem;font-weight:400;line-height:1;opacity:.8;padding:6px 14px;transition:all .15s ease}.btn-add-activity-subtle:hover{background:#4b55631a;border-color:#6b7280;color:#9ca3af;opacity:1}.view-mode-toggle{background:#1a1a1a;border-radius:12px;display:flex;gap:4px;justify-content:center;padding:4px;width:-webkit-fit-content;width:fit-content}.view-mode-btn{background:#0000;border:none;border-radius:8px;color:#9ca3af;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .15s ease;white-space:nowrap}.view-mode-btn:hover{background:#ffffff0d;color:#e5e7eb}.view-mode-btn.active{background:linear-gradient(135deg,#60a5fa,#3b82f6);box-shadow:0 2px 8px #3b82f666;color:#fff;font-weight:600}.view-mode-btn.active:hover{background:linear-gradient(135deg,#93c5fd,#60a5fa);color:#fff}@media (max-width:400px){.view-mode-btn{font-size:.8rem;padding:8px 12px}.btn-new-activity{font-size:.9rem;padding:10px 24px}}.new-user-welcome{align-items:center;animation:welcomeFadeIn .8s ease-out;display:flex;flex-direction:column;padding:0 20px 40px;text-align:center}@keyframes welcomeFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.welcome-potato-explanation{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;margin-bottom:32px;max-width:400px;padding:20px}.welcome-potato-explanation p{color:#d1d5db;font-size:.95rem;line-height:1.7;margin:0}.welcome-potato-explanation strong{color:#f59e0b}.animal-preview{display:inline-block;font-size:.85rem;letter-spacing:2px;opacity:.8}.welcome-steps{display:flex;flex-direction:column;gap:16px;margin-bottom:32px;max-width:400px;width:100%}.welcome-step{background:linear-gradient(135deg,#1f2937cc,#111827e6);border:1px solid #ffffff14;border-radius:16px;display:flex;gap:16px;padding:20px;text-align:left;transition:all .3s ease}.welcome-step:hover{border-color:#f59e0b4d;transform:translateY(-2px)}.step-number{align-items:center;background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:50%;box-shadow:0 4px 12px #f59e0b4d;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:36px;justify-content:center;width:36px}.step-content{flex:1 1}.step-content h3{color:#fff;font-size:1rem;font-weight:600;margin:0 0 6px}.step-content p{color:#9ca3af;font-size:.85rem;line-height:1.5;margin:0 0 12px}.welcome-btn-primary{align-items:center;background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:10px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease;width:100%}.welcome-btn-primary:hover{box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.welcome-btn-secondary{align-items:center;background:#3b82f626;border:1px solid #3b82f64d;border-radius:10px;color:#60a5fa;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease;width:100%}.welcome-btn-secondary:hover{background:#3b82f640;border-color:#3b82f680;transform:translateY(-2px)}.welcome-divider{align-items:center;color:#6b7280;display:flex;font-size:.85rem;font-weight:500;gap:16px}.welcome-divider:after,.welcome-divider:before{background:linear-gradient(90deg,#0000,#ffffff26,#0000);content:"";flex:1 1;height:1px}.welcome-motivation{background:linear-gradient(135deg,#f59e0b1a,#ea580c0d);border:1px solid #f59e0b33;border-radius:50px;padding:16px 24px}.welcome-motivation p{color:#fbbf24;font-size:.9rem;font-style:italic;margin:0}.dojo-compliance-banner.personal-feed{align-items:flex-start;animation:complianceBannerSlideIn .5s ease-out;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:16px;box-shadow:0 4px 15px #ee5a244d;color:#fff;cursor:pointer;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:20px;transition:transform .2s,box-shadow .2s}.dojo-compliance-banner.personal-feed:hover{box-shadow:0 8px 25px #ee5a2466;transform:translateY(-2px)}@keyframes complianceBannerSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dojo-compliance-banner.personal-feed .dojo-compliance-banner-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));flex-shrink:0;font-size:2.5rem;line-height:1}.dojo-compliance-banner.personal-feed .dojo-compliance-banner-content{flex:1 1}.dojo-compliance-banner.personal-feed .dojo-compliance-banner-content strong{display:block;font-size:1.1rem;margin-bottom:6px;text-shadow:0 1px 2px #0003}.dojo-compliance-banner.personal-feed .dojo-compliance-banner-content p{font-size:.9rem;margin:0 0 8px;opacity:.95}.dojo-compliance-banner.personal-feed .dojo-compliance-violations{font-size:.85rem;list-style:disc;margin:8px 0 0;padding-left:18px}.dojo-compliance-banner.personal-feed .dojo-compliance-violations li{margin:4px 0;opacity:.9}.dojo-compliance-banner.personal-feed .dojo-compliance-banner-action{background:#fff3;border:1px solid #fff6;border-radius:8px;font-size:.9rem;font-weight:600;padding:10px 16px;text-align:center;transition:background .2s;white-space:nowrap;width:100%}.dojo-compliance-banner.personal-feed:hover .dojo-compliance-banner-action{background:#ffffff4d}.no-plan-banner{animation:noPlanSlideIn .5s ease-out;background:linear-gradient(135deg,#f59e0b26,#ea580c1a);border:1px solid #f59e0b4d;border-radius:16px;margin-bottom:20px;padding:20px}@keyframes noPlanSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.no-plan-content{align-items:flex-start;display:flex;gap:16px;margin-bottom:16px}.no-plan-icon{filter:drop-shadow(0 0 8px rgba(245,158,11,.4));flex-shrink:0;font-size:2.5rem;line-height:1}.no-plan-text h3{color:#f59e0b;font-size:1.1rem;font-weight:700;margin:0 0 8px}.no-plan-text p{color:#d1d5db;font-size:.9rem;line-height:1.5;margin:0}.no-plan-actions{display:flex;flex-wrap:wrap;gap:12px}.no-plan-btn-primary{background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:10px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;min-width:140px;padding:12px 20px;transition:all .2s ease}.no-plan-btn-primary:hover{box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.no-plan-btn-primary:active{transform:translateY(0)}.no-plan-btn-dismiss{background:#0000;border:1px solid #9ca3af4d;border-radius:10px;color:#9ca3af;cursor:pointer;font-size:.9rem;font-weight:500;padding:12px 20px;transition:all .2s ease}.no-plan-btn-dismiss:hover{background:#9ca3af1a;color:#d1d5db}.activity-item{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;margin-bottom:.75rem;max-width:100%;overflow:hidden;padding:1rem;text-align:center}.activity-item.expired{opacity:.5}.activity-item.collapsed{padding-bottom:1.5rem}.activity-collapsed-summary{background:#0f172a59;border:1px dashed #ffffff59;border-radius:.75rem;box-sizing:border-box;display:flex;flex-direction:column;gap:.75rem;margin:1em;padding:1rem 1.25rem;text-align:center}.activity-collapsed-summary.compact{background:#0000;border:none;border-radius:0;gap:0;margin:0;padding:0}.activity-collapsed-summary.compact .countdown{color:#9ca3af;font-size:1rem;margin:0}.activity-minimal-status{align-items:center;display:flex;gap:12px;justify-content:space-between}.activity-minimal-status.centered{flex-direction:column;gap:10px;justify-content:center}.activity-minimal-status .countdown{font-feature-settings:"tnum";color:#9ca3af;font-size:.9rem;font-variant-numeric:tabular-nums}.activity-minimal-status.centered .countdown{color:#e5e7eb;font-size:1.5rem;font-weight:600}.btn-start-minimal{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 15px #3b82f666;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin:20px 0;padding:16px 48px;transition:all .2s ease}.btn-start-minimal:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 20px #3b82f680;transform:translateY(-2px)}.btn-start-minimal:active{box-shadow:0 2px 10px #3b82f64d;transform:translateY(0)}.activity-due-inline{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.due-badge{align-items:center;background:#ef444426;border:1px solid #ef44444d;border-radius:20px;color:#fca5a5;display:inline-flex;font-size:.8rem;gap:6px;padding:4px 12px}.due-icon{font-size:.85rem}.due-text{font-weight:500}.plan-badge{align-items:center;background:#3b82f626;border:1px solid #3b82f64d;border-radius:20px;color:#93c5fd;cursor:pointer;display:inline-flex;font-size:.8rem;gap:6px;padding:4px 12px;transition:all .2s ease}.plan-badge:hover{background:#3b82f640;border-color:#3b82f680}.plan-icon{font-size:.85rem}.plan-text{font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-collapsed-copy p{color:#f1f5f9;margin:0}.activity-collapsed-headline{color:#fca5a5;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.activity-collapsed-due{color:#e2e8f0;font-size:.9rem}.activity-collapsed-explainer{color:#cbd5f5;font-size:.92rem}.activity-collapsed-actions{align-items:center;display:flex;flex-direction:column;gap:8px;margin-top:8px}.activity-toggle-details{background:none;border:none;color:#cbd5f5;cursor:pointer;font-size:.9rem;padding:0;text-decoration:underline;text-underline-offset:4px;transition:color .15s ease}.activity-toggle-details:focus,.activity-toggle-details:hover{background:none;color:#fff;outline:none}.activity-item.status-complete{opacity:1}.activity-table{border-collapse:collapse;border-radius:5px;border-spacing:0;font-size:1rem;margin:0;overflow:hidden;text-align:left;width:100%}.activity-table *{text-align:center;vertical-align:middle}.activity-table td,.activity-table th{min-width:3rem;padding-top:10px}.status-pending .activity-table td{font-size:1.3rem}.activity-table tr{text-align:center}.exercise-set-cell .editable{padding-bottom:20px;padding-top:20px}.activity-table input{font-size:1rem;padding:1px;width:3rem}.activity-table input[type=checkbox]{height:1.2rem;padding:1px;vertical-align:middle;width:1.2rem}.activity-name-parent{display:flex;flex-wrap:wrap;font-size:1rem;max-width:100%;padding:0 0 .5rem}.activity-name-parent *{color:#e5e7eb;font-size:1rem;font-weight:600;margin:0;overflow-wrap:break-word;text-align:left;width:100%;word-break:break-word}.activity-list{flex:2 1;margin:0 auto;overflow:visible;padding-bottom:7px;padding-top:7px;width:100%}.activity-list.onboarding-loading{align-items:center;background:#111;display:flex;inset:0;justify-content:center;padding:0;position:fixed;z-index:9999}.onboarding-loading-content{height:100%;width:100%}.day-group{margin-bottom:60px}.day-group+.day-group:before{color:#9ca3afbf;content:"◇";display:block;font-size:24px;letter-spacing:0;margin:0 auto 20px;text-align:center}.activity-date{color:#e5e7eb;display:block;font-size:1.5rem;font-weight:700;letter-spacing:.02em;padding:40px 0 20px;text-align:center}.activity-info{display:inline-block;font-size:14px;font-style:italic;margin-bottom:1em;margin-top:1em;padding:.2rem 1.5rem;text-align:center}.activity-plan-line{align-items:center;display:inline-flex;gap:4px}.activity-plan-prefix{color:#e5e7eb;font-size:.95rem;font-style:italic}.activity-plan-title{background:#0000;border:none;color:#a5c6ff;cursor:pointer;font-size:.95rem;font-style:italic;padding:0;text-decoration:underline}.activity-plan-title:focus,.activity-plan-title:hover{color:#d8e7ff;outline:none}.activity-info-due-time{font-size:.8em}.activity-impact-note{font-size:.9rem;margin-top:.35rem;opacity:.9}.activity-end{color:#fff6;display:block;font-size:.9rem;font-weight:500;letter-spacing:.1em;margin-bottom:400px;margin-top:50px;padding-bottom:100px;text-align:center;text-transform:uppercase}.activity-end-loading{align-items:center;display:flex;flex-direction:column;gap:12px;padding:40px 0 400px}.activity-loading-spinner{animation:spin-activity .8s linear infinite;border:2px solid #3b82f633;border-radius:50%;border-top:2px solid var(--color-primary,#3b82f6);height:28px;width:28px}.activity-loading-text{color:#fff6;font-size:.85rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}@keyframes spin-activity{to{transform:rotate(1turn)}}.status-icon-parent{align-items:center;display:flex;justify-content:center;margin-bottom:1rem}.status-icon{height:2rem;width:2rem}.status-icon.success{color:var(--color-success)}.status-icon.failed{color:var(--color-failed)}.activity-status-bar{align-items:center;border-radius:8px;display:flex;font-size:.85rem;gap:8px;justify-content:center;margin:8px 16px;padding:8px 16px}.activity-status-bar.complete{background:#22c55e1a;border:1px solid #22c55e40}.activity-status-bar.expired{background:#ef44441a;border:1px solid #ef444440}.status-icon-sm{height:1rem;width:1rem}.status-icon-sm.success{color:#22c55e}.status-icon-sm.failed{color:#ef4444}.status-text{color:#e5e7eb;font-weight:600}.plan-badge-sm{background:#6366f126;border:1px solid #6366f14d;border-radius:12px;color:#a5b4fc;cursor:pointer;font-size:.75rem;padding:2px 8px;transition:all .2s ease}.plan-badge-sm:hover{background:#6366f140}.countdown{font-feature-settings:"tnum";color:#ff6b6b;font-family:Courier New,Courier,monospace;font-size:1.6rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:1px;line-height:1.2;margin:.5rem 0;text-align:center;text-shadow:2px 2px 4px #000c}.todo-list{margin-bottom:16px}.todo-type-group{background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;margin-bottom:8px}.todo-type-group.open{background:#ffffff08}.todo-type-group.nutrition-good{box-shadow:inset 3px 0 0 #10b98199}.todo-type-group.nutrition-moderate{box-shadow:inset 3px 0 0 #f59e0b99}.todo-type-group.nutrition-poor{box-shadow:inset 3px 0 0 #ef444499}.todo-type-group.status-complete{box-shadow:inset 3px 0 0 #10b98199}.todo-type-group.status-expired{box-shadow:inset 3px 0 0 #ef444499}.todo-type-group.status-pending{box-shadow:inset 3px 0 0 #6b728066}.todo-type-header{align-items:center;cursor:pointer;display:flex;gap:10px;justify-content:center;padding:12px 14px;transition:background .15s ease;-webkit-user-select:none;user-select:none}.todo-type-header:hover{background:#ffffff0a}.todo-type-icon{flex-shrink:0;font-size:1.25rem}.todo-type-label{color:#e5e7eb;font-size:1.25rem;font-weight:600}.todo-type-counts{align-items:center;display:flex;gap:8px}.todo-count{border-radius:10px;font-size:.7rem;font-weight:600;padding:2px 8px}.todo-count.pending{background:#3b82f633;color:#93c5fd}.todo-count.done{background:#22c55e26;color:#86efac}.todo-type-items{border-top:1px solid #ffffff0f;padding:4px 0}.todo-nutrition-summary{border-bottom:1px solid #ffffff0f;padding:1em}.todo-activity.done .todo-bullet{color:#22c55e}.todo-activity.failed .todo-bullet{color:#ef4444}.todo-activity.failed .todo-name{color:#9ca3af}.todo-activity-row{align-items:center;cursor:pointer;display:flex;gap:12px;padding:10px 14px 10px 24px;transition:background .15s ease;-webkit-user-select:none;user-select:none}.todo-activity-row:hover{background:#ffffff0a}.todo-bullet{color:#9ca3af;flex-shrink:0;font-size:1rem;text-align:center;width:18px}.todo-time{font-feature-settings:"tnum";color:#6b7280;flex-shrink:0;font-size:.9rem;font-variant-numeric:tabular-nums;min-width:50px}.todo-name{color:#d1d5db;flex:1 1;font-size:1rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-meal-macros{display:flex;flex-shrink:0;font-size:.75rem;font-weight:500;gap:6px}.todo-meal-macros .macro-cal{color:#3b82f6}.todo-meal-macros .macro-pro{color:#8b5cf6}.todo-workout-volume{display:flex;flex-shrink:0;font-size:.75rem;font-weight:500}.todo-workout-volume .volume-val{color:#facc15}.todo-countdown{font-feature-settings:"tnum";background:#ffffff0d;border-radius:4px;color:#6b7280;flex-shrink:0;font-size:.7rem;font-variant-numeric:tabular-nums;padding:2px 6px}.todo-countdown.urgent{background:#ef444426;color:#fca5a5}.points-pills{display:inline-flex;flex-shrink:0;gap:4px}.points-pill{font-feature-settings:"tnum";border-radius:10px;flex-shrink:0;font-size:.7rem;font-variant-numeric:tabular-nums;font-weight:600;padding:2px 8px}.points-pill.pr{background:linear-gradient(135deg,#fbbf244d,#f59e0b66);color:#fcd34d;text-shadow:0 0 8px #fbbf2480}.points-pill.earned{background:#22c55e33;color:#86efac}.points-pill.missed{background:#ef444433;color:#fca5a5}.points-pill.pending{animation:pointsPulse 2s ease-in-out infinite;background:#9ca3af26;color:#9ca3af}@keyframes pointsPulse{0%,to{opacity:.6}50%{opacity:1}}.points-pills-wrapper{display:inline-flex;flex-shrink:0;position:relative}.points-pills{cursor:pointer}.points-tooltip{background:#1f2937;border:1px solid #374151;border-radius:8px;box-shadow:0 4px 16px #0006;min-width:200px;padding:12px 14px;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.points-tooltip-title{color:#e5e7eb;font-size:.85rem;font-weight:600;margin-bottom:6px}.points-tooltip-desc{color:#9ca3af;font-size:.75rem;line-height:1.4;margin-bottom:10px}.points-tooltip-breakdown{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.points-tooltip-row{display:flex;font-size:.75rem;justify-content:space-between;padding:4px 0}.points-tooltip-row.pr{color:#fcd34d}.points-tooltip-row.earned{color:#86efac}.points-tooltip-row.pending{color:#9ca3af}.points-tooltip-row.missed{color:#fca5a5}.points-tooltip-row.total{border-top:1px solid #374151;color:#d1d5db;font-weight:500;margin-top:4px;padding-top:6px}.points-tooltip-close{background:#374151;border:none;border-radius:4px;color:#d1d5db;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:background .15s ease;width:100%}.points-tooltip-close:hover{background:#4b5563}.todo-content-actions{display:flex;justify-content:center;padding:12px 12px 16px}.todo-plan-link-expanded{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#93c5fd;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1;padding:.6rem 1.2rem;transition:all .2s ease}.todo-plan-link-expanded:hover{background:#3b82f659;border-color:#3b82f699}.todo-plan-link-expanded:active{transform:translateY(1px)}.todo-chevron{color:#6b7280;flex-shrink:0;font-size:1.5rem;margin-left:6px;transition:transform .2s ease}.todo-chevron.open{transform:rotate(90deg)}.todo-content{animation:todoExpand .2s ease-out;background:#00000026;border-top:1px solid #ffffff0f;padding:16px 0}@keyframes todoExpand{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.activity-item.embedded{background:#0000;border:none;border-radius:0;margin:0;padding:0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recommendation-robot{display:inline-block}.recommendation-robot.robot-speaking{animation:robot-speak .15s ease-in-out infinite alternate}@keyframes robot-speak{0%{transform:scale(1) translateY(0)}to{transform:scale(1.1) translateY(-2px)}}.recommendation-card-text .typewriter-cursor{animation:typewriter-blink .7s step-end infinite;color:#3b82f6;color:var(--color-primary,#3b82f6);display:inline;font-weight:700;margin-left:2px}@keyframes typewriter-blink{0%,to{opacity:1}50%{opacity:0}}.focus-countdown{transition:all .2s ease}.focus-countdown:hover{background:#3b82f626!important;transform:scale(1.02)}.focus-countdown.urgent{animation:urgent-pulse 2s ease-in-out infinite}.focus-countdown.urgent:hover{background:#ef444440!important}@keyframes urgent-pulse{0%,to{box-shadow:0 0 0 0 #ef444466}50%{box-shadow:0 0 0 8px #ef444400}}.global-countdown{align-items:center;background:linear-gradient(135deg,#3b82f61a,#9333ea14);border:1px solid #6366f133;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;margin:16px 0;padding:20px;transition:all .2s ease}.global-countdown:hover{background:linear-gradient(135deg,#3b82f626,#9333ea1f);border-color:#6366f159;transform:translateY(-2px)}.global-countdown-timer{font-feature-settings:"tnum";color:#e5e7eb;font-size:2.5rem;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.05em}.global-countdown-label{align-items:center;color:#9ca3af;display:flex;font-size:.85rem;gap:8px;margin-top:8px}.global-countdown-icon{font-size:1rem}.global-countdown-name{font-weight:500}.todo-activity.highlight{animation:highlightPulse 2s ease-out}@keyframes highlightPulse{0%{background:#3b82f64d}to{background:#0000}}.scroll-to-top-btn{align-items:center;animation:scrollBtnFadeIn .3s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#111827d9;border:1px solid #ffffff1a;border-radius:50%;bottom:20px;box-shadow:0 4px 16px #0006,0 2px 8px #0003;color:#fff;cursor:pointer;display:flex;flex-direction:column;height:52px;justify-content:center;position:fixed;right:20px;transition:all .3s cubic-bezier(.25,.8,.25,1);width:52px;z-index:999}.scroll-to-top-btn:hover{background:#1f2937f2;border-color:#fff3;box-shadow:0 6px 24px #00000080,0 4px 12px #0000004d;transform:translateY(-3px) scale(1.05)}.scroll-to-top-btn.hidden{opacity:0;pointer-events:none;transform:translateY(10px) scale(.9)}.scroll-to-top-btn:active{transform:translateY(-1px) scale(.98)}@keyframes scrollBtnFadeIn{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.scroll-to-top-arrow{font-size:1.2rem;font-weight:700;line-height:1}.scroll-to-top-text{font-size:.6rem;font-weight:600;letter-spacing:.03em;margin-top:2px;text-transform:uppercase}@media (max-width:480px){.scroll-to-top-btn{bottom:20px;height:48px;right:16px;width:48px}.scroll-to-top-arrow{font-size:1.1rem}.scroll-to-top-text{font-size:.55rem}}@keyframes recommendationFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes subtleShimmer{0%{background-position:-100% 0}to{background-position:200% 0}}@keyframes coachBreathing{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.day-recommendation-card{animation:recommendationFadeIn .4s ease-out;background:#ffffff05;border:1px solid #ffffff0f;border-radius:12px;cursor:pointer;margin-bottom:.75rem;max-width:100%;overflow:hidden;padding:14px 16px;position:relative;transition:all .25s ease}.day-recommendation-card:before{background:linear-gradient(180deg,#6366f199,#8b5cf666 50%,#3b82f64d);border-radius:12px 0 0 12px;bottom:0;content:"";left:0;opacity:.8;position:absolute;top:0;transition:opacity .25s ease;width:3px}.day-recommendation-card:after{animation:subtleShimmer 8s linear infinite;background:linear-gradient(90deg,#0000,#8b5cf608 50%,#0000);background-size:200% 100%;border-radius:12px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.day-recommendation-card:hover{background:#ffffff0a;border-color:#8b5cf633;box-shadow:0 4px 20px #6366f11a;transform:translateY(-1px)}.day-recommendation-card:hover:before{opacity:1}.day-recommendation-card.today{background:#6366f10a;border-color:#8b5cf626}.day-recommendation-card.today:before{background:linear-gradient(180deg,#6366f1e6,#8b5cf6b3 50%,#3b82f680);opacity:1;width:4px}.day-recommendation-card.generating{background:#6366f108;border-color:#8b5cf61f}.day-recommendation-card.generating:after{animation:subtleShimmer 2s linear infinite;background:linear-gradient(90deg,#0000,#8b5cf614 50%,#0000);background-size:200% 100%}.day-recommendation-content{align-items:flex-start;display:flex;gap:12px;position:relative;z-index:1}.day-recommendation-avatar{align-items:center;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.day-recommendation-avatar img{border:2px solid #8b5cf64d;border-radius:50%;height:32px;object-fit:cover;transition:border-color .25s ease;width:32px}.day-recommendation-card:hover .day-recommendation-avatar img{border-color:#8b5cf680}.day-recommendation-avatar .coach-emoji{animation:coachBreathing 3s ease-in-out infinite;font-size:1.5rem}.day-recommendation-avatar .coach-emoji.speaking{animation:coachBreathing .8s ease-in-out infinite}.day-recommendation-text{flex:1 1;min-width:0}.day-recommendation-text p{color:#d1d5db;font-size:.9rem;line-height:1.55;margin:0;text-align:left}.typewriter-container{display:grid}.typewriter-container .typewriter-reserve,.typewriter-container .typewriter-visible{font-size:.9rem;grid-area:1/1;line-height:1.55;margin:0;text-align:left}.typewriter-container .typewriter-reserve{color:#0000;visibility:hidden}.day-recommendation-card.today .day-recommendation-text p,.typewriter-container .typewriter-visible{color:#e5e7eb}.day-recommendation-card.historical .day-recommendation-text p{color:#9ca3af;font-style:italic}.day-recommendation-text .typewriter-cursor{animation:blink .8s ease-in-out infinite;color:#8b5cf6cc;display:inline-block;font-weight:400;overflow:visible;vertical-align:initial;width:0}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.day-recommendation-loading{align-items:center;display:flex;gap:10px;justify-content:center;opacity:0;padding:4px 0;pointer-events:none;transition:opacity .15s ease-in}.day-recommendation-loading.visible{opacity:1;pointer-events:auto}.day-recommendation-loading span{color:#9ca3af;font-size:.875rem}.day-recommendation-card .click-hint{align-items:center;color:#8b5cf6cc;display:flex;font-size:.75rem;font-weight:500;gap:4px;justify-content:flex-end;margin-top:8px;opacity:.7;transition:opacity .25s ease}.day-recommendation-card:hover .click-hint{opacity:1}@media (max-width:480px){.day-recommendation-card{padding:12px 14px}.day-recommendation-avatar,.day-recommendation-avatar img{height:28px;width:28px}.day-recommendation-avatar .coach-emoji{font-size:1.3rem}.day-recommendation-text p{font-size:.85rem}.day-recommendation-card .click-hint{display:flex;font-size:.7rem}}.day-recommendation-card.locked{background:linear-gradient(135deg,#f59e0b1a,#d977060d);border:1px dashed #f59e0b66;cursor:pointer}.day-recommendation-card.locked:before{background:linear-gradient(90deg,#f59e0b4d,#d9770633 50%,#f59e0b4d)}.day-recommendation-card.locked:hover{border-color:#f59e0b99;box-shadow:0 4px 12px #f59e0b33}.day-recommendation-card.locked .locked-text{color:#ffffffe6}.day-recommendation-card.locked .locked-text strong{color:#f59e0b}.day-recommendation-card.locked .upgrade-hint{color:#f59e0b;font-size:.75rem;font-weight:600;opacity:.8;transition:opacity .2s ease}.day-recommendation-card.locked:hover .upgrade-hint{opacity:1}.user-profile-modal{box-sizing:border-box;color:#ddd;display:flex;flex-direction:column;gap:20px;padding:20px;width:100%}.user-profile-header h2{color:#fff;font-size:1.5rem;margin:0;text-align:center}.user-profile-body{display:flex;flex-direction:column;gap:20px}.avatar-section{align-items:center;display:flex;flex-direction:column;gap:12px;margin-bottom:10px}.avatar-preview{align-items:center;background-color:#333;border:2px solid #444;border-radius:50%;cursor:pointer;display:flex;height:120px;justify-content:center;overflow:hidden;position:relative;transition:border-color .2s;width:120px}.avatar-preview:hover{border-color:#666}.avatar-preview img{height:100%;object-fit:cover;width:100%}.avatar-placeholder{color:#888;font-size:.9rem}.avatar-overlay{background:#0009;bottom:0;color:#fff;font-size:.7rem;left:0;opacity:0;padding:4px;position:absolute;right:0;text-align:center;transition:opacity .2s}.avatar-preview:hover .avatar-overlay{opacity:1}.user-profile-form{gap:15px}.form-group,.user-profile-form{display:flex;flex-direction:column}.form-group{gap:6px}.user-profile-label{color:#ddd;font-size:.9rem;font-weight:500}.user-profile-modal .user-profile-input{background-color:#404040;border:1px solid #666;border-radius:6px;box-sizing:border-box;color:#fff;font-size:1rem;padding:10px 12px;transition:border-color .2s;width:100%}.user-profile-modal .user-profile-input:focus{border-color:#888;outline:none}.user-profile-modal .user-profile-input::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(1);opacity:.6}.user-profile-modal .button-container{display:flex;gap:10px;justify-content:space-between;margin-top:10px}.user-profile-modal .btn-cancel,.user-profile-modal .btn-save{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:12px;transition:background-color .2s}.user-profile-modal .btn-save{background-color:#10b981;background-color:var(--color-accept,#10b981);color:#fff}.user-profile-modal .btn-save:hover{background-color:#059669}.user-profile-modal .btn-cancel{background-color:#444;color:#fff}.user-profile-modal .btn-cancel:hover{background-color:#555}.ai-coach-section{border-top:1px solid #ffffff1a;margin-top:20px;padding-top:20px}.ai-coach-section.locked{position:relative}.ai-coach-section-title{align-items:center;color:#e5e7eb;display:flex;font-size:1.1rem;font-weight:600;gap:8px;justify-content:center;margin:0 0 16px;text-align:center}.pro-badge-inline{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:4px;color:#1f2937;font-size:.6rem;font-weight:700;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.ai-coach-locked-overlay{background:linear-gradient(135deg,#f59e0b14,#d977060a);border:1px dashed #f59e0b4d;border-radius:12px;cursor:pointer;padding:24px;transition:all .2s ease}.ai-coach-locked-overlay:hover{background:linear-gradient(135deg,#f59e0b1f,#d977060f);border-color:#f59e0b80}.ai-coach-locked-content{align-items:center;display:flex;flex-direction:column;gap:12px;text-align:center}.ai-coach-locked-content .lock-icon{font-size:2rem}.ai-coach-locked-content p{color:#ffffffe6;font-weight:500;margin:0}.locked-features-list{color:#ffffffb3;font-size:.85rem;list-style:none;margin:0;padding:0}.locked-features-list li{margin:4px 0}.locked-features-list li:before{color:#f59e0b;content:"✓ "}.btn-upgrade-inline{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#1f2937;cursor:pointer;font-size:.9rem;font-weight:600;margin-top:8px;padding:10px 20px;transition:all .2s ease}.btn-upgrade-inline:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.ai-coach-appearance{align-items:center;display:flex;flex-direction:column;gap:12px}.ai-coach-preview{align-items:center;background:#3b82f633;border:2px solid #3b82f666;border-radius:50%;display:flex;height:80px;justify-content:center;overflow:hidden;width:80px}.ai-coach-emoji-preview{font-size:40px}.ai-coach-image{height:100%;object-fit:cover;width:100%}.ai-coach-emoji-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:300px}.ai-coach-emoji-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;cursor:pointer;font-size:20px;height:40px;transition:all .15s ease;width:40px}.ai-coach-emoji-btn:hover{background:#ffffff1a;border-color:#fff3}.ai-coach-emoji-btn.selected{background:#3b82f64d;border-color:#3b82f699}.ai-coach-image-upload{align-items:center;display:flex;gap:8px;margin-top:8px}.ai-coach-tone-grid{display:flex;flex-direction:column;gap:8px}.ai-coach-tone-btn{align-items:flex-start;background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:12px;text-align:left;transition:all .15s ease}.ai-coach-tone-btn:hover{background:#ffffff0f;border-color:#fff3}.ai-coach-tone-btn.selected{background:#3b82f626;border-color:#3b82f666}.ai-coach-tone-btn .tone-label{color:#e5e7eb;font-size:.95rem;font-weight:600}.ai-coach-tone-btn .tone-desc{color:#9ca3af;font-size:.8rem;margin-top:2px}.ai-coach-intensity-slider{border:1px solid #ffffff1a;border-radius:8px;display:flex;gap:4px;overflow:hidden}.ai-coach-intensity-btn{background:#ffffff08;border:none;color:#9ca3af;cursor:pointer;flex:1 1;padding:12px 8px;transition:all .15s ease}.ai-coach-intensity-btn:hover{background:#ffffff14;color:#e5e7eb}.ai-coach-intensity-btn.selected{background:#3b82f64d;color:#93c5fd}.ai-coach-intensity-btn .intensity-label{font-size:.85rem;font-weight:600}.intensity-description{color:#6b7280;font-size:.8rem;font-style:italic;margin:8px 0 0;text-align:center}.notifications-section{border-top:1px solid #ffffff1a;margin-top:20px;padding-top:20px}.notifications-section .section-title{color:#e5e7eb;font-size:1.1rem;font-weight:600;margin:0 0 16px;text-align:center}.verification-banner{background:#eab3081a;border:1px solid #eab3084d;border-radius:10px;margin-bottom:16px;padding:12px 16px}.verification-status{align-items:center;color:#fbbf24;display:flex;gap:8px;margin-bottom:10px}.verification-status .status-icon{font-size:1.1rem}.verification-actions{display:flex;flex-wrap:wrap;gap:8px}.verification-code-input{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;flex:1 1;font-size:1rem;letter-spacing:2px;max-width:120px;min-width:80px;padding:8px 12px;text-align:center}.verification-code-input::placeholder{letter-spacing:normal}.btn-resend,.btn-verify{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s}.btn-verify{background:#3b82f6;color:#fff}.btn-verify:hover:not(:disabled){background:#2563eb}.btn-verify:disabled{cursor:not-allowed;opacity:.5}.btn-resend{background:#ffffff1a;border:1px solid #fff3;color:#fff}.btn-resend:hover:not(:disabled){background:#ffffff26}.btn-resend:disabled{cursor:not-allowed;opacity:.5}.verification-message{color:#fbbf24;font-size:.85rem;margin:10px 0 0}.verification-verified{align-items:center;color:#22c55e;display:flex;gap:8px;margin-bottom:16px}.verification-verified .status-icon{font-size:1.1rem}.email-verification-inline{margin-top:8px}.verified-badge{align-items:center;color:#22c55e;display:flex;font-size:.85rem;gap:4px}.unverified-section{display:flex;flex-direction:column;gap:6px}.unverified-badge{align-items:center;color:#fbbf24;display:flex;font-size:.85rem;gap:4px}.verification-inline-actions{align-items:center;display:flex;gap:6px}.verification-code-input-small{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fff;font-size:.85rem;letter-spacing:1px;padding:5px 8px;text-align:center;width:70px}.verification-code-input-small::placeholder{letter-spacing:normal}.btn-resend-small,.btn-verify-small{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;padding:5px 10px;transition:all .2s}.btn-verify-small{background:#3b82f6;color:#fff}.btn-verify-small:hover:not(:disabled){background:#2563eb}.btn-verify-small:disabled{cursor:not-allowed;opacity:.5}.btn-resend-small{background:#ffffff1a;border:1px solid #fff3;color:#fff}.btn-resend-small:hover:not(:disabled){background:#ffffff26}.btn-resend-small:disabled{cursor:not-allowed;opacity:.5}.verification-message-small{color:#fbbf24;font-size:.8rem;margin:0}.notification-prefs{display:flex;flex-direction:column;gap:10px}.prefs-description{color:#9ca3af;font-size:.9rem;margin:0 0 8px}.notification-toggle{align-items:center;background:#ffffff0d;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:8px 12px;transition:background .2s}.notification-toggle:hover{background:#ffffff14}.notification-toggle input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.notification-toggle .toggle-label{color:#e5e7eb;flex:1 1;font-size:.95rem}.privacy-section{border-top:1px solid #ffffff1a;margin-top:20px;padding-top:20px}.privacy-section .section-title{color:#e5e7eb;font-size:1.1rem;font-weight:600;margin:0 0 16px;text-align:center}.privacy-settings-grid{display:flex;flex-direction:column;gap:12px}.privacy-setting-row{background:#ffffff0d;border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:12px;transition:background .2s}.privacy-setting-row:hover{background:#ffffff14}.privacy-activity-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.privacy-activity-label{color:#e5e7eb;font-size:.95rem;font-weight:500}.privacy-activity-desc{color:#9ca3af;font-size:.8rem}.privacy-audiences{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.privacy-audience-chip{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:.85rem;gap:4px;padding:6px 10px;transition:all .2s}.privacy-audience-chip:hover{background:#ffffff26;border-color:#ffffff4d}.privacy-audience-chip.selected{background:#3b82f633;border-color:#3b82f6;color:#60a5fa}.privacy-audience-chip.selected:hover{background:#3b82f64d}.privacy-audience-chip.dimmed{opacity:.4;pointer-events:none}.privacy-audience-chip input[type=checkbox]{display:none}.privacy-private-label{background:#6b728033;border:1px solid #6b72804d;border-radius:20px;color:#9ca3af;font-size:.85rem;font-style:italic;padding:6px 10px}.privacy-hint{background:#3b82f61a;border-radius:6px;color:#9ca3af;font-size:.85rem;margin-top:12px;padding:10px}.privacy-hint strong{color:#60a5fa}.privacy-select{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;min-width:140px;padding:8px 12px;transition:all .2s}.privacy-select:hover{background:#ffffff26;border-color:#ffffff4d}.privacy-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.privacy-select option{background:#1f2937;color:#e5e7eb;padding:8px}.browser-notification-setup{background:#ffffff0d;border-radius:8px;margin-bottom:16px;padding:12px}.notification-permission-status{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.permission-label{color:#e5e7eb;font-size:.95rem}.permission-granted{color:#22c55e;font-weight:500}.permission-denied{color:#ef4444;font-size:.85rem}.btn-enable-notifications{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s}.btn-enable-notifications:hover{background:#2563eb}.sms-setup{margin-bottom:16px}.field-hint{color:#9ca3af;font-size:.8rem;margin:4px 0 0}.notification-prefs-grid{display:flex;flex-direction:column;gap:4px}.notification-grid-header{grid-gap:8px;align-items:center;background:#ffffff14;border-radius:8px 8px 0 0;display:grid;gap:8px;grid-template-columns:1fr 40px 40px 40px;padding:8px 12px}.notification-type-header{color:#9ca3af;font-size:.85rem;font-weight:600}.channel-header{font-size:1rem;text-align:center}.notification-row{grid-gap:8px;align-items:center;background:#ffffff0d;display:grid;gap:8px;grid-template-columns:1fr 40px 40px 40px;padding:10px 12px;transition:background .2s}.notification-row:hover{background:#ffffff14}.notification-row:last-child{border-radius:0 0 8px 8px}.notification-type-label{color:#e5e7eb;font-size:.9rem}.notification-row input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;justify-self:center;width:18px}.notification-row input[type=checkbox]:disabled{cursor:not-allowed;opacity:.4}.privacy-leave-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.privacy-leave-modal{background:#2a2a2a;border:1px solid #444;border-radius:12px;max-height:80vh;max-width:450px;overflow-y:auto;padding:24px;width:90%}.privacy-leave-modal h3{color:#f1c40f;font-size:1.3rem;margin:0 0 16px;text-align:center}.privacy-leave-modal p{color:#ccc;line-height:1.5;margin:0 0 16px}.privacy-leave-violations{background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:8px;margin-bottom:16px;padding:16px}.privacy-leave-violations h4{color:#e74c3c;font-size:1rem;margin:0 0 10px}.privacy-leave-violations ul{color:#e0e0e0;font-size:.9rem;margin:0;padding-left:20px}.privacy-leave-violations li{margin-bottom:8px}.privacy-leave-warning{background:#f1c40f1a;border:1px solid #f1c40f4d;border-radius:6px;color:#f1c40f;padding:12px;text-align:center}.privacy-leave-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.privacy-leave-buttons .btn-cancel{background:#404040;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:10px 20px}.privacy-leave-buttons .btn-cancel:hover{background:#4a4a4a}.privacy-leave-buttons .btn-danger{background:#e74c3c;border:1px solid #c0392b;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px}.privacy-leave-buttons .btn-danger:hover{background:#c0392b}.spinner{animation:spin-modal 1s linear infinite;border:3px solid #3b82f633;border-radius:50%;border-top:3px solid var(--color-primary,#3b82f6);display:block;height:32px;width:32px}@keyframes spin-modal{to{transform:rotate(1turn)}}.loading-text{color:#9ca3af;font-size:.9rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.avatar-selection-modal{color:#e0e0e0;display:flex;flex-direction:column;height:100%;max-height:80vh;padding:24px;position:relative}.avatar-processing-overlay{align-items:center;background:#000000d9;border-radius:inherit;display:flex;flex-direction:column;gap:16px;inset:0;justify-content:center;position:absolute;z-index:10}.avatar-selection-header h2{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 24px;text-align:center}.avatar-account-row{margin-bottom:16px}.avatar-account-btn{align-items:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;color:#e0e0e0;cursor:pointer;display:flex;gap:12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.avatar-account-btn:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff40}.avatar-account-btn:disabled{cursor:default}.avatar-account-btn.current{background:#3b82f61a;border-color:#3b82f64d}.avatar-account-preview{border:2px solid #fff3;border-radius:50%;flex-shrink:0;height:48px;object-fit:cover;width:48px}.avatar-account-btn.current .avatar-account-preview{border-color:#3b82f680}.avatar-account-info{display:flex;flex-direction:column;gap:2px}.avatar-account-label{color:#fff;font-size:.95rem;font-weight:500}.avatar-account-hint{color:#888;font-size:.8rem}.avatar-account-btn.current .avatar-account-hint{color:#60a5fa}.avatar-account-row.disabled{opacity:.5;pointer-events:none}.avatar-selection-actions{display:flex;gap:16px;justify-content:center;margin-bottom:24px}.avatar-action-btn{align-items:center;background-color:#404040;border:1px solid #555;border-radius:12px;color:#e0e0e0;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:.9rem;gap:8px;height:100px;justify-content:center;margin:0;min-width:0;padding:0;transition:all .2s ease}.avatar-action-btn.active,.avatar-action-btn:hover{background-color:#505050;border-color:#666;transform:translateY(-2px)}.avatar-action-btn.active{border-color:#3b82f6;color:#fff}.avatar-action-btn.active svg{color:#60a5fa}.avatar-action-btn svg{color:#3b82f6;height:32px;width:32px}.avatar-selection-actions.disabled{opacity:.5;pointer-events:none}.camera-container{background-color:#000;border-radius:12px;margin-bottom:24px;overflow:hidden;position:relative}.camera-preview{display:block;max-height:400px;object-fit:cover;width:100%}.camera-controls{background-color:#262626;display:flex;gap:16px;justify-content:center;padding:16px}.avatar-history-section{display:flex;flex:1 1;flex-direction:column;min-height:0}.avatar-history-section h3{color:#aaa;font-size:1.1rem;margin:0 0 16px}.avatar-scroll-container{flex:1 1;min-height:200px;overflow-y:auto;padding-right:4px}.avatar-scroll-container::-webkit-scrollbar{width:6px}.avatar-scroll-container::-webkit-scrollbar-track{background:#262626;border-radius:3px}.avatar-scroll-container::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.avatar-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));padding-bottom:16px}.avatar-grid-item{aspect-ratio:1;background-color:#404040;border:2px solid #0000;border-radius:8px;cursor:pointer;overflow:hidden;position:relative;transition:all .2s ease}.avatar-grid-item:hover{border-color:#3b82f6;transform:scale(1.02)}.avatar-grid-item img{height:100%;object-fit:cover;width:100%}.avatar-grid-placeholder{align-items:center;color:#666;display:flex;height:100%;justify-content:center;width:100%}.avatar-grid-placeholder svg{height:32px;width:32px}.avatar-loading-container{align-items:center;display:flex;flex-direction:column;gap:12px;grid-column:1/-1;justify-content:center;padding:40px}.avatar-loading-text{color:#888;font-size:.85rem}.no-media-message{color:#666;font-style:italic;grid-column:1/-1;padding:32px;text-align:center}.button-container{justify-content:flex-end;margin-top:16px;padding-top:16px}.avatar-selection-modal .btn-cancel,.avatar-selection-modal .btn-save{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:12px;transition:background-color .2s}.avatar-selection-modal .btn-cancel{background-color:#444;color:#fff}.avatar-selection-modal .btn-cancel:hover{background-color:#555}.avatar-selection-modal .btn-save{background-color:#10b981;background-color:var(--color-accept,#10b981);color:#fff}.avatar-selection-modal .btn-save:hover{background-color:#059669}.image-cropper-modal{align-items:center;display:flex;flex-direction:column;height:100%;max-height:80vh}.cropper-container{background-color:#333;border:2px solid #444;cursor:move;height:300px;margin-bottom:20px;overflow:hidden;position:relative;touch-action:none;width:300px;z-index:10}.cropper-image{transform-origin:center;-webkit-user-select:none;user-select:none}.cropper-image,.cropper-overlay{pointer-events:none;position:absolute}.cropper-overlay{border:2px solid #fff;box-sizing:border-box;height:256px;left:50%;top:50%;transform:translate(-50%,-50%);width:256px;z-index:20}.cropper-controls{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:20px;width:100%}.zoom-slider{width:200px}.cropper-actions{display:flex;gap:10px}.image-cropper-modal .cropper-actions button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 16px}.image-cropper-modal .btn-cancel{background-color:#ccc;color:#333}.image-cropper-modal .btn-save{background-color:#007bff;background-color:var(--color-add,#007bff);color:#fff}.update-plan-modal{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;overflow:visible;padding:12px;width:100%}.update-plan-modal.regenerating{opacity:.5;pointer-events:none}.update-plan-modal.loading{height:100%;justify-content:center;overflow:hidden}.update-plan-header{align-items:center;flex-direction:column;flex-shrink:0;gap:4px;margin-bottom:12px}.update-plan-header,.update-plan-top-actions{display:flex;justify-content:center;width:100%}.update-plan-top-actions{margin:4px 0 8px}.update-plan-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.btn-switch-plan{background:none;border:1px solid #555;border-radius:4px;color:#aaa;cursor:pointer;font-size:.8rem;padding:2px 8px;transition:all .2s}.btn-switch-plan:hover{border-color:#888;color:#fff}.update-plan-subhead{color:#888;font-size:.9rem;line-height:1.4;max-width:80%;text-align:center}.update-plan-meta{display:flex;flex-direction:column;gap:16px;margin-bottom:8px;padding:0;width:100%}.update-plan-actions-row{display:flex;justify-content:center;margin:10px 0}.update-plan-modal .btn-add{align-items:center;background-color:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:10px 20px;transition:background-color .2s}.update-plan-modal .btn-add:hover{background-color:#45a049}.update-plan-modal .btn-add:disabled{background-color:#555;cursor:not-allowed}.regenerate-section{align-items:center;display:flex;flex-direction:column;gap:8px;margin:8px 0;width:100%}.regenerate-help{color:#888;font-size:.85rem;line-height:1.3;max-width:420px;text-align:center}.regenerate-btn-icon{height:18px;margin-right:8px;vertical-align:middle;width:18px}.update-plan-modal .item-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.update-plan-modal .item-list li{scroll-margin-top:10px}.update-plan-modal .item-list li .item-content{flex-grow:1;text-align:left}.update-plan-modal .item-list li .item-actions{display:flex;gap:10px;margin-right:0;padding-right:0}.update-plan-modal .form-group{margin-bottom:0;text-align:center;width:100%}.update-plan-label{color:#aaa;display:block;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.update-plan-modal .form-group input[type=text],.update-plan-modal .form-group textarea{background-color:initial;border:1px solid #444;border-radius:8px;box-sizing:border-box;color:inherit;font-family:inherit;font-size:inherit;line-height:1.5;padding:12px;transition:border-color .2s,background-color .2s;width:100%}.update-plan-modal .form-group input[type=text]:focus,.update-plan-modal .form-group textarea:focus{background-color:#2a2a2a;border-color:#666;outline:none}.update-plan-modal .form-group input[type=text]{font-size:1.05em;text-align:center}.update-plan-modal .form-group textarea{min-height:60px;overflow-y:hidden;resize:none;text-align:center}.update-plan-actions-container{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:8px;margin:10px 0;width:100%}.update-plan-expand-actions{align-items:center;color:#888;display:flex;font-size:.85rem;gap:8px}.update-plan-expand-actions .separator{color:#555}.btn-underlined{background:none;color:#aaa;font-size:inherit}.btn-underlined:hover{color:#fff}.btn-underlined:disabled{color:#555;cursor:not-allowed}.choose-plan-empty{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:40px 20px;text-align:center}.choose-plan-empty p{color:#ccc;font-size:1.1rem;margin:0}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:40px}.plan-items-container{gap:24px;width:100%}.plan-group,.plan-items-container{display:flex;flex-direction:column}.plan-group{gap:12px}.plan-group-title{color:#3b82f6;font-size:1.1rem;font-weight:600;letter-spacing:.05em;margin:0 0 4px;padding-bottom:8px;text-transform:uppercase}.center-button{margin-top:12px}@keyframes highlight-flash{0%{background-color:#3b82f64d}to{background-color:initial}}.highlight-move{animation:highlight-flash 1.5s ease-out;border-radius:8px}.recurrence-controls{align-items:center;display:flex;flex-direction:column;flex-grow:1;gap:4px;text-align:center}.recurrence-controls input,.recurrence-controls label,.recurrence-controls select{margin-right:8px}.recurrence-controls input[type=number]{width:60px}.inline-field{align-items:center;display:flex;flex-direction:column;margin-bottom:16px;width:100%}.inline-field label{margin-bottom:4px}.inline-field select{text-align:center;width:auto}.inline-field select option{text-align:left}.recurrence-controls,.starting-time{align-items:center;display:flex}.recurrence-controls input,.recurrence-controls label,.recurrence-controls select,.starting-time input,.starting-time label{margin-right:8px}.plan-item-entry{border:1px solid #444;border-radius:8px}.plan-item-entry-highlighted{box-shadow:0 0 0 4px #8ab4ff40;outline:2px solid #8ab4ff;transition:box-shadow .3s ease,outline .3s ease}.item-actions{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center;margin-bottom:8px}.plan-item-header{grid-gap:12px;align-items:center;box-sizing:border-box;cursor:pointer;display:grid;gap:12px;grid-template-columns:24px 1fr 30px;padding:10px;width:100%}.plan-item-icon-col{align-items:center;display:flex;justify-content:center}.plan-item-content-col{display:flex;flex-direction:column;gap:2px;overflow:hidden}.plan-item-line-1{color:#fff;font-size:.95rem;font-weight:600}.plan-item-line-1,.plan-item-line-2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-item-line-2{font-size:.85rem;line-height:1.3}.plan-item-instruction-text{color:#ddd;font-weight:500}.plan-item-hint-text{color:#888;font-style:italic}.plan-item-actions-col{display:flex;justify-content:flex-end}.btn-icon-remove{background:none;border:none;border-radius:4px;color:#888;cursor:pointer;font-size:1.2rem;line-height:1;padding:4px 8px;transition:all .2s}.btn-icon-remove:hover{background-color:#f003;color:#f44}.icon-button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2em;padding:0}.trash-icon{height:1.2em;width:1.2em}.recurrence-display{cursor:pointer;margin:0;text-align:center;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.recurrence-editing{align-items:center;flex-wrap:wrap;margin:8px 0}.recurrence-editing,.spinner-container{display:flex;justify-content:center;width:100%}.spinner-container{padding-bottom:40px;padding-top:40px}.plan-item .workout-title{font-size:1.2rem}.plan-item{margin-bottom:24px}.plan-item .activity-item{padding-bottom:0}.start-date-editing{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:8px 0;width:100%}.start-date-editing input,.start-date-editing label{margin-right:8px}.start-date-display{cursor:pointer;margin:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.completion-days-editing{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:8px 0;width:100%}.completion-days-editing input,.completion-days-editing label,.completion-days-editing span{margin-right:8px}.completion-days-display,.hint-display{cursor:pointer;margin:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.hint-display,.hint-input{text-align:center}.hint-input{background-color:#202020;box-sizing:border-box;color:inherit;font-size:inherit;line-height:1.5;min-height:100%;overflow-y:hidden;resize:none}.plan-item-icon{color:#8ab4ff;height:18px;width:18px}.plan-item-config{background-color:#2a2a2a;border:1px solid #3d3d3d;border-radius:8px;gap:16px;margin-bottom:16px;margin-top:10px;padding:16px}.config-section,.plan-item-config{display:flex;flex-direction:column}.config-section{gap:8px}.config-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.config-item{display:flex;flex-direction:column;gap:6px}.config-label{color:#aaa;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.config-value-container{align-items:center;display:flex;min-height:36px;position:relative}.config-value{align-items:center;background-color:#333;border:1px solid #0000;border-radius:4px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:.95rem;padding:8px 12px;transition:background-color .2s;width:100%}.config-value:hover{background-color:#3d3d3d;border-color:#555}.instruction-display{color:#8ab4ff;font-weight:600}.completion-edit-mode,.date-edit-mode,.recurrence-edit-mode{align-items:center;display:flex;gap:8px;width:100%}.small-input{width:60px}.recurrence-edit-mode select,.small-input{background-color:#222;border:1px solid #555;border-radius:4px;color:#fff;padding:6px 8px}.toggle-switch{display:inline-block;height:22px;position:relative;width:40px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:#555;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;bottom:3px;content:"";height:16px;left:3px;width:16px}input:checked+.slider{background-color:#8ab4ff}input:checked+.slider:before{transform:translateX(18px)}.slider.round{border-radius:22px}.slider.round:before{border-radius:50%}.hint-input{background-color:#222;border-radius:4px;color:#fff;font-family:inherit;min-height:60px;padding:8px;resize:vertical}.custom-dropdown,.hint-input{border:1px solid #555;width:100%}.custom-dropdown{background-color:#333;border-radius:4px;box-shadow:0 4px 6px #0000004d;left:0;max-height:200px;overflow-y:auto;position:absolute;top:100%;z-index:100}.dropdown-item{color:#eee;cursor:pointer;padding:8px 12px}.dropdown-item:hover{background-color:#444}.instruction-section .config-value-container{position:relative}.checkbox-item .config-value-container{background:#0000;justify-content:flex-start;padding:0}.checkbox-item .config-value-container:hover{background:#0000}.switch-plan-modal{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:20px;padding:10px;width:100%}.switch-plan-header{color:#fff;font-size:1.5rem;font-weight:700;margin:0;text-align:center}.switch-plan-list{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto;width:100%}.switch-plan-item{align-items:center;background-color:#333;border:1px solid #444;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;justify-content:space-between;padding:16px;text-align:left;transition:all .2s}.switch-plan-item:hover{background-color:#444;border-color:#555}.switch-plan-item.active{background-color:#3a3a4a;border-color:#8ab4ff}.switch-plan-name{font-weight:500}.switch-plan-current{color:#8ab4ff;font-size:.8rem;font-weight:600}.switch-plan-actions{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.btn-create-plan-wizard{align-items:center;background:linear-gradient(135deg,#f59e0b,#ea580c);border:none;border-radius:10px;box-shadow:0 4px 15px #f59e0b4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .3s ease;width:100%}.btn-create-plan-wizard:hover{box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.btn-create-plan-quick{align-items:center;background:#0000;border:1px solid #444;border-radius:8px;color:#888;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s ease;width:100%}.btn-create-plan-quick:hover{border-color:#666;color:#ccc}.btn-create-plan{align-items:center;background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:background-color .2s;width:100%}.btn-create-plan:hover{background-color:#45a049}.btn-cancel-switch{background:none;border:none;color:#888;cursor:pointer;font-size:.9rem;padding:8px;text-decoration:underline}.btn-cancel-switch:hover{color:#fff}.stats-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:24px 12px;position:fixed;right:0;top:0;z-index:1000}.stats-modal-content.loading{min-height:calc(100vh - 100px);min-height:calc(100dvh - 100px);overflow-y:hidden;position:relative}.stats-modal-content.loading,.stats-modal-content.loading .charts-container{align-items:center;display:flex;flex-direction:column;justify-content:center}.stats-modal-content.loading .charts-container{flex:0 0 auto;gap:1rem;margin-top:0;min-height:auto;padding:40px}.stats-modal-content.loading .loading-text{color:#e2e8f0d9;text-align:center}.close-button{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:24px;position:absolute;right:15px;top:10px;transition:color .2s ease}.close-button:hover{color:#e2e8f0}.charts-container{display:flex;flex:0 0 auto;flex-direction:column;gap:12px;margin-top:6px;padding-bottom:24px}.chart-section{box-sizing:border-box;flex:0 0 auto;padding:0 24px 12px;width:100%}.stats-modal-content{border-radius:14px;display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;padding:0;width:100%}.stats-modal-header{background:#333;box-sizing:border-box;flex:0 0 auto;padding:12px 24px 8px;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:10}.stats-zoom-slider{margin-top:8px;width:100%}.stats-zoom-range-label{color:#e2e8f0b3;font-size:.85rem;margin-top:4px;padding-bottom:4px;text-align:center}.stats-modal-content h2{font-size:1.75rem;margin-bottom:8px}.stats-echarts-wrap{height:100%;min-height:0;width:100%}.stats-echarts-wrap.animate-in{animation:statsChartIn .52s cubic-bezier(.2,.9,.2,1)}@keyframes statsChartIn{0%{filter:blur(1.5px);opacity:0;transform:translateY(18px) scale(.985)}to{filter:blur(0);opacity:1;transform:translateY(0)}}.stats-modal-content h2+p{color:#f1f5ffbf;margin:0}.chart-section h3{color:#e2e8f0;font-size:.95rem;letter-spacing:.04em;margin-bottom:12px;text-align:left;text-transform:uppercase}.no-data{color:#e2e8f0a6;font-style:italic;padding:20px;text-align:center}.header-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.stats-time-controls{display:flex;gap:8px;justify-content:center;margin-top:8px;width:100%}.stats-time-controls button{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#e2e8f0;cursor:pointer;font-size:.85rem;padding:4px 10px;transition:all .2s ease}.stats-time-controls button:hover{background:#fff3;border-color:#ffffff4d}.stats-time-controls button.active{background:#ffffff4d;border-color:#ffffff80;color:#fff;font-weight:600}.stats-time-controls button:active{transform:translateY(1px)}.import-export-modal{background-color:var(--bg-color);border-radius:12px;box-shadow:0 10px 30px #00000026;color:var(--text-color);display:flex;flex-direction:column;max-width:650px;min-height:480px;padding:24px;width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.modal-header h2{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.modal-content{display:flex;flex:1 1;flex-direction:column}.category-selection{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:20px}.category-card{align-items:center;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;height:140px;justify-content:center;padding:24px;transition:all .2s cubic-bezier(.25,.8,.25,1)}.category-card:hover{background-color:var(--bg-hover);border-color:var(--primary-color);box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.category-icon{color:var(--primary-color);height:48px;margin-bottom:16px;transition:transform .2s;width:48px}.category-card:hover .category-icon{transform:scale(1.1)}.category-title{color:var(--text-color);font-size:1.05rem;font-weight:600}.back-button{align-items:center;background-color:initial;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9rem;gap:6px;margin-bottom:0;margin-left:-10px;padding:6px 10px;transition:background .2s,color .2s}.back-button:hover{background-color:#0000000d;color:var(--text-color);text-decoration:none}.back-icon{height:16px;width:16px}.section-header{align-items:flex-start;display:flex;flex-direction:column;margin-bottom:24px}.section-header h3{font-size:1.25rem;font-weight:600;margin:10px 0 0}.fade-in{animation:fadeIn .4s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.upload-container{margin-bottom:24px}.file-drop-zone{align-items:center;background-color:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:180px;padding:40px;transition:all .2s ease}.file-drop-zone:hover:not(.disabled){background-color:rgba(var(--primary-rgb),.05);border-color:var(--primary-color)}.file-drop-zone.has-file{background-color:#4caf500d;border-color:#4caf50;border-style:solid;cursor:default}.file-drop-zone.disabled{cursor:not-allowed;opacity:.6}.upload-icon{color:var(--text-secondary);height:48px;margin-bottom:12px;width:48px}.upload-text{color:var(--text-color);font-size:1rem;font-weight:600;margin-bottom:4px}.upload-hint{color:var(--text-secondary);font-size:.85rem}.upload-hint code{background:#0000001a;border-radius:4px;font-family:Consolas,monospace;padding:2px 4px}.file-info{align-items:center;display:flex;flex-direction:column;text-align:center}.file-icon{color:#4caf50;height:40px;margin-bottom:8px;width:40px}.file-details{display:flex;flex-direction:column;margin-bottom:12px}.file-name{font-size:1rem;font-weight:600}.change-file-btn,.file-size{color:var(--text-secondary);font-size:.85rem}.change-file-btn{background:none;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;padding:4px 12px;transition:all .2s}.change-file-btn:hover{border-color:var(--text-color);color:var(--text-color)}.options-panel{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.checkbox-row{align-items:flex-start;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:background-color .2s}.checkbox-row:hover{background-color:var(--bg-hover)}.checkbox-row input[type=checkbox]{accent-color:var(--primary-color);height:18px;margin-top:4px;width:18px}.checkbox-content{display:flex;flex-direction:column}.checkbox-title{font-size:.95rem;font-weight:600}.checkbox-desc{color:var(--text-secondary);font-size:.85rem}.info-panel{background-color:var(--bg-secondary);border-radius:8px;margin-bottom:24px;padding:16px}.csv-example-container{margin-bottom:12px}.example-label{color:var(--text-secondary);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.csv-code-block{background-color:#1e1e1e;border-radius:6px;color:#e0e0e0;font-family:Consolas,Monaco,monospace;font-size:.8rem;line-height:1.4;margin:0;overflow-x:auto;padding:12px}.metrics-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.legend-title{color:var(--text-secondary);font-size:.85rem}.tag{background-color:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);border-radius:12px;color:var(--primary-color);font-size:.75rem;font-weight:600;padding:2px 8px}.primary-action-btn{align-items:center;background-color:var(--primary-color);border:none;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:1.05rem;font-weight:600;gap:12px;justify-content:center;padding:14px;transition:.2s}.primary-action-btn:hover:not(:disabled){background-color:#0056b3;background-color:var(--primary-color-dark,#0056b3);box-shadow:0 6px 12px #00000026;transform:translateY(-1px)}.primary-action-btn:disabled{background-color:#ccc;background-color:var(--disabled-color,#ccc);box-shadow:none;cursor:not-allowed}.spinner-small{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.status-message{font-size:.95rem;margin-top:20px;padding:12px}.status-message.success{background-color:#4caf5026;border:1px solid #4caf504d;color:#2e7d32}.status-message.error{background-color:#f4433626;border:1px solid #f443364d;color:#d32f2f}.import-log{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:24px;max-height:200px;overflow-y:auto;padding:16px}.import-log h4,.import-report h4{color:var(--text-secondary);font-size:.9rem;letter-spacing:.05em;margin-bottom:12px;margin-top:0;text-transform:uppercase}.log-entry{border-bottom:1px solid #0000000d;font-size:.85rem;gap:15px;padding:6px 0}.log-entry:last-child{border-bottom:none}.log-time{font-family:monospace;min-width:65px}.report-table-wrapper{border:1px solid var(--border-color);border-radius:8px;margin-top:20px;overflow-x:auto}.import-report th{background-color:var(--bg-secondary);font-weight:600;padding:12px;text-align:left}.import-report td{border-top:1px solid var(--border-color);padding:10px 12px}.status-imported{color:#2e7d32}.status-skipped{color:#f57c00}.status-message{border-radius:4px;margin-top:15px;padding:10px;text-align:center}.status-message.success{background-color:#4caf501a;color:#4caf50}.status-message.error{background-color:#f443361a;color:#f44336}.export-section{border-top:1px solid var(--border-color);margin-top:30px;opacity:.6;padding-top:20px}.progress-container{margin-top:15px;width:100%}.progress-bar{background-color:#333;background-color:var(--bg-secondary,#333);border-radius:5px;margin-bottom:5px}.progress-fill{background-color:#4a90e2;background-color:var(--primary-color,#4a90e2)}.progress-text{color:#aaa;color:var(--text-secondary,#aaa)}.import-log,.import-report{margin-top:20px}.import-log h4,.import-report h4{font-size:1rem;margin-bottom:8px}.log-entries{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;font-size:.85rem;max-height:160px;overflow-y:auto;padding:10px}.log-entry{color:var(--text-secondary);display:flex;gap:12px;margin-bottom:6px}.log-entry:last-child{margin-bottom:0}.log-time{color:var(--text-secondary);font-family:Courier New,Courier,monospace;min-width:80px}.log-message{color:var(--text-color);flex:1 1}.import-report .report-table-wrapper{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;overflow:hidden}.import-report table{border-collapse:collapse;font-size:.85rem;width:100%}.import-report td,.import-report th{border-bottom:1px solid var(--border-color);padding:8px;text-align:left}.import-report tr:last-child td{border-bottom:none}.status-imported{color:#4caf50;font-weight:600}.status-skipped{color:#f9a825;font-weight:600}.metrics-import-section{border-top:1px solid var(--border-color);margin-top:30px;padding-top:20px}.metrics-guidelines{color:var(--text-secondary);font-size:.85rem;list-style:disc;margin:0 0 15px 18px;padding:0}.metrics-guidelines li{margin-bottom:4px}.csv-example{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-family:Courier New,Courier,monospace;font-size:.85rem;margin-bottom:15px;padding:10px;white-space:pre-wrap}.inferences-modal{border-radius:18px;box-sizing:border-box;color:#f5f5f5;color:var(--text-color,#f5f5f5);display:flex;flex-direction:column;padding:0;width:100%}.inferences-modal .modal-header{align-items:flex-start;border-bottom:1px solid #ffffff14;display:flex;gap:16px;justify-content:space-between;padding-bottom:16px}.inferences-modal h2{font-size:1.6rem;margin:0}.inferences-modal .subhead{color:#ffffffb3;font-size:.95rem;margin:6px 0 0}.text-button{background:none;border:none;color:#5dfbd8;color:var(--primary-color,#5dfbd8);cursor:pointer;font-weight:600}.actions-row{align-items:flex-start;border:1px solid #ffffff14;border-radius:12px;display:flex;gap:18px;justify-content:space-between;margin-top:20px;padding:16px}.action-copy h4{font-size:1.05rem;margin:0 0 6px}.action-copy p{color:#ffffffa6;font-size:.9rem;margin:0}.action-buttons{align-items:stretch;display:flex;flex-direction:column;gap:10px;width:100%}.rerun-btn{align-items:center;background:linear-gradient(135deg,#ff7b39,#fbd34c);border:none;border-radius:999px;box-shadow:0 10px 20px #fba44c59;color:#1c1308;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;padding:12px 18px}.rerun-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.cancel-btn{background:#0000;border:1px solid #ffffff4d;border-radius:999px;color:#fffc;cursor:pointer;font-weight:600;padding:10px 18px;transition:border-color .2s ease,color .2s ease}.cancel-btn:hover{border-color:#fff9;color:#fff}.btn-icon{height:20px;width:20px}.job-status{background:#ffffff0a;border-radius:12px;margin-top:24px;padding:16px}.job-status-row{display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:10px}.job-status-row .label{color:#fff9}.progress-container{margin-top:8px}.progress-bar{background:#ffffff14;border-radius:999px;height:10px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(135deg,#5dfbd8,#2ec4b6);height:100%;transition:width .3s ease}.progress-text{color:#ffffffb3;font-size:.85rem;margin-top:6px;text-align:center}.job-summary{color:#ffffffbf;font-size:.9rem;margin-top:8px}.status-message{font-size:.9rem;margin-top:16px;padding:10px 14px}.status-message.success{background:#5dfbd81f;color:#5dfbd8}.status-message.error{background:#ff5e5e1f;color:#ff6b6b}.inference-table-wrapper{border:1px solid #ffffff14;border-radius:12px;margin-top:24px;max-height:420px;overflow-x:auto}.inference-table{border-collapse:collapse;font-size:.9rem;min-width:600px;width:100%}.inference-table td,.inference-table th{border-bottom:1px solid #ffffff14;padding:12px;text-align:left}.inference-table th{background:#ffffff08;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.inference-table tr:last-child td{border-bottom:none}.inference-cell.muted{color:#fff9;text-align:center}.inference-cell.error{color:#ff6b6b;text-align:center}.status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.8rem;font-weight:600;margin:10px;padding:4px 10px;text-transform:capitalize}.status-pill.status-processing{background:#ffb03826;color:#ffb038}.status-pill.status-completed{background:#5dfbd826;color:#5dfbd8}.status-pill.status-failed{background:#ff6b6b2e;color:#ff6b6b}.status-pill.status-skipped,.status-pill.status-unknown{background:#ffffff1a;color:#ffffffb3}.inference-note{display:flex;flex-direction:column;gap:2px}.inference-confidence{font-weight:600}.inference-comparability{color:#ffffffa6;font-size:.8rem}@media (max-width:640px){.actions-row{align-items:flex-start;flex-direction:column}.rerun-btn{justify-content:center;width:100%}.inference-table-wrapper{max-height:none}.inference-table td:nth-child(2),.inference-table th:nth-child(2){display:none}}.upgrade-modal{color:#fff;max-width:480px;padding:0;width:100%}.upgrade-header{border-bottom:1px solid #333;padding:24px 24px 16px;text-align:center}.upgrade-header h2{font-size:1.75rem;font-weight:700;margin:0 0 8px}.upgrade-feature-prompt{align-items:center;color:#f59e0b;display:flex;font-size:.95rem;gap:6px;justify-content:center;margin:0}.upgrade-lock{font-size:1rem}.upgrade-body{padding:24px}.upgrade-current-plan{color:#22c55e;font-size:1.1rem;margin-bottom:20px;text-align:center}.upgrade-manage-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:transform .2s,box-shadow .2s;width:100%}.upgrade-manage-btn:hover{box-shadow:0 4px 20px #3b82f666;transform:translateY(-2px)}.upgrade-features{margin-bottom:24px}.upgrade-features h3{color:#aaa;font-size:1rem;font-weight:600;margin:0 0 12px}.upgrade-features ul{list-style:none;margin:0;padding:0}.upgrade-features li{align-items:center;color:#ddd;display:flex;font-size:.95rem;gap:8px;padding:8px 0}.upgrade-pricing{margin-bottom:24px}.upgrade-interval-toggle{display:flex;gap:8px;margin-bottom:20px}.interval-btn{align-items:center;background:#2a2a2a;border:2px solid #444;border-radius:10px;color:#aaa;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:.9rem;font-weight:500;gap:4px;padding:12px 16px;transition:all .2s}.interval-btn:hover{border-color:#666;color:#fff}.interval-btn.active{background:linear-gradient(135deg,#f59e0b33,#f59e0b1a);border-color:#f59e0b;color:#fff}.save-badge{color:#22c55e;font-size:.75rem;font-weight:600}.upgrade-price-display{background:#1a1a1a;border-radius:12px;padding:16px;text-align:center}.price-amount{color:#fff;font-size:2.5rem;font-weight:700}.price-period{color:#888;font-size:1.1rem}.price-billed{color:#666;display:block;font-size:.85rem;margin-top:4px}.upgrade-cta-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#000;cursor:pointer;font-size:1.1rem;font-weight:700;margin-bottom:12px;padding:16px 24px;transition:transform .2s,box-shadow .2s;width:100%}.upgrade-cta-btn:hover:not(:disabled){box-shadow:0 4px 20px #f59e0b66;transform:translateY(-2px)}.upgrade-cta-btn:disabled{cursor:not-allowed;opacity:.6}.upgrade-guarantee{color:#666;font-size:.85rem;margin:0;text-align:center}.upgrade-footer{border-top:1px solid #333;padding:16px 24px;text-align:center}.upgrade-close-btn{background:#0000;border:1px solid #444;border-radius:8px;color:#888;cursor:pointer;font-size:.9rem;padding:10px 24px;transition:all .2s}.upgrade-close-btn:hover{border-color:#666;color:#fff}.pro-badge{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:4px;color:#000;display:inline-flex;font-size:.7rem;font-weight:700;gap:4px;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.feature-locked{position:relative}.feature-locked:after{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;border-radius:inherit;content:"";inset:0;position:absolute}.feature-locked-badge{align-items:center;color:#fff;display:flex;flex-direction:column;gap:8px;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:1}.feature-locked-badge .lock-icon{font-size:1.5rem}.feature-locked-badge .upgrade-link{color:#f59e0b;cursor:pointer;font-size:.85rem;text-decoration:underline}.feature-locked-badge .upgrade-link:hover{color:#fbbf24}.hamburger-menu{position:relative}.hamburger-menu,.menu-icon{align-items:center;display:flex}.menu-icon{background-color:initial;border:none;border-radius:8px;color:#f3f4f6;color:var(--color-text-light,#f3f4f6);cursor:pointer;height:2.5rem;justify-content:center;padding:6px;transition:background-color .2s;width:2.5rem}.menu-icon:hover{background-color:#ffffff1a}.menu-icon svg{height:1.75rem;width:1.75rem}.menu-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999}.menu-dropdown{animation:menu-slide-in .2s ease-out;background-color:#1f2937;background-color:var(--color-bg-card,#1f2937);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 10px 15px -3px #00000080,0 4px 6px -2px #0000004d;left:0;max-width:90vw;overflow:hidden;padding:.5rem;position:absolute;top:3.5rem;width:260px;z-index:1000}@keyframes menu-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#e5e7eb;color:var(--color-text-light,#e5e7eb);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;justify-content:flex-start;margin-bottom:2px;padding:12px 16px;text-align:left;transition:background-color .2s,color .2s;width:100%}.menu-item:hover{background-color:#ffffff1a;color:#fff}.menu-item:active{background-color:#ffffff26}.menu-item-icon{color:#3b82f6;color:var(--color-primary,#3b82f6);height:1.25rem;margin-right:12px;opacity:.9;width:1.25rem}.menu-item:hover .menu-item-icon{opacity:1}.menu-item-upgrade{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border:1px solid #f59e0b4d;color:#f59e0b}.menu-item-upgrade:hover{background:linear-gradient(135deg,#f59e0b40,#f59e0b1a);border-color:#f59e0b80}.menu-item-upgrade .menu-item-icon{color:#f59e0b}.menu-item-locked{opacity:.7;position:relative}.menu-item-locked:hover{opacity:1}.menu-item-icon-locked{color:#f59e0b!important}.pro-badge-small{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:4px;color:#1f2937;font-size:.6rem;font-weight:700;letter-spacing:.5px;margin-left:auto;padding:2px 6px;text-transform:uppercase}.menu-legal-links{border-top:1px solid #ffffff1a;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px;padding:12px 16px}.menu-legal-links a{color:#fff6;font-size:.75rem;text-decoration:none;transition:color .2s ease}.menu-legal-links a:hover{color:#ffffffb3}.strategy-content{background:linear-gradient(180deg,#1a1a1a,#000);border-radius:8px;min-height:200px;padding:24px}.strategy-header{align-items:center;border-bottom:1px solid #333;display:flex;flex-direction:column;margin-bottom:24px;padding-bottom:20px}.strategy-header-icon{animation:strategy-float 3s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(147,130,255,.3));font-size:48px;margin-bottom:10px}@keyframes strategy-float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.strategy-content h2{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#c4b5fd,#a78bfa);-webkit-background-clip:text;color:#fff;font-size:24px;letter-spacing:.5px;margin:0;text-align:center}.strategy-subtitle{color:#888;font-size:13px;margin-top:6px;text-align:center}.strategy-chat{display:flex;flex-direction:column;gap:12px;max-height:50vh;overflow-y:auto;padding:4px 0}.strategy-chat::-webkit-scrollbar{width:4px}.strategy-chat::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.strategy-message{border-radius:12px;font-size:14px;line-height:1.5;max-width:85%;padding:12px 16px;white-space:pre-wrap}.strategy-message.ai{align-self:flex-start;background:#a78bfa1a;border:1px solid #a78bfa26;border-bottom-left-radius:4px;color:#d1d5db}.strategy-message.user{align-self:flex-end;background:#ffffff14;border:1px solid #ffffff1a;border-bottom-right-radius:4px;color:#fff}.strategy-input-row{display:flex;gap:8px;margin-top:16px}.strategy-input{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;color:#fff;flex:1 1;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s}.strategy-input:focus{border-color:#a78bfa80}.strategy-input::placeholder{color:#555}.strategy-send-btn{background:linear-gradient(135deg,#7c3aed,#6d28d9);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:opacity .2s;white-space:nowrap}.strategy-send-btn:hover{opacity:.9}.strategy-send-btn:disabled{cursor:not-allowed;opacity:.4}.strategy-active{display:flex;flex-direction:column;gap:20px}.strategy-title-bar{align-items:center;display:flex;justify-content:space-between}.strategy-title{color:#fff;font-size:18px;font-weight:600;margin:0}.strategy-status{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.strategy-status.active{background:#4ade8026;border:1px solid #4ade8033;color:#4ade80}.strategy-status.draft{background:#fbbf2426;border:1px solid #fbbf2433;color:#fbbf24}.strategy-status.completed{background:#60a5fa26;border:1px solid #60a5fa33;color:#60a5fa}.strategy-goal{color:#a0a0a0;font-size:14px;line-height:1.5}.strategy-meta{display:flex;flex-wrap:wrap;gap:16px}.strategy-meta-item{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:8px;flex:1 1;min-width:100px;padding:8px 14px}.strategy-meta-label{color:#666;font-size:11px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.strategy-meta-value{color:#d1d5db;font-size:14px;font-weight:500}.strategy-phases{display:flex;flex-direction:column;gap:8px}.strategy-phases-title{color:#a78bfa;font-size:14px;font-weight:600;margin-bottom:4px}.strategy-phase{align-items:flex-start;background:#ffffff08;border:1px solid #ffffff0d;border-radius:8px;display:flex;gap:12px;padding:10px 14px}.strategy-phase.current{background:#a78bfa14;border-color:#a78bfa33}.strategy-phase-indicator{background:#444;border-radius:50%;flex-shrink:0;height:8px;margin-top:5px;width:8px}.strategy-phase.current .strategy-phase-indicator{background:#a78bfa;box-shadow:0 0 6px #a78bfa66}.strategy-phase.completed .strategy-phase-indicator{background:#4ade80}.strategy-phase-info{flex:1 1}.strategy-phase-name{color:#e0e0e0;font-size:14px;font-weight:500}.strategy-phase-weeks{color:#666;font-size:12px;margin-left:6px}.strategy-phase-focus{color:#888;font-size:13px;margin-top:2px}.strategy-milestones{display:flex;flex-direction:column;gap:6px}.strategy-milestones-title{color:#a78bfa;font-size:14px;font-weight:600;margin-bottom:4px}.strategy-milestone{align-items:center;color:#bbb;display:flex;font-size:13px;gap:10px;padding:6px 0}.strategy-milestone-check{align-items:center;border:1px solid #444;border-radius:4px;display:flex;flex-shrink:0;font-size:11px;height:18px;justify-content:center;width:18px}.strategy-milestone-check.done{background:#4ade8026;border-color:#4ade80;color:#4ade80}.strategy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.strategy-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:opacity .2s}.strategy-btn:hover{opacity:.9}.strategy-btn.primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff}.strategy-btn.secondary{background:#ffffff14;border:1px solid #ffffff1a;color:#d1d5db}.strategy-btn.danger{background:#ef444426;border:1px solid #ef444433;color:#ef4444}.strategy-btn:disabled{cursor:not-allowed;opacity:.4}.strategy-review{background:#a78bfa0f;border:1px solid #a78bfa1f;border-radius:12px;padding:16px}.strategy-review-title{color:#a78bfa;font-size:14px;font-weight:600;margin-bottom:8px}.strategy-review-text{color:#d1d5db;font-size:14px;line-height:1.6;white-space:pre-wrap}.strategy-loading{color:#777;padding:40px;text-align:center}.strategy-loading-spinner{animation:strategy-spin .8s linear infinite;border:2px solid #a78bfa4d;border-radius:50%;border-top-color:#a78bfa;display:inline-block;height:24px;margin-bottom:12px;width:24px}@keyframes strategy-spin{to{transform:rotate(1turn)}}.strategy-loading-text{color:#888;font-size:14px;font-style:italic}.strategy-empty{padding:30px 20px;text-align:center}.strategy-empty-icon{font-size:48px;margin-bottom:16px}.strategy-empty-text{color:#888;font-size:15px;line-height:1.6;margin-bottom:20px}.strategy-tabs{border-bottom:1px solid #333;display:flex;gap:0;margin-bottom:20px}.strategy-tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;font-size:14px;padding:8px 16px;transition:color .2s,border-color .2s}.strategy-tab.active{border-bottom-color:#a78bfa;color:#a78bfa}.strategy-history-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:8px;cursor:pointer;margin-bottom:8px;padding:12px;transition:background .2s}.strategy-history-item:hover{background:#ffffff0f}.strategy-history-title{color:#e0e0e0;font-size:14px;font-weight:500}.strategy-history-meta{color:#666;font-size:12px;margin-top:4px}.legal-page{background:linear-gradient(135deg,#0f0f1a,#1a1a2e 50%,#16213e);color:#e5e7eb;min-height:100vh;padding:20px}.legal-container{margin:0 auto;max-width:800px;padding:20px 0}.legal-header{border-bottom:1px solid #ffffff1a;margin-bottom:40px;padding-bottom:30px;text-align:center}.back-link{color:#60a5fa;display:inline-block;font-size:.9rem;margin-bottom:20px;text-decoration:none;transition:color .2s ease}.back-link:hover{color:#93c5fd}.legal-header h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 10px}.legal-header .tagline{color:#ffffffb3;font-size:1.2rem;margin:0}.legal-header .meta{color:#ffffff80;font-size:.85rem;margin:10px 0 0}section{margin-bottom:30px}section h2{border-bottom:1px solid #ffffff1a;color:#fff;font-size:1.4rem;font-weight:600;margin:0 0 15px;padding-bottom:10px}section h3{color:#93c5fd;font-size:1.1rem;font-weight:600;margin:20px 0 10px}section p{color:#ffffffd9;line-height:1.7;margin-bottom:15px}section ol,section ul{margin:15px 0;padding-left:25px}section li{color:#ffffffd9;line-height:1.7;margin-bottom:8px}section a{color:#60a5fa;text-decoration:none}section a:hover{text-decoration:underline}.warning{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;margin:15px 0;padding:15px}.highlight-box{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:12px;margin:20px 0;padding:20px}.highlight-box h3{color:#60a5fa;margin-top:0}.highlight-box ul{margin-bottom:0}.pricing-page .pricing-intro{margin:0 auto 40px;max-width:600px;text-align:center}.pricing-tiers{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:50px}.pricing-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:30px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.pricing-card:hover{box-shadow:0 10px 40px #0000004d;transform:translateY(-5px)}.pricing-card.featured{background:linear-gradient(135deg,#3b82f61a,#9333ea0d);border-color:#3b82f680}.featured-badge{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;left:50%;letter-spacing:.5px;padding:6px 16px;position:absolute;text-transform:uppercase;top:-12px;transform:translateX(-50%)}.tier-header{margin-bottom:20px;text-align:center}.tier-header h2{border:none;font-size:1.5rem;margin:0 0 10px;padding:0}.tier-header .price{margin-bottom:5px}.tier-header .price .amount{color:#fff;font-size:2.5rem;font-weight:700}.tier-header .price .period{color:#fff9;font-size:1rem}.yearly-option{color:#22c55e;font-size:.85rem}.tier-description{color:#ffffffb3;margin-bottom:20px;text-align:center}.feature-list{list-style:none;margin:0 0 25px;padding:0}.feature-list li{border-bottom:1px solid #ffffff0d;font-size:.9rem;padding:8px 0}.feature-list li:last-child{border-bottom:none}.feature-list li.highlight{border-top:1px solid #ffffff1a;color:#60a5fa;font-weight:600;margin-top:10px;padding-top:15px}.tier-action{display:flex;flex-direction:column;gap:10px;text-align:center}.btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.btn-primary:hover{box-shadow:0 5px 20px #3b82f666;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:#ffffff1a;border:1px solid #fff3;color:#fff}.btn-secondary:hover{background:#ffffff26}.coming-soon{background:#22c55e1a;border:1px solid #22c55e4d;border-radius:8px;padding:15px;text-align:center}.coming-soon span{color:#22c55e;display:block;font-size:1.1rem;font-weight:600;margin-bottom:5px}.coming-soon p{color:#ffffffb3;font-size:.85rem;margin:0}.pricing-faq{margin-top:50px}.pricing-faq h2{margin-bottom:30px;text-align:center}.faq-item{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;margin-bottom:15px;padding:20px}.faq-item h3{color:#fff;margin:0 0 10px}.faq-item p{color:#ffffffb3;font-size:.95rem;margin:0}.legal-footer{border-top:1px solid #ffffff1a;margin-top:50px;padding-top:30px;text-align:center}.footer-links{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:20px}.footer-links a{color:#fff9;font-size:.9rem;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:#60a5fa}.copyright{color:#fff6;font-size:.85rem;margin:0}.policy-summary{margin-bottom:30px}@media (max-width:768px){.legal-header h1{font-size:2rem}.pricing-tiers{grid-template-columns:1fr}.pricing-card{padding:25px 20px}.tier-header .price .amount{font-size:2rem}.footer-links{flex-direction:column;gap:12px}}@media (max-width:480px){.legal-page{padding:15px}.legal-header h1{font-size:1.75rem}section h2{font-size:1.2rem}.pricing-card{padding:20px 15px}}.support-form{background:#ffffff0d;border-radius:12px;margin-top:20px;padding:25px}.form-group{margin-bottom:20px}.form-group label{color:#93c5fd;display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.form-group input,.form-group textarea{background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;box-sizing:border-box;color:#fff;font-family:inherit;font-size:1rem;padding:12px 15px;transition:border-color .2s ease,background .2s ease;width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group input:focus,.form-group textarea:focus{background:#ffffff1a;border-color:#60a5fa;outline:none}.form-group textarea{min-height:120px;resize:vertical}.submit-button{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:opacity .2s ease,transform .2s ease;width:100%}.submit-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.submit-button:disabled{cursor:not-allowed;opacity:.6}.status-message{border-radius:8px;font-weight:500;margin-bottom:20px;padding:15px 20px}.status-message.success{background:#10b98126;border:1px solid #10b9814d;color:#34d399}.status-message.error{background:#ef444426;border:1px solid #ef44444d;color:#f87171}.support-email-link{color:#60a5fa;font-size:1.1rem;font-weight:600}.support-email-link:hover{color:#93c5fd;text-decoration:underline}.readonly-field{background:#ffffff08!important;border-color:#ffffff14!important;color:#fff9!important;cursor:not-allowed}.animated-logo-container{align-items:center;display:flex;flex-direction:column;justify-content:center;opacity:0;padding:10px;position:relative;transform:scale(.8) translateY(20px);transition:all .8s cubic-bezier(.34,1.56,.64,1);z-index:10}.animated-logo-container.loaded{opacity:1;transform:scale(1) translateY(0)}.logo-wrapper{align-items:center;display:flex;height:160px;justify-content:center;position:relative;width:160px}.logo-svg{filter:drop-shadow(0 0 20px rgba(99,102,241,.4));height:120px;position:relative;width:120px;z-index:5}.logo-bg-glow{fill:#0000;stroke:#6366f14d;stroke-width:2;animation:pulseGlow 3s ease-in-out infinite}@keyframes pulseGlow{0%,to{stroke-opacity:.2;stroke-width:2}50%{stroke-opacity:.5;stroke-width:4}}.logo-ring{animation:ringPulse 4s ease-in-out infinite}.k-group{animation:kEntrance 1s ease-out forwards;animation-delay:.3s;opacity:0}@keyframes kEntrance{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.k-pillar{animation:drawPillar .8s ease-out forwards;animation-delay:.5s;transform:scaleY(0);transform-origin:center bottom}@keyframes drawPillar{to{transform:scaleY(1)}}.k-arm{stroke-dasharray:30;stroke-dashoffset:30;animation:drawLine .6s ease-out forwards;animation-delay:.9s}.k-leg{stroke-dasharray:35;stroke-dashoffset:35;animation:drawLine .6s ease-out forwards;animation-delay:1.1s}@keyframes drawLine{to{stroke-dashoffset:0}}.highlight{animation:twinkle 2s ease-in-out infinite}.highlight.h1{animation-delay:0s}.highlight.h2{animation-delay:.6s}.highlight.h3{animation-delay:1.2s}@keyframes twinkle{0%,to{r:1.5;opacity:.2}50%{r:2.5;opacity:.8}}.glow-ring{border:1px solid #0000;border-radius:50%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.ring-1{animation:ringExpand 3s ease-out infinite;border-color:#6366f133;height:140px;width:140px}.ring-2{animation:ringExpand 3s ease-out 1s infinite;border-color:#3b82f626;height:160px;width:160px}.ring-3{animation:ringExpand 3s ease-out 2s infinite;border-color:#2dd4bf1a;height:180px;width:180px}@keyframes ringExpand{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.energy-particles{height:200px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:200px}.particle{animation:particleFloat 4s ease-in-out infinite;background:linear-gradient(135deg,#818cf8,#60a5fa);border-radius:50%;box-shadow:0 0 6px #6366f1cc;height:4px;position:absolute;width:4px}.particle-1{animation-delay:0s;left:50%;top:10%}.particle-2{animation-delay:.3s;left:85%;top:20%}.particle-3{animation-delay:.6s;left:95%;top:50%}.particle-4{animation-delay:.9s;left:85%;top:80%}.particle-5{animation-delay:1.2s;left:50%;top:90%}.particle-6{animation-delay:1.5s;left:15%;top:80%}.particle-7{animation-delay:1.8s;left:5%;top:50%}.particle-8{animation-delay:2.1s;left:15%;top:20%}.particle-9{animation-delay:2.4s;left:30%;top:5%}.particle-10{animation-delay:2.7s;left:70%;top:5%}.particle-11{animation-delay:3s;left:30%;top:95%}.particle-12{animation-delay:3.3s;left:70%;top:95%}@keyframes particleFloat{0%,to{opacity:0;transform:translateY(0) scale(1)}10%{opacity:1}50%{opacity:.8;transform:translateY(-10px) scale(1.2)}90%{opacity:1}}.brand-text{align-items:center;display:flex;flex-direction:column;margin-top:24px;z-index:5}.brand-name{align-items:baseline;display:flex;font-size:2.5rem;font-weight:800;letter-spacing:-.02em}.letter{animation:letterReveal .5s ease-out forwards;display:inline-block;opacity:0;transform:translateY(20px)}.letter.k{animation-delay:1.2s;color:#818cf8}.letter.a1{animation-delay:1.3s;color:#a5b4fc}.letter.t{animation-delay:1.4s;color:#93c5fd}.letter.a2{animation-delay:1.5s;color:#7dd3fc}.letter.dot{animation-delay:1.6s;color:#5eead4}.letter.f{animation-delay:1.7s;color:#5eead4}.letter.i{animation-delay:1.8s;color:#34d399}.letter.t2{animation-delay:1.9s;color:#10b981}@keyframes letterReveal{0%{opacity:0;transform:translateY(20px) scale(.5)}60%{transform:translateY(-5px) scale(1.1)}to{opacity:1;transform:translateY(0) scale(1)}}.tagline{animation:fadeInUp .6s ease-out forwards;animation-delay:2.2s;color:#ffffff80;font-size:.95rem;letter-spacing:.05em;margin-top:8px;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animated-logo-container:hover .logo-svg{filter:drop-shadow(0 0 30px rgba(99,102,241,.6));transform:scale(1.05);transition:all .3s ease}.animated-logo-container:hover .particle{animation-duration:2s}.animated-logo-container:hover .brand-name .letter{animation:letterBounce .4s ease-out}.animated-logo-container:hover .letter.k{animation-delay:0s}.animated-logo-container:hover .letter.a1{animation-delay:.05s}.animated-logo-container:hover .letter.t{animation-delay:.1s}.animated-logo-container:hover .letter.a2{animation-delay:.15s}.animated-logo-container:hover .letter.dot{animation-delay:.2s}.animated-logo-container:hover .letter.f{animation-delay:.25s}.animated-logo-container:hover .letter.i{animation-delay:.3s}.animated-logo-container:hover .letter.t2{animation-delay:.35s}@keyframes letterBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width:480px){.logo-svg{height:100px;width:100px}.brand-name{font-size:2rem}.tagline{font-size:.85rem}.glow-ring{display:none}.energy-particles{height:150px;width:150px}}.loading-screen{align-items:center;background:#030712;display:flex;height:100vh;justify-content:center;left:0;opacity:0;overflow:hidden;position:fixed;top:0;transition:opacity .6s ease-out,transform .6s ease-out;width:100vw;z-index:9999}.loading-screen.mounted{opacity:1}.loading-screen.exiting{opacity:0;pointer-events:none;transform:scale(1.02)}.loading-bg{inset:0;overflow:hidden;position:absolute}.gradient-orb{animation:orbFloat 15s ease-in-out infinite;border-radius:50%;filter:blur(80px);opacity:.4;position:absolute}.orb-1{animation-delay:0s;background:radial-gradient(circle,#6366f1 0,#0000 70%);height:500px;left:-10%;top:-20%;width:500px}.orb-2{animation-delay:-5s;background:radial-gradient(circle,#3b82f6 0,#0000 70%);bottom:-15%;height:400px;right:-10%;width:400px}.orb-3{animation-delay:-10s;background:radial-gradient(circle,#10b981 0,#0000 70%);height:350px;left:50%;top:50%;transform:translate(-50%,-50%);width:350px}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,10px) scale(1.05)}}.loading-grid{animation:gridPan 20s linear infinite;background-image:linear-gradient(#6366f108 1px,#0000 0),linear-gradient(90deg,#6366f108 1px,#0000 0);background-size:50px 50px;inset:0;position:absolute}@keyframes gridPan{0%{background-position:0 0}to{background-position:50px 50px}}.loading-particles{inset:0;overflow:hidden;pointer-events:none;position:absolute}.loading-particle{animation:particleRise linear infinite;background:linear-gradient(135deg,#818cf8,#60a5fa);border-radius:50%;bottom:-20px;box-shadow:0 0 10px #6366f199;position:absolute}@keyframes particleRise{0%{opacity:0;transform:translateY(0) rotate(0deg)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(-100vh) rotate(1turn)}}.loading-content{align-items:center;display:flex;flex-direction:column;gap:2rem;z-index:10}.loading-logo-container{align-items:center;display:flex;height:160px;justify-content:center;position:relative;width:160px}.loading-ring{animation:ringPulse 3s ease-out infinite;border:1px solid #0000;border-radius:50%;position:absolute}.ring-1{animation-delay:0s;border-color:#6366f14d;height:100%;width:100%}.ring-2{animation-delay:1s;border-color:#3b82f633;height:130%;width:130%}.ring-3{animation-delay:2s;border-color:#10b98126;height:160%;width:160%}@keyframes ringPulse{0%{opacity:0;transform:scale(.8)}30%{opacity:1}to{opacity:0;transform:scale(1.3)}}.loading-logo{animation:logoBreath 4s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(99,102,241,.5));height:100px;width:100px}@keyframes logoBreath{0%,to{filter:drop-shadow(0 0 20px rgba(99,102,241,.4));transform:scale(1)}50%{filter:drop-shadow(0 0 40px rgba(99,102,241,.6));transform:scale(1.02)}}.loading-logo-ring{animation:logoRingPulse 3s ease-in-out infinite}@keyframes logoRingPulse{0%,to{stroke-opacity:.2}50%{stroke-opacity:.5}}.loading-k-pillar{animation:shimmerPillar 2s ease-in-out infinite}.loading-k-arm{stroke-dasharray:30}.loading-k-arm,.loading-k-leg{animation:strokeDash 2s ease-in-out infinite}.loading-k-leg{stroke-dasharray:35;animation-delay:.5s}@keyframes shimmerPillar{0%,to{opacity:.9}50%{opacity:1}}@keyframes strokeDash{0%,to{stroke-dashoffset:0}50%{stroke-dashoffset:10}}.loading-highlight{animation:highlightTwinkle 2s ease-in-out infinite}.loading-highlight.h1{animation-delay:0s}.loading-highlight.h2{animation-delay:.6s}.loading-highlight.h3{animation-delay:1.2s}@keyframes highlightTwinkle{0%,to{r:1.5;opacity:.2}50%{r:2.5;opacity:.8}}.loading-text-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem}.loading-brand{display:flex;font-size:2rem;font-weight:800;letter-spacing:-.02em}.loading-letter{animation:letterWave 2s ease-in-out infinite;display:inline-block}.l-k{animation-delay:0s;color:#818cf8}.l-a1{animation-delay:.1s;color:#a5b4fc}.l-t{animation-delay:.2s;color:#93c5fd}.l-a2{animation-delay:.3s;color:#7dd3fc}.l-dot{animation-delay:.4s}.l-dot,.l-f{color:#5eead4}.l-f{animation-delay:.5s}.l-i{animation-delay:.6s;color:#34d399}.l-t2{animation-delay:.7s;color:#10b981}@keyframes letterWave{0%,to{transform:translateY(0)}25%{transform:translateY(-3px)}50%{transform:translateY(0)}}.loading-progress-container{width:200px}.loading-progress-track{background:#ffffff1a;border-radius:3px;height:3px;overflow:visible;position:relative}.loading-progress-bar{background:linear-gradient(90deg,#6366f1,#3b82f6,#10b981);border-radius:3px;box-shadow:0 0 10px #6366f180;height:100%;transition:width .1s ease-out}.loading-progress-glow{background:radial-gradient(circle,#6366f199 0,#0000 70%);border-radius:50%;height:20px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:left .1s ease-out;width:20px}.loading-status{color:#ffffff80;font-size:.85rem;letter-spacing:.15em;text-transform:uppercase}.loading-dots span{animation:dotPulse 1.5s ease-in-out infinite}.loading-dots span:first-child{animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,60%,to{opacity:.3}30%{opacity:1}}.loading-scanlines{animation:scanlineMove 8s linear infinite;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 0,#00000008 4px);inset:0;pointer-events:none;position:absolute}@keyframes scanlineMove{0%{background-position:0 0}to{background-position:0 100px}}@media (max-width:480px){.loading-logo-container{height:120px;width:120px}.loading-logo{height:80px;width:80px}.loading-brand{font-size:1.6rem}.loading-progress-container{width:160px}.gradient-orb{filter:blur(60px);opacity:.3}.orb-1{height:300px;width:300px}.orb-2{height:250px;width:250px}.orb-3{height:200px;width:200px}}.App{background:#030712;display:flex;flex-direction:column;min-height:100vh;overflow:visible}.verification-banner{align-items:center;display:flex;font-size:.95rem;gap:15px;justify-content:center;left:0;padding:12px 20px;position:fixed;right:0;top:0;z-index:10000}.verification-banner.success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.verification-banner.error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.verification-banner button{background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.2rem;line-height:1;padding:2px 8px}.verification-banner button:hover{background:#ffffff4d}.app-client-zone{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:80vh}.app-client-zone-content{margin:0 auto;max-width:512px;padding-bottom:70px;padding-left:10px;padding-right:10px;width:100%}.app-loading-container{align-items:center;background-color:#111827;background-color:var(--color-bg-card,#111827);color:#f3f4f6;color:var(--color-text-light,#f3f4f6);display:flex;flex-direction:column;gap:1.5rem;height:100vh;justify-content:center}.app-loading-container:before{animation:spin .8s cubic-bezier(.4,0,.2,1) infinite;border-bottom:3px solid #3b82f633;border-left:3px solid #3b82f633;border-radius:50%;border-right:3px solid #3b82f6;border-right-color:var(--color-primary,#3b82f6);border-top:3px solid #3b82f6;border-top-color:var(--color-primary,#3b82f6);box-shadow:0 0 15px #3b82f64d;content:"";display:block;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.app-content-fade-in{animation:appContentFadeIn .5s ease-out forwards}@keyframes appContentFadeIn{0%{opacity:0}to{opacity:1}}.clerk-auth-container{align-items:center;background:#030712;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.clerk-auth-container:before{animation:authBgPulse 10s ease-in-out infinite;background:radial-gradient(circle at 20% 20%,#6366f126 0,#0000 50%),radial-gradient(circle at 80% 80%,#3b82f61a 0,#0000 50%),radial-gradient(circle at 50% 50%,#10b98114 0,#0000 50%);content:"";inset:0;position:absolute}@keyframes authBgPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.clerk-auth-container:after{background-image:linear-gradient(#6366f105 1px,#0000 0),linear-gradient(90deg,#6366f105 1px,#0000 0);background-size:50px 50px;content:"";inset:0;pointer-events:none;position:absolute}.auth-content-wrapper{align-items:center;display:flex;flex-direction:column;gap:1.5rem;position:relative;z-index:10}.auth-footer-links{display:flex;gap:1.5rem;margin-top:.5rem}.auth-footer-links a{color:#ffffff80;font-size:.85rem;text-decoration:none;transition:color .2s ease}.auth-footer-links a:hover{color:#fffc;text-decoration:none}.social-top-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;display:flex;font-size:1.4rem;justify-content:center;padding:8px;position:relative;transition:background .2s}.social-status-indicator{border:2px solid #111827;border:2px solid var(--color-bg-card,#111827);border-radius:50%;bottom:6px;height:10px;position:absolute;right:6px;width:10px;z-index:2}.social-status-indicator.online{background-color:var(--color-success);box-shadow:0 0 5px #22c55e80}.social-status-indicator.offline{background-color:#6b7280}.social-status-indicator.working-out{animation:pulse-status 2s infinite;background-color:var(--color-danger);box-shadow:0 0 5px #ef444480}@keyframes pulse-status{0%{box-shadow:0 0 0 0 #ef4444b3}70%{box-shadow:0 0 0 4px #ef444400}to{box-shadow:0 0 0 0 #ef444400}}.social-top-btn:hover{background:#ffffff1a}.unread-pill{background:#e74c3c;border-radius:10px;color:#fff;font-size:.65rem;font-weight:600;min-width:16px;padding:2px 5px;position:absolute;right:0;text-align:center;top:0;transform:translate(25%,-25%)}.app-loading-container .loading-text{animation:pulse-text 2s ease-in-out infinite;color:#fff9;font-size:.95rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}@keyframes pulse-text{0%,to{opacity:.5;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}.centered-input{display:block;margin:0 auto;min-width:150px;text-align:center;width:auto}.left-items{align-items:left;display:flex;justify-content:flex-start;width:100%}.center-items{align-items:right;display:flex;justify-content:right}.right-items{align-items:center;display:flex;justify-content:flex-end}.stat-workouts-this-week{border-radius:5px;color:#fff;font-size:1.2em;font-weight:700;padding:10px;text-align:center}.stat-golden{animation:shimmer-gold 2s linear infinite;background-color:#8b7500;background:linear-gradient(90deg,#8b7500 25%,#b8860b 50%,#8b7500 75%);background-size:200% 100%}.stat-silver{animation:shimmer-silver 2s linear infinite;background-color:#a9a9a9;background:linear-gradient(90deg,#a9a9a9 25%,silver 50%,#a9a9a9 75%);background-size:200% 100%}.stat-bronze{animation:shimmer-bronze 2s linear infinite;background-color:#8b4513;background:linear-gradient(90deg,#8b4513 25%,#cd7f32 50%,#8b4513 75%);background-size:200% 100%}@keyframes shimmer{0%{background-position:-1000px 0}50%{background-position:1000px 0}to{background-position:-1000px 0}}.shimmer{--shimmer-color:#d4af37;--shimmer-glint:255,255,255;--shimmer-filter:grayscale(1) sepia(1) hue-rotate(10deg) saturate(4) brightness(1.05) contrast(1.05);filter:var(--shimmer-filter);isolation:isolate;position:relative}.shimmer-overlay:before{background:var(--shimmer-color);mix-blend-mode:color;z-index:1}.shimmer-overlay:after,.shimmer-overlay:before{content:"";inset:0;pointer-events:none;position:absolute}.shimmer-overlay:after{animation:shimmer-glint 3s linear infinite;background:linear-gradient(120deg,#0000 30%,rgba(var(--shimmer-glint),.6) 50%,#0000 70%);background-size:200% 100%;mix-blend-mode:overlay;z-index:2}@keyframes shimmer-glint{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer>*{position:relative;z-index:0}.shimmer-wrapper{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;width:100%}.shimmer-gold{--shimmer-color:#d4af37;--shimmer-filter:grayscale(1) sepia(1) hue-rotate(10deg) saturate(4) brightness(1.05) contrast(1.05)}.shimmer-bronze{--shimmer-color:#b45309;--shimmer-filter:grayscale(1) sepia(1) hue-rotate(-45deg) saturate(2.1) brightness(0.78) contrast(1.25)}.shimmer-silver{--shimmer-color:silver;--shimmer-filter:grayscale(1) brightness(1.2) contrast(1.1)}.shimmer-diamond{--shimmer-color:#0ea5e9;--shimmer-glint:14,165,233;--shimmer-filter:grayscale(0) sepia(0) hue-rotate(-5deg) saturate(1.6) brightness(1.1) contrast(1.1)}.badge-shimmer-preview{background:#fff;border-radius:999px;display:inline-block;height:14px;position:relative;width:14px}.badge-shimmer-preview-none{background:#000;opacity:.5}.edit-profile-button{align-items:center;background-color:red;border:2px solid red;border-radius:50%;color:#fff;cursor:pointer;font-size:1em;font-weight:700;height:3.5rem;justify-content:center;margin:0;padding:10px;position:relative;width:3.5rem}.user-icon{color:#fff;height:100%;width:100%}.medal,.medal-parent,.medals{align-items:center;display:flex;justify-content:center}.medal{border-radius:50%;color:#fff;font-size:.8em;font-weight:700;height:1.3em;margin:.5em;padding:.1em;width:1.3em}.medal-current-week{height:1.8em;width:1.8em}.medal-text{align-items:center;display:flex;justify-content:center;margin-right:.3em}.gold-medal{background-color:gold}.silver-medal{background-color:silver}.bronze-medal{background-color:#cd7f32}.message-entry{align-content:center;background-color:#000;border:1px solid gray;border-radius:8px;justify-content:center;margin-bottom:30px;margin-top:50px;min-height:60px;overflow:hidden;padding:8px;text-align:center}.message-entry,.message-entry-content{align-items:center;display:flex;flex-direction:column}.message-entry-content{animation:content-fade .4s ease-out forwards;gap:4px}@keyframes content-fade{0%{opacity:0}to{opacity:1}}.message-entry-placeholder{align-items:center;display:flex;flex-direction:column;gap:8px;width:100%}.placeholder-line{animation:placeholder-shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);border-radius:4px;height:14px}.placeholder-line-short{width:120px}.placeholder-line-long{width:200px}@keyframes placeholder-shimmer{0%,to{opacity:.4}50%{opacity:.7}}.message-entry button{background-color:var(--color-accept);border:none;border-radius:5px;color:#fff;cursor:pointer;margin-top:10px;padding:10px 20px}.message-entry button:hover{background-color:#357ab8}.compliance-text{color:#fff;font-weight:700;margin-left:10px}.compliance-top{font-size:1em}.compliance-rates,.compliance-top{color:#fff;font-weight:700;margin-left:20px}.compliance-rates{display:flex;flex-direction:column;font-size:.9em}.compliance-rates div{margin-bottom:2px}.compliance-badge{align-items:center;cursor:pointer;display:flex;justify-content:center;margin:40px;overflow:visible;position:relative}.badge-svg{position:relative;z-index:1}.compliance-modal{color:#fff;display:flex;flex-direction:column;height:100%;max-width:500px;overflow:visible;padding:12px 16px;text-align:center;width:100%}.compliance-modal h2{color:gold;margin-top:0}.compliance-details{display:flex;flex:1 1;flex-direction:column;min-height:0}.compliance-modal button{background:gold;border:none;border-radius:5px;color:#333;cursor:pointer;font-weight:700;padding:10px 20px}.compliance-modal button:hover{background:#b8860b}.compliance-badge-large{display:flex;justify-content:center;margin-bottom:-15px;margin-top:-10px;overflow:visible;transform:scale(.75);transform-origin:center top}.badge-svg-large{position:relative;transform-origin:center;z-index:1}.compliance-grid{flex-direction:column;gap:8px;padding:0 4px}.compliance-card,.compliance-grid{display:flex;flex:1 1;min-height:0}.compliance-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;padding:8px 12px}.compliance-card-clickable{cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.compliance-card-clickable:hover{background:#ffd70014;border-color:#ffd7004d}.compliance-card-clickable:focus-visible{outline:2px solid gold;outline-offset:2px}.compliance-card-header{align-items:center;display:flex;gap:4px;justify-content:center;margin-bottom:2px}.compliance-card-icon{flex-shrink:0;font-size:14px;text-align:center;width:22px}.compliance-card-label{color:#fff9;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.compliance-card-values{align-items:center;display:flex;flex:1 1;gap:4px;justify-content:space-around}.compliance-card-single-value{gap:2px}.compliance-card-single-value,.compliance-clickable-value{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center}.compliance-clickable-value{border-radius:6px;cursor:pointer;min-width:55px;padding:6px 10px;transition:background-color .15s ease}.compliance-clickable-value:hover{background-color:#ffd70026}.compliance-clickable-value:focus-visible{outline:2px solid gold;outline-offset:1px}.compliance-value-icon{align-items:center;display:flex;height:20px;justify-content:center;margin-bottom:2px}.compliance-value-icon-emoji{font-size:14px}.compliance-value-number{color:gold;font-size:16px;font-weight:700;line-height:1.2}.compliance-value-label{color:#ffffff80;font-size:9px;letter-spacing:.3px;line-height:1.2;text-transform:uppercase}.compliance-mini-flame{border:2px solid;border-radius:50%;display:block;height:12px;width:12px}.compliance-mini-flame.flame-none{border-color:#fff3}.compliance-mini-flame.flame-red{animation:mini-flame-pulse 1.8s ease-in-out infinite;border-color:#ef4444;box-shadow:0 0 4px #ef4444,inset 0 0 2px #ef44444d}.compliance-mini-flame.flame-orange{animation:mini-flame-pulse 1.8s ease-in-out infinite;border-color:#f97316;box-shadow:0 0 5px #f97316,inset 0 0 2px #f973164d}.compliance-mini-flame.flame-white{animation:mini-flame-pulse 1.8s ease-in-out infinite;border-color:#fefefe;box-shadow:0 0 6px #fff,inset 0 0 2px #fff6}.compliance-mini-flame.flame-blue{animation:mini-flame-pulse 1.8s ease-in-out infinite;border-color:#3b82f6;box-shadow:0 0 6px #3b82f6,0 0 12px #60a5fa,inset 0 0 2px #3b82f666}@keyframes mini-flame-pulse{0%,to{opacity:.8}50%{opacity:1}}.compliance-mini-shimmer{border-radius:3px;display:block;height:12px;width:12px}.compliance-mini-shimmer.shimmer-none{background:#ffffff1a;border:1px solid #fff3}.compliance-mini-shimmer.shimmer-bronze{animation:mini-shimmer-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#cd7f32,#8b4513 50%,#cd7f32);box-shadow:0 0 4px #cd7f3299}.compliance-mini-shimmer.shimmer-silver{animation:mini-shimmer-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#e8e8e8,#a0a0a0 50%,#e8e8e8);box-shadow:0 0 5px #c0c0c0b3}.compliance-mini-shimmer.shimmer-gold{animation:mini-shimmer-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,gold,#daa520 50%,gold);box-shadow:0 0 6px #ffd700cc}.compliance-mini-shimmer.shimmer-diamond{animation:mini-shimmer-sparkle 1.5s ease-in-out infinite;background:linear-gradient(135deg,#b9f2ff,#0ea5e9 50%,#b9f2ff);box-shadow:0 0 8px #0ea5e9e6,0 0 12px #b9f2ff80}@keyframes mini-shimmer-pulse{0%,to{opacity:.85}50%{opacity:1}}@keyframes mini-shimmer-sparkle{0%,to{box-shadow:0 0 8px #0ea5e9e6,0 0 12px #b9f2ff80;opacity:.9}50%{box-shadow:0 0 10px #0ea5e9,0 0 16px #b9f2ffcc;opacity:1}}.compliance-mini-arrow{font-size:12px;line-height:1}.compliance-mini-arrow-stack{align-items:center;display:flex;flex-direction:column;height:16px;overflow:hidden;position:relative}.compliance-mini-arrow-animated{animation:mini-arrow-rise 1.5s linear infinite;animation:mini-arrow-rise var(--arrow-speed,1.5s) linear infinite;color:#ffffffe6;font-size:8px;line-height:1}@keyframes mini-arrow-rise{0%{opacity:0;transform:translateY(12px)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(-8px)}}.arrow-speed-preview{align-items:center;display:inline-flex;flex-direction:column;height:24px;overflow:hidden;position:relative;width:20px}.arrow-speed-preview.arrow-speed-dim{opacity:.4}.arrow-speed-arrow{animation:arrow-speed-rise 1.5s linear infinite;animation:arrow-speed-rise var(--arrow-speed,1.5s) linear infinite;color:#fffffff2;font-size:10px;line-height:1;position:absolute}@keyframes arrow-speed-rise{0%{opacity:0;top:100%}15%{opacity:1}85%{opacity:1}to{opacity:0;top:-20%}}.growth-elite-icon{display:inline-block;font-size:16px}.growth-elite-icon.rainbow-glow{animation:rainbow-shift 2s linear infinite;text-shadow:0 0 8px currentColor,0 0 16px currentColor}@keyframes rainbow-shift{0%{color:#ef4444}16%{color:#f97316}33%{color:#fbbf24}50%{color:#a3e635}66%{color:#60a5fa}83%{color:#a78bfa}to{color:#ef4444}}.arrow-speed-preview.arrow-speed-elite{background:linear-gradient(180deg,#fbbf2426,#0000);border-radius:4px}.arrow-speed-preview.arrow-speed-elite .arrow-speed-arrow{color:#fbbf24;text-shadow:0 0 6px #fbbf24}.temple-mini-foundation,.temple-mini-pillars,.temple-mini-roof{font-family:monospace;font-size:11px;line-height:1}.temple-mini-foundation.bedrock{color:#a78bfa;text-shadow:0 0 4px #a78bfacc}.temple-mini-foundation.solid{color:#d4d4d4;text-shadow:0 0 3px #d4d4d499}.temple-mini-foundation.laid{color:#a3a3a3}.temple-mini-foundation.rough{color:#737373}.temple-mini-foundation.rubble{color:#525252;opacity:.6}.temple-mini-pillars.crystal{animation:pillar-shimmer 2s ease-in-out infinite;color:#67e8f9;text-shadow:0 0 5px #67e8f9e6,0 0 10px #67e8f966}.temple-mini-pillars.marble{color:#fafafa;text-shadow:0 0 3px #fff9}.temple-mini-pillars.stone{color:#a8a29e}.temple-mini-pillars.wood{color:#a16207}.temple-mini-pillars.bare{color:#525252;opacity:.5}@keyframes pillar-shimmer{0%,to{opacity:.9}50%{opacity:1;text-shadow:0 0 8px #67e8f9,0 0 14px #67e8f999}}.temple-mini-roof.sacred{animation:roof-glow 2.5s ease-in-out infinite;color:#fbbf24;text-shadow:0 0 6px #fbbf24e6}.temple-mini-roof.dome{color:#e5e5e5;text-shadow:0 0 3px #e5e5e580}.temple-mini-roof.beams{color:#a3a3a3}.temple-mini-roof.partial{color:#737373}.temple-mini-roof.open{color:#525252;opacity:.4}@keyframes roof-glow{0%,to{opacity:.9}50%{opacity:1;text-shadow:0 0 10px #fbbf24,0 0 16px #fbbf2480}}.temple-foundation-icon,.temple-pillar-icon,.temple-roof-icon{font-family:monospace;font-size:18px}.temple-foundation-icon.bedrock{color:#a78bfa;text-shadow:0 0 6px #a78bfacc}.temple-foundation-icon.solid{color:#d4d4d4}.temple-foundation-icon.laid{color:#a3a3a3}.temple-foundation-icon.rough{color:#737373}.temple-foundation-icon.rubble{opacity:.5}.temple-pillar-icon.crystal{color:#67e8f9;text-shadow:0 0 8px #67e8f9e6}.temple-pillar-icon.marble{color:#fafafa;text-shadow:0 0 4px #ffffff80}.temple-pillar-icon.stone{color:#a8a29e}.temple-pillar-icon.wood{color:#a16207}.temple-pillar-icon.bare{color:#525252;opacity:.5}.temple-roof-icon.sacred{color:#fbbf24;text-shadow:0 0 8px #fbbf24e6}.temple-roof-icon.dome{color:#e5e5e5}.temple-roof-icon.beams{color:#a3a3a3}.temple-roof-icon.partial{color:#737373}.temple-roof-icon.open{color:#525252;opacity:.4}.chevrons-bullet,.stars-bullet{border-radius:4px}.bullet-chevron{display:inline-block;transform:rotate(-90deg)}.emoji-bullet{border-radius:4px;font-size:20px}.flame-container-small{height:200px;overflow:visible;position:relative;width:200px}.badge-placeholder{align-items:center;display:flex;height:200px;justify-content:center;width:200px}.badge-placeholder-circle{animation:badge-pulse 2s ease-in-out infinite,badge-spin 8s linear infinite;background:radial-gradient(circle at 30% 30%,#ffd7004d 0,#ffa50026 40%,#ff64000d 70%,#0000 100%);border:2px dashed #ffd70080;border-radius:50%;box-shadow:0 0 20px #ffd70033,0 0 40px #ffa5001a,inset 0 0 20px #ffd7001a;height:100px;position:relative;width:100px}.badge-placeholder-circle:before{animation:badge-star-pulse 1.5s ease-in-out infinite;color:#ffd70099;content:"✦";font-size:24px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.badge-placeholder-circle:after{animation:badge-ring-expand 2s ease-out infinite;border:1px solid #ffd7004d;border-radius:50%;bottom:-4px;content:"";left:-4px;position:absolute;right:-4px;top:-4px}@keyframes badge-pulse{0%,to{opacity:.6;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}@keyframes badge-spin{0%{border-color:#ffd70080}33%{border-color:#ffa50099}66%{border-color:#ffc83280}to{border-color:#ffd70080}}@keyframes badge-star-pulse{0%,to{opacity:.4;transform:translate(-50%,-50%) scale(.8) rotate(0deg)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.2) rotate(180deg)}}@keyframes badge-ring-expand{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.badge-entrance{animation:badge-materialize .8s cubic-bezier(.34,1.56,.64,1) forwards;position:relative}@keyframes badge-materialize{0%{filter:blur(8px);opacity:0;transform:scale(.3) rotate(-15deg)}40%{filter:blur(0);opacity:1}60%{transform:scale(1.1) rotate(3deg)}80%{transform:scale(.95) rotate(-1deg)}to{transform:scale(1) rotate(0deg)}}.badge-entrance-glow{animation:glow-burst 1s ease-out forwards;background:radial-gradient(circle,#ffd70099 0,#ffd7004d 30%,#ffd70000 70%);border-radius:50%;height:200px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:200px;z-index:-1}@keyframes glow-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}.badge-entrance-sparkles{height:0;left:50%;pointer-events:none;position:absolute;top:50%;width:0}.sparkle{animation:sparkle-fly 1.2s ease-out forwards;color:gold;font-size:16px;opacity:0;position:absolute;text-shadow:0 0 6px gold,0 0 12px orange}.sparkle-1{--sparkle-x:-60px;--sparkle-y:-40px;--sparkle-rotate:-20deg;animation-delay:.1s}.sparkle-2{--sparkle-x:50px;--sparkle-y:-50px;--sparkle-rotate:15deg;animation-delay:.15s;font-size:12px}.sparkle-3{--sparkle-x:-70px;--sparkle-y:20px;--sparkle-rotate:-35deg;animation-delay:.2s}.sparkle-4{--sparkle-x:65px;--sparkle-y:10px;--sparkle-rotate:25deg;animation-delay:.25s;font-size:14px}.sparkle-5{--sparkle-x:-30px;--sparkle-y:60px;--sparkle-rotate:-10deg;animation-delay:.3s;font-size:10px}.sparkle-6{--sparkle-x:40px;--sparkle-y:55px;--sparkle-rotate:30deg;animation-delay:.35s;font-size:12px}@keyframes sparkle-fly{0%{opacity:0;transform:translate(0) scale(0) rotate(0deg)}20%{opacity:1;transform:translate(calc(var(--sparkle-x)*.3),calc(var(--sparkle-y)*.3)) scale(1.2) rotate(calc(var(--sparkle-rotate)*.5))}to{opacity:0;transform:translate(var(--sparkle-x),var(--sparkle-y)) scale(.5) rotate(var(--sparkle-rotate))}}.flame-container-large{height:280px;max-height:35vh;max-width:35vh;overflow:visible;position:relative;width:280px}.badge-level-modal{color:#fff;max-width:420px;padding:20px}.badge-level-description{color:#ddd;margin-top:0}.badge-level-extra-info{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:16px;padding:10px 14px}.badge-level-extra-row{display:flex;font-size:.9em;gap:8px;padding:4px 0}.badge-level-extra-row .label{color:#a0a0a0;font-weight:500}.badge-level-extra-row .value{color:#ccc}.badge-level-current{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.badge-level-current .label{font-weight:600;margin-right:4px}.badge-level-current .value{font-weight:700}.badge-level-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.badge-level-row{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;display:flex;gap:12px;padding:10px}.badge-level-row.active{background:#ffd7001f;border-color:gold}.badge-level-icon{font-size:22px}.badge-level-details{flex:1 1}.badge-level-name{font-weight:600}.badge-level-threshold{color:#d0d0d0;font-size:.85em}.badge-level-text{color:#b0b0b0;font-size:.85em}.badge-level-actions{text-align:right}.flame-container-large.flame-outline-red .badge-svg-large,.flame-container-small.flame-outline-red .badge-svg{animation:flame-glow-red 1.8s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(255,0,0,.7)) drop-shadow(0 0 8px rgba(200,0,0,.6)) drop-shadow(0 0 12px rgba(150,0,0,.5))}@keyframes flame-glow-red{0%{filter:drop-shadow(0 0 4px rgba(255,0,0,.6)) drop-shadow(0 0 8px rgba(200,0,0,.5)) drop-shadow(0 0 12px rgba(150,0,0,.4))}50%{filter:drop-shadow(0 0 6px rgba(255,0,0,.8)) drop-shadow(0 0 12px rgba(200,0,0,.7)) drop-shadow(0 0 16px rgba(150,0,0,.6))}to{filter:drop-shadow(0 0 4px rgba(255,0,0,.6)) drop-shadow(0 0 8px rgba(200,0,0,.5)) drop-shadow(0 0 12px rgba(150,0,0,.4))}}.flame-container-large.flame-outline-orange .badge-svg-large,.flame-container-small.flame-outline-orange .badge-svg{animation:flame-glow-orange 1.8s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(255,165,0,.7)) drop-shadow(0 0 8px rgba(255,140,0,.6)) drop-shadow(0 0 12px rgba(255,69,0,.5))}@keyframes flame-glow-orange{0%{filter:drop-shadow(0 0 4px rgba(255,165,0,.6)) drop-shadow(0 0 8px rgba(255,140,0,.5)) drop-shadow(0 0 12px rgba(255,69,0,.4))}50%{filter:drop-shadow(0 0 6px rgba(255,165,0,.8)) drop-shadow(0 0 12px rgba(255,140,0,.7)) drop-shadow(0 0 16px rgba(255,69,0,.6))}to{filter:drop-shadow(0 0 4px rgba(255,165,0,.6)) drop-shadow(0 0 8px rgba(255,140,0,.5)) drop-shadow(0 0 12px rgba(255,69,0,.4))}}.flame-container-large.flame-outline-white .badge-svg-large,.flame-container-small.flame-outline-white .badge-svg{animation:flame-glow-white 1.8s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(255,255,255,.7)) drop-shadow(0 0 8px rgba(240,240,240,.6)) drop-shadow(0 0 12px rgba(220,220,220,.5))}@keyframes flame-glow-white{0%{filter:drop-shadow(0 0 4px rgba(255,255,255,.6)) drop-shadow(0 0 8px rgba(240,240,240,.5)) drop-shadow(0 0 12px rgba(220,220,220,.4))}50%{filter:drop-shadow(0 0 6px rgba(255,255,255,.8)) drop-shadow(0 0 12px rgba(240,240,240,.7)) drop-shadow(0 0 16px rgba(220,220,220,.6))}to{filter:drop-shadow(0 0 4px rgba(255,255,255,.6)) drop-shadow(0 0 8px rgba(240,240,240,.5)) drop-shadow(0 0 12px rgba(220,220,220,.4))}}.flame-container-large.flame-outline-blue .badge-svg-large,.flame-container-small.flame-outline-blue .badge-svg{animation:flame-glow-blue 1.8s ease-in-out infinite;filter:drop-shadow(0 0 4px rgba(135,206,235,.7)) drop-shadow(0 0 8px rgba(30,144,255,.6)) drop-shadow(0 0 12px rgba(0,191,255,.5))}@keyframes flame-glow-blue{0%{filter:drop-shadow(0 0 4px rgba(135,206,235,.6)) drop-shadow(0 0 8px rgba(30,144,255,.5)) drop-shadow(0 0 12px rgba(0,191,255,.4))}50%{filter:drop-shadow(0 0 6px rgba(135,206,235,.8)) drop-shadow(0 0 12px rgba(30,144,255,.7)) drop-shadow(0 0 16px rgba(0,191,255,.6))}to{filter:drop-shadow(0 0 4px rgba(135,206,235,.6)) drop-shadow(0 0 8px rgba(30,144,255,.5)) drop-shadow(0 0 12px rgba(0,191,255,.4))}}.setmap-dot,.setmap-path{cursor:pointer}.setmap-dot--active{filter:drop-shadow(0 0 6px rgba(0,0,0,.45))}.leaflet-tooltip.setmap-tooltip{background:#000000d9;border-radius:6px;box-shadow:0 2px 6px #0006;color:#fff;font-size:13px;padding:6px 8px}.leaflet-tooltip.setmap-tooltip .setmap-tooltip-hint{color:#ddd;font-size:11px}.recharts-tooltip-wrapper .recharts-default-tooltip{background:#070b13f2!important;border:1px solid #3b82f640!important;border-radius:8px!important;box-shadow:0 8px 24px #00000073;color:#f1f5f9!important;padding:10px 12px!important}.recharts-tooltip-wrapper .recharts-tooltip-item,.recharts-tooltip-wrapper .recharts-tooltip-item-list,.recharts-tooltip-wrapper .recharts-tooltip-label{color:#f8fafc!important}.recharts-tooltip-wrapper .recharts-tooltip-item-name{color:#bae6fd!important}.recharts-tooltip-wrapper .recharts-tooltip-item-value{color:#fef9c3!important;font-weight:600}.unit-toggle-root{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#111827d9;border:1px solid #ffffff1a;bottom:20px;box-shadow:0 4px 16px #0006;gap:8px;left:50%;padding:4px;position:fixed;transform:translateX(-50%);transition:opacity .18s ease,transform .18s ease;z-index:1200}.unit-toggle-group,.unit-toggle-root{align-items:center;border-radius:999px;display:flex}.unit-toggle-group{background:#0000;color:#fff;gap:2px;padding:0}.unit-toggle-button{background:#0000;border:none;border-radius:999px;color:#fff9;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 14px;transition:all .2s ease}.unit-toggle-button:hover{background:#ffffff0d;color:#fff}.unit-toggle-button.active{background:#ffffff26;box-shadow:0 1px 2px #0003;color:#fff}.unit-toggle-sep{background:#ffffff1a;border-radius:2px;height:20px;width:1px}.unit-toggle-root.hidden,.unit-toggle-root.scrolling{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(6px)}.video-feed{border:none;height:100%;object-fit:cover;outline:none;width:100%}.video-container{height:100%;overflow:hidden;position:relative;width:100%}.error-message{color:red;font-size:1rem;text-align:center}.floating-video-container{align-items:center;background:#222;border-radius:12px;box-shadow:0 4px 24px #00000040;display:flex;flex-direction:column;max-height:240px;max-width:320px;min-height:160px;min-width:220px;padding:12px 12px 8px;position:fixed;-webkit-user-select:none;user-select:none;z-index:2000}.centered-bottom{bottom:24px;left:50%;right:auto;top:auto;transform:translateX(-50%)}.floating-video-toggle{align-self:center;background:#444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1.1em;margin-bottom:8px;opacity:.85;padding:4px 18px;transition:background .2s,opacity .2s}.floating-video-toggle:hover{background:#666;opacity:1}.floating-video-container video{border-radius:8px;height:auto;width:100%}.floating-video-show-btn{background:#444;border:none;border-radius:12px;box-shadow:0 4px 24px #00000040;color:#fff;cursor:pointer;font-size:1.1em;opacity:.85;padding:10px 22px;position:fixed;transition:background .2s,opacity .2s;z-index:2000}.floating-video-show-btn:hover{background:#666;opacity:1}:root{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-success:#22c55e;--color-success-hover:#16a34a;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-text-light:#f3f4f6;--color-bg-dark:#1f2937;--color-bg-card:#111827}*{box-sizing:border-box;margin:0;padding:0}#root{width:100%}#root,body{min-height:100vh}body{background-color:#030712;color:#f3f4f6;color:var(--color-text-light);font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}h1,h2,h3,h4{color:#fff;margin-top:.5em;text-align:center}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.8rem}h4{font-size:1.2rem}button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1;padding:.6rem 1.2rem;transition:all .2s ease}button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.6}button:active{transform:translateY(1px)}.btn-primary,.btn-select{background:#3b82f633;border:1px solid #3b82f666;box-shadow:none;color:#93c5fd}.btn-primary:hover:not(:disabled),.btn-select:hover:not(:disabled){background:#3b82f659;border-color:#3b82f699;box-shadow:none}.btn-add,.btn-success{background:#22c55e33;border:1px solid #22c55e66;box-shadow:none;color:#86efac}.btn-add:hover:not(:disabled),.btn-success:hover:not(:disabled){background:#22c55e59;border-color:#22c55e99;box-shadow:none}.btn-danger,.btn-remove{background:#ef444433;border:1px solid #ef444466;color:#fca5a5}.btn-danger:hover:not(:disabled),.btn-remove:hover:not(:disabled){background:#ef444459;border-color:#ef444499}.btn-ghost-danger{background-color:initial;color:#ef4444;color:var(--color-danger);padding:.4rem}.btn-ghost-danger:hover:not(:disabled){background-color:#ef444426}.btn-ghost-primary{background-color:initial;color:#3b82f6;color:var(--color-primary)}.btn-underlined{background-color:initial;border:none;color:#fff;cursor:pointer;font-size:1rem;padding:0;text-decoration:underline}.btn-cancel{background:#ef444433;border:1px solid #ef444466;color:#fca5a5}.btn-cancel:hover:not(:disabled){background:#ef444459;border-color:#ef444499}.btn-upgrade{background:#a855f733;border:1px solid #a855f766;color:#d8b4fe}.btn-upgrade:hover:not(:disabled){background:#a855f759;border-color:#a855f799}.trash-button{align-items:center;background-color:initial;border:none;cursor:pointer;height:1.5rem;justify-content:center;margin:0;padding:0;width:1.5rem}.trash-button svg{color:#fff;height:1rem;padding:0;width:1rem}input[type=date],input[type=email],input[type=password],input[type=text],textarea{background-color:#1a1a1a;border:1px solid #ccc;border-radius:5px;color:#fff;font-size:1rem;margin:0;padding:10px;width:100%}a{color:red;text-decoration:none}a:hover{text-decoration:underline}table{border-collapse:collapse;border-radius:5px;border-spacing:0;font-size:1rem;margin:0;overflow:hidden;text-align:left;width:100%}table td,table th{border:none;color:#fff}.center-button{display:flex;justify-content:center}.pad-button-up-big{margin-top:1.5rem}.pad-button-up-small{margin-top:1rem}.modal-content{background-color:#333;border-radius:10px;margin:0 auto;max-width:600px;padding:10px;width:100%}.modal-content h2{color:#f9f9f9;font-size:1.5rem;margin-bottom:20px}.modal-content .form-group{margin-bottom:20px;text-align:center;width:100%}.modal-content .form-group input[type=text],.modal-content .form-group textarea{background-color:#202020;border:1px solid #555;box-sizing:border-box;color:inherit;font-family:inherit;font-size:inherit;line-height:1.5;padding:8px;width:100%}.modal-content .form-group input[type=text]{font-size:1.2em;text-align:center}.modal-content .form-group textarea{min-height:60px;overflow-y:hidden;resize:none}.button-container{display:flex;justify-content:space-between}.regenerate-button{background-color:var(--color-accept);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;left:10px;margin-left:0;margin-top:0;padding:10px 15px;position:fixed;top:10px;z-index:1001}.regenerate-button:disabled{background-color:#666;cursor:not-allowed;opacity:.7}.btn-emphasis{border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.5em;font-weight:700;padding:12px 24px}.btn-emphasis:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}
/*# sourceMappingURL=main.ad296c96.css.map*/