:root{--bg:#07110e;--bg-ink:#0d1915;--panel:rgba(10,24,19,0.78);--panel-strong:rgba(245,240,221,0.96);--panel-soft:rgba(245,240,221,0.08);--line:rgba(220,255,120,0.18);--line-strong:rgba(220,255,120,0.34);--text:#f4edd8;--text-dark:#10221b;--muted:#9ba894;--muted-strong:#c5d0b6;--accent:#d8ff3d;--accent-ink:#17230d;--accent-soft:rgba(216,255,61,0.16);--copper:#f2a65a;--blue:#76d6ff;--success:#95f985;--warning:#ffd166;--danger:#ff6b5f;--danger-soft:rgba(255,107,95,0.16);--shadow:0 26px 80px rgba(0,0,0,0.34);--shadow-tight:0 18px 46px rgba(0,0,0,0.26);--radius-lg:30px;--radius-md:20px;--radius-sm:14px;--font-display:"Baskerville","Songti SC","STSong",serif;--font-body:"Avenir Next","PingFang SC","Hiragino Sans GB",sans-serif;--font-data:"DIN Alternate","Avenir Next Condensed","Impact",sans-serif}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{position:relative;margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 16% -12%,rgba(216,255,61,.32),transparent 30vw),radial-gradient(circle at 92% 10%,rgba(118,214,255,.22),transparent 28vw),radial-gradient(circle at 70% 100%,rgba(242,166,90,.18),transparent 30vw),linear-gradient(135deg,#07110e,#0b1713 48%,#11120e);font-family:var(--font-body);letter-spacing:-.01em}body:after,body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;content:""}body:before{opacity:.34;background-image:linear-gradient(rgba(245,240,221,.055) 1px,transparent 0),linear-gradient(90deg,rgba(245,240,221,.045) 1px,transparent 0);background-size:54px 54px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 78%);mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 78%)}body:after{opacity:.25;background:repeating-linear-gradient(115deg,transparent,transparent 16px,rgba(216,255,61,.06) 17px,transparent 18px);mix-blend-mode:screen}::selection{color:var(--accent-ink);background:var(--accent)}a{color:inherit;text-decoration:none}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell,.shell{position:relative;width:min(1180px,calc(100vw - 28px));margin:0 auto;padding:28px 0 72px}.shell{width:min(1120px,calc(100vw - 32px))}.hero,.topbar{position:relative;isolation:isolate;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;min-height:148px;margin-bottom:18px;padding:22px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(120deg,rgba(245,240,221,.12),rgba(245,240,221,.025)),rgba(8,21,17,.72);box-shadow:var(--shadow);animation:rise-in .55s ease both}.hero:before,.topbar:before{position:absolute;top:-70%;right:-18%;z-index:-1;width:48%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(216,255,61,.36),transparent 68%);content:""}.hero:after,.topbar:after{position:absolute;right:20px;bottom:14px;z-index:-1;color:rgba(245,240,221,.07);font-family:var(--font-data);font-size:clamp(70px,15vw,190px);font-weight:800;line-height:.75;letter-spacing:-.08em;content:"LOAD"}.hero{display:grid;align-items:start}.hero h1,.topbar h1{margin:4px 0 0;max-width:780px;font-family:var(--font-display);font-size:clamp(38px,7vw,88px);font-weight:700;line-height:.88;letter-spacing:-.075em}.hero p{max-width:680px;margin:8px 0 0;color:var(--muted-strong);font-size:16px;line-height:1.7}.eyebrow,.kicker{color:var(--accent);font-size:12px;letter-spacing:.16em}.eyebrow,.kicker,.status-pill{font-family:var(--font-data);font-weight:800;text-transform:uppercase}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:126px;min-height:44px;padding:9px 15px;border:1px solid var(--line-strong);border-radius:999px;background:linear-gradient(135deg,rgba(216,255,61,.18),rgba(245,240,221,.04)),rgba(8,21,17,.72);color:var(--text);font-size:14px;letter-spacing:.04em;text-align:center;box-shadow:inset 0 0 22px rgba(216,255,61,.07);transform:rotate(-2deg)}.topbar-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.grid{display:grid;grid-gap:18px;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.panel,.surface{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(150deg,rgba(245,240,221,.12),rgba(245,240,221,.035)),var(--panel);box-shadow:var(--shadow-tight);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel:before,.surface:before{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(216,255,61,.12),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.08),transparent 26%);opacity:.72;content:""}.surface{padding:20px;animation:rise-in .55s ease both}.panel>*,.surface>*{position:relative;z-index:1}.panel-body{padding:22px}.panel h2,.panel h3{margin:0 0 10px}.tabs{position:-webkit-sticky;position:sticky;top:10px;z-index:10;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:14px;padding:8px;border:1px solid rgba(245,240,221,.12);border-radius:999px;background:rgba(4,12,10,.72);box-shadow:0 16px 38px rgba(0,0,0,.24);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);animation:rise-in .45s ease .08s both}.ghost-button,.icon-button,.primary-button,.tab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;font-family:var(--font-data);font-size:14px;font-weight:800;letter-spacing:.02em;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.ghost-button,.icon-button,.tab{background:rgba(245,240,221,.06)}.ghost-button:hover,.icon-button:hover,.tab:hover{border-color:var(--line-strong);background:rgba(245,240,221,.1);transform:translateY(-1px)}.tab.active{background:var(--accent);box-shadow:0 10px 26px rgba(216,255,61,.22)}.primary-button,.tab.active{border-color:transparent;color:var(--accent-ink)}.primary-button{padding:0 18px;background:linear-gradient(135deg,#e6ff58,#b8ff35 55%,#78df53);box-shadow:0 14px 34px rgba(216,255,61,.22),inset 0 -2px 0 rgba(23,35,13,.2)}.primary-button:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 18px 46px rgba(216,255,61,.28),inset 0 -2px 0 rgba(23,35,13,.2)}.ghost-button{padding:0 14px}.ghost-button.danger,.icon-button.danger{border-color:rgba(255,107,95,.28);color:var(--danger)}.ghost-button.danger:hover,.icon-button.danger:hover{background:var(--danger-soft)}.icon-button{width:42px;padding:0}button:disabled{cursor:progress;filter:saturate(.72);opacity:.62;transform:none}.spin{animation:spin .8s linear infinite}.feedback{position:relative;margin-bottom:14px;padding:13px 16px 13px 44px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(245,240,221,.13),rgba(245,240,221,.04)),rgba(7,17,14,.82);color:var(--muted-strong);font-size:14px;font-weight:800;box-shadow:var(--shadow-tight);animation:slide-flash .28s ease both}.feedback:before{position:absolute;top:50%;left:16px;width:12px;height:12px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 8px rgba(118,214,255,.12);content:"";transform:translateY(-50%)}.feedback.success:before{background:var(--success);box-shadow:0 0 0 8px rgba(149,249,133,.12)}.feedback.error:before{background:var(--danger);box-shadow:0 0 0 8px rgba(255,107,95,.12)}.feedback.success{border-color:rgba(149,249,133,.26)}.feedback.error{border-color:rgba(255,107,95,.3)}.work-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(288px,.8fr);grid-gap:14px;gap:14px}.primary-work{min-height:430px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.section-head h1,.section-head h2,.start-panel h3{margin:5px 0 0;font-family:var(--font-display);font-size:clamp(25px,4vw,42px);line-height:.96;letter-spacing:-.055em}.metric-row,.target-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:12px}.metric-row{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-row.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric,.metric-row div,.mini-day,.target-strip div{position:relative;overflow:hidden;padding:14px;border:1px solid rgba(245,240,221,.1);border-radius:var(--radius-md);background:linear-gradient(150deg,rgba(245,240,221,.09),rgba(245,240,221,.025)),rgba(4,12,10,.42)}.metric-row div:after,.metric:after,.mini-day:after,.target-strip div:after{position:absolute;right:-18px;bottom:-26px;color:rgba(245,240,221,.06);font-family:var(--font-data);font-size:66px;font-weight:900;line-height:1;content:"////";transform:rotate(-12deg)}.metric-label,.metric-row span,.target-strip span{display:block;margin-bottom:7px;color:var(--muted);font-family:var(--font-data);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric-row strong,.metric-value,.mini-day strong,.target-strip strong{color:var(--text);font-family:var(--font-data);font-size:clamp(23px,4vw,34px);font-weight:900;line-height:.95;letter-spacing:-.045em}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.action-row,.status-row{display:flex;flex-wrap:wrap;gap:9px}.action-row{margin-top:16px}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(245,240,221,.08);color:var(--text);font-family:var(--font-data);font-size:13px;font-weight:800}.badge.accent{border-color:var(--line-strong);color:var(--accent)}.badge.success{color:var(--success)}.badge.warning{color:var(--warning)}.detail-line,.exercise-item small,.exercise-meta,.history-row small,.session-detail,.session-meta{display:block;color:var(--muted-strong);font-size:14px;line-height:1.65}.empty-state{padding:18px;border:1px dashed rgba(245,240,221,.18);border-radius:var(--radius-md);background:repeating-linear-gradient(135deg,rgba(245,240,221,.045) 0 8px,transparent 8px 16px),rgba(245,240,221,.045);color:var(--muted-strong);font-weight:700}.exercise-list,.history-list,.remark-list,.session-list{display:grid;grid-gap:12px;gap:12px}.exercise-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-item,.history-exercise,.history-row,.history-session,.session-item,.week-day{position:relative;overflow:hidden;border:1px solid rgba(245,240,221,.12);border-radius:var(--radius-md);background:linear-gradient(150deg,rgba(245,240,221,.105),rgba(245,240,221,.03)),rgba(4,12,10,.48);transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}.exercise-item,.session-item{padding:16px 16px 16px 18px}.exercise-item:before,.history-row:before,.history-session:before,.week-day:before{position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--accent),rgba(216,255,61,.05));content:""}.exercise-item:hover,.history-row:hover,.history-session:hover,.week-day:hover{border-color:rgba(216,255,61,.32);background:linear-gradient(150deg,rgba(216,255,61,.12),rgba(245,240,221,.04)),rgba(4,12,10,.56);box-shadow:0 18px 42px rgba(0,0,0,.16);transform:translateY(-2px)}.exercise-head,.session-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px}.exercise-head strong,.exercise-name,.history-exercise-head strong,.history-row strong,.history-session-head strong,.session-name,.week-day strong{color:var(--text);font-size:17px;font-weight:900;letter-spacing:-.02em}.exercise-head span{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:40px;padding:4px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-data);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.finish-grid,.set-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:11px;gap:11px;margin-top:16px}.finish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finish-grid label,.set-form label{display:grid;grid-gap:7px;gap:7px;color:var(--muted-strong);font-family:var(--font-data);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.wide{grid-column:1/-1}.combo-form{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.combo-note{padding:12px 14px;border:1px solid rgba(216,255,61,.18);border-radius:var(--radius-sm);background:rgba(216,255,61,.08);color:var(--muted-strong);font-size:14px;font-weight:800;line-height:1.6}.combo-component{padding:14px;border:1px solid rgba(245,240,221,.12);border-radius:var(--radius-md);background:linear-gradient(150deg,rgba(245,240,221,.09),rgba(245,240,221,.025)),rgba(4,12,10,.36)}.combo-component-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.combo-component-head strong{color:var(--text);font-size:17px;font-weight:900}.combo-component-head span{color:var(--accent);font-family:var(--font-data);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.set-form.compact{margin-top:0}input,select,textarea{width:100%;min-height:44px;border:1px solid rgba(245,240,221,.16);border-radius:16px;padding:9px 12px;background:rgba(4,12,10,.62);color:var(--text);font-family:var(--font-body);font-size:16px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input:focus,select:focus,textarea:focus{border-color:rgba(216,255,61,.48);background:rgba(4,12,10,.78);box-shadow:0 0 0 4px rgba(216,255,61,.08)}select{color-scheme:dark}textarea{min-height:92px;resize:vertical}.start-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:250px;padding:8px 0}.start-panel p{margin:10px 0 0;color:var(--muted-strong);font-size:15px}.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 14px 18px}.history-row span{display:block;margin-top:5px;color:var(--muted-strong);font-size:13px}.history-session{display:grid;grid-gap:14px;gap:14px;padding:16px 16px 16px 20px}.history-session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.history-exercise-meta,.history-session-head small,.history-session-head span,.history-set small,.history-set span{color:var(--muted-strong);font-size:13px;line-height:1.6}.history-session-head span{display:block;margin-top:5px}.history-session-head small{display:inline-flex;align-items:center;gap:6px;margin-top:4px}.history-session-note{margin:0;padding:10px 12px;border:1px solid rgba(245,240,221,.1);border-radius:var(--radius-sm);background:rgba(245,240,221,.055);color:var(--muted-strong);font-size:14px;line-height:1.65}.history-exercise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.history-exercise{padding:13px;background:linear-gradient(150deg,rgba(245,240,221,.085),rgba(245,240,221,.025)),rgba(4,12,10,.34)}.history-exercise-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.history-exercise-head span{flex:0 0 auto;color:var(--accent);font-family:var(--font-data);font-size:12px;font-weight:900}.history-round-list,.history-set-list{display:grid;grid-gap:6px;gap:6px;margin-top:10px}.history-round,.history-set{padding:8px 10px;border:1px solid rgba(245,240,221,.08);border-radius:12px;background:rgba(4,12,10,.28)}.history-round{display:grid;grid-gap:4px;gap:4px}.history-round strong{color:var(--accent);font-family:var(--font-data);font-size:12px;font-weight:900;letter-spacing:.08em}.history-round span,.history-set small,.history-set span{display:block}.history-set small{margin-top:3px}.week-load-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:9px;gap:9px}.mini-day{display:grid;grid-gap:7px;gap:7px;min-height:116px}.mini-day small,.mini-day span{position:relative;z-index:1;color:var(--muted-strong);font-family:var(--font-data);font-size:12px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.week-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.week-day{min-height:238px;padding:16px}.week-day .section-head{align-items:center}.toolbar-row{margin-bottom:14px}.command-block{position:relative;overflow:auto;margin:0;padding:18px;border:1px solid rgba(216,255,61,.22);border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(216,255,61,.08),transparent),#050b09;color:#eaff9c;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.7;box-shadow:inset 0 0 0 1px rgba(245,240,221,.04)}.setup-panel{margin-top:24px;padding:24px}.setup-list{margin:14px 0 0;padding-left:18px;color:var(--muted-strong);line-height:1.7}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 50% 18%,rgba(216,255,61,.15),transparent 36%),rgba(2,7,5,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.modal{width:min(700px,100%);max-height:min(780px,calc(100vh - 36px));overflow:auto;padding:20px;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:linear-gradient(150deg,rgba(245,240,221,.14),rgba(245,240,221,.05)),rgba(8,21,17,.96);color:var(--text);box-shadow:0 36px 90px rgba(0,0,0,.48)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slide-flash{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}@media (max-width:900px){.exercise-list.compact,.grid.two,.metric-grid,.week-page-grid,.work-grid{grid-template-columns:1fr}.app-shell,.shell{width:min(100vw - 20px,1180px);padding-top:12px}.hero,.topbar{align-items:flex-start;min-height:132px;padding:18px}}@media (max-width:780px){body:before{background-size:38px 38px}.hero,.topbar{flex-direction:column}.status-pill{min-width:auto;transform:rotate(0)}.topbar-actions{justify-content:flex-start;width:100%}.tabs{top:8px;border-radius:22px}.tab{min-height:44px;padding:0 8px;font-size:12px}.surface{padding:16px;border-radius:24px}.finish-grid,.history-exercise-grid,.metric-row,.metric-row.four,.set-form,.target-strip,.week-load-grid{grid-template-columns:1fr}.start-panel{justify-content:center}.section-head,.start-panel{align-items:stretch;flex-direction:column}.section-head .ghost-button,.section-head .primary-button,.start-panel .primary-button{width:100%}.history-row{align-items:flex-start}.history-session-head{flex-direction:column}}