@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow:wght@300;400;500;600;700&family=Barlow+Condensed:wght@400;600;700&display=swap";:root{--black: #0A0A0A;--black2: #111111;--black3: #1A1A1A;--black4: #222222;--gold: #C9A84C;--gold2: #E8C56A;--gold3: #F5D98A;--gold-dim: #7A6230;--white: #F5F2EC;--gray: #888880;--gray2: #555550;--red: #C0392B;--success: #27AE60;--radius: 4px;--transition: .2s ease}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--black);color:var(--white);font-family:Barlow,sans-serif;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.4}#login-screen{position:fixed;inset:0;background:var(--black);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;gap:0}.login-container{width:100%;max-width:420px;padding:0 24px;animation:fadeUp .6s ease both}.login-logo-block{text-align:center;margin-bottom:48px}.login-wordmark{font-family:Bebas Neue,sans-serif;font-size:52px;letter-spacing:.12em;color:var(--gold);line-height:1;display:block}.login-tagline{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.35em;color:var(--gray);text-transform:uppercase;margin-top:6px}.login-divider{width:40px;height:1px;background:var(--gold-dim);margin:20px auto}.login-title{font-family:Barlow Condensed,sans-serif;font-size:13px;letter-spacing:.3em;color:var(--gray);text-transform:uppercase;text-align:center;margin-bottom:32px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--gray);margin-bottom:8px}.form-input{width:100%;background:var(--black3);border:1px solid var(--black4);color:var(--white);font-family:Barlow,sans-serif;font-size:15px;padding:14px 16px;border-radius:var(--radius);outline:none;transition:border-color var(--transition)}.form-input:focus{border-color:var(--gold)}.form-input::placeholder{color:var(--gray2)}input[type=date].form-input{color-scheme:dark}input[type=date].form-input::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.btn-primary{width:100%;background:var(--gold);color:var(--black);font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;padding:16px;border:none;border-radius:var(--radius);cursor:pointer;margin-top:8px;transition:background var(--transition),transform .1s}.btn-primary:hover{background:var(--gold2)}.btn-primary:active{transform:scale(.99)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.login-error{color:var(--red);font-size:12px;text-align:center;margin-top:12px;min-height:18px}.login-footer{margin-top:40px;text-align:center;font-size:10px;letter-spacing:.2em;color:var(--gray2);text-transform:uppercase}#app{display:none;height:100vh;flex-direction:column}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:60px;border-bottom:1px solid var(--black4);background:var(--black2);flex-shrink:0;position:relative;z-index:10}.nav-logo{font-family:Bebas Neue,sans-serif;font-size:30px;letter-spacing:.14em;color:var(--gold);text-shadow:0 0 18px rgba(201,168,76,.35),0 0 4px rgba(201,168,76,.15);border-bottom:1px solid var(--gold-dim);padding-bottom:1px}.nav-tabs{display:flex;gap:2px;background:var(--black3);border-radius:var(--radius);padding:3px}.nav-tab{font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:7px 18px;border:none;border-radius:2px;cursor:pointer;background:transparent;color:var(--gray);transition:all var(--transition)}.nav-tab.active{background:var(--gold);color:var(--black)}.nav-right{display:flex;align-items:center;gap:16px}.athlete-badge{font-size:12px;color:var(--gray);font-family:Barlow Condensed,sans-serif;letter-spacing:.1em}.athlete-badge span{color:var(--gold);font-weight:600}.btn-logout{background:none;border:1px solid var(--black4);color:var(--gray);font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:6px 12px;border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition),color var(--transition)}.btn-logout:hover{border-color:var(--gold-dim);color:var(--gold)}.panel{display:none;flex:1;overflow:hidden;scroll-behavior:smooth}.panel.active{display:flex}#panel-coach{flex-direction:column}.coach-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;border-bottom:1px solid var(--black3);flex-shrink:0;background:var(--black2)}.coach-panel-title{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray)}.btn-clear-chat{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gray);background:transparent;border:1px solid var(--black4);border-radius:3px;padding:5px 12px;cursor:pointer;transition:color .2s,border-color .2s}.btn-clear-chat:hover{color:#e57373;border-color:#e57373}.chat-window{flex:1;overflow-y:auto;padding:32px 24px;display:flex;flex-direction:column;gap:20px;scroll-behavior:smooth}.chat-window::-webkit-scrollbar{width:4px}.chat-window::-webkit-scrollbar-track{background:transparent}.chat-window::-webkit-scrollbar-thumb{background:var(--black4);border-radius:2px}.message{display:flex;gap:14px;max-width:800px;animation:fadeUp .3s ease both}.message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:34px;height:34px;border-radius:2px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:Bebas Neue,sans-serif;font-size:13px;letter-spacing:.1em}.message.assistant .message-avatar{background:var(--gold);color:var(--black)}.message.user .message-avatar{background:var(--black4);color:var(--gold);font-size:11px}.message-body{flex:1}.message-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray2);margin-bottom:6px;font-family:Barlow Condensed,sans-serif}.message.user .message-label{text-align:right}.message-text{background:var(--black3);border:1px solid var(--black4);padding:14px 18px;border-radius:var(--radius);font-size:14px;line-height:1.65;color:var(--white)}.message.assistant .message-text{border-left:2px solid var(--gold)}.message.user .message-text{background:var(--black4);border-color:transparent;text-align:left}.message.assistant .message-text p{margin:6px 0}.message.assistant .message-text p:first-child{margin-top:0}.message.assistant .message-text p:last-child{margin-bottom:0}.message.assistant .message-text h1,.message.assistant .message-text h2,.message.assistant .message-text h3{font-family:Bebas Neue,sans-serif;letter-spacing:.06em;color:var(--gold);margin:14px 0 5px}.message.assistant .message-text h1{font-size:18px}.message.assistant .message-text h2{font-size:16px}.message.assistant .message-text h3{font-size:14px;color:var(--gold2)}.message.assistant .message-text ul,.message.assistant .message-text ol{margin:8px 0;padding-left:20px}.message.assistant .message-text li{margin:4px 0;line-height:1.55}.message.assistant .message-text strong{color:var(--gold2);font-weight:600}.message.assistant .message-text em{color:var(--gray);font-style:italic}.message.assistant .message-text code{background:var(--black);border:1px solid var(--black4);padding:1px 6px;border-radius:2px;font-family:Courier New,monospace;font-size:12px;color:var(--gold3)}.message.assistant .message-text pre{background:var(--black);border:1px solid var(--black4);padding:12px 14px;border-radius:var(--radius);overflow-x:auto;margin:8px 0}.message.assistant .message-text pre code{background:none;border:none;padding:0}.message.assistant .message-text blockquote{border-left:2px solid var(--gold-dim);padding-left:12px;color:var(--gray);margin:8px 0;font-style:italic}.message.assistant .message-text hr{border:none;border-top:1px solid var(--black4);margin:12px 0}.typing-indicator .message-text{display:flex;gap:5px;align-items:center;padding:16px 20px}.dot{width:6px;height:6px;background:var(--gold);border-radius:50%;animation:pulse 1.2s ease infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}.chat-input-area{padding:16px 24px;border-top:1px solid var(--black4);background:var(--black2);display:flex;gap:12px;align-items:flex-end;flex-shrink:0}.chat-input{flex:1;background:var(--black3);border:1px solid var(--black4);color:var(--white);font-family:Barlow,sans-serif;font-size:14px;padding:13px 16px;border-radius:var(--radius);outline:none;resize:none;min-height:48px;max-height:140px;line-height:1.5;transition:border-color var(--transition)}.chat-input:focus{border-color:var(--gold-dim)}.chat-input::placeholder{color:var(--gray2)}.btn-send{background:var(--gold);color:var(--black);border:none;width:48px;height:48px;border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition)}.btn-send:hover{background:var(--gold2)}.btn-send:disabled{opacity:.4;cursor:not-allowed}.btn-send svg{width:18px;height:18px}#panel-workout{flex-direction:column;overflow-y:auto;padding:32px 24px}#panel-workout::-webkit-scrollbar{width:4px}#panel-workout::-webkit-scrollbar-thumb{background:var(--black4)}.section-header{margin-bottom:24px}.section-title{font-family:Bebas Neue,sans-serif;font-size:28px;letter-spacing:.08em;color:var(--white);line-height:1}.section-sub{font-size:12px;color:var(--gray);letter-spacing:.1em;margin-top:4px;font-family:Barlow Condensed,sans-serif;text-transform:uppercase}.workout-form{max-width:700px;display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group label{display:block;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--gray);margin-bottom:8px}.form-select{width:100%;background:var(--black3);border:1px solid var(--black4);color:var(--white);font-family:Barlow,sans-serif;font-size:14px;padding:12px 16px;border-radius:var(--radius);outline:none;cursor:pointer;appearance:none}.form-select:focus{border-color:var(--gold-dim)}.exercises-block{background:var(--black3);border:1px solid var(--black4);border-radius:var(--radius);padding:20px}.exercises-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.exercises-title{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--gray)}.btn-add-exercise{background:none;border:1px solid var(--gold-dim);color:var(--gold);font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:6px 14px;border-radius:var(--radius);cursor:pointer;transition:background var(--transition)}.btn-add-exercise:hover{background:#c9a84c14}.exercise-row{display:grid;grid-template-columns:1fr 70px 70px 90px 32px;gap:8px;align-items:center;margin-bottom:10px}.exercise-input{background:var(--black2);border:1px solid var(--black4);color:var(--white);font-family:Barlow,sans-serif;font-size:13px;padding:9px 12px;border-radius:var(--radius);outline:none;width:100%}.exercise-input:focus{border-color:var(--gold-dim)}.exercise-input::placeholder{color:var(--gray2);font-size:12px}.btn-remove-ex{background:none;border:none;color:var(--gray2);cursor:pointer;font-size:16px;line-height:1;padding:4px;transition:color var(--transition)}.btn-remove-ex:hover{color:var(--red)}.rpe-display{display:flex;align-items:center;gap:12px}.rpe-value{font-family:Bebas Neue,sans-serif;font-size:28px;color:var(--gold);min-width:36px}input[type=range]{flex:1;-webkit-appearance:none;height:3px;background:var(--black4);border-radius:2px;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--gold);cursor:pointer}.btn-log-workout{background:var(--gold);color:var(--black);font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;padding:16px 32px;border:none;border-radius:var(--radius);cursor:pointer;align-self:flex-start;transition:background var(--transition);margin-top:8px}.btn-log-workout:hover{background:var(--gold2)}.btn-log-workout:disabled{opacity:.5;cursor:not-allowed}.log-status{font-size:12px;margin-top:8px;min-height:18px;font-family:Barlow Condensed,sans-serif;letter-spacing:.1em}.log-status.success{color:var(--success)}.log-status.error{color:var(--red)}#panel-progress{flex-direction:column;overflow-y:auto;padding:32px 24px;gap:24px}#panel-progress::-webkit-scrollbar{width:4px}#panel-progress::-webkit-scrollbar-thumb{background:var(--black4)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:stretch}.stat-card{background:var(--black3);border:1px solid var(--black4);border-radius:var(--radius);padding:20px 22px;position:relative;overflow:hidden;transition:border-color var(--transition)}.stat-card:hover{border-color:var(--gold-dim)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--gold)}.stat-label{font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--gray);margin-bottom:10px}.stat-value{font-family:Bebas Neue,sans-serif;font-size:38px;color:var(--gold);line-height:1}.stat-unit{font-family:Barlow Condensed,sans-serif;font-size:13px;color:var(--gray);margin-left:4px}.stat-not-logged{font-family:Barlow Condensed,sans-serif!important;font-size:18px!important;color:var(--gray2)!important;-webkit-text-fill-color:var(--gray2)!important;background:none!important;letter-spacing:.08em}.progress-section-title{font-family:Bebas Neue,sans-serif;font-size:20px;letter-spacing:.08em;color:var(--white);padding-bottom:12px;border-bottom:1px solid var(--black4);margin-bottom:16px}.workout-history{display:flex;flex-direction:column;gap:10px}.workout-entry{background:var(--black3);border:1px solid var(--black4);border-left:3px solid var(--gold-dim);border-radius:var(--radius);padding:14px 18px;display:flex;align-items:center;gap:16px;transition:border-color var(--transition),border-left-color var(--transition)}.workout-entry:hover{border-color:var(--gold-dim);border-left-color:var(--gold)}.workout-entry-type{font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);min-width:90px}.workout-entry-details{flex:1;font-size:13px;color:var(--gray)}.workout-entry-rpe{font-family:Bebas Neue,sans-serif;font-size:22px;color:var(--white)}.rpe-label{font-size:9px;color:var(--gray2);letter-spacing:.15em;font-family:Barlow Condensed,sans-serif;text-align:right}.empty-state{text-align:center;padding:48px 24px;color:var(--gray2);font-family:Barlow Condensed,sans-serif;font-size:13px;letter-spacing:.15em;text-transform:uppercase}.goals-block{background:var(--black3);border:1px solid var(--black4);border-left:3px solid var(--gold);border-radius:var(--radius);padding:20px 24px;transition:border-color var(--transition)}.goals-block:hover{border-color:var(--gold-dim);border-left-color:var(--gold2)}.goals-text{font-size:14px;color:var(--white);line-height:1.6}.goal-item{font-size:14px;color:var(--white);line-height:1.6;padding:6px 0;border-bottom:1px solid var(--black4)}.goal-item:last-child{border-bottom:none;padding-bottom:0}.goal-item:first-child{padding-top:0}.toast{position:fixed;bottom:24px;right:24px;background:var(--black3);border:1px solid var(--gold-dim);border-left:3px solid var(--gold);color:var(--white);font-family:Barlow Condensed,sans-serif;font-size:13px;letter-spacing:.1em;padding:14px 20px;border-radius:var(--radius);z-index:9000;opacity:0;transform:translateY(8px);transition:all .3s ease;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.loading-text{background:linear-gradient(90deg,var(--gray2) 25%,var(--gold) 50%,var(--gray2) 75%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 1.5s linear infinite}#panel-dashboard{flex-direction:column;overflow:hidden}.ds{transition:border-color .2s ease}.ds:hover{border-color:#2e2e2e!important}.dashboard-scroll{flex:1;overflow-y:auto;padding:28px 24px 40px;display:flex;flex-direction:column;gap:20px}.dashboard-scroll::-webkit-scrollbar{width:4px}.dashboard-scroll::-webkit-scrollbar-thumb{background:var(--black4)}.dashboard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.btn-new-cycle{background:none;border:1px solid var(--gold-dim);color:var(--gold);font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;padding:9px 18px;border-radius:var(--radius);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background var(--transition),border-color var(--transition)}.btn-new-cycle:hover{background:#c9a84c14;border-color:var(--gold)}.new-cycle-form-wrap{animation:fadeUp .25s ease both}.new-cycle-form{background:var(--black3);border:1px solid var(--gold-dim);border-radius:var(--radius);padding:22px 24px}.form-title{font-family:Bebas Neue,sans-serif;font-size:20px;letter-spacing:.08em;color:var(--gold);margin-bottom:18px}.cycle-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-bottom:14px}.cycle-form-actions{display:flex;gap:10px;margin-top:16px}.btn-create-cycle{background:var(--gold);color:var(--black);font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;padding:11px 24px;border:none;border-radius:var(--radius);cursor:pointer;transition:background var(--transition)}.btn-create-cycle:hover{background:var(--gold2)}.btn-create-cycle:disabled{opacity:.5;cursor:not-allowed}.btn-cancel-cycle{background:none;border:1px solid var(--black4);color:var(--gray);font-family:Barlow Condensed,sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:11px 20px;border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition),color var(--transition)}.btn-cancel-cycle:hover{border-color:var(--gray2);color:var(--white)}.cycle-active-card{background:var(--black3);border:1px solid var(--black4);border-left:3px solid var(--gold);border-radius:var(--radius);padding:20px 24px;position:relative;overflow:hidden}.cycle-active-card.no-cycle{border-left-color:var(--gray2);opacity:.6}.cycle-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.cycle-card-name{font-family:Bebas Neue,sans-serif;font-size:26px;letter-spacing:.08em;color:var(--white);line-height:1}.cycle-badge{font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;padding:4px 10px;border-radius:2px;flex-shrink:0}.cycle-badge.bulk{background:#c9a84c26;color:var(--gold);border:1px solid var(--gold-dim)}.cycle-badge.cut{background:#c0392b26;color:#e74c3c;border:1px solid rgba(192,57,43,.4)}.cycle-badge.maintain{background:#27ae6026;color:#2ecc71;border:1px solid rgba(39,174,96,.4)}.cycle-card-goal{font-size:13px;color:var(--gray);margin-bottom:12px;line-height:1.4}.cycle-card-dates{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.15em;color:var(--gray2);text-transform:uppercase;margin-bottom:14px}.cycle-progress-wrap{margin-top:4px}.cycle-progress-label{display:flex;justify-content:space-between;font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.15em;color:var(--gray2);text-transform:uppercase;margin-bottom:6px}.cycle-progress-bar{height:4px;background:var(--black4);border-radius:2px;overflow:hidden}.cycle-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--gold));border-radius:2px;transition:width .6s ease}.cycle-loading{font-family:Barlow Condensed,sans-serif;font-size:12px;letter-spacing:.15em;color:var(--gray2);text-transform:uppercase}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:860px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-card{background:var(--black3);border:1px solid var(--black4);border-radius:var(--radius);padding:20px 22px}.card-title{font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}.card-sub{font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.15em;color:var(--gray2);text-transform:uppercase;margin-bottom:16px;min-height:14px}.heatmap-view{display:flex;flex-direction:column;gap:9px}.heatmap-row{display:grid;grid-template-columns:88px 1fr 32px;align-items:center;gap:10px}.heatmap-label{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--gray)}.heatmap-bar-wrap{height:8px;background:var(--black4);border-radius:4px;overflow:hidden}.heatmap-bar{height:100%;border-radius:4px;transition:width .5s ease;min-width:2px}.heatmap-count{font-family:Bebas Neue,sans-serif;font-size:15px;color:var(--gray2);text-align:right;letter-spacing:.05em}.scorecard-view{display:flex;flex-direction:column;gap:14px}.scorecard-stat{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--black4);padding-bottom:12px}.scorecard-stat:last-child{border-bottom:none;padding-bottom:0}.scorecard-stat-label{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray)}.scorecard-stat-value{font-family:Bebas Neue,sans-serif;font-size:26px;color:var(--gold);letter-spacing:.05em;line-height:1}.scorecard-stat-unit{font-family:Barlow Condensed,sans-serif;font-size:11px;color:var(--gray2);margin-left:4px}.scorecard-progress-wrap{margin-top:2px}.scorecard-days-label{font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.15em;color:var(--gray2);text-transform:uppercase;margin-bottom:6px;display:flex;justify-content:space-between}.cycles-list{display:flex;flex-direction:column;gap:8px}.cycle-row{background:var(--black3);border:1px solid var(--black4);border-radius:var(--radius);padding:14px 18px;display:flex;align-items:center;gap:14px}.cycle-row-name{font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:700;letter-spacing:.1em;color:var(--white);flex:1}.cycle-row-meta{font-family:Barlow Condensed,sans-serif;font-size:11px;letter-spacing:.1em;color:var(--gray2);text-transform:uppercase}.cycle-row-status{font-family:Barlow Condensed,sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:3px 8px;border-radius:2px}.cycle-row-status.active{color:var(--gold);border:1px solid var(--gold-dim);background:#c9a84c14}.cycle-row-status.done{color:var(--gray2);border:1px solid var(--black4)}@media(max-width:768px){.nav{height:auto;min-height:48px;padding:8px 12px;flex-wrap:wrap;gap:0;align-items:center}.nav-logo{flex:1;order:1;font-size:22px}.nav-right{order:2;gap:8px}.athlete-badge{display:none}.btn-logout{padding:7px 10px;font-size:9px;min-height:36px;touch-action:manipulation}.stats-grid{grid-template-columns:repeat(2,1fr)}.nav-tabs{order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px 0 2px;background:transparent;justify-content:flex-start;flex-wrap:nowrap;border-top:1px solid var(--black4);margin-top:8px;border-radius:0;gap:4px}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab{white-space:nowrap;flex-shrink:0;min-height:36px;touch-action:manipulation;font-size:10px;padding:7px 14px}#app{height:100%;min-height:100dvh}#panel-workout,#panel-progress{padding:20px 12px;overflow-x:hidden}.coach-panel-header{padding:8px 12px}.chat-window{padding:16px 12px;gap:14px}.chat-input-area{padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom,10px));gap:8px;position:sticky;bottom:0}.message{max-width:100%;gap:8px}.message-text{font-size:13px;padding:11px 13px}.chat-input{font-size:16px}.form-row{grid-template-columns:1fr}.form-input,.form-select{font-size:16px;min-height:44px;padding:12px 14px}.exercise-row{grid-template-columns:1fr 46px 46px 62px 30px;gap:4px}.exercise-input{font-size:14px;min-height:40px;padding:8px 7px}.exercises-block{padding:14px 12px}.btn-add-exercise{min-height:38px;padding:8px 14px}.btn-remove-ex{min-height:38px;min-width:30px}.btn-log-workout{width:100%;align-self:stretch;min-height:50px;text-align:center}.stats-grid{grid-template-columns:repeat(2,1fr)!important}.workout-entry{flex-wrap:wrap;gap:6px;padding:10px 12px}.workout-entry-type{min-width:auto;width:100%}.dashboard-scroll{padding:14px 12px 32px;gap:14px}.dashboard-top{flex-direction:column;align-items:stretch;gap:12px}.btn-new-cycle{width:100%;text-align:center;min-height:44px;touch-action:manipulation}.cycle-card-top{flex-wrap:wrap;gap:8px}.new-cycle-form{padding:16px 14px}.cycle-form-grid{grid-template-columns:1fr}.cycle-form-actions{flex-direction:column}.btn-create-cycle,.btn-cancel-cycle{width:100%;text-align:center;min-height:46px}.dashboard-card,.cycle-active-card{padding:16px 14px}.toast{bottom:80px;right:12px;left:12px;text-align:center}}@media(max-width:400px){.stats-grid{grid-template-columns:repeat(2,1fr)!important}.exercise-row{grid-template-columns:1fr 40px 40px 58px 28px;gap:3px}.exercise-input{font-size:13px;padding:7px 6px}}
