:root{--bg-deep:#0a0a0f;--bg-card:#12121a;--bg-surface:#1a1a26;--text-main:#e8e6e3;--text-dim:#6b6b7b;--accent:#00e676;--accent-dim:#00e67626;--danger:#ff5252;--warning:#ffc107;--radius:16px;--radius-sm:10px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg-deep);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Noto Sans KR,sans-serif;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}#root{z-index:1;position:relative}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--text-dim);border-radius:3px}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes glow{0%,to{filter:drop-shadow(0 0 8px var(--accent))}50%{filter:drop-shadow(0 0 20px var(--accent))}}@keyframes exerciseBounce{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-6px)scale(1.05)}}@keyframes slideOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes poseShow{0%{opacity:1}42%{opacity:1}50%{opacity:0}92%{opacity:0}to{opacity:1}}.calendar-wrap{width:100%}.react-calendar{width:100%!important;color:var(--text-main)!important;background:0 0!important;border:none!important;font-family:Noto Sans KR,sans-serif!important}.react-calendar__navigation{gap:4px;margin-bottom:12px!important}.react-calendar__navigation button{cursor:pointer;border:none;border-radius:8px;min-width:36px;padding:8px 4px;font-size:15px;font-weight:600;transition:background .2s;color:var(--text-main)!important;background:0 0!important;font-family:Noto Sans KR,sans-serif!important}.react-calendar__navigation button:hover,.react-calendar__navigation button:focus{background:var(--bg-surface)!important}.react-calendar__navigation button:disabled{opacity:.3}.react-calendar__month-view__weekdays{text-transform:uppercase;letter-spacing:.5px;font-weight:600;color:var(--text-dim)!important;font-size:12px!important}.react-calendar__month-view__weekdays__weekday{text-align:center;padding:8px 0!important}.react-calendar__month-view__weekdays__weekday abbr{cursor:default;text-decoration:none!important}.react-calendar__tile{cursor:pointer;font-size:14px;transition:background .15s,color .15s;position:relative;color:var(--text-main)!important;background:0 0!important;border-radius:10px!important;padding:10px 4px 6px!important;font-family:Noto Sans KR,sans-serif!important}.react-calendar__tile:hover{background:var(--bg-surface)!important}.react-calendar__tile--now{background:#ffffff0d!important;border:1px solid #ffffff1a!important}.react-calendar__tile--active,.react-calendar__tile--active:hover{font-weight:700;background:var(--accent-dim)!important;color:var(--accent)!important;border:1px solid #00e6764d!important}.react-calendar__tile.workout-day{background:#00e6760f!important}.react-calendar__tile.workout-day:hover{background:#00e6761f!important}.react-calendar__month-view__days__day--neighboringMonth{opacity:.3;color:var(--text-dim)!important}.react-calendar__month-view__days__day--weekend:nth-child(7n+1){color:var(--danger)!important}.react-calendar__month-view__days__day--weekend:nth-child(7n){color:#42a5f5!important}
