:root{--bone: #F4F1EC;--paper: #E8E4DB;--ash: #6B6862;--ink: #1A1816;--void: #0B0A09;--oxyde: #8B3A1F;--indigo: #1B2845;--sang: #5C1F1F;--bg: var(--void);--bg-elev: #14110F;--bg-hover: #1F1B17;--text: var(--bone);--text-dim: var(--ash);--text-faint: #4A4742;--accent: var(--oxyde);--accent-dim: #6C2D17;--border: #2A2520;--border-strong: #3A332D;--danger: var(--sang);--success: #4F6B3F;--font-display: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "Consolas", monospace;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent)}button,input,select,textarea{font-family:inherit}.app{display:grid;grid-template-columns:220px 1fr;height:100vh}.sidebar{background:var(--bg-elev);border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column;gap:4px}.sidebar-brand{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.02em;margin-bottom:24px;color:var(--bone);padding:0 8px}.sidebar-brand small{display:block;font-weight:400;font-size:11px;color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;margin-top:2px}.nav-item{background:transparent;border:none;color:var(--text-dim);text-align:left;padding:10px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .15s,color .15s}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{background:var(--bg-hover);color:var(--bone);font-weight:600}.sidebar-footer{margin-top:auto;font-size:11px;color:var(--text-faint);padding:8px;font-family:var(--font-mono);word-break:break-all}.main{overflow-y:auto;padding:40px 48px}.main-header{margin-bottom:32px}.main-header h1{font-family:var(--font-display);font-size:28px;font-weight:800;letter-spacing:-.02em;margin:0 0 4px}.main-header p{margin:0;color:var(--text-dim)}.program-header-row{display:flex;gap:16px;align-items:center;justify-content:space-between}.program-header-actions{display:flex;gap:8px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;padding:20px;margin-bottom:16px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-header h2{margin:0;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px}label{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-weight:500}input[type=text],input[type=number],input[type=date],select,textarea{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:8px 12px;color:var(--text);font-size:14px;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{min-height:60px;resize:vertical;font-family:var(--font-body)}.btn{background:var(--bg);border:1px solid var(--border-strong);color:var(--text);padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .15s}.btn:hover{background:var(--bg-hover)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--bone)}.btn-primary:hover{background:var(--accent-dim)}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text-dim)}.btn-ghost:hover{color:var(--text);border-color:var(--border-strong)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:var(--bone)}.btn-sm{padding:4px 10px;font-size:12px}.exercise-block{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:16px;margin-bottom:12px}.exercise-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.exercise-block-title{font-weight:600;font-size:15px}.exercise-block-meta{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.sets-table{width:100%;border-collapse:collapse;margin-top:8px;font-size:13px}.sets-table th{text-align:left;font-weight:500;color:var(--text-dim);font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;border-bottom:1px solid var(--border)}.sets-table td{padding:4px 8px}.sets-table input[type=number],.sets-table input[type=text]{width:100%;padding:4px 8px;font-size:13px}.sets-table .set-num{color:var(--text-dim);font-family:var(--font-mono);width:30px}.session-row{background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;padding:14px 18px;margin-bottom:8px;cursor:pointer;display:grid;grid-template-columns:110px 1fr 80px 80px 60px;gap:16px;align-items:center;transition:border-color .15s,background .15s}.session-row:hover{border-color:var(--border-strong);background:var(--bg-hover)}.session-date{font-family:var(--font-mono);font-size:13px;color:var(--text)}.session-label{font-weight:500}.session-meta{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.orm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.orm-tile{background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;padding:16px}.orm-tile-movement{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.orm-tile-value{font-family:var(--font-display);font-size:32px;font-weight:800;letter-spacing:-.02em}.orm-tile-unit{font-size:14px;color:var(--text-dim);margin-left:2px}.orm-tile-date{font-size:11px;color:var(--text-faint);font-family:var(--font-mono);margin-top:4px}.flex{display:flex}.gap-2{gap:8px}.gap-4{gap:16px}.justify-end{justify-content:flex-end}.mt-4{margin-top:16px}.mt-8{margin-top:32px}.text-dim{color:var(--text-dim)}.text-sm{font-size:12px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-dim)}@media(max-width:768px){.app{grid-template-columns:1fr}.sidebar{position:fixed;left:0;right:0;bottom:0;z-index:50;flex-direction:row;align-items:stretch;gap:2px;padding:4px 6px;padding-bottom:max(4px,env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}.sidebar-brand,.sidebar-footer,.sidebar-athlete-label{display:none}.nav-item{flex:1 0 auto;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;min-height:44px;padding:8px 12px;border-radius:8px;font-size:13px}.main{padding:16px 12px;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.main-header{margin-bottom:20px}.main-header h1{font-size:22px}.card{padding:14px}.field-row{grid-template-columns:1fr}.session-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;padding:12px 14px}.session-row .session-date{width:100%;font-size:12px;color:var(--text-dim)}.session-row .session-label{width:100%;font-size:15px}.program-header-row{flex-direction:column;align-items:stretch;gap:12px}.program-header-actions{flex-wrap:wrap}.sets-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.exercise-block{overflow-x:auto}}
