.plans-page{padding:20px;font-family:Arial,sans-serif}.plans-tabs{display:flex;gap:8px;margin-bottom:16px}.plans-tabs button{padding:8px 12px;border:1px solid #ccc;background:#f7f7f7;cursor:pointer}.plans-tabs button.active{background:#fff;border-bottom:2px solid #0070f3}.plans-section{border:1px solid #eee;padding:12px;border-radius:6px;background:#fff;margin-bottom:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.btn-primary{background:#0070f3;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer}.btn-secondary{background:#e6e6e6;border:1px solid #ccc;padding:6px 10px;border-radius:4px;cursor:pointer}.btn-danger{background:#ff4d4f;color:#fff;border:none;padding:6px 10px;border-radius:4px;cursor:pointer}.btn-secondary,.btn-primary,.btn-danger{font-size:14px}.plan-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.plan-card{border:1px solid #eee;padding:12px;border-radius:6px;background:#fafafa}.plan-title{font-weight:700;margin-bottom:6px}.plan-meta{font-size:12px;color:#666;margin-bottom:8px}.plan-actions{display:flex;gap:6px}.editor-panel{margin-top:16px;padding:12px;border:1px solid #ddd;border-radius:6px;background:#fff}.workout-editor,.food-editor{display:block}.field{margin-bottom:8px}.field label{display:block;font-size:13px;color:#333;margin-bottom:4px}.field input,.field textarea,.field select{width:100%;padding:6px 8px;border:1px solid #ccc;border-radius:4px}.exercises{margin-top:8px;padding:8px;border:1px dashed #ccc;border-radius:6px}.exercise-item{display:grid;grid-template-columns:1fr 60px 60px 80px 1fr 140px;gap:8px;align-items:center;margin-bottom:6px}.editor-actions{margin-top:8px;display:flex;gap:8px;align-items:center;justify-content:flex-end}.totals{font-weight:700;margin-top:8px}.empty{color:#666;padding:20px;text-align:center}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;padding:20px;border-radius:6px;width:420px;max-width:90%}.users-list{display:grid;grid-template-columns:1fr;gap:6px;margin:10px 0;max-height:260px;overflow:auto}.template-card{border:1px solid #eee;padding:12px;border-radius:6px;background:#fff}.template-title{font-weight:700}.template-type{font-size:12px;color:#666}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.template-card button{margin-top:8px}.calendar-page{padding:20px;max-width:1200px;margin:0 auto}.calendar-header{margin-bottom:20px}.calendar-title h1{font-size:24px;font-weight:600;color:#1a1a2e;margin:0}.trainer-name{font-size:14px;color:#666;margin-left:8px}.calendar-nav{display:flex;align-items:center;gap:12px;margin-top:16px}.calendar-nav h2{font-size:18px;font-weight:500;min-width:200px;text-align:center}.nav-btn{width:32px;height:32px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s}.nav-btn:hover{background:#f5f5f5;border-color:#ccc}.today-btn{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.today-btn:hover{background:#f5f5f5}.view-toggle{display:flex;gap:8px;margin-top:12px}.view-toggle button{padding:6px 16px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.view-toggle button.active{background:#1a1a2e;color:#fff;border-color:#1a1a2e}.view-toggle button:hover:not(.active){background:#f5f5f5}.weekly-stats{display:flex;gap:24px;padding:16px;background:#f8f9fa;border-radius:8px;margin-bottom:20px}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:24px;font-weight:600;color:#1a1a2e}.stat-label{font-size:12px;color:#666;text-transform:uppercase;margin-top:4px}.calendar-loading{text-align:center;padding:40px;color:#666}.calendar-grid{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.calendar-day-names{display:grid;grid-template-columns:repeat(7,1fr);background:#f5f5f5;border-bottom:1px solid #e0e0e0}.day-name{padding:12px;text-align:center;font-size:12px;font-weight:600;color:#666;text-transform:uppercase}.calendar-weeks{display:flex;flex-direction:column}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:100px;padding:8px;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;cursor:pointer;transition:background .2s}.calendar-day:nth-child(7){border-right:none}.calendar-day:hover{background:#f8f9fa}.calendar-day.other-month{background:#fafafa}.calendar-day.other-month .day-number{color:#aaa}.calendar-day.today{background:#f0f7ff}.calendar-day.today .day-number{background:#1a1a2e;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.calendar-day.has-content{background:#fafdfa}.day-number{font-size:14px;font-weight:500;color:#333}.day-indicators{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.indicator{width:8px;height:8px;border-radius:2px}.indicator.workout.planned{background:#3b82f6}.indicator.workout.completed{background:#22c55e}.indicator.activity.cycling{background:#f59e0b}.indicator.activity.running{background:#8b5cf6}.indicator.activity.swimming{background:#06b6d4}.day-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:100}.day-detail-panel{background:#fff;border-radius:12px;width:90%;max-width:400px;max-height:80vh;overflow:auto;box-shadow:0 20px 40px #0003}.day-detail-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.day-detail-header h3{font-size:16px;font-weight:600;margin:0}.close-btn{width:28px;height:28px;border:none;background:#f5f5f5;border-radius:50%;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:background .2s}.close-btn:hover{background:#eee}.day-detail-content{padding:20px}.empty-day{text-align:center;color:#999;font-size:14px}.workout-section,.activity-section{margin-bottom:16px}.workout-section h4,.activity-section h4{font-size:13px;font-weight:600;color:#666;margin:0 0 12px;text-transform:uppercase}.workout-item,.activity-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f8f9fa;border-radius:6px;margin-bottom:8px}.workout-item.completed{background:#f0fdf4}.workout-title,.activity-type{font-size:14px;font-weight:500;color:#333}.workout-status{font-size:12px;color:#666}.activity-tss{font-size:12px;color:#1a1a2e;font-weight:600}body{margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f5f5}*{box-sizing:border-box}
