:root{--bg: #ffffff;--surface: #f8f8f8;--text: #151515;--muted: #5e5e5e;--line: #111111;--line-soft: rgba(17, 17, 17, .18);--accent: #6b4cd1;--accent-soft: rgba(107, 76, 209, .12);--danger: #b53c3c;--ok: #1f7a43}html{-webkit-text-size-adjust:100%}#root{min-height:100vh}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg);color:var(--text)}.app-header{padding:1rem 1rem .75rem;border-bottom:1px solid var(--line-soft);background:#b9a6de73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.app-header-main-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.app-brand-block{min-width:0}.app-logo{width:52px;height:52px;border-radius:.75rem;object-fit:cover}.app-header h1{margin:0;font-size:1.35rem;letter-spacing:.01em;display:flex;align-items:baseline;gap:.45rem;flex-wrap:wrap}.app-version{font-size:.8rem;font-weight:700;color:var(--muted);padding:.14rem .42rem;border-radius:999px;border:1px solid var(--line-soft);background:#ffffff8c}.app-main{padding:1rem 1rem 6rem}.app-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;padding:.6rem;background:var(--bg);border-top:1px solid var(--line-soft)}.nav-link{color:var(--text);display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-size:.72rem;line-height:1.1;padding:.52rem .3rem;border-radius:.55rem;border:1px solid transparent;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.nav-link:hover,.nav-link:focus-visible,.nav-link:active{border-color:var(--line-soft);background:#00000005}.nav-link-active{color:var(--accent);border-color:#6b4cd159;background:var(--accent-soft)}.screen{display:grid;gap:.6rem}.screen h2{margin-top:0;margin-bottom:.35rem}.muted{margin-top:0;color:var(--muted)}.card-grid{display:grid;gap:.75rem;margin:.8rem 0}.home-card-link{text-decoration:none;color:inherit;display:block}.home-nav-card{min-height:100%}.card{position:relative;border-radius:.85rem;background:var(--bg);padding:.85rem .9rem}.card:before{content:"";position:absolute;left:16%;right:16%;height:1px;background:var(--line-soft)}.card:before{top:0}.home-card-link:hover .home-nav-card,.home-card-link:focus-visible .home-nav-card{background:var(--surface)}.card h3{margin:0 0 .4rem}.up-next-title{margin:0 0 .25rem;font-size:1.02rem;font-weight:800;letter-spacing:.01em}.up-next-headline{font-size:1.28rem;font-weight:800}.list{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}.list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.72rem .8rem;border-radius:.75rem;background:var(--bg);border:1px solid transparent;transition:border-color .13s ease,background-color .13s ease}.list-item:hover,.list-item:focus-within{border-color:var(--line-soft);background:#fbfbfb}@media (hover: none){.list-item:hover,.home-card-link:hover .home-nav-card,.ghost-button:hover,.ghost-link:hover,.nav-link:hover{border-color:transparent;background:inherit;box-shadow:none}}.list-item span{color:var(--muted);font-size:.85rem}.list-item-stack{align-items:stretch;flex-direction:column;justify-content:flex-start}.list-subtext{margin:.35rem 0 0;color:var(--muted);font-size:.85rem}.screen-header-row{display:flex;justify-content:space-between;align-items:center;gap:.8rem}.plus-button{min-width:44px;padding:0;font-size:2rem;line-height:.8}.input-row{display:grid;grid-template-columns:1fr auto;gap:.55rem;margin:.75rem 0}.input-row input,.form-stack input,.form-stack select,.form-stack textarea,.metric-field input{width:100%;min-height:44px;border-radius:.7rem;border:1px solid var(--line-soft);background:var(--bg);color:var(--text);font-size:16px;padding:.55rem .7rem;transition:border-color .13s ease,box-shadow .13s ease}.form-stack textarea{font-family:inherit}.input-row input:focus,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.metric-field input:focus{outline:none;border-color:#6b4cd199;box-shadow:0 0 0 2px #6b4cd126}.form-stack option{color:var(--text)}.form-stack{display:grid;gap:.6rem;margin:.7rem 0}.field-label{font-weight:700}.checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.92rem}.checkbox-row-card{min-height:44px;border-radius:.75rem;border:1px solid var(--line-soft);background:var(--bg);padding:.72rem .8rem}.checkbox-row input{width:18px;height:18px;accent-color:var(--accent)}.builder-list{display:grid;gap:.75rem}.triple-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.triple-row label{display:grid;gap:.35rem;font-size:.82rem;min-width:0}.workout-metrics-row{margin-top:.35rem}.metric-readout{display:grid;gap:.45rem;align-content:start}.metric-readout strong{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:.7rem;border:1px solid var(--line-soft);background:var(--bg);padding:0 .7rem}.primary-button,.primary-link,.input-row button,.screen-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:.7rem;border:1px solid rgba(107,76,209,.5);background:var(--accent);color:#fff;font-weight:700;font-size:16px;line-height:1.1;text-align:center;padding:0 1rem;text-decoration:none;transition:transform .1s ease,box-shadow .12s ease,background-color .12s ease}.primary-button:active,.primary-link:active,.input-row button:active,.screen-actions button:active{transform:translateY(1px);box-shadow:inset 0 2px #00000040}.primary-button:disabled{opacity:.55}.ghost-button,.ghost-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:.65rem;border:1px solid transparent;background:transparent;color:var(--text);font-weight:600;font-size:16px;line-height:1.1;text-align:center;padding:0 .8rem;text-decoration:none;transition:border-color .13s ease,background-color .13s ease,box-shadow .13s ease}.ghost-button:focus{outline:none}.ghost-button:hover,.ghost-button:focus-visible,.ghost-button:active,.ghost-link:hover,.ghost-link:focus-visible,.ghost-link:active{border-color:var(--line-soft);background:#00000008;box-shadow:inset 0 1px #0000001f}.danger-button,.danger-text-button{color:var(--danger)}.screen-actions{display:flex;gap:.6rem;margin-top:.85rem}.inline-actions{display:flex;flex-wrap:wrap;gap:.4rem}.inline-actions .ghost-button{min-height:36px}.list-link{color:var(--text);text-decoration:none;font-weight:700}.list-link:hover,.list-link:focus-visible{text-decoration:underline}.list-item-link{text-decoration:none;color:inherit}.exercise-creation-section{margin-bottom:.35rem}.exercise-creation-card{margin-bottom:.2rem}.detail-stack{display:grid;gap:.55rem}.detail-back-link{width:fit-content}.workout-exercise-name{margin:.2rem 0 .4rem;font-weight:700;font-size:1.05rem}.split-group{margin-top:1rem}.split-group h3{margin-bottom:.55rem}.split-library-header h3{margin:0}.plan-search-helper{margin:0 0 .45rem;color:var(--muted);font-size:.78rem}.plan-search-row{margin:0;align-items:flex-start}.plan-search-field{position:relative}.plan-search-menu{position:absolute;z-index:35;top:calc(100% + .25rem);left:0;right:0;list-style:none;margin:0;padding:.3rem;border:1px solid var(--line-soft);border-radius:.7rem;background:var(--bg);box-shadow:0 12px 24px #0000001f}.plan-search-option{display:block;width:100%;min-height:0;border:0;background:var(--bg);color:var(--text);box-shadow:none;text-align:left;font:inherit;font-weight:500;padding:.45rem .5rem;border-radius:.45rem}.plan-search-option:hover,.plan-search-option:focus-visible{background:var(--surface)}.plan-search-field .plan-search-option,.plan-search-field .plan-search-option:hover,.plan-search-field .plan-search-option:focus-visible,.plan-search-field .plan-search-option:active{color:var(--text);background:var(--bg);border-color:transparent;box-shadow:none}.plan-search-field .plan-search-option:hover,.plan-search-field .plan-search-option:focus-visible{background:var(--surface)}.plan-entry-card{gap:.55rem;border:0;border-radius:0;padding-left:.2rem;padding-right:.2rem}.plan-entry-rest{border-color:var(--line-soft)}.plan-entry-list{gap:0}.plan-entry-list>li{border-top:1px solid var(--line-soft)}.plan-entry-list>li:first-child{border-top:0}.plan-entry-heading{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.plan-entry-title-row{display:flex;align-items:center;gap:.4rem;flex:1;min-width:0}.plan-entry-heading strong{flex:1;min-width:0}.plan-entry-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.drag-grip-button{min-height:44px;min-width:40px;padding:0;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;display:grid;place-items:center}.drag-grip-button:active{cursor:grabbing}.drag-grip-visual{position:relative;width:18px;height:24px;display:inline-block}.drag-grip-visual:before{content:"";position:absolute;top:2px;left:4px;width:3px;height:3px;border-radius:50%;background:#1111119e;box-shadow:0 6px #1111119e,0 12px #1111119e,0 18px #1111119e,7px 0 #1111119e,7px 6px #1111119e,7px 12px #1111119e,7px 18px #1111119e}.plan-entry-gap-slot{border-top:1px solid var(--line-soft)}.plan-entry-gap{height:76px;margin:.35rem .2rem;border-radius:.7rem;border:2px dashed rgba(107,76,209,.4);background:#6b4cd117}.plan-drag-preview{position:fixed;z-index:180;pointer-events:none;width:min(88vw,420px);min-height:76px;display:flex;align-items:center;max-width:420px;padding:.7rem .9rem;border-radius:.75rem;border:1px solid rgba(107,76,209,.42);background:#fff;color:var(--text);font-weight:700;font-size:1rem;line-height:1.2;box-shadow:0 16px 30px #0003}.exercise-list{gap:0}.exercise-list>li{border-top:1px solid var(--line-soft)}.exercise-list>li:first-child{border-top:0}.exercise-list-item{border:0;border-radius:0;padding-left:.2rem;padding-right:.2rem}.exercise-name-button,.split-name-button{border:0;background:transparent;color:var(--text);text-align:left;padding:0;font:inherit}.exercise-name-button{flex:1}.split-library-list{gap:0}.split-library-item{border-top:1px solid var(--line-soft);border-radius:0;border-left:0;border-right:0;padding-left:.2rem;padding-right:.2rem;flex-direction:row;align-items:center;gap:.65rem}.split-library-item:first-child{border-top:0}.split-library-title{display:grid;gap:.15rem;flex:1;min-width:0}.split-library-title span{font-size:.82rem;color:var(--muted)}.split-library-actions{margin-left:auto}.split-library-actions .ghost-button{min-height:34px;padding:0 .65rem}.split-editor-content{max-height:min(78vh,700px);overflow-y:auto;padding-right:.2rem}.split-editor-intro{margin-bottom:.35rem}.split-editor-rows{margin-top:.3rem}.split-editor-row{border-top:1px solid var(--line-soft)}.split-editor-row:first-child{border-top:0}.split-editor-row-card{border-radius:.75rem;border:1px solid var(--line-soft);padding:.45rem .55rem;margin-bottom:.4rem;background:#fff}.split-editor-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem}.drag-grip-button-small{min-height:40px;min-width:34px;flex:0 0 auto}.split-editor-select{flex:1;min-width:0;margin:0}.split-editor-remove-button{flex:0 0 auto;min-height:40px;padding:0 .65rem}.split-editor-default-targets{margin:.35rem 0 0 2.4rem}.split-editor-row-gap{border-top:1px solid var(--line-soft);margin-bottom:.4rem}.split-editor-gap{height:52px;margin:.25rem .1rem;border-radius:.65rem;border:2px dashed rgba(107,76,209,.4);background:#6b4cd117}.split-editor-drag-preview{width:min(84vw,380px);min-height:52px;padding:.55rem .8rem}.split-detail-stack{display:grid;gap:.55rem}.split-detail-list{gap:.35rem}.split-detail-item{align-items:flex-start}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#19191959;z-index:120;display:grid;place-items:center;padding:1rem}.modal-card{width:min(100%,560px);max-height:calc(100vh - 2rem);overflow:auto;border-radius:.9rem;background:var(--bg);border:1px solid var(--line-soft);box-shadow:0 16px 40px #0003;padding:.9rem}.modal-card-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.45rem}.modal-card-header h3{margin:0}.modal-close{min-height:34px}.form-error{margin:0;color:var(--danger);font-size:.9rem}.success-text{margin:0;color:var(--ok);font-size:.9rem}.wheel-field{position:relative}.wheel-field-trigger{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-radius:.7rem;border:1px solid var(--line-soft);background:var(--bg);color:var(--text);padding:.55rem .7rem}.wheel-field-trigger-open{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent}.wheel-inline-popover{position:absolute;left:0;right:0;top:calc(100% - 1px);z-index:30;border:1px solid var(--line-soft);border-top:0;border-bottom-left-radius:.7rem;border-bottom-right-radius:.7rem;background:#fff;padding:.45rem .45rem .5rem;box-shadow:0 12px 24px #0000001f}.wheel-picker{position:relative;border-radius:.85rem;border:1px solid var(--line-soft);background:var(--surface);overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.wheel-picker-highlight{position:absolute;left:.55rem;right:.55rem;top:calc(50% - 22px);height:44px;border-radius:.7rem;background:var(--accent-soft);border:1px solid rgba(107,76,209,.35)}.wheel-picker-option{min-height:44px;display:grid;place-items:center;color:var(--muted)}.wheel-picker-option-active{color:var(--text);font-weight:700}.calendar-card{overflow:hidden}.calendar-day-summary-event{background:transparent!important;border:0!important;display:flex;justify-content:center}.calendar-day-marker{min-width:18px;min-height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:#fff;font-size:.68rem;font-weight:700;padding:0 .35rem;line-height:1}.fc .fc-daygrid-day-events{margin-top:.2rem}.fc .fc-daygrid-event-harness{margin-top:0!important}.day-summary-list{max-height:min(72vh,680px);overflow-y:auto;display:grid;gap:.7rem;padding-right:.15rem}.day-summary-session{border-top:1px solid var(--line-soft);padding-top:.65rem}.day-summary-session-button{width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:0}.day-summary-session-button h4{margin-top:0}.day-summary-session:first-child{border-top:0;padding-top:0}.day-summary-session h4{margin:0;font-size:.95rem}.day-summary-exercise-list{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.35rem}.day-summary-set-text{margin:.16rem 0 0;color:var(--muted);font-size:.82rem}.day-summary-notes{margin:.45rem 0 0;font-size:.85rem}.history-detail-stack{display:grid;gap:.55rem}.calendar-meta-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.calendar-meta-row p{margin:0}.fc{--fc-border-color: var(--line-soft);--fc-page-bg-color: transparent;--fc-neutral-bg-color: #fafafa;--fc-list-event-hover-bg-color: #f4f4f4}.fc .fc-toolbar-title{color:var(--text);font-size:1.1rem}.fc .fc-button{background:var(--bg);border:1px solid var(--line-soft);color:var(--text);text-transform:capitalize}.fc .fc-button.fc-button-active,.fc .fc-button:hover{background:var(--accent-soft);border-color:#6b4cd166;color:var(--accent)}.fc .fc-button:disabled{opacity:.55}.fc .fc-daygrid-day-number,.fc .fc-col-header-cell-cushion{color:var(--text);text-decoration:none}.fc .fc-day-today{background:var(--accent-soft)!important}.boot-state{min-height:100vh;display:grid;place-content:center;background:var(--bg);color:var(--text);text-align:center;padding:1rem}@media (min-width: 760px){.app-shell{max-width:620px;margin:0 auto;border-left:1px solid var(--line-soft);border-right:1px solid var(--line-soft)}.card-grid{grid-template-columns:1fr 1fr}}*{box-sizing:border-box}html,body{margin:0;min-width:320px;overflow-x:hidden;max-width:100%}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.35}
