/* Shared UI contract. Load after feature styles; do not style editors as ordinary fields. */
.push-settings [hidden]{display:none!important}
.push-settings .account-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:16px 0}

textarea[data-movement-input]{overflow-y:hidden;max-height:none;resize:none}
/* iPhone focus zoom: keep editable form text readable without disabling pinch zoom. */
@media(max-width:700px){
 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]),textarea,select{
  font-size:var(--mobile-input-font-size,16px)!important;
 }
}
.member-context-button{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;min-height:var(--control-height);padding:0;border:0;background:transparent;text-align:left}
.member-context-button .community-box-photo{width:28px;height:28px;flex:0 0 28px}
.member-context-button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-box-switcher{min-width:0;width:100%}
body[data-workspace="member"] #main .member-box-switcher .account-section-head{margin:0 0 12px}
#main .community-box-shortcuts .member-box-switcher .account-section-head h2{margin:0}
.member-box-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;max-width:100%;padding:2px}
.member-box-rail::-webkit-scrollbar{display:none}
.member-box-option{display:flex;align-items:center;gap:12px;flex:0 0 88%;min-width:0;scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);padding:16px;text-align:left}
.member-box-option[aria-pressed="true"]{border-color:var(--box-ink,var(--ink));background:var(--color-surface-soft,var(--bg))}
.member-box-rail:has(>.member-box-option:only-child)>.member-box-option{flex-basis:100%}
.member-box-option>span:nth-child(2){flex:1;min-width:0}
.member-box-option strong{display:block;overflow-wrap:anywhere;font-size:15px}
.member-box-option small{display:block;color:var(--muted);margin-top:4px}
.member-box-picker-list{display:grid;gap:12px}
.member-box-picker-list .member-box-option{width:100%;flex:none}
.member-box-picker-list .community-box-photo{flex:0 0 44px;width:44px;height:44px}
.member-box-picker-list .member-box-option[aria-pressed="true"]{background:var(--box-soft,var(--color-surface-soft));color:var(--box-deep,var(--ink))}
.member-box-selected-check{flex:none;width:24px;height:24px;color:var(--box-ink,var(--ink))}
.member-previous-boxes{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.member-previous-boxes>summary{cursor:pointer;font-weight:700}
.member-previous-boxes>p{margin:12px 0;line-height:1.6}
.member-previous-box{padding:16px;border:1px solid var(--line);border-radius:var(--radius-card)}
.member-previous-box>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}
.member-previous-box strong{min-width:0;overflow-wrap:anywhere}
.member-previous-box .account-actions{margin-top:12px;gap:16px;flex-wrap:wrap}
.community-visit-date{display:block;color:var(--muted);font-size:12px;line-height:1.4}
#main .community-box-profile-list--own:has(.member-box-switcher){display:block;overflow:visible;max-width:100%}
@media(max-width:700px){.top-context:has(.member-context-button){flex:1;min-width:0}.member-context-button{max-width:100%}.member-context-button strong{font-size:14px}}
:root{--ui-scroll-thumb:#aeb8b2;--ui-focus:#236f80;--ui-control-size:44px}
html{scrollbar-width:thin;scrollbar-color:var(--ui-scroll-thumb) transparent;scroll-padding-top:88px}
html{scrollbar-gutter:stable}
:where(#main,#modal,.sidebar,.notification-popover,.workspace-note) *{scrollbar-width:thin;scrollbar-color:var(--ui-scroll-thumb) transparent}
::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:var(--ui-scroll-thumb);border-radius:12px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}
/* Keep intentionally swipable rails free of a visible scroll bar. */
:is(.tabs,.post-categories,.community-section-tabs,.wod-workspace-tabs,.operation-counts,.tools-tabs){scrollbar-width:none}
:is(.tabs,.post-categories,.community-section-tabs,.wod-workspace-tabs,.operation-counts,.tools-tabs)::-webkit-scrollbar{display:none}
:is(#main,#modal) .btn{min-height:var(--ui-control-size);border-radius:var(--radius-control);font-size:13px;line-height:1.4;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center;max-width:100%;box-sizing:border-box}
:is(#main,#modal) .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
:is(#main,#modal) :is(.account-field,.field){min-width:0}
:is(#main,#modal) :is(.account-field,.field) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=hidden]),select,textarea),#main .account-search input{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-control);font-size:14px;line-height:1.5;color:var(--ink);background:var(--paper)}
:is(#main,#modal) :is(.account-field,.field) textarea{min-height:96px;resize:vertical}
:is(#main,#modal) :is(.account-field,.field) select{padding-right:30px;text-overflow:ellipsis}
:is(#main,#modal) :is(.account-field,.field) input[type=file]{white-space:normal;overflow:hidden}
:is(#main,#modal) :is(.account-field,.field) input[type=file]::file-selector-button{border:0;border-radius:7px;background:var(--color-surface-soft);padding:6px 9px;margin-right:8px;font:inherit;color:var(--ink)}
:is(#main,#modal) :is(.account-field,.field) :is(input,select,textarea):disabled{opacity:.65;cursor:not-allowed;background:var(--color-canvas)}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}
:is(#main,#modal) :is(.account-field,.field) :is(input,select,textarea):focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
:is(#main,#modal) .form-error:not(:empty){padding:10px 12px;border-radius:10px;background:#fff1ef;color:#99392f;font-size:13px;line-height:1.6;margin:12px 0}
:is(#main,#modal) :is(.form-actions,.modal-actions,.point-row-actions,.member-row-actions,.account-profile-actions,.operation-detail-actions){display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#main .account-section-head{gap:12px;flex-wrap:wrap}#main .account-section-head>div{min-width:0}
#main :is(.page-head,.account-section-head) :is(h1,h2,p){overflow-wrap:anywhere}
#main :is(.member-my-return,.points-return){min-height:40px;display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:4px 0;font-size:13px;text-decoration:none;color:var(--muted)}
#modal .modal-head .icon-btn{width:44px;height:44px;flex:0 0 44px}
@media(max-width:700px){
 :is(#main,#modal) :is(.account-field,.field) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),select,textarea),#main .account-search input{font-size:16px}
 :is(#main,#modal) :is(.btn,.icon-btn){min-height:44px}.icon-btn{min-width:44px}
 #main :is(.point-row-actions,.member-row-actions){gap:8px}
 #main :is(.form-grid,.signup-pair)>*{min-width:0}
 #main .page-head{gap:12px;margin-bottom:20px}#main .page-head h1{font-size:24px;line-height:1.35}
 #main .page-head p{font-size:12px;line-height:1.65}
 #modal .modal-content{padding-bottom:max(20px,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){:where(.btn,.icon-btn,.chip){transition:none}}

/* Mobile settings keep the form in view rather than stacking nine destinations. */
@media(max-width:700px){#main .box-settings-navigation{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;max-width:100%;padding:8px;border-radius:14px;scrollbar-width:none;scroll-padding-inline:8px}#main .box-settings-navigation::-webkit-scrollbar{display:none}#main .box-settings-nav-group,#main .box-settings-tabs{display:contents}#main .box-settings-nav-group>span{display:none}#main .box-settings-tabs a{flex:0 0 auto;min-height:44px;padding:10px 12px;white-space:nowrap;border-radius:10px}#main .box-settings-workspace{gap:16px}}

:is(#main,#modal) .account-field{margin-block:var(--space-3);font-size:13px;line-height:1.5;gap:var(--space-2)}
:is(#main,#modal) :is(.form-grid,.signup-pair)>.account-field{margin-block:0}
:is(#main,#modal) .form-grid{gap:16px 12px;margin-block:16px}

/* Box history album: compact thumbnails, one full image at a time. */
.history-album{margin-top:24px}.history-album .account-section-head{gap:12px;flex-wrap:wrap}.history-photo-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.history-photo-grid>div{min-width:0}.history-photo-grid button[data-history-photo]{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:12px;overflow:hidden}.history-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.history-photo-grid .text-link{min-height:44px}.history-photo-view>img{display:block;max-width:100%;width:auto;max-height:65dvh;object-fit:contain;margin:0 auto}.history-photo-view{touch-action:pan-y}.history-photo-view .account-actions{justify-content:space-between;align-items:center;margin-top:16px}.history-album-cover{width:100%;height:130px;object-fit:cover;border-radius:12px;margin:8px 0}.wod-history-grid[data-wod-layout="list"] .history-album-cover{width:80px;height:60px}.history-album [data-photo-progress]{overflow-wrap:anywhere}
.history-photo-grid>p{grid-column:1/-1;margin:8px 0;}

/* The WOD column sets the desktop row height; records scroll within that row. */
@media(min-width:1051px){
 .wod-history-detail-layout,.training-workspace .wod-history-detail-layout{align-items:stretch}
 .wod-history-detail-layout>.wod-history-record-panel{contain:size;min-height:0;overflow-y:auto;scrollbar-gutter:stable;overscroll-behavior-y:contain}
}
@media(max-width:1050px){
 .wod-history-record-panel{max-height:75dvh;overflow-y:auto;scrollbar-gutter:stable}
}

/* History filters use the saved class prescription, including the base RX. */
.wod-history-record-panel{display:flex;flex-direction:column}
.wod-history-record-panel [data-history-record-pane]:not([hidden]){display:flex;flex-direction:column;flex:1;min-height:0}
.wod-history-record-panel #wod-history-record-results{display:flex;flex-direction:column;flex:1}
.wod-history-record-panel .wod-history-record-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.wod-history-record-panel .wod-history-record-filters label{min-width:0}
.wod-history-record-panel .wod-history-record-filters label:last-child{grid-column:1/-1}

/* Local workout photo composer: preview stays readable beside compact controls. */
.workout-share{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.workout-share-preview{min-width:0;text-align:center}
.workout-share canvas{display:block;width:auto;max-width:100%;height:auto;max-height:65dvh;margin:0 auto;border-radius:16px}
.workout-share-controls{min-width:0;display:flex;flex-direction:column;gap:12px}
.workout-share-controls .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.workout-share-options{border:0;padding:0;margin:0;display:grid;gap:8px}
.workout-share-options legend{margin-bottom:8px;font-weight:600}
.workout-share-options label{display:flex;align-items:center;gap:8px;min-height:32px}
.workout-share-options input{width:18px;height:18px}
#modal:has(.workout-share){width:min(920px,calc(100vw - 32px))}
.record-history-row>div:first-child{flex:1;min-width:0}
@media(max-width:700px){.workout-share{grid-template-columns:minmax(0,1fr);gap:16px}.workout-share canvas{max-height:45dvh}.record-history-row{flex-wrap:wrap}.record-history-row>div:first-child{flex-basis:100%}#modal:has(.workout-share){width:100%}}

.workout-share canvas{touch-action:none;cursor:grab}.workout-share canvas:active{cursor:grabbing}.workout-share-preview input[type="range"]{width:100%;height:32px;padding:0}.share-crop-details{text-align:left;margin:8px 0}.workout-share-preview .account-field{text-align:left;margin-top:12px}

/* Hidden pagination must override shared button display. */
.record-more[hidden]{display:none!important}

/* Keep the next record action clear; advanced metadata stays available. */
.guided-record-form .record-secondary-fields{border:1px solid var(--line,#dfe5df);border-radius:12px;padding:0 12px;margin:8px 0 16px}
.guided-record-form .record-secondary-fields>summary{padding:12px 0;cursor:pointer;font-size:13px;color:var(--muted,#647168)}
.guided-record-form .record-secondary-fields[open]>summary{margin-bottom:8px}
.history-bulk-tools{border:1px solid var(--line,#dfe5df);border-radius:12px;padding:12px;margin:12px 0 20px;background:#f4f6f3}
.history-bulk-tools>summary{cursor:pointer;font-weight:600;min-height:32px}
.history-bulk-tools [data-quick-selection-count]{float:right;font-size:12px;color:var(--color-secondary)}
.history-bulk-tools .history-quick-bulk{margin-top:12px;border:0;padding:0}
.history-quick-savebar{border-top:1px solid var(--line,#dfe5df);padding-top:16px;margin-top:20px}

.wod-photo-import [hidden],[data-personal-workout][hidden]{display:none!important}
[data-personal-workout]{margin:16px 0;padding:16px;border:1px solid var(--line,#dfe5df);border-radius:12px}
[data-personal-workout] textarea{min-height:150px}

.record-history-actions{display:flex;gap:8px;flex-wrap:wrap}
.record-workout-summary{padding-bottom:12px;border-bottom:1px solid var(--line,#dfe5df)}
.record-workout-section{margin:20px 0}.record-workout-section h4{margin:0 0 8px}
.record-workout-section pre,.record-workout-scale pre{font:inherit;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.record-workout-scale{margin:12px 0;padding:12px 16px;background:var(--surface-soft,#f3f5f1);border-radius:12px}
.record-workout-scale summary{cursor:pointer;font-weight:600}
.visit-record summary{cursor:pointer;list-style:none}
.visit-record summary::-webkit-details-marker{display:none}
.visit-record summary.setting-row{align-items:center;flex-wrap:nowrap;flex-direction:row}
.visit-record summary::after{content:'';display:block;flex:0 0 20px;width:20px;height:20px;background:center/20px 20px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b756e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 4 5-4'/%3E%3C/svg%3E");transform-origin:center}
.visit-record[open] summary::after{transform:rotate(180deg)}
.visit-record summary>div{min-width:0;flex:1}
.visit-record summary strong{overflow-wrap:anywhere}

/* 히스토리는 운동 기록 제목 옆 보조 이동으로 배치한다. */
.record-history-box-picker summary::-webkit-details-marker{display:none;}


/* 기록 작성 중 당시 수업을 같은 화면에서 참고 */
.record-class-preview{border:1px solid var(--line,#e5e7eb);border-radius:12px;background:var(--color-surface);margin:8px 0 16px;}
.record-class-preview>summary{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;cursor:pointer;font-size:14px;font-weight:600;list-style:none;}
.record-class-preview>summary::-webkit-details-marker{display:none;}
.record-class-preview>summary .tiny{margin-left:auto;font-weight:400;}
.record-class-preview>summary:after{content:'⌄';}
.record-class-preview[open]>summary:after{content:'⌃';}
.record-class-preview-body{padding:0 12px 12px;}
.record-class-preview-body pre{white-space:pre-wrap;overflow-wrap:anywhere;}

/* 기록 관리 메뉴는 버튼 수와 무관하게 각 기록의 오른쪽 위에 고정한다. */
.record-history-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;column-gap:8px;row-gap:12px;}
.record-history-row>div:first-child{grid-column:1;grid-row:1;}
.record-history-row>.record-item-actions{grid-column:2;grid-row:1;justify-self:end;}
.record-history-row>.record-item-actions>summary{width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;}
.record-history-row>.record-history-actions{grid-column:1/-1;grid-row:2;display:flex;gap:8px;flex-wrap:wrap;}
.record-history-row>.record-item-actions>.account-actions{top:44px;}
@media(max-width:700px){.record-history-actions>.btn{flex:1 1 0;min-width:0;padding-inline:6px;font-size:12px;text-align:center;justify-content:center;}}

/* 애글릿 운영 전용 화면 */
.platform-body{display:block;}
.platform-header{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.platform-header{max-width:1080px;margin:auto;padding:20px 24px;}
#platform-main{max-width:1080px;margin:auto;padding:24px;}
.platform-login{max-width:460px;margin:48px auto;}
.platform-tabs{display:flex;gap:8px;overflow-x:auto;margin:24px 0;}
.platform-list{display:grid;gap:12px;margin-top:16px;}
.platform-row{width:100%;display:flex;align-items:center;gap:16px;text-align:left;color:inherit;font:inherit;cursor:pointer;}
.platform-row>span:first-child{flex:1;min-width:0;}.platform-row small{display:block;overflow-wrap:anywhere;margin-top:6px;color:var(--muted);}
.platform-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0;}.platform-facts dd{margin:6px 0;overflow-wrap:anywhere;}.platform-facts dt{color:var(--muted);font-size:13px;}
.platform-pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;}.platform-detail form{margin-top:24px;}.platform-detail details{margin-top:16px;}
@media(max-width:700px){#platform-main{padding:16px;}.platform-header{padding:16px;}.platform-login{margin:16px auto;}.platform-facts{grid-template-columns:1fr;}.platform-row{gap:8px;}.platform-tabs>.btn{white-space:nowrap;flex-shrink:0;}}

.platform-news-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}

/* Platform workspace: shared control tokens, compact operational overview. */
.platform-metrics{display:grid;gap:16px;margin:20px 0;}
.platform-metric{text-align:left;color:inherit;font:inherit;cursor:pointer;display:grid;gap:12px;min-width:0;}
.platform-metric>span:first-child{display:flex;align-items:center;gap:8px;}.platform-metric>strong{font-size:32px;line-height:1.2;}.platform-metric strong small{font-size:14px;font-weight:400;color:var(--muted);}
.platform-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#E45454;flex:none;}
.platform-work-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);align-items:start;gap:20px;}.platform-work-grid>*,.platform-task-copy{min-width:0;}
.platform-task-filters{margin:16px 0;scrollbar-width:none;}.platform-task-filters::-webkit-scrollbar{display:none;}.platform-task-filters>.btn{white-space:nowrap;flex-shrink:0;}
.platform-task-list{max-height:480px;overflow:auto;}.platform-task{display:flex;width:100%;align-items:center;gap:12px;padding:16px 0;border:0;border-bottom:1px solid var(--line,#e6e8e2);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;}.platform-task:last-child{border-bottom:0;}.platform-task:hover{background:var(--bg,#f7f8f4);}.platform-task-copy{flex:1;}.platform-task-copy strong,.platform-task-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.platform-task-copy small{color:var(--muted);margin-top:4px;}.platform-task time{font-size:12px;color:var(--muted);white-space:nowrap;}.platform-task>.pill{flex:none;}
.platform-activity>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#e6e8e2);font-size:13px;}.platform-activity time{color:var(--muted);white-space:nowrap;}.platform-box-row{display:flex;justify-content:space-between;gap:20px;}.platform-box-row h3{margin:0;}.platform-box-row p{margin:8px 0;}.platform-box-counts{display:grid;align-content:start;gap:8px;flex-shrink:0;}
@media(max-width:900px){.platform-work-grid{grid-template-columns:1fr;}}
@media(max-width:700px){.platform-metrics{gap:12px;}.platform-metric{padding:16px;}.platform-metric>strong{font-size:28px;}.platform-task{flex-wrap:wrap;gap:8px;}.platform-task-copy{flex-basis:60%;}.platform-task time{margin-left:auto;}.platform-box-row{flex-direction:column;gap:8px;}.platform-box-counts{grid-template-columns:1fr 1fr;}.platform-box-counts>small{grid-column:1/-1;}}
.platform-tabs{scrollbar-width:none;}.platform-tabs::-webkit-scrollbar{display:none;}
.platform-body .account-section-head>.btn{flex-shrink:0;white-space:nowrap;}
.platform-box-identity{display:flex;gap:16px;min-width:0;align-items:flex-start;}.platform-box-identity>div{min-width:0;overflow-wrap:anywhere;}.platform-box-avatar{width:64px;height:64px;object-fit:cover;object-position:center;border-radius:16px;flex:none;}.platform-box-placeholder{display:grid;place-items:center;background:#eef0e8;color:#7b8272;font-size:28px;}
.platform-news-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;}.platform-news-preview{min-width:0;position:sticky;top:20px;}.platform-news-preview .platform-tabs{margin:12px 0;}.community-story-photo{display:block;max-width:100%;max-height:65vh;object-fit:contain;margin:16px auto;}
@media(max-width:900px){.platform-metrics{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:700px){.platform-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}.platform-news-editor{grid-template-columns:1fr;}.platform-news-preview{position:static;}.platform-box-avatar{width:56px;height:56px;}}
.news-post{background:#fff;color:#222;border-radius:20px;overflow:hidden;border:1px solid var(--line,#e5e7e1);min-width:0;width:100%;text-align:left;}
.news-post-media{position:relative;background:#f1f2ee;}.news-post-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;}.news-post-track::-webkit-scrollbar{display:none;}.news-post-slide{flex:0 0 100%;min-width:0;aspect-ratio:1/1;scroll-snap-align:start;scroll-snap-stop:always;}.news-post-slide img{width:100%;height:100%;display:block;}.news-post-count{position:absolute;right:12px;top:12px;background:#222b;color:#fff;padding:4px 10px;border-radius:16px;font-size:12px;pointer-events:none;}.news-post-empty{aspect-ratio:1/1;display:grid;place-items:center;background:#d6f247;font-weight:800;}.news-post-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;}.news-post-dots{display:flex;justify-content:center;flex-wrap:wrap;}.news-post-dots button{width:24px;min-height:44px;background:none;border:0;padding:0;cursor:pointer;}.news-post-dots button:after{content:'';display:block;width:6px;height:6px;margin:auto;border-radius:50%;background:#c5c8bf;}.news-post-dots button[aria-current=true]:after{background:#26372c;}.news-post-copy{padding:16px 20px;}.news-post-copy h3{margin:8px 0!important;overflow-wrap:anywhere;}.news-post-copy p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;}.news-post-copy small,.news-post-copy time{font-size:12px;color:var(--color-secondary);}.news-photo-list{display:grid;gap:12px;margin:16px 0;}.news-photo-item{display:flex;gap:12px;padding:12px;border:1px solid var(--line,#e5e7e1);border-radius:16px;}.news-photo-item>img{width:64px;height:64px;object-fit:contain;background:#f1f2ee;border-radius:8px;flex:none;}.news-photo-item>div{flex:1;min-width:0;}.news-photo-item .account-actions{margin:8px 0;flex-wrap:wrap;}.news-photo-item .account-field{margin:8px 0 0;}.platform-news-preview .news-post{max-width:420px;margin:auto;}.community-news-card:has(.news-post){padding:0;}.community-news-card .news-post{border:0;}.community-news-card .news-post-track{pointer-events:none;}.community-news-card .news-post-slide{aspect-ratio:1/1;}
@media(prefers-reduced-motion:reduce){.news-post-track{scroll-behavior:auto;}}

/* Compact navigation rails and unbroken action labels (2026-10-11). */
:is(#main,#modal) .btn{white-space:nowrap;flex-shrink:0}
:is(#main,#modal) :is(.account-actions,.form-actions,.modal-actions){flex-wrap:wrap;min-width:0}
#main :is(.box-settings-workspace,.box-settings-content,.training-workspace){min-width:0;max-width:100%}
:is(.box-settings-navigation,.community-section-tabs,.wod-workspace-tabs,.record-page-tabs,.member-management-tabs,.purchase-category-tabs,.operator-tool-tabs,.tools-tabs,.operation-counts,.dashboard-box-tabs,.history-closeout-tabs,.box-preview-tabs,.post-categories){min-width:0;max-width:100%;overscroll-behavior-x:contain;scrollbar-width:none}
:is(.box-settings-navigation,.community-section-tabs,.wod-workspace-tabs,.record-page-tabs,.member-management-tabs,.purchase-category-tabs,.operator-tool-tabs,.tools-tabs,.operation-counts,.dashboard-box-tabs,.history-closeout-tabs,.box-preview-tabs,.post-categories)::-webkit-scrollbar{display:none}
.is-menu-dragging,.is-menu-dragging *{cursor:grabbing!important;user-select:none!important}
@media(max-width:700px){
 #main :is(.community-section-tabs,.wod-workspace-tabs,.record-page-tabs,.member-management-tabs,.purchase-category-tabs,.operator-tool-tabs,.tools-tabs,.operation-counts,.dashboard-box-tabs,.history-closeout-tabs,.box-preview-tabs,.post-categories){display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-padding-inline:8px}
 #main :is(.community-section-tabs,.wod-workspace-tabs,.record-page-tabs,.member-management-tabs,.purchase-category-tabs,.operator-tool-tabs,.tools-tabs,.operation-counts,.dashboard-box-tabs,.history-closeout-tabs,.box-preview-tabs,.post-categories)>:is(a,button){flex:0 0 auto;white-space:nowrap}
 #main .box-settings-navigation{width:100%;box-sizing:border-box;overscroll-behavior-x:contain}
 #main .training-workspace .account-section-head .account-actions>.btn{flex:1 0 auto;white-space:nowrap}
 :is(#main,#modal) :is(.account-actions,.form-actions,.modal-actions)>.btn{flex-basis:auto;white-space:nowrap}
}

/* Three fixed tool choices share the available rail width equally. */
#main .operator-tool-tabs{gap:12px}
#main .operator-tool-tabs>button{flex:1 0 0;min-width:max-content;white-space:nowrap}

/* Daily handoff: one compact date row, quiet pending count, no page-footer spacing. */
.handoff-heading{display:flex;align-items:center;gap:8px;min-width:0}
.handoff-count{font-size:12px;color:var(--muted);white-space:nowrap}
.handoff-panel .handoff-row footer{padding:0;border:0;letter-spacing:normal;text-transform:none}
@media(max-width:700px){
 #main .handoff-panel{padding:16px}
 #main .handoff-panel .dashboard-section-head{gap:12px;margin-bottom:12px}
 #main .handoff-panel .dashboard-section-head h2{font-size:16px}
 #main .handoff-date{gap:8px;padding-bottom:12px}
 #main .handoff-date input{flex:1;width:0;max-width:none;min-height:var(--ui-control-size);padding:10px 12px;border-radius:var(--radius-control);font-size:16px;background:var(--paper);color:var(--ink)}
 #main .handoff-date input::-webkit-calendar-picker-indicator{width:18px;height:18px;padding:3px;cursor:pointer;background:center/18px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23637169' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M7 3v4m10-4v4M3 11h18'/%3E%3C/svg%3E")}
 #main .handoff-date>.text-link{flex:none;min-height:var(--ui-control-size);padding:0 12px;white-space:nowrap}
 #main .handoff-row{padding:12px 0}
 #main .handoff-row-head{gap:8px;flex-wrap:wrap}
 #main .handoff-row-head strong{min-width:100px}
 #main .handoff-row-head>.text-link{flex:none;white-space:nowrap}
 #main .handoff-row footer{gap:8px;flex-wrap:wrap;margin-top:8px}
 #main .handoff-row footer small{min-width:120px;line-height:1.5}
 #main .handoff-done{min-height:var(--ui-control-size);border-radius:var(--radius-control)}
 #main .handoff-panel .dashboard-zero{padding:24px 8px;font-size:12px;line-height:1.7;text-align:center}
}
@media(max-width:700px){
 #modal [data-handoff-form] .signup-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 #modal [data-handoff-form] .signup-pair>.account-field{margin:0;min-width:0}
 #modal [data-handoff-form] .account-actions>.btn[type=submit]{flex:1}
 #modal [data-handoff-form] input[type=date]::-webkit-calendar-picker-indicator{width:18px;height:18px;padding:3px;background:center/18px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23637169' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M7 3v4m10-4v4M3 11h18'/%3E%3C/svg%3E")}
}
/* Fixed three-way record navigation keeps equal touch targets. */
#main .record-page-tabs>button{flex:1 0 0;min-width:max-content;white-space:nowrap}
@media(max-width:700px){
 #main .member-home-wod-actions{flex-wrap:wrap}
 #main .member-home-wod-actions>.btn{flex:1 0 auto;width:auto}
 #main .booking-wod-heading{flex-wrap:wrap}
 #main .booking-wod-heading>div{min-width:0;flex:1 1 160px}
}

/* Time results: fixed separator, numeric keyboard for each part. */
#modal .record-time-input{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;max-width:240px}
#modal .record-time-input[hidden]{display:none}
#modal .record-time-input input{min-width:0;width:100%;text-align:center}
#modal .record-time-input b{font-weight:600}

/* Drop-in booking: balanced time grid instead of a left-packed rail. */
.dropin-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
.dropin-times .dropin-time{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-width:0;gap:4px;padding:12px 8px}
.dropin-time small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400}
.dropin-price{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.dropin-demo-confirm{display:flex;align-items:flex-start;gap:8px;margin:12px 0;font-size:13px}
.dropin-demo-confirm[hidden]{display:none}
.dropin-demo-confirm input{flex:none;width:auto}
@media(max-width:420px){.dropin-times{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Shared amenity options: native checkboxes, text choices, no empty public section. */
.box-amenity-field{border:0;padding:0;margin:0;min-width:0}
.box-amenity-field legend{font-weight:700;font-size:14px;padding:0}
.box-amenity-picker{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--space-3)}
.box-amenity-picker .box-amenity-option{display:flex;flex-direction:row;justify-content:center;gap:var(--space-2);margin:0;min-width:0;cursor:pointer;font-weight:500}
.box-amenity-option input[type=checkbox]{position:static;width:14px;height:14px;min-height:0;margin:0;accent-color:var(--ink);flex:none}
.box-amenity-option:has(input:checked){background:var(--color-surface-soft);border-color:var(--ink);font-weight:700}
.box-amenity-option span{white-space:nowrap}
.box-amenity-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--space-4);padding:0;margin:var(--space-4) 0 0;list-style:none}
.box-amenity-list li{font-size:13px;overflow-wrap:anywhere;min-width:0;line-height:1.5}
@media(max-width:700px){.box-amenity-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Compact text choices and editable extra facility tags. */
.box-amenity-picker{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.box-amenity-picker .box-amenity-option{flex:0 1 auto;padding:var(--space-2) var(--space-3)}
.box-amenity-extras{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line)}
.box-amenity-add{display:flex;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}
.box-amenity-add input{flex:1;min-width:0}
.box-amenity-add button{flex:none}
.box-amenity-tags,.box-amenity-list{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;padding:0;margin:var(--space-3) 0 0}
.box-amenity-tags:empty{display:none}
.box-amenity-tags li,.box-amenity-list li{display:flex;align-items:center;min-width:0;max-width:100%;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-soft);border-radius:var(--radius-control);font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.box-amenity-tags li{padding:0 0 0 var(--space-3)}
.box-amenity-tags li>span{min-width:0;overflow-wrap:anywhere}
.box-amenity-tags [data-amenity-remove]{flex:none;border:0;background:transparent;padding:0;min-width:var(--touch-target);min-height:var(--touch-target)}
.box-amenity-section h2{margin-bottom:0}

/* Form geometry: grid items must not stretch controls to match autocomplete/help rows.
   Keep multiline editors, file/color/range controls and custom tools independent. */
:is(#main,#modal) :is(.account-field,.field){align-content:start}
:is(#main,#modal) :is(.form-grid,.signup-pair,.program-slot-fields,.session-options){align-items:start}
:is(#main,#modal) :is(.form-grid,.signup-pair,.program-slot-fields,.session-options)>*{min-width:0;max-width:100%}
:is(#main,#modal) :is(.form-grid,.program-slot-fields)>.movement-field{min-width:0;margin:0}
:is(#main,#modal) :is(.form-grid,.program-slot-fields)>.movement-field>.account-field{margin-block:0}
:is(#main,#modal) .program-slot-fields>.account-field{margin-block:0}
:is(#main,#modal) .program-slot-fields{gap:16px 12px;margin-block:16px}
:is(#main,#modal) :is(.account-field,.field) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]):not([type=hidden]),select){height:var(--ui-control-size);min-height:var(--ui-control-size);padding-block:8px;align-self:start}
/* WebKit's native time/date controls otherwise retain an intrinsic content width. */
:is(#main,#modal) :is(.account-field,.field) :is(input[type=time],input[type=date],input[type=datetime-local],input[type=month]){appearance:none;-webkit-appearance:none;display:block;min-inline-size:0;inline-size:100%;max-inline-size:100%}
:is(#main,#modal) :is(.account-field,.field) input::-webkit-date-and-time-value{min-width:0;text-align:left}
:is(#main,#modal) :is(.account-field,.field) input::-webkit-datetime-edit{min-width:0;padding:0}
/* Box color presets: shared controls, compact swatches and wrapping actions. */
.box-color-library{margin-top:20px;padding-top:16px;border-top:1px solid var(--line,#e5e7eb)}
.box-color-library h4{margin:0 0 12px}
.box-color-presets{display:grid;gap:8px;margin-bottom:16px}
.box-color-preset{display:flex;gap:8px;min-width:0}
.box-color-preset>.btn:first-child{flex:1;min-width:0;justify-content:flex-start}
.box-color-preset>.btn:first-child>span:nth-child(2){overflow:hidden;text-overflow:ellipsis}
.box-color-preset small{margin-left:auto;color:var(--muted,#64748b);flex-shrink:0}
.box-color-swatches{display:inline-flex;gap:4px;flex-shrink:0}
.box-color-swatches i{width:20px;height:20px;border-radius:50%;border:1px solid #0002}
.box-color-save-row{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.box-color-save-row input{flex:1 1 160px;min-width:0}
.box-color-save-row .btn{flex:0 0 auto}

/* Password visibility preserves the native input and password-manager attributes. */
.auth-password-control{position:relative;display:block;min-width:0}
.auth-password-control input{width:100%;padding-right:72px!important}
.auth-password-toggle{position:absolute;right:4px;top:0;bottom:0;min-width:60px;border:0;background:transparent;color:var(--muted,#64748b);font:inherit;font-size:13px;cursor:pointer;border-radius:var(--ui-control-radius,12px)}

.member-dropin-guide{display:grid;gap:12px;margin-top:8px}
.member-dropin-guide>div{display:flex;justify-content:space-between;gap:16px}
.member-dropin-guide small{line-height:1.5;color:var(--muted,#64748b)}
.member-dropin-guide .btn{justify-self:start}

/* Keep daily inbox work separate from occasional reply/price configuration. */
.visitor-workspace-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.visitor-workspace-head>div{display:flex;align-items:center;gap:12px;min-width:0}
.visitor-workspace-head h2{margin:0}
.visitor-settings-view{display:grid;gap:16px}
.visitor-settings-view[hidden],[data-visitor-inbox-view][hidden]{display:none!important}
.visitor-settings-view>.visitor-reply-settings{margin:0}
.visitor-settings-view .box-settings-form{border:0;box-shadow:none;padding:16px 0 0;margin:0}
.visitor-settings-view>.tiny{margin:0}

/* Settings hierarchy: four groups, only the current group's local navigation. */
#main .box-settings-navigation.settings-organized{display:grid;gap:8px;padding:0;background:none;border:0;border-radius:0;overflow:visible;margin-bottom:20px}
.box-settings-categories,.box-settings-subnav{display:flex;flex-wrap:nowrap;gap:8px;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding:4px}
.box-settings-categories::-webkit-scrollbar,.box-settings-subnav::-webkit-scrollbar{display:none}
.box-settings-categories>.btn,.box-settings-subnav>.btn{flex:0 0 auto;white-space:nowrap}
.box-settings-subnav{gap:8px}
.box-settings-subnav>.btn{background:var(--paper);border-color:var(--line);color:var(--muted)}
.box-settings-subnav>.btn.is-current{background:var(--color-surface-soft);border-color:var(--line);color:var(--ink);font-weight:800;box-shadow:none}
.box-settings-content .box-settings-intro{margin-bottom:16px;padding-bottom:12px}
.box-settings-content .box-settings-intro .eyebrow{display:none}
.box-settings-content .box-settings-intro h2{margin:0 0 8px;font-size:18px}
.settings-section-label{margin:0 0 12px}
.settings-fold{border-top:1px solid var(--line);margin:0!important;padding:0!important}
.settings-fold>summary{padding:16px 0;cursor:pointer;font-size:14px;font-weight:700}
.settings-fold-body{padding:0 0 16px;min-width:0}
.settings-fold-body>.account-field{margin-bottom:16px}
.box-profile-editor .box-settings-fields>.account-field{grid-column:auto}
@media(max-width:700px){.box-profile-editor .box-settings-fields>.account-field{grid-column:1/-1}}

/* Content first: concise page headings, small operational summaries. */
#main>.page-head{margin-bottom:20px;gap:16px}
#main .page-head .eyebrow{display:none}
#main .page-head h1{margin-top:0;margin-bottom:8px}
#main .page-head p{margin:0;line-height:1.5}
.locker-metrics{gap:12px;margin:16px 0}
.locker-metrics>.panel{min-height:0;padding:16px;gap:8px}
.locker-metrics strong{font-size:28px}
.operation-history>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;min-height:var(--control-height)}
.operation-history>summary small{font-weight:400;color:var(--muted)}
.operation-history[open]>summary{margin-bottom:16px}
.purchase-demo-notice{padding:12px 16px;margin:12px 0 16px}
.purchase-demo-notice p{margin:4px 0 0;line-height:1.5}
.operation-pending-dot.is-new-request{animation:none!important}

/* Member screens: action/status first, optional guidance and history on demand. */
#main .page-head p:empty{display:none}
.member-inline-help{margin:8px 0 12px;color:var(--muted);font-size:12px}
.member-inline-help>summary{cursor:pointer;padding:8px 0;min-height:var(--control-height);display:flex;align-items:center}
.member-inline-help>summary::after{content:'⌄';margin-left:8px}
.member-inline-help[open]>summary::after{content:'⌃'}
.member-profile-fold{margin:16px 0;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);padding:12px 16px}
.member-profile-fold>summary{min-height:var(--control-height);display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;cursor:pointer}
.member-profile-fold>summary span{font-size:12px;font-weight:400;color:var(--muted)}
.member-profile-fold .athlete-profile-card{margin:12px 0 0;box-shadow:none;border:0;padding:0}
.member-pending-requests{margin-bottom:20px}
/* Member mobile typography: semantic roles, not per-page size exceptions. */
:root{--member-text-body:15px;--member-text-control:14px;--member-text-help:13px;--member-text-meta:12px}
#main .community-section-tabs{width:100%;box-sizing:border-box}
#main .community-section-tabs>a{min-width:0;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}
@media(max-width:700px){
 body[data-workspace="member"]:not(.signed-out){font-size:var(--member-text-body)}
 body[data-workspace="member"] :is(#main,#modal) :is(.btn,.chip,.text-link,.community-section-tabs>a,.record-page-tabs>button,.record-page-tabs>a){font-size:var(--member-text-control);white-space:nowrap}
 body[data-workspace="member"] :is(#main,#modal) :is(.account-field,.field){font-size:var(--member-text-control)}
 body[data-workspace="member"] :is(#main,#modal) :is(.tiny,.form-error,.member-inline-help,.member-profile-fold>summary span,.page-head p,.my-menu-link span,.locker-footnote,.community-sharing-intro,.member-home-empty,.member-home-no-news){font-size:var(--member-text-help);line-height:1.6}
 body[data-workspace="member"] #main :is(.community-hero p,.community-news-card p,.community-hot-text,.training-block pre,.scaling-block pre,.member-home-wod pre,.member-home-wod-section pre,.member-home-scaling pre){font-size:var(--member-text-body);line-height:1.65}
 body[data-workspace="member"] #main :is(.my-menu-link strong,.quick-card b){font-size:var(--member-text-body)}
 body[data-workspace="member"] #main :is(.community-sample,.community-wod-label,.community-autoplay-toggle,.eyebrow,.pill,.point-state,.locker-state,.quick-card small){font-size:var(--member-text-meta)}
 body[data-workspace="member"] #main :is(.point-wallet,.point-request-row,.point-product-row,.locker-member-card,.member-home-news-item,.operation-history) small{font-size:var(--member-text-help);line-height:1.5}
 body[data-workspace="member"] .mobile-nav a{font-size:var(--member-text-meta);white-space:nowrap}
 body[data-workspace="member"] #main .community-section-tabs>a{font-size:var(--member-text-control);flex:1 1 0}
}
@media(max-width:700px){
 body[data-workspace="member"] #main :is(.community-heading p,.community-mybox div>span,.community-news-copy>small,.community-footnote,.community-section-head>small,.pr-history-row small,.record-pr-group summary span){font-size:var(--member-text-help);line-height:1.6}
 body[data-workspace="member"] #main :is(.community-mybox>b,.community-news-copy>span,.pr-history-row b){font-size:var(--member-text-control)}
 body[data-workspace="member"] #main .community-heading{flex-wrap:wrap;gap:8px}
 body[data-workspace="member"] #main .community-heading>div{flex:1 1 100%}
 body[data-workspace="member"] #main .community-mybox{flex-wrap:wrap}
 body[data-workspace="member"] #main .community-mybox>div{flex:1;min-width:0}
}
@media(max-width:700px){
 body[data-workspace="member"] #main :is(.wod-space-card-main pre,.wod-space-body pre){font-size:var(--member-text-body);line-height:1.65}
 body[data-workspace="member"] #main :is(.wod-space-format,.wod-space-meta code){font-size:var(--member-text-meta)}
}
/* Member box identity: quiet brand detail without extra content or navigation. */
body[data-workspace="member"][data-page="today"] #main .member-home-wod[data-home-wod]{border-radius:var(--radius-card);border-color:var(--line);background:var(--paper);box-shadow:none}
body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading{padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid var(--line);background:none;align-items:center}
body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading .eyebrow{display:none}
body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading h2{color:var(--box-deep,var(--ink))}
body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading p{margin:6px 0 0;font-size:var(--member-text-help)}
body[data-workspace="member"][data-page="today"] #main .member-home-wod-section>strong{display:inline-flex;align-items:center;gap:8px;color:var(--box-ink,var(--ink));font-size:var(--member-text-meta)}
body[data-workspace="member"][data-page="today"] #main .member-home-wod-section>strong::before{content:none}
body[data-workspace="member"][data-page="today"] #main .member-home-notices .member-home-news-item{border-radius:0;background:none;padding:12px 0;margin:0;border-top:1px solid var(--line)}
body[data-workspace="member"][data-page="today"] #main .member-home-notices .member-home-section-heading{margin-bottom:0}
body[data-workspace="member"][data-page="today"] #main .member-home-empty{padding:8px 0 0}
@media(max-width:700px){
 body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading{margin:0 0 16px;padding:0 0 12px}
}

/* Icon-only calendar keeps the native date picker and a full touch target. */
body[data-workspace="member"] #main .member-home-wod .home-wod-calendar{width:var(--touch-target);height:var(--touch-target);border:0;background:transparent;box-shadow:none}
body[data-workspace="member"] #main .member-home-wod .home-wod-calendar:hover{background:transparent}
body[data-workspace="member"] #main .member-home-wod .home-wod-calendar:focus-within{outline:none}
body[data-workspace="member"] #main .member-home-wod .home-wod-calendar:has(input:focus-visible){outline:2px solid var(--ui-focus);outline-offset:2px}
#main .community-section-tabs>a{min-height:var(--control-height);box-sizing:border-box}
/* Quiet surfaces: the member My Box visual contract across both workspaces.
   Structural layout, state colors, media and specialty editors remain feature-owned. */
:root{--ui-section-gap:20px}
#main :is(.panel,.training-card,.wod-history-card,.class-card,.box-directory-card,.purchase-product,.point-product-card,.record-pr-group,.box-settings-form,.program-page-pane,.program-entry){border-color:var(--ui-surface-line);border-radius:var(--radius-card);box-shadow:none}
#main :is(.panel,.training-card,.wod-history-card,.class-card,.purchase-product,.point-product-card,.box-settings-form,.program-page-pane,.program-entry):not(.dashboard-wod):not(.wod-feature){background:var(--paper)}
#main :is(.page-head,.account-section-head,.dashboard-section-head,.program-pane-head){gap:12px}
#main :is(.account-section-head,.dashboard-section-head,.program-pane-head)>div{min-width:0}
#main :is(.account-section-head,.dashboard-section-head,.program-pane-head) h2{font-size:20px;line-height:1.4;letter-spacing:-.4px}
#main :is(.panel,.box-settings-form,.program-page-pane)>.eyebrow,#main :is(.account-section-head,.dashboard-section-head,.program-pane-head) .eyebrow{display:none}
#main :is(.setting-row,.point-product-row,.point-request-row,.point-ledger-row,.dashboard-request,.dashboard-class,.post-row,.wod-history-record){border-color:var(--ui-surface-line)}
#main :is(.training-block,.scaling-block){border:0;border-top:1px solid var(--ui-surface-line);border-radius:0;box-shadow:none;padding:16px 0}
#main :is(.training-block,.scaling-block) pre{color:var(--ink)}
#main :is(.program-slot,.program-review,.history-quick-bulk){background:var(--ui-surface-soft);border-color:var(--ui-surface-line);border-radius:var(--radius-control);box-shadow:none}
#main :is(.dashboard-metric,.dashboard-metric:hover){border:1px solid var(--ui-surface-line);box-shadow:none}
#main .dashboard-wod{background:var(--paper);color:var(--ink);border-color:var(--ui-surface-line);box-shadow:none}
#main .dashboard-wod :is(.eyebrow,.text-link,.dashboard-wod-list span){color:var(--box-ink,var(--ink))}
#main .dashboard-wod :is(.dashboard-blank p,.dashboard-wod-count),#main .dashboard-wod>p{color:var(--muted)}
#main .point-wallet{background:linear-gradient(115deg,var(--box-soft,var(--color-surface-soft)),var(--paper) 85%);color:var(--ink);border:1px solid var(--ui-surface-line);border-radius:var(--radius-card);box-shadow:none}
#main .point-wallet span{color:var(--box-ink,var(--ink))}
#main .point-wallet p{color:var(--muted)}
#main .point-wallet-mark{color:var(--box-ink,var(--ink));opacity:.12}
#main :is(.member-profile-fold,.my-menu-link,.member-tools-shortcut,.point-coach-summary){border-color:var(--ui-surface-line);box-shadow:none}
#main :is(.community-section-tabs,.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.tools-tabs,.operator-tool-tabs,.history-closeout-tabs){box-shadow:none}
#main :is(.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.tools-tabs,.operator-tool-tabs,.history-closeout-tabs) :is(.active,.is-active,[aria-selected="true"]){box-shadow:none}
:is(#main,#modal) .btn.outline:not(.active):not(.is-current):not([aria-pressed="true"]):not([aria-selected="true"]){background:var(--paper);border-color:var(--ui-surface-line);box-shadow:none}
:is(#main,#modal) .btn.outline:hover{background:var(--ui-surface-soft)}
#modal .modal-head{border-bottom-color:var(--ui-surface-line)}
#main :is(.account-search,.wod-space-search){box-shadow:none}
@media(max-width:700px){
 #main :is(.account-section-head,.dashboard-section-head,.program-pane-head) h2{font-size:19px}
 #main :is(.training-block,.scaling-block){padding:14px 0}
}
/* Compact drop-in selection: two fields in one row, simple time cards. */
#modal .dropin-payment-options{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:12px;margin:20px 0 12px}
#modal .dropin-payment-options>.account-field{min-width:0;margin:0}
#modal .dropin-payment-options select{padding-inline:10px 26px}
#modal .dropin-times .dropin-time{padding:12px 8px;gap:4px;background:var(--paper);border-color:var(--ui-surface-line);box-shadow:none}
#modal .dropin-time strong{font-size:16px;font-variant-numeric:tabular-nums;line-height:1.4}
#modal .dropin-time small{font-size:12px;color:var(--muted)}
#modal .dropin-times .dropin-time[aria-pressed="true"]{background:var(--box-soft,var(--color-surface-soft));border-color:var(--box-accent,var(--color-accent));color:var(--box-ink,var(--ink))}
#modal .dropin-time small{white-space:normal;line-height:1.5;overflow:visible;text-overflow:clip}
.plan-history-toggle{display:flex;align-items:center;gap:8px;min-height:var(--control-height);font-size:14px;margin:12px 0 0}
#main :is([data-special-row],[data-closed-date-row])[hidden]{display:none}
.plan-history-toggle input{width:18px;height:18px;accent-color:var(--box-ink,var(--ink))}

/* Box discovery: shared controls, compact saved state and distance. */
.box-discovery-tools{flex-wrap:wrap;margin-bottom:12px}
.box-discovery-tabs{flex-wrap:wrap}
.box-discovery-tools .account-search{flex:1}
.box-bookmark{flex:none;gap:6px}
.box-distance{display:block;font-size:12px;color:var(--muted);margin-top:4px}
@media(max-width:700px){.box-discovery-tabs a{flex:1}.box-discovery-tools .account-search{flex-basis:60%}.box-bookmark{padding-inline:10px}}

/* Discovery and monthly plan: separate navigation from actions. */
.box-discovery-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px 8px}
.box-discovery-tabs{grid-column:1/-1;display:flex;gap:8px}
.box-discovery-tabs .btn{flex:1;min-width:0}
.box-discovery-tools .account-search{min-width:0;margin:0}
.box-discovery-tools [data-action="box-location"]{white-space:nowrap}
.box-browse-heading{align-items:start;gap:12px}
.box-browse-heading>div{min-width:0;flex:1}
.box-browse-heading .box-bookmark{padding:0;width:var(--ui-control-size,44px);flex:0 0 var(--ui-control-size,44px);border-color:transparent;background:transparent}
.box-browse-heading .box-bookmark span{display:none}
.box-browse-heading .box-bookmark[aria-pressed="true"]{color:var(--ink);background:transparent}
.box-detail-actions .box-bookmark{margin-left:auto;order:2}
.box-detail-actions .box-contact-icons{order:1}
#main .box-plan-notice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 12px;padding:0 0 20px;background:transparent;border-radius:0;border-bottom:1px solid var(--line,#e2e5df);margin-bottom:16px;align-items:end}
#main .box-plan-notice>div{grid-column:1/-1}
#main .box-plan-notice .account-field{min-width:0;margin:0;max-width:240px}
#main .box-plan-notice [data-plan-notice]{margin:0;white-space:nowrap}
#main .plan-history-toggle{margin:0 0 8px}
@media(max-width:700px){.box-discovery-tools{gap:12px 8px}.box-discovery-tabs{width:auto}.box-discovery-tools .account-search{min-width:0}.box-detail-actions .box-bookmark{margin-left:0}#main .box-plan-notice{gap:12px 8px}#main .box-plan-notice .account-field{max-width:none}}
#main .box-bookmark.btn{border:0;box-shadow:none;background:transparent;padding:0;width:var(--ui-control-size,44px);min-width:var(--ui-control-size,44px);flex:0 0 var(--ui-control-size,44px);color:var(--muted,#68716b)}
#main .box-bookmark.btn[aria-pressed="true"]{background:transparent;color:var(--ink,#19241e)}
#main .box-bookmark span{display:none}
#main .box-browse-heading .box-bookmark{align-self:center;margin:0 -8px 0 0}
#main .box-detail-actions .box-bookmark{margin-left:auto;order:2}
#main .box-distance{font-size:13px;font-weight:600;color:var(--ink,#19241e);line-height:1.5}

#main .box-discovery-tools input[type="search"]{height:var(--ui-control-size);min-height:var(--ui-control-size);padding-block:8px}
/* Opt-in map surface; common controls retain shared dimensions. */
.box-map{position:relative;width:100%;height:420px;min-width:0;border:1px solid var(--line,#e5e7eb);border-radius:20px;margin:16px 0;overflow:hidden;background:#f4f5f5;display:grid;place-items:center;color:#53605b}
.box-map-info{padding:12px 16px;font-size:14px}.box-map-info a{color:#172c23;font-weight:700}
.box-map-location{display:block;width:16px;height:16px;background:#3182f6;border:3px solid white;border-radius:50%;box-shadow:0 0 0 4px #3182f633}
.box-map-empty{position:absolute;z-index:10;top:12px;left:12px;right:12px;background:white;padding:12px;border-radius:12px;font-size:14px}
@media(max-width:700px){.box-map{height:340px}}
.box-map-label{display:block;transform:translate(-50%,-100%);white-space:nowrap;padding:8px 12px;background:#fff;color:#19241e!important;font-size:13px;font-weight:700;border:1px solid #d8ded9;border-radius:12px;box-shadow:0 2px 8px #17241b20;text-decoration:none}
.box-map-label:after{content:'';position:absolute;left:calc(50% - 4px);bottom:-5px;width:8px;height:8px;background:white;border-right:1px solid #d8ded9;border-bottom:1px solid #d8ded9;transform:rotate(45deg)}
.box-map-me{position:relative;white-space:nowrap}.box-map-me strong{position:absolute;top:24px;left:8px;transform:translateX(-50%);padding:4px 8px;border-radius:8px;background:#fff;color:#2367ca;font-size:13px;box-shadow:0 2px 6px #0002}
.box-map .box-map-locate{position:absolute;right:12px;top:12px;z-index:20;background:#fff;color:#19241e}
.box-detail-actions .box-bookmark.btn{border:0!important;box-shadow:none!important;background:transparent!important;padding:0;width:var(--ui-control-size,44px);min-width:var(--ui-control-size,44px);flex:0 0 var(--ui-control-size,44px);margin-left:auto}
.box-detail-actions .box-bookmark span{display:none}
.box-map.box-map-expanded{height:clamp(420px,65dvh,780px)}
@media(max-width:700px){.box-map.box-map-expanded{height:clamp(360px,65dvh,640px)}}
.box-discovery-tools.location-ready .account-search{grid-column:1/-1}
.box-map .box-map-cluster.btn{transform:translate(-50%,-50%);width:48px;height:48px;min-width:48px;min-height:48px;padding:0;border-radius:50%;background:#243c30;color:white;border:3px solid white;box-shadow:0 2px 10px #172c2340;font-weight:800;font-size:16px;animation:box-cluster-in .18s ease-out}
.box-map-group-menu{position:absolute;z-index:30;bottom:28px;left:12px;right:12px;max-height:60%;overflow:auto;display:grid;gap:8px;padding:12px;background:white;border-radius:16px;box-shadow:0 4px 20px #172c2330}
.box-map-group-menu .btn{white-space:normal;text-align:left}
@keyframes box-cluster-in{from{opacity:.3}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.box-map .box-map-cluster.btn{animation:none}}
#main .box-map .box-map-cluster.btn{border-radius:50%!important}
/* Operating plan: month toolbar, date exceptions, recurring rules. */
#main .operating-plan-form .box-settings-intro{margin-bottom:20px}
#main .operating-plan-form .box-settings-intro h2{margin:0 0 8px}
#main .operating-plan-form .box-plan-notice{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;background:var(--ui-surface-soft,#f5f6f3);padding:16px;border:1px solid var(--ui-surface-line,#e2e5df);border-radius:var(--radius-card,20px)}
#main .operating-plan-form .box-plan-notice .account-field{max-width:none}
#main .operating-plan-form .plan-month-options{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;grid-column:1/-1}
#main .operating-plan-form .plan-month-options :is(p,.plan-history-toggle){margin:0}
#main .operating-plan-form .box-plan-sections{gap:20px}
#main .operating-plan-form .box-closed-settings{padding:20px;background:var(--paper);border-radius:var(--radius-card,20px)}
#main .operating-plan-form .account-section-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin:0 0 16px}
#main .operating-plan-form .account-section-head :is(h3,p){margin:0}
#main .operating-plan-form .account-section-head h3{margin-bottom:6px}
#main .operating-plan-form .account-section-head>.btn{margin:0}
#main .operating-plan-form .box-special-row{background:var(--ui-surface-soft,#f5f6f3);border:1px solid var(--ui-surface-line,#e2e5df);margin:12px 0;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) var(--ui-control-size,44px)}
#main .operating-plan-form .box-special-row>.account-field{margin:0}
#main .box-closed-rule-row>.account-field{margin:0}
#main .box-closed-rule-row>[data-rule-remove]{align-self:end;flex:0 0 var(--ui-control-size);width:var(--ui-control-size);height:var(--ui-control-size);margin:0;padding:0}
@media(max-width:700px){#main .box-closed-rule-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) var(--ui-control-size)}}
#main .operating-plan-form [data-special-remove]{align-self:start;margin-top:26px;grid-row:1;grid-column:3}
#main .operating-plan-form [data-plan-month-empty]{padding:16px;margin:0 0 12px;background:var(--ui-surface-soft,#f5f6f3);border-radius:var(--radius-control,12px);text-align:center}
#main .operating-plan-form .box-settings-save{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;border-top:1px solid var(--ui-surface-line,#e2e5df);padding-top:20px;margin-top:24px}
#main .operating-plan-form .box-settings-save .form-error{flex-basis:100%;margin:0}
#main .operating-plan-form .box-settings-save .form-error:empty{display:none}
#main .box-discovery-tools.location-ready .account-search{grid-column:auto}
#main .box-discovery-tools .account-search{width:100%;max-width:none}
#main .box-discovery-tools>[data-action="box-map"]{margin:0;align-self:end}
#main .box-discovery-tools>[data-action="box-location"]{grid-column:1/-1;justify-self:end}
#main #box-location-status{margin:0 0 12px;line-height:1.6}
#main .box-map-expanded{margin-top:0}
@media(max-width:700px){
 #main .operating-plan-form .box-plan-notice{grid-template-columns:minmax(0,1fr);padding:16px}
 #main .operating-plan-form [data-plan-notice]{justify-self:stretch}
 #main .operating-plan-form .box-closed-settings{padding:16px}
 #main .operating-plan-form .box-special-row{grid-template-columns:minmax(0,1fr) var(--ui-control-size,44px);padding:12px}
 #main .operating-plan-form .box-special-row>.account-field{grid-column:1/-1}
 #main .operating-plan-form .box-special-row>.account-field:first-child{grid-column:1}
 #main .operating-plan-form [data-special-remove]{grid-column:2;grid-row:1}
 #main .operating-plan-form .box-settings-save>.btn{width:100%}
}

/* Coach social link uses the shared contact icon and touch-target token. */
.coach-profile-details .box-instagram{width:var(--ui-control-size);height:var(--ui-control-size)}

/* Signed-out pages have no member navigation; keep the mobile entry/form in normal flow. */
body.signed-out #mobile-nav{display:none!important}
@media(max-width:700px){
 body.signed-out .shell{min-height:100dvh;display:flex;flex-direction:column}
 body.signed-out #topbar{position:static;flex:none}
 body.signed-out #topbar .top-context{width:auto;max-width:100%;flex:1;min-width:0}
 body.signed-out #topbar .top-context strong{max-width:none;white-space:nowrap}
 body.signed-out #main{display:flex;flex-direction:column;flex:1;width:100%;box-sizing:border-box;padding:16px 24px 24px;min-width:0}
 body.signed-out #main .auth-refined{width:100%;min-width:0;margin:0 auto}
 body.signed-out #main .auth-refined:not(.auth-form-open){min-height:0;flex:1;gap:32px}
 body.signed-out #main .auth-refined .auth-story{padding:24px 0 0}
 body.signed-out #main .auth-refined .auth-brand-mark{margin-top:24px}
 body.signed-out #main .auth-refined .auth-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}
 body.signed-out #main .auth-refined .auth-entry-actions{margin-top:auto;padding-top:24px;padding-bottom:0}
 body.signed-out #main .auth-refined .auth-card-intro h2{margin-top:0}
 body.signed-out footer{padding:16px 24px max(16px,env(safe-area-inset-bottom));flex:none}
}
.member-badge-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.member-custom-badge{display:inline-flex;align-items:center;margin-right:6px;padding:2px 6px;border-radius:6px;background:var(--bg);color:var(--muted);font-size:11px;font-weight:600;vertical-align:middle;white-space:nowrap}
.account-pass-summary + .btn[href^="#store/"]{margin-bottom:20px;}
/* Member home: compact box identities, branded status, WOD first. */
.community-box-shortcuts{display:grid;gap:20px;margin:16px 0 24px;min-width:0}
.community-box-shortcuts>div{min-width:0}
#main .community-box-shortcuts h2{font-size:14px;margin:0 0 12px;font-weight:650}
.community-box-profile-list{display:flex;gap:12px;padding:2px;align-items:flex-start;max-width:100%;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}
.community-box-profile-list::-webkit-scrollbar{display:none}
.community-box-profile{display:flex;flex:0 0 76px;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--ink);text-align:center;min-width:0;scroll-snap-align:start}
.community-box-photo{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--line);overflow:hidden;font-size:20px;font-weight:700}
.community-box-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.community-box-name{font-size:12px;line-height:1.4;max-width:100%;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.community-box-profile--own{flex:0 0 min(320px,88%);flex-direction:row;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);text-align:left;align-items:center;box-sizing:border-box}
.community-box-profile--own:only-child{flex-basis:100%}
.community-box-profile--own .community-box-name{flex:1;min-width:0;font-size:16px;font-weight:650;line-height:1.45}
.community-box-profile--own>svg{width:20px;height:20px;flex:none;color:var(--muted)}
.member-home-contact{display:flex;justify-content:flex-end;margin:0 0 16px}
body[data-workspace="member"][data-page="today"] #topbar{background:color-mix(in srgb,var(--box-accent) 12%,var(--paper));border-bottom:1px solid color-mix(in srgb,var(--box-accent) 25%,var(--line))}
body[data-workspace="member"][data-page="today"] .top-context strong{color:var(--box-deep,var(--ink))}
.member-home-compact-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:0 0 8px}.member-home-compact-actions .training-toolbar{margin:0;flex:1}
body[data-workspace="member"][data-page="today"] #main .member-home-wod[data-home-wod]{border:1px solid var(--line);margin-top:0}
body[data-workspace="member"][data-page="today"] #main .member-home-wod>.member-home-section-heading h2{font-size:24px;font-weight:750}
@media(max-width:700px){body[data-workspace="member"][data-page="today"] #main{padding-top:12px}}

.community-box-none{display:flex;flex-direction:column;gap:8px;max-width:120px}

/* Community destinations: text and a single sliding underline. */
#main .community-section-tabs{position:relative;display:flex;gap:0;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;overflow:hidden}
#main .community-section-tabs>a{flex:1 1 0;padding:10px 8px;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--muted);text-decoration:none}
#main .community-section-tabs>a.active{background:transparent;color:var(--ink);font-weight:700;box-shadow:none}
#main .community-section-tabs::after{content:"";position:absolute;bottom:0;left:0;width:calc(100% / var(--tab-count));background:var(--ink);transform:translateX(var(--tab-to));animation:community-tab-slide .2s ease-out;pointer-events:none}
@keyframes community-tab-slide{from{transform:translateX(var(--tab-from))}to{transform:translateX(var(--tab-to))}}
@media(prefers-reduced-motion:reduce){#main .community-section-tabs::after{animation:none}}

body[data-page="community"] #main .community-heading{margin:16px 0;padding:0}
body[data-page="community"] #main .community-heading h1{margin:8px 0}
body[data-page="community"] #main .community-heading p{margin:0}
body[data-page="community"] #main .community-box-shortcuts{margin:16px 0 20px}
@media(max-width:700px){body[data-page="community"] #main{padding-top:12px}body[data-page="community"] #main .community-section-tabs{margin-top:0;margin-bottom:16px}}
/* Member foundation: neutral surfaces + confident athletic typography. */
body[data-workspace="member"]{
 --color-canvas:#f5f6f8;--color-surface:#fff;--color-surface-soft:#eef1f4;
 --color-ink:#20262d;--color-secondary:#646d78;--color-line:#e5e8ec;
 --member-text-body:15px;--member-text-help:13px;--member-text-meta:12px;--member-text-control:14px;
 --member-title:28px;--member-section-title:20px;
 --bg:var(--color-canvas);--paper:var(--color-surface);--ink:var(--color-ink);--muted:var(--color-secondary);--line:var(--color-line);
 background:var(--bg);color:var(--ink)
}
body[data-workspace="member"] #topbar{background:var(--bg);border-bottom:0;box-shadow:none}
body[data-workspace="member"] #topbar .top-context strong{font-size:14px;letter-spacing:-.3px}
body[data-workspace="member"][data-page="today"] #topbar{background:color-mix(in srgb,var(--box-accent) 8%,var(--paper));border-bottom:1px solid color-mix(in srgb,var(--box-accent) 14%,var(--line))}
body[data-workspace="member"] #main :is(.page-head,.community-heading){margin:0 0 24px;padding:0;gap:16px}
body[data-workspace="member"] #main :is(.page-head,.community-heading) h1{font-size:var(--member-title);font-weight:800;line-height:1.3;letter-spacing:-.8px;margin:0}
body[data-workspace="member"] #main :is(.page-head,.community-heading) p{font-size:var(--member-text-help);line-height:1.6;color:var(--muted);margin:8px 0 0}
body[data-workspace="member"] #main :is(.page-head,.community-heading) .eyebrow{display:none}
body[data-workspace="member"] #main :is(.panel,.box-browse-card,.community-news-card,.community-hot-card){border-color:var(--line);border-radius:var(--radius-card);box-shadow:none;background:var(--paper)}
body[data-workspace="member"] #main .panel{padding:24px}
body[data-workspace="member"] #main .box-browse-card{padding:0}
body[data-workspace="member"] #main :is(.panel h2,.community-section-head h2,.record-history-heading h2){font-size:var(--member-section-title);font-weight:750;line-height:1.4;letter-spacing:-.5px}
body[data-workspace="member"] #main :is(.community-section-head,.account-section-head,.record-history-heading){margin-bottom:16px;gap:12px;align-items:center}
body[data-workspace="member"] #main :is(.community-section-head) .eyebrow{display:none}
body[data-workspace="member"] #main .community-section-tabs{margin:0 0 24px}
body[data-workspace="member"] #main .community-box-shortcuts{margin:0 0 28px}
body[data-workspace="member"] #main .community-heading{margin-bottom:24px}
body[data-workspace="member"] #main :is(.record-page-tabs,.box-discovery-tabs){display:flex;gap:0;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;margin-bottom:20px}
body[data-workspace="member"] #main :is(.record-page-tabs,.box-discovery-tabs)>:is(a,button){flex:1 1 0;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;color:var(--muted);padding:12px 8px;min-height:var(--control-height);font-size:var(--member-text-control);white-space:nowrap}
body[data-workspace="member"] #main :is(.record-page-tabs,.box-discovery-tabs)>:is([aria-selected="true"],[aria-current="page"]){color:var(--ink);border-bottom-color:var(--ink);font-weight:750;background:transparent}
body[data-workspace="member"] #main :is(.record-search-field,.account-search input){background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control)}
body[data-workspace="member"] #main .record-search-field input{background:transparent}
body[data-workspace="member"] #main .record-page-heading .account-actions{gap:8px}
body[data-workspace="member"] #main :is(.record-pr-card,.record-pr-group){border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-control);box-shadow:none}
body[data-workspace="member"] #main .record-pr-group[open]{background:var(--color-surface-soft)}
body[data-workspace="member"] #main .record-pr-group summary strong{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.5px}
body[data-workspace="member"] #main .my-summary{margin:0 0 16px}
body[data-workspace="member"][data-page="my"] #main>.panel{margin-top:0;margin-bottom:16px}
body[data-workspace="member"] #main :is(.my-hub-grid,.account-profile-layout){gap:16px}
body[data-workspace="member"] #main .my-menu-link{padding:16px 0;border-color:var(--line)}
body[data-workspace="member"] #main .my-menu-link strong{font-size:15px;font-weight:650}
body[data-workspace="member"] #main .my-menu-link small{font-size:13px;line-height:1.5;color:var(--muted);margin-top:4px}
body[data-workspace="member"] #main .my-menu-link>.nav-icon{color:var(--muted)}
body[data-workspace="member"] #main .member-profile-fold{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);margin:16px 0;padding:16px 20px}
body[data-workspace="member"] #main .box-browse-body{padding:20px}
body[data-workspace="member"] #main .box-browse-heading h3{font-size:20px;line-height:1.4;font-weight:750;letter-spacing:-.5px}
body[data-workspace="member"] #main .box-discovery-tools{gap:12px}
body[data-workspace="member"] #main .box-discovery-tools .box-discovery-tabs{margin-bottom:0}
body[data-workspace="member"] #main .member-home-wod[data-home-wod]{background:var(--paper);border-color:var(--line);box-shadow:none}
body[data-workspace="member"] #main .member-home-wod h3{font-size:28px;font-weight:800;line-height:1.25;letter-spacing:-.6px}
body[data-workspace="member"] #main .member-tools-shortcut{margin-bottom:16px}
body[data-workspace="member"] #mobile-nav{background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #20262d04}
body[data-workspace="member"] #mobile-nav a{color:var(--muted)}
body[data-workspace="member"] #mobile-nav a.active{color:var(--ink)}
body[data-workspace="member"] #mobile-nav a.active .nav-icon{color:var(--ink);background:var(--lime);border-radius:8px;box-shadow:0 0 0 5px var(--lime)}
@media(max-width:700px){
 body[data-workspace="member"]{--member-title:26px;--member-section-title:19px}
 body[data-workspace="member"] #main{padding:16px 18px 28px}
 body[data-workspace="member"] #main .panel{padding:20px}
 body[data-workspace="member"] #main .box-browse-card{padding:0}
 body[data-workspace="member"] #main :is(.page-head,.community-heading){margin-bottom:20px}
 body[data-workspace="member"] #main .record-page-heading .account-actions{width:100%}
 body[data-workspace="member"] #main .record-page-heading .account-actions>.btn{flex:1 1 auto;padding-inline:12px}
 body[data-workspace="member"] #main .community-section-tabs{margin-bottom:20px}
 body[data-workspace="member"] #main .community-box-shortcuts{margin-bottom:24px}
}
/* Outline actions inside navigation remain text tabs, not white buttons. */
body[data-workspace="member"] #main .box-discovery-tabs>.btn.outline:not(.active):not(.is-current):not([aria-pressed="true"]):not([aria-selected="true"]){background:transparent;border-color:transparent}
body[data-workspace="member"] #main .box-discovery-tabs>.btn[aria-current="page"]{border-bottom-color:var(--ink)}
@media(max-width:700px){body[data-workspace="member"]:not([data-page="today"]) #topbar .top-context strong{max-width:calc(100vw - 150px)}}
/* Intent-first member journey: date -> time -> workout -> one action. */
.member-date-choices{display:flex;align-items:center;gap:8px;margin:0 0 16px;flex-wrap:wrap}
.member-date-choices>.btn{flex:0 0 auto;min-width:64px}
.member-date-choices>.btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.member-date-input{flex:1;min-width:140px;max-width:220px}.member-date-input input{width:100%;box-sizing:border-box}
.member-next-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:var(--color-surface-soft);border-radius:var(--radius-control);margin-bottom:20px}
.member-next-action strong{font-size:14px;line-height:1.5}.member-next-action>.btn{flex:none}
body[data-workspace="member"] #main .booking-time-card{padding:0;margin:0 0 12px;overflow:hidden}
.booking-time-card>summary{display:flex;align-items:center;gap:12px;padding:20px;list-style:none;cursor:pointer}
.booking-time-card>summary::-webkit-details-marker{display:none}
.booking-time-card>summary>time{font-size:23px;font-weight:800;font-variant-numeric:tabular-nums;flex:none;letter-spacing:-.5px}
.booking-time-title{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.booking-time-title small{font-size:12px;color:var(--muted)}.booking-time-title strong{font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.booking-time-state{font-size:12px;color:var(--muted);white-space:nowrap;display:flex;gap:8px;align-items:center}.booking-time-state.is-booked{color:var(--ink);font-weight:750}
.booking-time-card[open]{border-color:var(--box-accent,var(--ink))}.booking-time-card[open]>summary{border-bottom:1px solid var(--line)}
.booking-time-detail{padding:20px}.booking-workout-section{margin-bottom:16px}.booking-workout-section>strong{font-size:13px}.booking-workout-section pre{font:inherit;font-size:14px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}
.booking-time-detail .booking-slot{margin-top:16px;border-top:1px solid var(--line);padding:16px 0 0}.booking-time-detail .booking-slot-actions{display:flex;flex-wrap:wrap;gap:8px}
.record-quick-actions{display:flex;gap:8px;margin:0 0 20px;flex-wrap:wrap}
.member-my-organized{display:flex;flex-direction:column;gap:16px;max-width:760px;margin-inline:auto}
.member-membership-page{max-width:760px;margin-inline:auto}
.member-membership-page .holding-box-picker{display:none}
body[data-workspace="member"] #main .member-my-organized>:is(.panel,.member-profile-fold){margin:0}
.member-my-organized>.panel>h2{margin:0 0 8px}
.member-my-organized>.my-menu-group>h2{font-size:13px;line-height:1.5;font-weight:600;color:var(--muted);margin-bottom:4px}
body[data-workspace="member"] #main .member-my-organized .my-account-entry .my-menu-link{padding-block:0}
.my-menu-chevron{width:18px;height:18px;flex:none;color:var(--muted)}
@media(max-width:700px){.member-next-action{align-items:stretch;flex-direction:column;gap:10px}.member-next-action>.btn{width:100%}.booking-time-card>summary{padding:16px;gap:10px}.booking-time-card>summary>time{font-size:21px}.booking-time-state{font-size:11px;gap:4px}.booking-time-detail{padding:16px}.record-quick-actions>.btn{flex:1 1 auto;padding-inline:12px}}
body[data-workspace="member"] #main .member-date-choices>.btn.outline[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.member-date-choices .account-field.member-date-input{margin:0}

/* Box operations: same foundation as member pages; task first, settings second. */
body[data-workspace="box"]{
 --color-canvas:#f5f6f8;--color-surface:#fff;--color-surface-soft:#eef1f4;
 --color-ink:#20262d;--color-secondary:#646d78;--color-line:#e5e8ec;
 --bg:var(--color-canvas);--paper:var(--color-surface);--ink:var(--color-ink);--muted:var(--color-secondary);--line:var(--color-line);
 background:var(--bg);color:var(--ink)
}
body[data-workspace="box"] #topbar{background:var(--bg);box-shadow:none;border-bottom:0}
body[data-workspace="box"] #main :is(.page-head,.dashboard-head){margin:0 0 24px;padding:0;border:0;gap:16px;align-items:center}
body[data-workspace="box"] #main :is(.page-head,.dashboard-head)>div:first-child{border:0;padding:0;min-width:0}
body[data-workspace="box"] #main :is(.page-head,.dashboard-head) h1{font-size:28px;font-weight:800;line-height:1.3;letter-spacing:-.8px;margin:0}
body[data-workspace="box"] #main :is(.page-head,.dashboard-head) p{font-size:13px;line-height:1.6;color:var(--muted);margin:8px 0 0}
body[data-workspace="box"] #main :is(.page-head,.dashboard-head) .eyebrow{display:none}
body[data-workspace="box"] #main .panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none;padding:24px;min-width:0}
body[data-workspace="box"] #main :is(.panel h2,.account-section-head h2,.dashboard-section-head h2){font-size:20px;font-weight:750;line-height:1.4;letter-spacing:-.5px}
body[data-workspace="box"] #main :is(.account-section-head,.dashboard-section-head){align-items:center;gap:12px;margin-bottom:16px}
body[data-workspace="box"] #main :is(.account-actions,.dashboard-head-actions,.admin-page-actions){gap:8px;flex-wrap:wrap;align-items:center}
body[data-workspace="box"] #main .admin-page-actions{display:flex;margin-bottom:24px}
body[data-workspace="box"] #main .btn{font-size:14px}
body[data-workspace="box"] #main :is(.dashboard-metrics,.member-overview,.locker-metrics){gap:12px;margin-bottom:20px}
body[data-workspace="box"] #main :is(.dashboard-metric,.member-overview>.panel,.locker-metrics>.panel){padding:16px 20px;min-height:0}
body[data-workspace="box"] #main :is(.dashboard-metric,.member-overview>.panel,.locker-metrics>.panel) strong{font-size:28px;line-height:1.3;margin:8px 0}
body[data-workspace="box"] #main .dashboard-columns{gap:20px}
body[data-workspace="box"] #main .dashboard-column{gap:20px}
body[data-workspace="box"] #main .dashboard-class{color:var(--ink);text-decoration:none;min-width:0;transition:background var(--motion-fast)}
body[data-workspace="box"] #main .dashboard-class:hover{background:var(--color-surface-soft)}
body[data-workspace="box"] #main .dashboard-seats{flex-shrink:0}
body[data-workspace="box"] #main .dashboard-zero{padding:16px 0;margin:0;font-size:13px}
body[data-workspace="box"] #main :is(.class-card,.locker-row,.point-request-row,.member-list-row){gap:16px}
body[data-workspace="box"] #main .class-card{align-items:center;margin-bottom:12px}
body[data-workspace="box"] #main .class-card>div:first-child{min-width:0;flex:1}
body[data-workspace="box"] #main .class-card h3{font-size:18px;line-height:1.45;margin:8px 0}
body[data-workspace="box"] #main .class-card .class-when time{font-size:24px;font-weight:800}
body[data-workspace="box"] #main .class-card-actions{flex:0 1 auto;justify-content:flex-end;max-width:440px}
body[data-workspace="box"] #main .class-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:240px}
body[data-workspace="box"] #main .class-card-actions>:is(.btn,.admin-row-more){width:100%;margin:0}
body[data-workspace="box"] #main .admin-row-more>summary::-webkit-details-marker{display:none}
body[data-workspace="box"] #main .past-class-list{border-top:1px solid var(--line);margin-top:20px;padding-top:8px}
body[data-workspace="box"] #main .past-class-list>summary{padding:16px 0;cursor:pointer;font-size:14px;font-weight:650}
body[data-workspace="box"] #main .checkin-device-settings{margin-top:20px}
body[data-workspace="box"] #main .checkin-device-settings>summary{cursor:pointer;min-height:var(--control-height);display:flex;gap:12px;align-items:center;font-weight:650}
body[data-workspace="box"] #main .checkin-device-settings>summary small{font-weight:400;color:var(--muted)}
body[data-workspace="box"] #main .checkin-device-settings .checkin-admin-device{border:0;box-shadow:none;padding:16px 0 0;margin:0;background:transparent}
body[data-workspace="box"] #main .purchase-demo-notice{padding:12px 16px;margin-bottom:20px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-control)}
body[data-workspace="box"] #main .purchase-demo-notice p{margin:4px 0 0;font-size:13px}
/* Destination tabs: one underline; filters and selections remain compact pills. */
body[data-workspace="box"] #main :is(.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs){display:flex;gap:0;padding:0;margin:0 0 20px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow-x:auto;scrollbar-width:none}
body[data-workspace="box"] #main :is(.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs)>:is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:10px 16px;flex:0 0 auto;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap;box-shadow:none}
body[data-workspace="box"] #main :is(.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs)>:is(.active,.is-active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]){color:var(--ink);border-bottom-color:var(--ink);background:transparent;font-weight:750}
body[data-workspace="box"] #main :is(.box-settings-navigation,.box-settings-groups){box-shadow:none}
body[data-workspace="box"] #main :is(.box-settings-content,.box-settings-workspace,.training-workspace){min-width:0}
body[data-workspace="box"] #main :is(.account-search input,.checkin-ranking-controls input,.checkin-ranking-controls select){background:var(--paper);border-color:var(--line)}
body[data-workspace="box"] #main .purchase-category-tabs>.btn.outline:not(.active):not(.is-current):not([aria-pressed="true"]):not([aria-selected="true"]){background:transparent;border-color:transparent;box-shadow:none}
#main .checkin-ranking-controls{min-width:0;max-width:100%}
#main .checkin-ranking-controls>label{min-width:0;max-width:100%}
@media(max-width:700px){
 #main .checkin-ranking-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;align-items:end}
}
@media(max-width:1050px){
 body[data-workspace="box"] #main .dashboard-columns .dashboard-queue{order:0}
 body[data-workspace="box"] #main .dashboard-columns .handoff-panel{order:2}
 body[data-workspace="box"] #main .dashboard-columns .dashboard-wod{order:3}
 body[data-workspace="box"] #main .class-card{flex-direction:column;align-items:stretch}
 body[data-workspace="box"] #main .class-card-actions{max-width:none;justify-content:flex-start}
 body[data-workspace="box"] #main .class-card-actions{width:100%}
}
@media(max-width:700px){
 body[data-workspace="box"] #main :is(.page-head,.dashboard-head){margin-bottom:20px;gap:16px}
 body[data-workspace="box"] #main :is(.page-head,.dashboard-head) h1{font-size:26px}
 body[data-workspace="box"] #main .panel{padding:20px}
 body[data-workspace="box"] #main :is(.panel h2,.account-section-head h2,.dashboard-section-head h2){font-size:19px}
 body[data-workspace="box"] #main :is(.dashboard-metric,.member-overview>.panel,.locker-metrics>.panel){padding:12px}
 body[data-workspace="box"] #main .admin-page-actions{display:flex;gap:8px}
 body[data-workspace="box"] #main .training-workspace--classes>.account-section-head{flex-direction:row;text-align:left;justify-content:space-between}
 body[data-workspace="box"] #main .training-workspace--classes>.account-section-head h2{margin:0}
 body[data-workspace="box"] #main .class-card-actions>.btn{flex:1 1 auto;padding-inline:12px}
 body[data-workspace="box"] #main .dashboard-columns{gap:16px}
}

body[data-workspace=box] #main .wod-history-page:has(.wod-history-detail-layout) .page-head p{display:block}
body[data-workspace=box] #main :is(.history-closeout-tabs,.operator-tool-tabs)>button{flex:1 0 auto}

/* Unified daily workout + class schedule: one date context, operational sidebar. */
body[data-workspace="box"] #main .dashboard-session-group+.dashboard-session-group{border-top:1px solid var(--ui-surface-line);margin-top:24px;padding-top:16px}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-full summary{padding:16px 0}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-times{display:block;color:var(--muted);margin-top:4px;font-size:12px}
body[data-workspace="box"] #main .dashboard-session-panel :is(pre,.dashboard-wod-block-label,.dashboard-wod-scales,.dashboard-wod-notes){color:var(--ink)}
body[data-workspace="box"] #main .dashboard-session-panel pre{white-space:pre-wrap;overflow-wrap:anywhere}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-seats{flex-shrink:0}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-class-info h3{font-size:14px}
@media(max-width:1050px){
 body[data-workspace="box"] #main .dashboard-unified .dashboard-session-panel{order:0}
 body[data-workspace="box"] #main .dashboard-unified .dashboard-queue{order:1}
 body[data-workspace="box"] #main .dashboard-unified .handoff-panel{order:2}
}

body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-label{color:var(--muted)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-actions button{color:var(--ink);background:transparent;min-width:var(--ui-control-size);min-height:var(--ui-control-size);border-radius:var(--radius-control)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-actions [data-dashboard-today],body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-actions button:hover:not(:disabled){background:var(--color-surface-soft);color:var(--ink)}
body[data-workspace="box"] #main .dashboard-session-panel :is(.dashboard-wod-block-label strong,.dashboard-wod-scales strong,.dashboard-wod-notes strong){color:var(--ink)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-block-label span{color:var(--muted)}
body[data-workspace="box"] #main .dashboard-session-panel :is(.dashboard-wod-scales,.dashboard-wod-notes){border-color:var(--ui-surface-line)}
/* Short operational outlook, no repeated daily totals. */
body[data-workspace="box"] #main .dashboard-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
body[data-workspace="box"] #main .dashboard-insight{position:relative;display:grid;gap:8px;text-align:left;cursor:pointer;padding:16px 32px 16px 20px;font:inherit;color:var(--ink);min-width:0}
body[data-workspace="box"] #main .dashboard-insight>span:first-child{font-size:13px;color:var(--muted)}
body[data-workspace="box"] #main .dashboard-insight strong{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.dashboard-insight-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted)}
.dashboard-insight-detail{color:var(--ink);text-decoration:none}
.member-list-filters{display:flex;gap:var(--space-2);margin-block:var(--space-4);max-width:100%;overflow-x:auto;scrollbar-width:none}
.member-list-filters::-webkit-scrollbar{display:none}
.member-list-filters>.btn{flex:0 0 auto;white-space:nowrap}
#main .member-list-filters .btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
body[data-workspace="box"] #main .dashboard-insight>:is(strong,small){min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(min-width:1051px){
 body[data-workspace="box"] #main .dashboard-unified{align-items:stretch}
 body[data-workspace="box"] #main .dashboard-unified>.dashboard-column:first-child{display:flex}
 body[data-workspace="box"] #main .dashboard-unified .dashboard-session-panel{width:100%}
 body[data-workspace="box"] #main .dashboard-unified>.dashboard-column:last-child{grid-template-rows:auto minmax(0,1fr);align-content:stretch}
}
@media(max-width:700px){
 body[data-workspace="box"] #main .dashboard-insights{gap:8px;margin-bottom:16px}
 body[data-workspace="box"] #main .dashboard-insight{gap:6px}
 body[data-workspace="box"] #main .dashboard-insight>span:first-child{font-size:12px;line-height:1.5}
 body[data-workspace="box"] #main .dashboard-insight strong{font-size:13px}
 body[data-workspace="box"] #main .dashboard-insight-arrow{display:none}
}
@media(max-width:700px){body[data-workspace="box"] #main .dashboard-insight{padding:12px 8px}body[data-workspace="box"] #main .dashboard-insight>span:first-child{white-space:nowrap}body[data-workspace="box"] #main .dashboard-insight strong{word-break:keep-all}}
body[data-workspace="box"] #main .dashboard-insight>small{word-break:keep-all;line-height:1.5}

/* Multi-result input: common controls, compact grouped fields. */
[data-extra-results]{margin-block:16px}.extra-result-row{display:grid;grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr) auto;gap:8px;align-items:end;padding-block:12px;border-top:1px solid var(--line,#e5e7eb)}.extra-result-row .account-field{min-width:0;margin:0}.extra-time{display:flex;align-items:center;gap:6px}.extra-time input{min-width:0;width:100%}.extra-time[hidden]{display:none}.record-board-row{padding-block:16px;border-bottom:1px solid var(--line,#e5e7eb)}.record-board-row .form-grid>*{min-width:0}@media(max-width:700px){.extra-result-row{grid-template-columns:minmax(0,1fr) 90px}.extra-result-row>button{justify-self:end}}

/* Keep each result and its unit together; hidden metric-specific fields never occupy grid cells. */
:is(#main,#modal) .record-primary-result{display:grid;gap:12px}
:is(#main,#modal) .record-value-unit{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:8px;align-items:end}
:is(#main,#modal) .record-value-unit>.account-field{margin:0;min-width:0}
:is(#main,#modal) .record-value-unit:not(:has(select:not(:disabled))){grid-template-columns:minmax(0,1fr)}
:is(#main,#modal) .record-value-unit:has(>label[hidden]){grid-template-columns:minmax(0,1fr)}
:is(#main,#modal) .extra-result-row{grid-template-columns:minmax(0,1fr);gap:12px}
:is(#main,#modal) .extra-result-row>button{justify-self:end}
:is(#main,#modal) [data-training="record-save"] [hidden],:is(#main,#modal) [data-extra-results] [hidden]{display:none!important}
:is(#main,#modal) [data-training="record-save"] input[type="hidden"]{display:none!important}

/* Member WOD: detail first, next action directly below it. */
.member-home-wod .member-next-action{margin-top:12px;margin-bottom:0;padding:0;background:transparent}

/* Separate box avatar shares the profile form without displacing its preview. */
.box-avatar-settings{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.box-avatar-settings>[data-box-avatar-editor]{margin-top:16px}
#main [data-box-avatar-editor] [hidden]{display:none!important}
[data-box-avatar-editor]{min-width:0;flex-wrap:wrap}
[data-box-avatar-editor] .account-field{min-width:0;flex:1 1 180px}
[data-box-avatar-editor] input[type="file"]{max-width:100%;min-width:0}

/* Expanded coach biographies use the full row and readable, separate entries. */
.coach-public-grid>.coach-public-card[open]{grid-column:1/-1}
.coach-public-card .coach-profile-details{padding-top:16px;overflow-wrap:break-word;word-break:keep-all}
.coach-history-section+.coach-history-section{margin-top:20px}
.coach-public-card .coach-history-section h4{font-size:14px;margin:0 0 10px}
.coach-history-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.coach-history-list>li{position:relative;padding-left:12px;font-size:14px;line-height:1.65;word-break:keep-all;overflow-wrap:break-word}
.coach-history-list>li::before{content:"";position:absolute;left:0;top:.7em;width:4px;height:4px;border-radius:50%;background:var(--muted)}
.box-member-preview .coach-public-grid{grid-template-columns:minmax(0,1fr)}
.coach-public-heading>.box-instagram{flex-shrink:0;margin:0;border:0;background:transparent;box-shadow:none}
.coach-public-heading>.box-instagram+.coach-expand{margin-left:0}
.coach-public-heading{padding-inline-end:8px}
.coach-public-heading>.coach-expand{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;line-height:0;transform-origin:50% 50%}
.coach-expand>svg{display:block;width:20px;height:20px}
.personal-load-pr-action{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:12px}
.personal-load-pr-action>span{font-size:13px}
.record-kind-filters{display:flex;gap:8px;margin:0 0 16px}
.record-kind-filters>.btn{flex:1;white-space:nowrap;padding-inline:8px}
:is(#main,#modal) .record-kind-filters>.btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.box-preview-content .box-coaches{padding:0;border:0;background:transparent}
.box-preview-content .coach-public-card{padding:12px 10px}
@media(max-width:700px){.coach-public-grid{grid-template-columns:minmax(0,1fr)}.coach-history-list>li{font-size:15px}.box-coaches{padding:12px}.coach-public-card{padding:12px 8px}}
@media(max-width:700px){.box-member-preview{padding:12px}.box-preview-content{padding:10px}}
/* Member box home: quiet identity header, then notices and the selected day's workout. */
.member-holding-collapse>summary{display:flex;align-items:center;gap:12px;min-height:var(--touch-target);list-style:none;cursor:pointer}
.member-holding-collapse>summary::-webkit-details-marker{display:none}
.member-holding-collapse>summary>strong{font-size:17px;white-space:nowrap}
.member-holding-collapse>summary>span{margin-left:auto;font-size:13px;color:var(--muted);white-space:nowrap}
.member-holding-collapse>summary>svg{flex-shrink:0;transition:transform var(--motion-fast)}
.member-holding-collapse[open]>summary>svg{transform:rotate(180deg)}
.member-holding-body{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.saved-wod-row>.account-actions{flex-wrap:wrap}
.saved-wod-detail-actions{gap:8px;margin-top:16px;flex-wrap:wrap}
body[data-workspace="member"][data-page="today"] #main>.member-home-notices{max-width:760px}
body[data-workspace="member"][data-page="today"] .member-box-home-heading{display:flex;align-items:center;gap:16px;max-width:760px;padding:20px;margin:0 0 16px;border:1px solid color-mix(in srgb,var(--box-accent,var(--lime)) 24%,var(--line));border-radius:var(--radius-card);background:linear-gradient(110deg,color-mix(in srgb,var(--box-accent,var(--lime)) 10%,var(--paper)),var(--paper) 85%)}
.member-box-home-identity{min-width:0}
.member-box-home-identity>p{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 4px}
.member-box-home-identity>p>span{font-weight:400}
body[data-workspace="member"][data-page="today"] .member-box-home-identity>h1{margin:0;font-size:clamp(20px,3vw,26px);font-weight:800;line-height:1.35;letter-spacing:-.7px;overflow-wrap:anywhere}
body[data-workspace="member"][data-page="today"] .member-home-workout-label{display:block;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:4px}
@media(max-width:700px){body[data-workspace="member"][data-page="today"] .member-box-home-heading{padding:16px;gap:12px;margin-bottom:12px}}

/* Composer cards retain breathing room instead of placing controls against the edge. */
/* Mobile member rows: identity first, membership and actions grouped below it. */
@media(max-width:700px){
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-2) var(--space-3);padding-block:var(--space-4)}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row>.member-identity{grid-column:1;grid-row:1;gap:var(--space-3)}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-identity>div{min-width:0}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-identity strong{font-size:15px;line-height:1.5}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row>.pill{grid-column:2;grid-row:1;justify-self:end;align-self:center;width:auto}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row:has(.member-coach-badge)>.pill{display:none}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row:has(.member-coach-badge)>.member-identity{grid-column:1/-1}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row>.member-pass{grid-column:1/-1;grid-row:2;margin-left:50px;font-size:13px;overflow-wrap:anywhere}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row>.member-row-actions{grid-column:1/-1;grid-row:3;margin-left:50px;justify-content:flex-start;gap:var(--space-2)}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row>.member-row-actions .btn{flex:0 1 auto}
 body:is([data-workspace="box"],[data-box-operator="true"]) #main .member-list-row:hover{background:transparent}
}
@media(max-width:700px){
 #main .training-workspace--compose .program-page-pane{padding:var(--space-5) var(--space-4)!important;border:1px solid var(--ui-surface-line);border-radius:var(--radius-card);background:var(--paper)}
 #main .training-workspace--compose :is(.training-block>.form-grid,.program-slot-fields){gap:var(--space-4)}
 #main .training-workspace--compose .program-slot{padding:var(--space-4);margin-block:var(--space-5)}
 #main .training-workspace--compose .program-page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
 #main .training-workspace--compose .program-page-actions>.btn{width:100%;min-width:0;justify-self:stretch;margin-inline:0}
 #main .training-workspace--compose .program-page-actions [type="submit"],#main .training-workspace--compose .program-page-actions:has([data-train="compose-prev"]:not([hidden])) [data-train="compose-next"]{grid-column:1/-1;width:100%;min-width:0}
}
.member-box-slide{position:relative;flex:0 0 88%;min-width:0;scroll-snap-align:start}
.member-box-rail:has(>.member-box-slide:only-child)>.member-box-slide{flex-basis:100%}
.member-box-slide>.member-box-option{width:100%;height:100%;padding-right:54px}
.member-box-hide{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;padding:0;width:36px;height:36px;background:transparent;border:0;color:var(--muted)}
.member-box-hide svg{width:20px;height:20px}
.member-box-slide>.member-box-option>span:last-child{display:none}
.member-hidden-box-link{margin-top:12px}

.member-box-empty p{word-break:keep-all;overflow-wrap:anywhere}

.member-previous-box-copy{flex:1;min-width:0}
.member-previous-box-copy small{display:block;margin-top:4px}
.member-previous-box .account-actions{justify-content:space-between}

/* Keep the return action beside the existing date picker. */
.home-wod-date-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.member-home-wod>.member-home-section-heading{flex-wrap:wrap;gap:12px}
.home-wod-date-actions .btn{white-space:nowrap}


.home-wod-weekday{display:flex;align-items:center;gap:8px}
.home-wod-weekday .text-link{border:0;background:transparent;padding:0;color:var(--box-deep,var(--ink));font:inherit;font-weight:600;white-space:nowrap}

/* Reserve today action space so repeated date navigation stays in place. */
.dashboard-day-actions{display:grid;grid-template-columns:repeat(2,var(--ui-control-size));gap:var(--space-1);flex-shrink:0}

.wod-history-person .history-member-avatar{width:40px;height:40px;aspect-ratio:1;object-fit:cover;border-radius:50%;flex-shrink:0}
.wod-history-person .history-member-placeholder.has-photo{display:none}

.personal-workout-results{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.personal-workout-results summary{font-weight:700;cursor:pointer}
.is-record-entry .personal-workout-results.is-record-entry{margin-top:0;border-top:0;padding-top:0}.is-record-entry .personal-workout-results.is-record-entry>summary{display:none}
.personal-workout-result-fields{display:grid;gap:16px;padding-top:16px}


.personal-workout-actions{display:grid}
.personal-workout-actions>.account-field,.personal-workout-actions>p,.personal-workout-actions>.btn{grid-column:1/-1;margin:0}
.personal-workout-draft-tools{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--muted)}
.personal-workout-draft-tools .text-link{background:transparent;border:0;color:var(--muted);font:inherit;white-space:nowrap}

.personal-workout-actions{grid-template-columns:1fr 1fr;gap:8px}
.personal-workout-actions>.btn{grid-column:auto;white-space:nowrap}
.personal-workout-actions>[value="record"]{grid-column:1/-1}
.draft-leave-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.draft-leave-actions>[data-draft-leave="save"]{grid-column:1/-1}

/* Keep personal workout actions above the actual mobile navigation height. */
@media(max-width:700px){body[data-workspace="member"] #main .personal-workout-actions{z-index:5}}

@media(max-width:700px) and (display-mode:standalone){#topbar{height:calc(65px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}}

@media(max-width:700px){
 body[data-workspace] #main .wod-space-library-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;text-align:left}
 body[data-workspace] #main .wod-space-library-head>div{display:contents}
 body[data-workspace] #main .wod-space-library-head h1{grid-column:1;grid-row:1;min-width:0;margin:0;font-size:clamp(20px,6vw,24px);line-height:1.3;word-break:keep-all}
 body[data-workspace] #main .wod-space-library-head>.btn{grid-column:2;grid-row:1;justify-self:end;margin:0;font-size:14px;min-height:var(--control-height);white-space:nowrap}
 body[data-workspace] #main .wod-space-library-head p{grid-column:1/-1;grid-row:2;margin:0;text-align:left}
 body[data-workspace] #main .wod-space-library-head .eyebrow{display:none}
}

/* Screens shared by members and box owners use the same content controls. */
body[data-workspace] #main .wod-space-compose>.page-head{text-align:left;margin:0 0 24px}
body[data-workspace] #main .wod-space-compose>.page-head h1{font-size:28px;line-height:1.3;font-weight:800;letter-spacing:-.8px;margin:0}
body[data-workspace] #main .wod-space-compose>.page-head p{font-size:13px;line-height:1.6;margin:8px 0 0;color:var(--muted)}
body[data-workspace] #main .wod-space-page :is(.btn,.chip){font-size:14px}
body[data-workspace][data-page="community"] #main .community-section-head{margin-bottom:16px;gap:12px;align-items:center}
body[data-workspace][data-page="community"] #main .community-section-head .eyebrow{display:none}
body[data-workspace][data-page="community"] #main .community-autoplay-toggle{font-size:12px;min-height:var(--control-height);flex-shrink:0}
@media(max-width:700px){
 body[data-workspace] #main .wod-space-compose>.page-head{margin-bottom:20px}
 body[data-workspace] #main .wod-space-compose>.page-head h1{font-size:26px}
}

@media(max-width:700px){
 body[data-workspace] #main .community-section-tabs>a{font-size:14px;flex:1 1 0}
}

/* Benchmark input entry follows the same title/action rhythm as shared WODs. */
body[data-workspace] #main .benchmark-panel>.account-section-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;text-align:left}
body[data-workspace] #main .benchmark-panel>.account-section-head>div{display:contents}
body[data-workspace] #main .benchmark-panel>.account-section-head .eyebrow{display:none}
body[data-workspace] #main .benchmark-panel>.account-section-head h2{grid-column:1;grid-row:1;min-width:0;margin:0;word-break:keep-all}
body[data-workspace] #main .benchmark-panel>.account-section-head>.btn{grid-column:2;grid-row:1;justify-self:end;margin:0;min-height:var(--control-height);white-space:nowrap}
body[data-workspace] #main .benchmark-panel>.account-section-head p{grid-column:1/-1;grid-row:2;margin:0;text-align:left}

#history-closeout .account-actions[hidden]{display:none!important}
.history-quick-time{display:block;margin-bottom:var(--space-2);color:var(--muted);font-size:13px}

/* In-app brand keeps the original lime tile; launcher icon is separate. */
.sidebar .brand .aglet-brand-mark{width:34px;height:38px;flex-shrink:0}

/* Category filters use native touch inertia, not the card carousel gesture handler. */
.wod-space-categories{touch-action:pan-x pan-y;scroll-behavior:auto;scroll-snap-type:none;-webkit-overflow-scrolling:touch}
.wod-space-categories.is-menu-dragging{cursor:grabbing;user-select:none;scroll-behavior:auto}

/* Touch gestures on card rails stay browser-native; mouse retains drag and snap. */
:is(.community-news,.community-hot-track,.community-story-detail,.member-box-rail){touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
:is(.community-news,.community-hot-track,.community-story-detail,.member-box-rail).is-dragging{scroll-behavior:auto}

/* Page overlays with native horizontal media must not block pan-x at the ancestor. */
#modal[open][data-presentation="page"]:has([data-community-slider],[data-gallery-track],.news-post-track),body[data-workspace="box"] #modal[open][data-presentation="page"]:has([data-community-slider],[data-gallery-track],.news-post-track){touch-action:pan-x pan-y}
#modal[open][data-presentation="page"] .modal-head{touch-action:pan-y}

/* Mobile recommendations occupy their own row above the textarea, never covering typed text. */
@media(max-width:700px){.movement-suggestions[data-inline-mobile="true"]{position:relative;z-index:auto;margin:0 0 8px;max-height:144px;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}}

/* Keep photo references beside their context and navigation beside the WOD heading. */
#main .program-wod-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
#main .program-wod-head h2{margin:0;min-width:0}
#main .program-wod-head [data-train="program-community"]{flex:none;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--muted);padding-inline:8px;white-space:nowrap}
.wod-photo-reference{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:12px 0;border-bottom:1px solid var(--line)}
.wod-photo-reference p{margin:0;min-width:0;line-height:1.6}
.wod-photo-reference .btn{flex:none;white-space:nowrap}
@media(max-width:700px){
 #main .program-wod-head{gap:8px}
 #main .program-wod-head [data-train="program-community"]{padding-inline:0}
 #main .program-source-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #main .program-source-actions>.btn{width:100%;min-width:0;white-space:normal}
 .wod-photo-reference{align-items:flex-start;gap:8px}
 .wod-photo-reference p{align-self:center}
}

/* Align the first line, even when the WOD name wraps beneath the class type. */
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-class{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:baseline;gap:12px}
body[data-workspace="box"] #main .dashboard-session-panel :is(.dashboard-time strong,.dashboard-class-info h3,.dashboard-seats strong){margin:0;line-height:1.5}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-class-wod{margin:4px 0 0;line-height:1.5;overflow-wrap:anywhere}

.booking-roster-avatar{width:38px;height:38px;aspect-ratio:1;object-fit:cover;border-radius:50%;flex-shrink:0}

.history-quick-name:has(.booking-roster-avatar){display:flex;align-items:center;gap:8px}

/* Visits keep the member box context and use shared controls. */
.visit-page{max-width:820px;margin:0 auto}.visit-card{padding:24px;margin-bottom:16px;min-width:0;border:1px solid var(--line);box-shadow:none}.visit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.visit-heading>div{min-width:0}.visit-card h2{font-size:20px;line-height:1.4;margin:0;overflow-wrap:anywhere}.visit-heading .pill{flex:none}.visit-date{font-size:22px;font-weight:800;line-height:1.5;margin:16px 0}.visit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.visit-actions>.btn{width:100%;min-width:0;white-space:normal}.visit-primary{display:flex;width:100%;margin-top:16px}.visit-facts{margin:16px 0 0}.visit-facts>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.6}.visit-facts dt{color:var(--muted)}.visit-facts dd{margin:0;overflow-wrap:anywhere}.visit-extra,.visit-wod-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.visit-wod-section pre{white-space:pre-wrap;font:inherit;line-height:1.75}.visit-cancel-link{margin-top:16px;text-align:right}.visit-home-cards{margin-top:16px}.visit-card .text-pre{white-space:pre-wrap}
@media(max-width:700px){.visit-card{padding:20px 16px}.visit-card h2{font-size:19px}}

/* Native snapping settles visits after the gesture; no JS scroll correction or rerender. */
.visit-home-cards{min-width:0}.visit-rail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.visit-rail-heading h2{margin:0;font-size:17px;line-height:1.5}.visit-rail-controls{display:flex;align-items:center;gap:12px;flex:none;color:var(--muted);font-size:13px}.visit-reservation-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:1px 1px 4px;min-width:0;-webkit-overflow-scrolling:touch}.visit-reservation-rail::-webkit-scrollbar{display:none}.visit-reservation-rail>.visit-card{scroll-snap-align:start;scroll-snap-stop:normal;flex:0 0 calc(100% - 32px);min-width:0;box-sizing:border-box;margin:0}.visit-reservation-rail>.visit-card:only-child{flex-basis:100%}
.visit-reservation-rail.is-dragging{scroll-snap-type:none}

/* Settings overview uses the shared menu row with one trailing chevron. */
.box-settings-overview .my-menu-link{display:grid;grid-template-columns:minmax(0,1fr) auto}
.box-settings-overview .my-menu-link>span:first-child{min-width:0}
.box-settings-overview .my-menu-link small{overflow-wrap:anywhere}
.record-box-name{overflow-wrap:anywhere}
/* Round counter: keep the tap target stable while its number changes. */
.counter-tool .round-button{background:var(--lime);color:var(--ink);border-color:#eef5d9;box-shadow:0 0 0 1px #dce6c2;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent}
.counter-tool .round-button b{font-family:inherit;font-weight:750;font-variant-numeric:tabular-nums;font-size:clamp(64px,17vw,100px)}
.counter-tool .round-button span{color:inherit;opacity:.8}
.counter-heading h2{margin:8px 0 0;font-size:21px}
.counter-tool .counter-row>.icon-btn{width:var(--touch-target);height:var(--touch-target)}
.counter-tool .tool-primary-actions{gap:var(--space-2)}
.counter-focus-mode{overflow:hidden}
body.counter-focus-mode #tool-stage:has(.counter-tool){position:fixed;inset:0;display:block;width:100%;height:100dvh;overflow:hidden;padding:0;margin:0;border:0;border-radius:0;min-height:0;z-index:1000;background:var(--color-canvas)}
body.counter-focus-mode .counter-tool{position:relative;width:100%;max-width:none;height:100%;margin:0;padding:0}
body.counter-focus-mode .counter-tool .counter-heading{position:absolute;top:max(24px,env(safe-area-inset-top));left:16px;right:16px;text-align:center}
body.counter-focus-mode .counter-heading .eyebrow{font-size:12px;color:var(--color-secondary)}
body.counter-focus-mode .counter-heading h2{font-size:clamp(18px,3vw,24px);margin:8px 0 0}
body.counter-focus-mode .counter-tool .counter-settings,body.counter-focus-mode .counter-tool .counter-help,body.counter-focus-mode .counter-row::after{display:none}
body.counter-focus-mode .counter-row>.icon-btn{position:absolute;top:calc(100% + var(--space-4));left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation}
body.counter-focus-mode .counter-tool .counter-row{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:block;width:max-content;margin:0;gap:0}
body.counter-focus-mode .counter-tool .round-button{width:min(74vw,48dvh,400px);height:min(74vw,48dvh,400px);min-width:0;min-height:0;padding:12px;border-width:8px}
body.counter-focus-mode .counter-tool .round-button b{font-size:clamp(64px,min(25vw,18dvh),150px)}
body.counter-focus-mode .counter-tool .round-button span{margin-top:12px;font-size:12px}
body.counter-focus-mode .counter-tool .tool-primary-actions{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:16px;right:16px;margin:0;gap:8px}
@media(max-height:500px){body.counter-focus-mode .counter-tool .counter-heading{top:max(12px,env(safe-area-inset-top))}body.counter-focus-mode .counter-heading h2{font-size:16px;margin-top:4px}body.counter-focus-mode .counter-tool .tool-primary-actions{bottom:max(12px,env(safe-area-inset-bottom))}body.counter-focus-mode .counter-tool .round-button span{margin-top:4px;font-size:var(--font-caption,11px)}}

.counter-heading-top{position:relative;display:flex;align-items:center;justify-content:center;min-height:var(--control-height)}
.counter-heading-top .counter-sound{position:absolute;right:0;top:0;color:var(--color-secondary);background:transparent}
.counter-heading-top .counter-sound[aria-pressed="true"]{color:var(--color-ink)}
.counter-sound svg{display:block;flex-shrink:0}
@media(max-height:500px){body.counter-focus-mode .counter-tool .round-button{width:min(74vw,40dvh,400px);height:min(74vw,40dvh,400px)}body.counter-focus-mode .counter-row>.icon-btn{top:calc(100% + var(--space-2))}}
.workout-performance{margin-block:var(--space-4);padding-block:var(--space-4);border-block:1px solid var(--color-line);min-width:0}
.workout-performance h4{margin:0 0 var(--space-3)}
.workout-performance-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-2);min-width:0}
.workout-performance-row>span{min-width:0;overflow-wrap:anywhere}
.workout-performance-row small{display:block;color:var(--color-secondary);margin-top:var(--space-1)}
.workout-performance-row strong{text-align:right;overflow-wrap:anywhere;max-width:55%;font-variant-numeric:tabular-nums}
.workout-performance>.tiny{margin-bottom:0}
.saved-workout-search{margin-block:var(--space-4)}
[data-saved-workout-key][hidden]{display:none!important}
.class-training-info .workout-performance{margin:0;padding:0;border:0}
.class-training-info .workout-performance-row{padding-block:var(--space-1)}
.class-training-info .workout-performance-row small{font-size:12px}
.class-training-info .workout-performance-row strong{font-size:16px}
.class-training-info>.class-load-info+.class-record-info{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-line)}
.class-training-info .workout-performance>.tiny{font-size:11px}
.workout-performance-prescription>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--control-height);color:var(--color-secondary);cursor:pointer;list-style:none;font-size:12px}
.workout-performance-prescription>summary::-webkit-details-marker{display:none}
.workout-performance-prescription>summary svg{flex-shrink:0;transition:transform .16s ease}
.workout-performance-prescription[open]>summary svg{transform:rotate(180deg)}
.performance-snapshot{padding-block:var(--space-2);overflow-wrap:anywhere}
.performance-snapshot pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin-block:var(--space-2);line-height:1.7}
.performance-snapshot-section+.performance-snapshot-section{margin-top:var(--space-3)}
.workout-performance-attempt+.workout-performance-attempt{border-top:1px solid var(--color-line);padding-top:var(--space-2);margin-top:var(--space-2)}
@media(prefers-reduced-motion:reduce){.workout-performance-prescription>summary svg{transition:none}}

/* History identities keep the same text origin with or without a photo. */
.wod-history-record{--history-avatar-size:40px;--history-person-gap:var(--space-2)}
.wod-history-person{gap:var(--history-person-gap)}
.wod-history-person .history-member-avatar,
.wod-history-person>svg.history-member-placeholder{width:var(--history-avatar-size);height:var(--history-avatar-size);box-sizing:border-box;flex:0 0 var(--history-avatar-size)}
.wod-history-record .wod-history-note{margin:0 0 0 calc(var(--history-avatar-size) + var(--history-person-gap));min-width:0}
.history-person-identity{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);min-width:0}
.history-person-label{min-width:0;overflow-wrap:anywhere}
.history-person-identity>.pill{flex:none}
.history-quick-finished .history-closeout-person-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center}
.history-quick-finished .history-finished-time{grid-column:1/-1;font-size:12px;color:var(--muted)}
.history-quick-finished .history-closeout-person-head>strong{grid-column:1;min-width:0}
.history-quick-finished .history-closeout-person-head>.pill{grid-column:2;white-space:nowrap}

/* The dashboard workout reads as one card, separated by quiet rules. */
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-expanded{background:transparent;border-radius:0;padding:0;margin-bottom:var(--space-4)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-expanded>section{margin:0;padding:var(--space-5) 0}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-expanded>section+section{border-top:1px solid var(--line)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-wod-scales>div+div{border-top:1px solid var(--line);padding-top:var(--space-4)}

/* Schedule access remains primary even when a class record is pending. */
.member-home-wod .member-next-action .member-home-record-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:var(--touch-target)}


/* Record reminders and attendance correction share one secondary action row. */
.member-home-secondary-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}
@media(max-width:700px){.member-home-secondary-actions{width:100%}}


/* An unconfirmed class offers absence beside the record save action. */
:is(#main,#modal) [data-training="record-save"]>.training-submit.has-secondary-action{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--space-2)}

/* Daily admin card: compact arrows, separate today link and closeout entry. */
.dashboard-day-caption{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-caption .dashboard-day-label{margin-top:0}
.dashboard-day-caption>[data-dashboard-today]{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0;color:var(--muted)}
.dashboard-wod-actions{display:flex;margin-top:var(--space-4)}
.dashboard-wod-actions>.btn{flex:1}

/* Shared history records use dividers instead of individual tinted cards. */
.wod-history-page .wod-history-record{background:transparent;border-radius:0;padding:var(--space-4) 0;border-bottom:1px solid var(--line)}
.wod-history-page .wod-history-record:last-child{border-bottom:0}
.wod-history-workout .wod-history-schedule{margin-top:var(--space-4);padding:0;border-bottom:0}
.wod-history-schedule>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--control-height);list-style:none}
.wod-history-schedule>summary::-webkit-details-marker{display:none}
.wod-history-schedule>summary svg{width:20px;height:20px;flex:none;transition:transform .15s}
.wod-history-schedule[open]>summary svg{transform:rotate(180deg)}
.wod-history-workout .wod-history-schedule>.wod-history-class-list{margin-top:0}
@media(prefers-reduced-motion:reduce){.wod-history-schedule>summary svg{transition:none}}

/* Keep record omission beside the save action, with the detailed editor below. */
.history-quick-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2)}
.history-quick-actions>.btn{width:100%;min-width:0;white-space:normal}
.history-quick-actions>.history-quick-detail-link{grid-column:1/-1;justify-self:end}
.record-skip-confirm{display:grid;gap:var(--space-4)}
.record-skip-confirm>p{margin:0;line-height:1.8}
.record-skip-confirm [hidden]{display:none!important}
.record-skip-confirm .account-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2);margin:0}
.record-skip-confirm .account-actions>.btn{width:100%;white-space:normal}
.record-skip-status{font-size:var(--member-text-help,13px);line-height:1.8;color:var(--muted);padding-block:var(--space-3)}

:is(#main,#modal) [data-training="record-save"]>.training-submit:has([data-train="class-record-skip"]){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
:is(#main,#modal) [data-training="record-save"]>.training-submit:has([data-train="class-record-skip"])>.btn{min-width:0;white-space:normal;width:100%;height:100%}

.record-history-row .record-skipped-label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-top:var(--space-2)}

/* Exercise tools: retain counter visuals and workout-specific displays. */
#tool-stage:not(:has(.counter-tool)){min-height:0;padding:var(--space-6)}
#tool-stage:not(:has(.counter-tool)) .tool-center{max-width:760px;margin:auto;padding:0;min-width:0}
#tool-stage:not(:has(.counter-tool)) .tool-center>.eyebrow{color:var(--muted);letter-spacing:0;font-size:12px}
#tool-stage:not(:has(.counter-tool)) .tool-center>h2{font-size:22px;line-height:1.5;margin:var(--space-2) 0}
#tool-stage:not(:has(.counter-tool)) .tool-center>.muted{font-size:14px;line-height:1.7;margin:0 0 var(--space-5);overflow-wrap:anywhere}
#tool-stage:not(:has(.counter-tool)) :is(.tool-form,.round-log,.percent-stages,.percent-save-action,.percent-reference,.timer-primary-actions){max-width:560px}
#tool-stage:not(:has(.counter-tool)) .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
#tool-stage:not(:has(.counter-tool)) .account-field{min-width:0}
#tool-stage:not(:has(.counter-tool)) .weight-result{font-size:clamp(44px,9vw,64px);line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-block:var(--space-5)}
#tool-stage:not(:has(.counter-tool)) .weight-result>span{display:block;font-size:18px;line-height:1.5}
#tool-stage:not(:has(.counter-tool)) :is(.tool-primary-actions,.barbell-controls){display:flex;justify-content:center;align-items:stretch;gap:var(--space-2);margin-block:var(--space-5);flex-wrap:wrap}
#tool-stage:not(:has(.counter-tool)) :is(.tool-primary-actions,.barbell-controls)>.btn{flex:1;min-width:0;justify-content:center}
#tool-stage:not(:has(.counter-tool)) .barbell-controls{max-width:560px;margin-inline:auto}
#tool-stage:not(:has(.counter-tool)) .barbell-controls>.text-link{flex-basis:100%}
#tool-stage .barbell-display{background:var(--color-canvas);border-color:var(--line);border-radius:var(--radius-card,20px)}
#tool-stage .barbell-weight-options{gap:var(--space-2);flex-wrap:wrap}
#tool-stage .barbell-plate-picker{margin-block:var(--space-5)}
#tool-stage .percent-save-action{gap:var(--space-2);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
#tool-stage .percent-stage-row{padding:var(--space-4) 0;margin:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;gap:var(--space-3)}
#tool-stage .percent-stage-row>b{color:var(--ink)}
#tool-stage .percent-stage-remove{width:var(--control-height);height:var(--control-height);border-radius:var(--radius-control);color:var(--muted)}
#tool-stage .percent-reference{gap:var(--space-3);margin:var(--space-5) auto 0}
#tool-stage .percent-reference>div{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:var(--space-3) 0}
#tool-stage .timer-settings{margin-top:var(--space-5)}
#tool-stage .timer-clock-row{min-width:0;flex-wrap:wrap;column-gap:var(--space-4);row-gap:0;margin:var(--space-5) 0}
#tool-stage .timer-digits{font-size:clamp(80px,18vw,128px);margin:0;letter-spacing:0;font-variant-numeric:tabular-nums}
#tool-stage #timer-caption{font-size:13px;line-height:1.8;color:var(--muted)}
#tool-stage:not(:has(.counter-tool)) .timer-primary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:auto}
#tool-stage .round-log{text-align:left;border-top:1px solid var(--line);padding-top:var(--space-4)}
#tool-stage .round-log-heading{font-size:14px;margin:0 0 var(--space-3)}
#tool-stage .round-log .pr-line{padding-block:var(--space-3);border-bottom:1px solid var(--line)}
.timer-focus-screen .timer-focus-exit{top:max(var(--space-4),env(safe-area-inset-top));right:max(var(--space-4),env(safe-area-inset-right));border-radius:var(--radius-control)}
@media(max-width:700px){#tool-stage:not(:has(.counter-tool)){padding:var(--space-5) var(--space-4)}#tool-stage:not(:has(.counter-tool)) .tool-center>h2{font-size:20px}#tool-stage:not(:has(.counter-tool)) .form-grid{gap:var(--space-3)}#tool-stage:not(:has(.counter-tool)) .timer-primary-actions>.btn{padding-inline:var(--space-2);font-size:13px}#tool-stage .timer-round-meta{max-width:100%;text-align:center}}
#tool-stage :is(.barbell-unit-switch.unit-switch-compact,.barbell-weight-options button){min-height:var(--control-height);border-radius:var(--radius-control)}
#tool-stage .percent-reference{display:grid}
#tool-stage .percent-reference>div{gap:var(--space-2)}
#tool-stage :is(.percent-stage-remove,.plate-choice):focus-visible{outline:var(--focus-ring,2px solid #4263eb);outline-offset:2px}
#tool-stage:not(:has(.counter-tool)) button{min-height:var(--control-height)}
#tool-stage .barbell-controls>.text-link{text-align:center;justify-content:center}
#tool-stage:not(:has(.counter-tool)) .form-grid:has(>label:only-child){grid-template-columns:minmax(0,1fr)}

/* Barbell controls retain full labels; focus keeps only workout interactions. */
#tool-stage .barbell-settings{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-4)}
#tool-stage .barbell-settings .barbell-weight-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}
#tool-stage .barbell-weight-options button{min-width:0;padding-inline:var(--space-2);white-space:normal;overflow-wrap:normal;word-break:keep-all;line-height:1.5}
#tool-stage .barbell-unit-field{align-items:flex-start;justify-content:flex-start}
#tool-stage .barbell-custom-input{grid-column:1/-1}
body.focus-mode #tool-stage:has(.barbell-tool){position:fixed;inset:0;z-index:1000;display:grid;align-items:center;width:100%;height:100dvh;overflow:auto;min-height:0;margin:0;padding:max(var(--space-4),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-4),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left));border:0;border-radius:0;background:var(--color-canvas)}
body.focus-mode #tool-stage .barbell-tool{width:100%;max-width:760px}
body.focus-mode #tool-stage .barbell-tool>:is(.eyebrow,h2,.muted,.barbell-settings,.barbell-picker-help){display:none}
body.focus-mode #tool-stage .barbell-display{max-width:560px;padding:0;margin:0 auto var(--space-2);border:0;background:transparent}
body.focus-mode #tool-stage .barbell-illustration{max-height:22dvh}
body.focus-mode #tool-stage .barbell-load-caption{font-size:12px;line-height:1.5}
body.focus-mode #tool-stage .barbell-tool .weight-result{margin:var(--space-2) 0;font-size:clamp(44px,9vw,64px)}
body.focus-mode #tool-stage .barbell-tool .weight-result>span{font-size:16px}
body.focus-mode #tool-stage .barbell-plate-picker{margin:var(--space-3) auto;gap:var(--space-2);max-width:560px}
body.focus-mode #tool-stage .barbell-controls{margin:var(--space-3) auto 0}
@media(max-width:700px){#tool-stage .barbell-settings{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}#tool-stage .barbell-settings .barbell-weight-options{width:100%}#tool-stage .barbell-unit-field{display:flex;flex-direction:row;justify-content:space-between;align-items:center}body.focus-mode #tool-stage .barbell-plate-picker{max-width:390px}body.focus-mode #tool-stage .plate-choice{grid-template-rows:64px auto;gap:var(--space-1)}body.focus-mode #tool-stage .plate-disc{max-width:60px}body.focus-mode #tool-stage .plate-choice-caption{font-size:11px}}
@media(max-height:500px) and (min-width:701px){body.focus-mode #tool-stage .barbell-plate-picker{grid-template-columns:repeat(8,minmax(0,1fr))}body.focus-mode #tool-stage .barbell-load-caption{display:none}body.focus-mode #tool-stage .barbell-controls{margin-top:var(--space-2)}}

/* Dedicated full-screen barbell mode, including member navigation. */
body.barbell-focus-mode{overflow:hidden}
body.barbell-focus-mode :is(#topbar,.sidebar,#mobile-nav,.mobile-nav,.member-my-return){display:none!important}
body.barbell-focus-mode #main{padding:0;max-width:none;transform:none}
body.barbell-focus-mode #main>.page-head,body.barbell-focus-mode #main>.tool-selector{display:none}
body.barbell-focus-mode #tool-stage{box-shadow:none;outline:none}
@media(max-width:700px){#tool-stage .barbell-tool .barbell-settings{grid-template-columns:minmax(0,1fr)}#tool-stage .barbell-tool .barbell-settings .barbell-weight-options button{white-space:nowrap}#tool-stage .barbell-tool .barbell-unit-field{display:flex;flex-direction:row;align-items:center;justify-content:space-between}}
@media(max-height:500px) and (min-width:701px){body.barbell-focus-mode #tool-stage .barbell-tool{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4)}body.barbell-focus-mode #tool-stage .barbell-display{grid-column:1;width:100%;margin:0}body.barbell-focus-mode #tool-stage .barbell-tool .weight-result{grid-column:1;margin:0}body.barbell-focus-mode #tool-stage .barbell-plate-picker{grid-column:2;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;width:100%}body.barbell-focus-mode #tool-stage .barbell-controls{grid-column:1/-1;width:100%;margin:0}}

/* Reference loads cover 30–95%; focused loads show saved stages only. */
#tool-stage .percent-reference{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-6);row-gap:0}
#tool-stage .percent-reference>div{flex-wrap:nowrap;align-items:baseline;padding-block:var(--space-3)}
.percent-focus-base{display:none}
body.percent-focus-mode{overflow:hidden}
body.percent-focus-mode :is(#topbar,.sidebar,#mobile-nav,.mobile-nav,.member-my-return){display:none!important}
body.percent-focus-mode #main{padding:0;max-width:none;transform:none}
body.percent-focus-mode #main>.page-head,body.percent-focus-mode #main>.tool-selector{display:none}
body.percent-focus-mode #tool-stage.panel{position:fixed;inset:0;z-index:1000;display:grid;align-items:center;width:100%;height:100dvh;overflow:auto;min-height:0;margin:0;padding:max(var(--space-5),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-5),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left));border:0;border-radius:0;background:var(--color-canvas);box-shadow:none}
body.percent-focus-mode #tool-stage .percent-tool{display:flex;flex-direction:column;width:100%;max-width:640px}
body.percent-focus-mode #tool-stage .percent-tool>:is(.eyebrow,#percent-form,#percent-result,#percent-reference){display:none}
body.percent-focus-mode #tool-stage .percent-tool>h2{order:0;margin:0 0 var(--space-2)}
body.percent-focus-mode #tool-stage .percent-tool>.muted{order:1;margin:0 0 var(--space-5)}
body.percent-focus-mode #tool-stage .percent-focus-base{order:2;display:grid;gap:var(--space-2);padding-block:var(--space-4);border-block:1px solid var(--line)}
.percent-focus-base>span{font-size:13px;color:var(--muted)}
.percent-focus-base strong{font-size:40px;font-variant-numeric:tabular-nums;line-height:1.3}
.percent-focus-base small{font-size:20px}
body.percent-focus-mode #tool-stage .percent-stages{order:3;width:100%;margin:var(--space-5) auto}
body.percent-focus-mode #tool-stage .percent-stage-row>b{font-size:32px}
body.percent-focus-mode #tool-stage :is(.percent-stage-remove,.percent-stages-heading .text-link,[data-tool-action="percent-save"]){display:none}
body.percent-focus-mode #tool-stage .percent-save-action{order:4;width:100%;display:flex;justify-content:center;margin:0 auto}
body.percent-focus-mode #tool-stage .percent-save-action>[data-tool-action="focus"]{flex:none;min-width:180px}
body.barbell-focus-mode #tool-stage .barbell-tool>:is(h2,.muted){display:block}
body.barbell-focus-mode #tool-stage .barbell-tool>h2{font-size:20px;margin:0 0 var(--space-1)}
body.barbell-focus-mode #tool-stage .barbell-tool>.muted{font-size:13px;line-height:1.6;margin:0 0 var(--space-3)}
body.barbell-focus-mode #tool-stage .barbell-illustration{max-height:18dvh}
@media(max-height:500px) and (min-width:701px){body.barbell-focus-mode #tool-stage .barbell-tool>h2{grid-column:1/-1;grid-row:1}body.barbell-focus-mode #tool-stage .barbell-tool>.muted{grid-column:1/-1;grid-row:2;margin:0}body.barbell-focus-mode #tool-stage .barbell-display{grid-row:3}body.barbell-focus-mode #tool-stage .barbell-tool .weight-result{grid-row:4}body.barbell-focus-mode #tool-stage .barbell-plate-picker{grid-row:3/5}body.barbell-focus-mode #tool-stage .barbell-controls{grid-row:5}body.barbell-focus-mode #tool-stage .plate-choice{grid-template-rows:48px auto;padding:0}body.barbell-focus-mode #tool-stage .plate-disc{max-width:46px}body.barbell-focus-mode #tool-stage .barbell-controls>.text-link{min-height:var(--control-height)}}

/* Electronic interval clock: crisp segments, full viewport without rotation gaps. */
#tool-stage .timer-hardware,.timer-focus-screen .timer-hardware{--timer-face:#090e12;--timer-digit:#fff1a6;--timer-mode:#76e8ff;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:var(--space-4);row-gap:var(--space-3);background:var(--timer-face);color:var(--timer-digit);border:1px solid #35414a;border-radius:var(--radius-control);padding:var(--space-5);max-width:680px;margin:var(--space-5) auto;width:100%;box-sizing:border-box}
#tool-stage .timer-hardware :is(.timer-digits,.timer-round-meta),.timer-focus-screen .timer-hardware :is(.timer-focus-digits,.timer-focus-meta){margin:0;padding:0;min-width:0;max-width:none;line-height:1;font-family:inherit;letter-spacing:0;font-size:inherit;order:initial;transform:none}
.timer-hardware :is(.timer-digits,.timer-focus-digits) svg{display:block;width:100%;height:auto;max-height:52dvh}
.timer-mode-display{color:var(--timer-mode,#76e8ff);font-family:monospace;font-size:clamp(24px,6vw,48px);font-weight:700;letter-spacing:.04em}
#tool-stage .timer-hardware .timer-round-meta,.timer-focus-screen .timer-hardware .timer-focus-meta{grid-column:1/-1;text-align:center;color:#d0d9df;font-size:13px;line-height:1.6;font-weight:500;white-space:normal}
body.timer-focus-mode{overflow:hidden}
body.timer-focus-mode :is(#mobile-nav,.mobile-nav,.sidebar,#topbar,.member-my-return){display:none!important}
body.timer-focus-mode #main{transform:none}
body.timer-focus-mode #timer-focus.timer-focus-screen{position:fixed;inset:0;left:0;top:0;transform:none;width:100%;height:100dvh;max-width:none;margin:0;padding:0;box-sizing:border-box;border:0;border-radius:0;overflow:hidden}
#timer-focus .timer-hardware{border-radius:0}
#timer-focus .timer-hardware .timer-focus-meta{margin-top:var(--space-3)}
#timer-focus .timer-focus-exit{z-index:1;border-radius:var(--radius-control);min-height:var(--control-height)}
@media(max-width:700px){#tool-stage .timer-hardware{padding:var(--space-4);column-gap:var(--space-3)}#timer-focus .timer-hardware{width:calc(100% - 24px);padding:var(--space-2);column-gap:var(--space-3)}}
@media(max-height:500px){#timer-focus .timer-hardware{width:min(100% - 32px,1100px)}#timer-focus .timer-hardware svg{max-height:52dvh}#timer-focus .timer-hardware .timer-focus-meta{margin-top:0}}

/* AGLET timer: quiet typography normally, landscape canvas for focus. */
#tool-stage .timer-hardware{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);background:transparent;border:0;border-radius:0;padding:var(--space-4) 0;margin:var(--space-4) auto;color:var(--ink)}
#tool-stage .timer-hardware .timer-mode-display{font-size:13px;font-weight:700}
#tool-stage .timer-hardware .timer-digits{font-size:clamp(80px,20vw,144px);line-height:1.1;color:var(--ink)}
.timer-time-text{display:block;white-space:nowrap;font-family:'Barlow Condensed','Arial Narrow',system-ui,sans-serif;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.035em;line-height:1.1}
#tool-stage .timer-hardware .timer-round-meta{grid-column:auto;color:var(--muted);font-size:13px}
body.timer-focus-mode #timer-focus.timer-focus-screen{display:block;background:#132d26;color:#e3f5bd}
body.timer-focus-mode #timer-focus[hidden]{display:none}
.timer-focus-landscape{position:absolute;inset:0;width:100%;height:100%;display:grid;place-items:center;box-sizing:border-box;padding:max(60px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:#132d26}
#timer-focus .timer-hardware{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);width:100%;padding:0;margin:0;background:transparent;border:0;color:#e3f5bd;text-align:center}
#timer-focus .timer-mode-display{font-size:clamp(14px,3vmin,24px);font-weight:600}
#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(64px,min(26vw,48vh),320px);color:#e3f5bd}
#timer-focus .timer-hardware .timer-focus-meta{grid-column:auto;margin:0;font-size:clamp(13px,3vmin,24px);color:#c3d8cb;line-height:1.6}
#timer-focus .timer-focus-exit{top:var(--space-3);right:var(--space-4);background:transparent;border-color:#829c8d;color:#eef7ef}
@media(orientation:portrait){.timer-focus-landscape{inset:auto;left:50%;top:50%;width:100dvh;height:100dvw;transform:translate(-50%,-50%) rotate(90deg);padding:56px max(24px,env(safe-area-inset-bottom)) 20px max(24px,env(safe-area-inset-top))}#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(64px,min(26vh,48vw),320px)}}
@media(max-height:450px) and (orientation:landscape){#timer-focus .timer-hardware{gap:var(--space-1)}#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(64px,min(26vw,43vh),220px)}}

/* Mode/current round sits before the clock; maximize the clock face. */
#tool-stage .timer-hardware,#timer-focus .timer-hardware{container-type:inline-size;align-items:center;column-gap:var(--space-3);row-gap:var(--space-2)}
#tool-stage .timer-hardware .timer-mode-display{font-family:'Barlow Condensed',system-ui,sans-serif;font-size:clamp(28px,12cqw,72px);font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.1;color:#23786b;text-align:left}
#tool-stage .timer-hardware .timer-mode-display[data-code-kind="round"]{color:#986039}
#tool-stage .timer-hardware .timer-digits{font-size:clamp(64px,28cqw,176px);text-align:right}
#tool-stage .timer-hardware .timer-digits[data-wide-time="true"]{font-size:clamp(56px,24cqw,150px)}
#tool-stage .timer-hardware .timer-round-meta,#timer-focus .timer-hardware .timer-focus-meta{grid-column:1/-1}
#tool-stage .timer-hardware .timer-round-meta:empty,#timer-focus .timer-hardware .timer-focus-meta:empty{display:none}
#timer-focus .timer-hardware{max-width:1600px;column-gap:var(--space-4)}
#timer-focus .timer-mode-display{font-family:'Barlow Condensed',system-ui,sans-serif;font-size:clamp(44px,12cqw,170px);font-variant-numeric:tabular-nums;letter-spacing:0;color:#79d6c4;line-height:1.1;text-align:left}
#timer-focus .timer-mode-display[data-code-kind="round"]{color:#ffc58c}
#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(80px,28cqw,420px);line-height:1.1;text-align:right}
#timer-focus .timer-hardware .timer-focus-digits[data-wide-time="true"]{font-size:clamp(70px,24cqw,360px)}
#tool-stage .timer-hardware,#timer-focus .timer-hardware{grid-template-columns:max-content minmax(0,max-content);justify-content:center}
#tool-stage .timer-hardware .timer-digits{font-size:clamp(64px,36cqw,200px)}
#tool-stage .timer-hardware .timer-digits[data-wide-time="true"]{font-size:clamp(56px,30cqw,180px)}
#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(80px,min(40cqw,60vh),420px)}
#timer-focus .timer-hardware .timer-focus-digits[data-wide-time="true"]{font-size:clamp(70px,min(33cqw,60vh),360px)}
@media(orientation:portrait){#timer-focus .timer-hardware .timer-focus-digits{font-size:clamp(80px,min(40cqw,60vw),420px)}#timer-focus .timer-hardware .timer-focus-digits[data-wide-time="true"]{font-size:clamp(70px,min(33cqw,60vw),360px)}}

/* Round repetitions: focus is a full viewport; normal layout is unchanged. */
body:is(.reps-focus-mode,.times-focus-mode){overflow:hidden}
body:is(.reps-focus-mode,.times-focus-mode) :is(#topbar,.sidebar,#mobile-nav,.mobile-nav,.member-my-return){display:none!important}
body:is(.reps-focus-mode,.times-focus-mode) #main{transform:none}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage.panel{position:fixed;inset:0;z-index:1000;width:100%;height:100dvh;min-height:0;margin:0;padding:max(var(--space-4),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-4),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left));border:0;border-radius:0;box-shadow:none;overflow:auto;background:var(--color-canvas)}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool){display:flex;flex-direction:column;height:100%;width:100%;max-width:760px;margin:auto}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.eyebrow{display:none}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>h2{margin:0 0 var(--space-2)}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.muted{margin:0 0 var(--space-3)}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.tool-form{width:100%;flex:none;margin:0 auto;max-width:560px}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool) .tool-primary-actions{margin-block:var(--space-3)}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.round-log{flex:1;min-height:80px;width:100%;max-width:560px;overflow:auto;margin:var(--space-2) auto 0;padding-top:var(--space-3)}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.weight-result{flex:none;margin:var(--space-2) 0;font-size:40px}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>[data-tool-action="reset-tool"]{flex:none;margin-top:var(--space-2)}
@media(max-height:500px) and (min-width:701px){body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto minmax(0,1fr) auto;gap:var(--space-2) var(--space-5)}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>h2{grid-column:1/-1;grid-row:1;margin:0}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.muted{grid-column:1/-1;grid-row:2;margin:0}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.tool-form{grid-column:1;grid-row:3;margin:0}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.round-log{grid-column:2;grid-row:3;margin:0;height:100%;box-sizing:border-box}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>.weight-result{grid-column:2;grid-row:4;margin:0}body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>[data-tool-action="reset-tool"]{grid-column:1;grid-row:4;margin:0}}
body:is(.reps-focus-mode,.times-focus-mode) #tool-stage :is(.reps-tool,.times-tool)>[data-tool-action="reset-tool"]{text-align:center;align-self:center;justify-self:center}

#tool-stage .round-time-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);max-width:560px;width:100%;margin:var(--space-5) auto;text-align:left;padding-block:var(--space-4);border-block:1px solid var(--line);box-sizing:border-box}
.round-time-summary>div{min-width:0}
.round-time-summary dt{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:var(--space-2)}
.round-time-summary dd{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;margin:0;line-height:1.4;overflow-wrap:anywhere}
.round-time-summary dd small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:var(--space-1)}
body.times-focus-mode #tool-stage .round-time-summary{flex:none;margin:var(--space-2) auto;padding-block:var(--space-3)}
body.times-focus-mode #tool-stage .times-tool>.round-log{border-top:0;padding-top:var(--space-2)}
@media(max-height:500px) and (min-width:701px){body.times-focus-mode #tool-stage .times-tool{grid-template-rows:auto auto minmax(0,1fr) auto}body.times-focus-mode #tool-stage .round-time-summary{grid-column:2;grid-row:4;margin:0;padding-block:var(--space-2)}body.times-focus-mode #tool-stage .round-time-summary dd{font-size:20px}}

/* Secondary reset actions share the existing borderless tool controls. */
#tool-stage .tool-reset-link{justify-content:center;text-align:center;color:var(--muted)}

/* Member notices: an open list, separated by fine rules. */
body[data-workspace="member"] #main .member-home-notices{display:block;padding:var(--space-4) 0;background:transparent;border:0;border-radius:0;box-shadow:none}
body[data-workspace="member"] #main .member-home-notices .member-home-section-heading{display:flex;align-items:center;justify-content:space-between;margin:0;gap:var(--space-3)}
body[data-workspace="member"] #main .member-home-notices .member-home-section-heading h2{margin:0;font-size:var(--member-text-meta);color:var(--ink)}
body[data-workspace="member"] #main .member-home-notices .member-home-news-item{margin:0;padding:var(--space-3) 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;min-height:var(--control-height)}
body[data-workspace="member"] #main .member-home-notices .member-home-no-news{margin:0;padding:var(--space-3) 0;border-top:1px solid var(--line);border-radius:0;background:transparent}

.member-home-notices .member-notice-title{display:flex;align-items:center;gap:var(--space-2);min-width:0}
.member-home-notices .member-notice-title .announcement-category{flex:none;margin:0}
.member-home-notices .member-notice-title strong{min-width:0}


/* Box identity and notices form one quiet section above the workout. */
body[data-workspace="member"][data-page="today"] #main .member-box-overview{max-width:760px;margin:0 0 var(--space-6)}
body[data-workspace="member"][data-page="today"] #main .member-box-home-heading{padding:var(--space-2) 0 var(--space-4);margin:0;border:0;border-radius:0;background:transparent}
body[data-workspace="member"][data-page="today"] #main .member-box-home-identity>h1{font-size:clamp(24px,3vw,30px);line-height:1.4;letter-spacing:-.7px}
body[data-workspace="member"][data-page="today"] #main .member-box-home-identity>p{margin:var(--space-1) 0 0;font-size:13px;font-weight:400;color:var(--muted)}
body[data-workspace="member"][data-page="today"] #main .member-home-notices{border-top:1px solid var(--line)}
body[data-workspace="member"][data-page="today"] #main .member-home-notices .member-home-section-heading{min-height:var(--control-height)}


.member-notice-index-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);color:inherit;font:inherit;text-decoration:none}
.member-notice-index-link>span{color:var(--muted)}

/* The full notice list uses the same quiet separators for both roles. */
.announcement-list{gap:0;border-top:1px solid var(--line)}
.announcement-list>.announcement-list-link{padding:var(--space-5) 0;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;min-height:var(--control-height)}
.announcement-list>.announcement-list-link:hover{background:transparent;border-color:var(--line)}
.announcement-list>.announcement-list-link h2{margin:var(--space-2) 0 0}
.announcement-list>.account-empty{padding:var(--space-6) 0;border:0;border-radius:0;background:transparent;box-shadow:none}

/* Keep one outer card for related shortcuts and coach profiles. */
body[data-workspace="member"] #main .member-home-quick-links{padding-block:0;margin-block:var(--space-4)}
body[data-workspace="member"] #main .member-home-quick-links>.member-tools-shortcut{margin:0;padding:var(--space-5) 0;border:0;border-radius:0;background:transparent;box-shadow:none;min-height:var(--control-height)}
body[data-workspace="member"] #main .member-home-quick-links>.member-tools-shortcut+.member-tools-shortcut{border-top:1px solid var(--line)}
.box-coaches>.coach-public-grid{display:block;border-top:1px solid var(--line)}
.box-coaches>.coach-public-grid>.coach-public-card{padding:var(--space-4) 0;border:0;border-radius:0;background:transparent;box-shadow:none}
.box-coaches>.coach-public-grid>.coach-public-card+.coach-public-card{border-top:1px solid var(--line)}
.box-coaches>.coach-public-grid>.coach-public-card>summary{min-height:var(--control-height)}


/* Member home notices share one standard white card. */
body[data-workspace="member"][data-page="today"] #main .member-home-notices{margin-top:var(--space-2)}
@media(max-width:700px){body[data-workspace="member"][data-page="today"] #main .member-home-notices{padding:var(--space-5)}}



/* Approved design audit fixes: preserve behavior and shared controls. */
#main [data-wod-space-form="publish"]>.personal-workout-actions{grid-template-columns:minmax(0,1fr)}
#main .box-settings-fields{align-items:start;align-content:start;gap:var(--space-4)}#main .box-settings-fields .account-field{display:flex;flex-direction:column;gap:var(--space-2);margin:0;min-height:0;justify-content:flex-start}
.notification-delete-controls>button,.notification-delete{min-height:var(--control-height);min-width:var(--control-height)}.notification-delete-controls{gap:var(--space-2)}
body[data-workspace="box"] #main .member-detail-grid .account-section-head{flex-direction:row;justify-content:space-between;text-align:left;align-items:flex-start}#main .member-detail-grid .account-section-head>div{text-align:left}#main .member-detail-grid .account-section-head h2{text-align:left;margin:0}#main .member-detail-grid .account-empty{text-align:left;padding:var(--space-4) 0}
.notification-popover-title-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);color:inherit;font:inherit;text-decoration:none}

/* One white inbox, with the same separated rows in full and compact views. */
#main .notification-inbox{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none}
.notification-inbox-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:var(--space-4)}
#main .notification-inbox .notification-summary{margin:0;padding:0;border:0;border-radius:0;background:transparent;flex:1;min-width:0;gap:var(--space-3)}
#main .notification-inbox .notification-summary>strong{font-size:32px}
#main .notification-inbox .notification-summary p{display:none}
.notification-inbox .notification-delete-controls{padding:0;flex-wrap:wrap}
.notification-inbox .notification-list,.notification-popover-list{display:block;gap:0;background:transparent}
.notification-popover-list{padding:0 var(--space-3)}
:is(.notification-inbox,.notification-popover) .notification-item{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}
:is(.notification-inbox,.notification-popover) .notification-item+.notification-item{border-top:1px solid var(--line)}
.notification-inbox .notification-item>summary{padding:var(--space-4) 0}
:is(.notification-inbox,.notification-popover) .notification-item.is-read .notification-title strong{font-weight:400}
:is(.notification-inbox,.notification-popover) .notification-item.is-unread .notification-title strong{font-weight:700}
:is(.notification-inbox,.notification-popover) .notification-dot{background:#E45454}
:is(.notification-inbox,.notification-popover) .notification-detail{padding:0 0 var(--space-4)}
.notification-popover .notification-item>summary{padding:var(--space-3) 0}
.notification-inbox .notification-empty{padding:var(--space-6) 0}
/* Shared role comparisons: match common components, retain role-specific actions. */
.wod-space-year[hidden],.wod-space-top[hidden]{display:none!important}
#main .wod-space-year{max-width:320px;margin:var(--space-4) 0}
[data-wod-space-top-marker]{display:block;width:1px;height:1px;pointer-events:none}
#main .wod-space-top{position:fixed;left:50%;right:auto;transform:translateX(-50%);bottom:24px;z-index:40;width:var(--control-height);height:var(--control-height);border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);box-shadow:var(--shadow-soft);font-size:22px;cursor:pointer}
@media(max-width:700px){#main .wod-space-top{bottom:calc(84px + env(safe-area-inset-bottom))}}
#main .benchmark-attempt>.workout-performance-prescription{grid-column:1/-1;width:100%}
body:is([data-workspace="member"],[data-workspace="box"]) #main .purchase-category-tabs{display:flex;gap:0;padding:0;margin:0 0 var(--space-5);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow-x:auto;scrollbar-width:none}
body:is([data-workspace="member"],[data-workspace="box"]) #main .purchase-category-tabs>:is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:10px 16px;flex:0 0 auto;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap;box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) #main .purchase-category-tabs>:is(.active,.is-current,[aria-pressed="true"],[aria-selected="true"]){color:var(--ink);border-bottom-color:var(--ink);background:transparent;font-weight:750}
/* Category tabs are text controls, including the inherited outline/hover states. */
body:is([data-workspace="member"],[data-workspace="box"]) #main .purchase-category-tabs>.btn.outline:not(.active):not(.is-current):not([aria-pressed="true"]):not([aria-selected="true"]){background:transparent;border-color:transparent;box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) #main .community-news-card{border-radius:var(--radius-card)}
body:is([data-workspace="member"],[data-workspace="box"]) #main .announcement-back{font-size:14px}
body:is([data-workspace="member"],[data-workspace="box"]) #main .btn.notice-comment-send{font-size:13px}
@media(max-width:700px){
 body:is([data-workspace="member"],[data-workspace="box"]) #main .purchase-category-tabs{font-size:14px;line-height:1.6}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .community-news-card{font-size:15px}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .community-news-copy p{font-size:var(--member-text-body);line-height:1.65}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .community-news-copy>small{font-size:var(--member-text-help);line-height:1.6}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .community-news-copy>span{font-size:var(--member-text-control)}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .wod-space-card{font-size:var(--member-text-body)}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .wod-space-card-main pre{font-size:var(--member-text-body);line-height:1.65}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .wod-space-card :is(.wod-space-format,.wod-space-meta code){font-size:var(--member-text-meta)}
 body:is([data-workspace="member"],[data-workspace="box"]) #main .wod-space-card .pill{font-size:var(--member-text-meta)}
 body:is([data-workspace="member"],[data-workspace="box"]) #modal:has([data-account="edit-name"],[data-account="password"],[data-action="logout-confirm"]){font-size:15px}
 body:is([data-workspace="member"],[data-workspace="box"]) #modal :is([data-account="edit-name"],[data-account="password"]) .account-field{font-size:14px}
 body:is([data-workspace="member"],[data-workspace="box"]) #modal :is([data-account="edit-name"],[data-account="password"]) .tiny{font-size:13px;line-height:1.6}
 body:is([data-workspace="member"],[data-workspace="box"]) #modal [data-account="password"] .text-link{font-size:14px}
 body:is([data-workspace="member"],[data-workspace="box"]) #modal :is([data-account="edit-name"],[data-account="password"],.notice-comment-delete-actions:has([data-action="logout-confirm"])) .btn{font-size:13px}
}

#main .benchmark-history .benchmark-attempt:has(>.workout-performance-prescription){display:grid;grid-template-columns:minmax(0,1fr) auto auto}

#main .wod-space-top:active{transform:translateX(-50%) scale(.97)}
.benchmark-score-choice small{color:var(--muted);font-size:13px;line-height:1.6}
.benchmark-extra-score{grid-column:1/-1}

/* Opt-in class record content uses the common movement editor and controls. */
:is(#main,#modal) [data-class-performed]{margin-block:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}
:is(#main,#modal) [data-class-performed] [hidden]{display:none!important}
:is(#main,#modal) [data-class-performed] .account-actions{margin-top:var(--space-3);justify-content:flex-start}
:is(#main,#modal) [data-class-performed] .movement-field{margin-block:var(--space-3) 0}

/* Member-authored class prescription is a small disclosure beneath its result. */
:is(#main,#modal) .record-performed-details{min-width:0;margin:0;padding:0;border:0;background:transparent;border-radius:0;box-shadow:none}
:is(#main,#modal) .record-performed-details>summary{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0;border:0;background:transparent;box-shadow:none;color:var(--muted);font-size:12px;font-weight:400;cursor:pointer;list-style:none;max-width:100%}
:is(#main,#modal) .record-performed-details>summary::-webkit-details-marker{display:none}
:is(#main,#modal) .record-performed-details>summary svg{flex:none;transition:transform var(--motion-base)}
:is(#main,#modal) .record-performed-details[open]>summary svg{transform:rotate(180deg)}
:is(#main,#modal) .record-performed-details>pre{margin:0 0 var(--space-3);font:inherit;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
#main .wod-history-record>.record-performed-details{grid-column:1/-1;margin-left:calc(var(--history-avatar-size) + var(--history-person-gap))}
@media(prefers-reduced-motion:reduce){:is(#main,#modal) .record-performed-details>summary svg{transition:none}}

/* Keep member-authored disclosures close to the result without shrinking touch areas. */
body[data-workspace="box"] #main .wod-history-record:has(>.record-performed-details){row-gap:var(--space-1);padding-bottom:var(--space-2)}
body[data-workspace="box"] #main .wod-history-record>.record-performed-details>summary{align-items:flex-start;padding-top:var(--space-1);box-sizing:border-box}
body[data-workspace="box"] #main .wod-history-record>.record-performed-details>summary svg{margin-top:2px}
@media(max-width:700px){
 .wod-history-score .history-no-score{display:grid;gap:var(--space-1)}
 .wod-history-score .history-no-score>span{white-space:nowrap}
 .wod-history-score .history-no-score .history-no-score-separator{display:none}
}

/* Announcement-only open gym: shared controls, isolated composition layout. */
.program-kind-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
.program-kind-picker>.btn{min-width:0;width:100%;white-space:normal;display:flex;flex-direction:column;align-items:flex-start;padding:16px;gap:4px;text-align:left}
.program-kind-picker small{font-weight:400;color:var(--muted)}
.program-kind-picker [aria-pressed=true]{border-color:var(--box-accent,var(--color-primary));box-shadow:inset 0 0 0 1px var(--box-accent,var(--color-primary))}
.open-gym-form{display:grid;gap:16px}.open-gym-form[hidden],[data-program-normal][hidden]{display:none}
.open-gym-form>.panel{margin:0}.open-gym-form .account-field{margin-bottom:16px}.open-gym-form h2{margin:0 0 16px}
.open-gym-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.open-gym-policy{padding-top:16px;border-top:1px solid var(--line);line-height:1.7}
.open-gym-notice{white-space:pre-line;overflow-wrap:anywhere;font:inherit;line-height:1.8}
.open-gym-time{font-size:24px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}
.open-gym-form details>summary{padding-block:12px;cursor:pointer}.open-gym-form details>.account-field{margin-top:12px}
@media(max-width:700px){.open-gym-form>.panel{padding:20px 16px}.program-kind-picker>.btn{padding:12px}}

/* Optional open-gym workout uses the existing WOD editor and secondary actions. */
.open-gym-workout-toggle{display:flex;align-items:center;gap:8px;font-weight:700;min-height:var(--touch-target);cursor:pointer}
[data-open-gym-workout]{padding-top:16px}[data-open-gym-workout][hidden]{display:none}
[data-open-gym-workout] .program-source-actions{margin-bottom:16px}
[data-open-gym-workout] .account-section-head{margin-top:16px}
.open-gym-optional-record{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.open-gym-scale{border-top:1px solid var(--line);padding-block:12px}.open-gym-scale summary{cursor:pointer}

/* Weekday timetable: shared controls, separated rows and compact copy flow. */
.schedule-preview-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1);margin:0 0 24px}.schedule-preview-days .btn{min-width:0;padding-inline:0}.schedule-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.schedule-preview-heading h3{margin:0;font-size:20px}.schedule-preview-heading small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.schedule-preview-heading .text-link{flex:none}.schedule-preview-row{border-bottom:1px solid var(--line);margin:0}.schedule-preview-row summary{display:flex;align-items:center;gap:16px;cursor:pointer;padding:20px 0;list-style:none}.schedule-preview-row summary::-webkit-details-marker{display:none}.schedule-preview-row time{font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}.schedule-preview-label{flex:1;min-width:0;font-size:13px}.schedule-preview-label small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.schedule-preview-chevron{width:16px;height:16px;flex:none;color:var(--muted)}.schedule-preview-row[open] .schedule-preview-chevron{transform:rotate(180deg)}.schedule-preview-options{padding-bottom:20px}.schedule-preview-options .session-options{margin:0 0 12px}.schedule-preview-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:24px}.schedule-preview-add .account-field{margin:0}.schedule-preview-add button{margin-bottom:0}.schedule-preview-copy-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;margin:0;border-bottom:1px solid var(--line)}.schedule-preview-copy-row>span{flex:1}.schedule-preview-copy-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.schedule-preview-copy-row input{width:auto;min-height:0;accent-color:#425845}.schedule-preview-actions{display:flex;gap:12px;margin-top:24px}.schedule-preview-actions .btn{flex:1}.schedule-preview-copy-source{padding-bottom:16px;border-bottom:1px solid var(--line)}.schedule-preview-empty{padding:32px 0;text-align:center}.schedule-preview-empty strong{font-size:15px}.schedule-preview-empty p{margin:8px 0 0}.schedule-preview-error{font-size:12px;color:var(--danger,#a34a3b);margin-top:8px}

[data-week-panel][hidden]{display:none!important}
/* Badge permissions: common form controls with separated capability rows. */
.badge-permission-row{display:flex;align-items:flex-start;gap:12px;padding-block:16px;border-bottom:1px solid var(--line)}.badge-permission-row input{flex:none;inline-size:auto;min-height:0;margin-top:4px}.badge-permission-row span{min-width:0}.badge-permission-row small{display:block;color:var(--muted);margin-top:4px}.badge-catalog-row>div{min-width:0}.badge-catalog-row>button{flex:none}.badge-catalog-row .tiny{overflow-wrap:anywhere}
[data-badge-permissions]{border:0;padding:0;margin-top:20px}[data-badge-permissions] legend{font-weight:700}[data-badge-permissions][disabled]{opacity:.55}
/* Delegated class managers use the same operational layout as box administrators. */
#main .training-workspace--classes .admin-page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:24px}
#main .training-workspace--classes>.account-section-head{flex-direction:row;text-align:left;justify-content:space-between}
#main .training-workspace--classes>.account-section-head h2{margin:0}
/* Multi-photo workout import: ordered, lazy previews and shared icon controls. */
.wod-photo-queue-row{display:flex;align-items:center;gap:12px;padding-block:16px;border-bottom:1px solid var(--line)}.wod-photo-queue-row>img{inline-size:56px;block-size:56px;object-fit:cover;border-radius:var(--radius-control);flex:none}.wod-photo-queue-row>div:not(.wod-photo-queue-actions){min-width:0;flex:1}.wod-photo-queue-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wod-photo-queue-row small{display:block;color:var(--muted);margin-top:4px}.wod-photo-queue-actions{display:flex;flex:none;gap:4px}.wod-photo-queue-actions .icon-btn{flex:none}


/* Selected workout photos are immediately visible, including mobile dialog pages. */
.wod-photo-selected-preview{margin:0 0 16px;min-width:0}.wod-photo-selected-preview .wod-photo-original{margin:0 0 8px;max-width:100%;min-height:80px}.wod-photo-selected-preview figcaption{overflow-wrap:anywhere}.wod-photo-queue-row .wod-photo-thumbnail{padding:0;flex:none;overflow:hidden}.wod-photo-thumbnail img{display:block;inline-size:56px;block-size:56px;object-fit:cover}.wod-photo-thumbnail[aria-pressed="true"]{border-color:var(--ink)}
/* Chat text belongs to the shared composer surface rather than a nested form box. */
#main #visitor-reply-message,#modal #member-inquiry-message{border:0;border-radius:0;background:transparent;box-shadow:none;padding:var(--space-2);min-height:var(--control-height);width:100%;min-width:0;line-height:1.7;resize:vertical}#modal #member-inquiry-message{flex:1;height:auto}#main #visitor-reply-message:focus-visible,#modal #member-inquiry-message:focus-visible{outline:none;box-shadow:none;background:transparent}.visitor-reply-input:focus-within,.request-chat .member-inquiry-compose:focus-within{outline:2px solid var(--ui-focus);outline-offset:2px}
/* Inquiry navigation: people list first, then a conversation with one back action. */
.visitor-messenger{display:block;height:auto;max-height:none;min-height:0}.visitor-messenger>.visitor-conversations{position:static;width:100%;max-height:none;overflow:visible;transform:none;opacity:1;visibility:visible;box-shadow:none}.visitor-messenger>[hidden]{display:none!important}.visitor-messenger.show-list .visitor-conversation{border-radius:0;border:0;border-bottom:1px solid var(--color-line);background:transparent;padding:var(--space-4)}.visitor-messenger.show-list .visitor-conversation:last-child{border-bottom:0}.visitor-conversation-back{flex-shrink:0;font-size:24px;color:var(--color-ink)}.visitor-messenger.show-chat .visitor-chat{min-height:440px;height:min(680px,75dvh)}
@media(max-width:700px){
 body.inquiry-chat-open{position:fixed;top:calc(-1 * var(--inquiry-page-scroll,0px));left:0;right:0;width:100%;overflow:hidden;overscroll-behavior:none}
 body.inquiry-chat-open :is(#mobile-nav,.mobile-nav,#floating-notes){display:none!important}
 #modal[open][data-chat-viewport],body[data-workspace="box"] #modal[open][data-chat-viewport]{position:fixed;inset:auto 0 auto 0;top:var(--chat-viewport-top,0px);margin:0;width:100%;max-width:none;height:var(--chat-viewport-height,100dvh);max-height:var(--chat-viewport-height,100dvh);border:0;border-radius:0;padding:0;overflow:hidden;display:flex;flex-direction:column;overscroll-behavior:none;animation:none}
 #modal[data-chat-viewport] .modal-head{flex:0 0 auto}
 #modal[data-chat-viewport] .modal-content{flex:1;min-height:0;overflow:hidden;display:flex;padding:var(--space-2) var(--space-3) env(safe-area-inset-bottom,0px);box-sizing:border-box}
 #modal[data-chat-viewport] [data-member-inquiry-chat]{display:flex;flex:1;min-height:0;margin:0;width:100%}
 #modal[data-chat-viewport] .request-chat{display:flex;flex-direction:column;flex:1;min-height:0;width:100%}
 #modal[data-chat-viewport] .member-inquiry-heading{flex:0 0 auto;margin-bottom:var(--space-3);padding-bottom:var(--space-3)}
 #modal[data-chat-viewport] .member-faq-conversation{flex:1;min-height:0;height:auto;max-height:none;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
 #modal[data-chat-viewport] .member-inquiry-compose{flex:0 0 auto;padding:var(--space-2);margin-top:var(--space-2)}
 #modal[data-chat-viewport] #member-inquiry-message{height:var(--control-height);resize:none;min-height:var(--control-height);max-height:120px;overflow-y:auto;font-size:16px}
 body.inquiry-keyboard-open #modal[data-chat-viewport] .modal-content{padding-bottom:0}
}
@media(max-width:700px){
 body.operator-inquiry-chat-open{position:fixed;top:calc(-1 * var(--operator-chat-scroll,0px));left:0;right:0;width:100%;overflow:hidden;overscroll-behavior:none}
 body.operator-inquiry-chat-open :is(#mobile-nav,.mobile-nav,#floating-notes,#topbar){display:none!important}
 body.operator-inquiry-chat-open #main .visitor-messenger.show-chat{position:fixed;inset:auto 0 auto 0;top:var(--operator-chat-top,0px);width:100%;height:var(--operator-chat-height,100dvh);max-height:var(--operator-chat-height,100dvh);z-index:300;background:var(--color-canvas);margin:0;padding:0;overflow:hidden}
 body.operator-inquiry-chat-open .visitor-messenger.show-chat .visitor-chat{height:100%;max-height:none;min-height:0;border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden}
 body.operator-inquiry-chat-open .visitor-chat-head{flex-shrink:0;padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-3) var(--space-3)}
 body.operator-inquiry-chat-open .visitor-messages{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}
 body.operator-inquiry-chat-open .visitor-chat-compose{flex-shrink:0;padding:var(--space-3)}
 body.operator-inquiry-chat-open #visitor-reply-message{resize:none;max-height:120px;overflow-y:auto}
}
.visitor-chat-head .visitor-chat-person{flex:1;min-width:0}

/* Compact idle chat input leaves the remaining height to the conversation. */
.visitor-chat .visitor-reply-input{padding:var(--space-2)}

/* Member inquiry chat: shared surfaces, readable labels, and one bubble per message. */
#modal .request-chat .member-inquiry-heading{gap:var(--space-3)}
#modal .request-chat .member-inquiry-heading>div{min-width:0}
#modal .request-chat .member-inquiry-heading h3{color:var(--color-ink);line-height:1.5;overflow-wrap:anywhere}
#modal .request-chat .member-inquiry-heading p{font-size:12px;color:var(--color-secondary);line-height:1.6;margin:var(--space-1) 0 0}
#modal .request-chat .member-inquiry-box-icon{flex:none;background:var(--color-surface-soft);color:var(--color-secondary);border-radius:var(--radius-control)}
#modal .request-chat .member-faq-message{max-width:88%;min-width:0;background:transparent;border:0;border-radius:0}
#modal .request-chat .member-faq-message small{font-size:12px;line-height:1.5;color:var(--color-secondary);margin:0 var(--space-1) var(--space-1)}
#modal .request-chat .member-faq-message p{margin:0;padding:var(--space-3) var(--space-4);font-size:14px;line-height:1.7;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);color:var(--color-ink);white-space:pre-wrap;overflow-wrap:anywhere}
#modal .request-chat .member-faq-message.member{margin-left:auto}
#modal .request-chat .member-faq-message.member p{background:var(--color-surface-soft)}
#modal .request-chat .member-faq-message.member small{text-align:right}
#modal .request-chat .member-faq-questions{max-width:100%;gap:var(--space-2);margin:0 0 var(--space-3)}
#modal .request-chat .member-faq-questions button{min-height:var(--control-height);padding:var(--space-3);font-size:13px;background:var(--color-surface);border-color:var(--color-line);border-radius:var(--radius-control);color:var(--color-ink)}
#modal .request-chat .member-faq-questions button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
#modal .request-chat .member-faq-questions span{color:var(--color-secondary)}
#modal .request-chat .member-inquiry-compose{background:var(--color-surface)}
#modal .request-chat #member-inquiry-message::placeholder{color:var(--color-secondary);font-size:inherit}

/* Immersive class album viewer stays within the shared accessible overlay. */
#modal:has([data-history-photo-view]),body[data-workspace="box"] #modal:has([data-history-photo-view]){position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;background:#080808;color:#fff;overflow:hidden;animation:none}
#modal:has([data-history-photo-view])>.modal-head,#modal:has([data-history-photo-view])>.sheet-grip{display:none}
#modal:has([data-history-photo-view])>.modal-content{padding:0;height:100%;max-height:none;overflow:hidden}
#modal .history-photo-view{position:relative;display:flex;flex-direction:column;width:100%;height:100%;touch-action:none;background:#080808;color:#fff}
#modal .history-photo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex:none;padding:calc(var(--space-2) + env(safe-area-inset-top)) var(--space-3) var(--space-2);font-size:13px}
#modal .history-photo-stage{display:grid;place-items:center;flex:1;min-height:0;overflow:hidden;touch-action:none;user-select:none}
#modal .history-photo-stage img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;transform-origin:center;pointer-events:none;user-select:none}
#modal .history-photo-controls{display:flex;justify-content:center;align-items:center;gap:var(--space-2);flex:none;padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom))}
#modal .history-photo-view button{color:#fff;background:transparent;border-color:transparent;border-radius:var(--radius-control)}
#modal .history-photo-view button:hover{background:#ffffff18}
#modal .history-photo-view [hidden]{display:none!important}
#modal .history-photo-view [data-photo-zoom="reset"]{font-variant-numeric:tabular-nums;min-width:var(--touch-target);text-decoration:none}

#modal .history-photo-caption{flex:none;margin:0;padding:var(--space-2) var(--space-5);max-height:20dvh;overflow-y:auto;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7;color:#fff;touch-action:pan-y}
/* The public box introduction stays compact while long copy may expand naturally. */

.profile-birth-fields{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr));gap:var(--space-2)}
.profile-birth-fields select{min-width:0;width:100%}

.class-cancel-form .account-field{margin-block:var(--space-4)}.class-cancel-form textarea{resize:vertical}.class-cancel-delivery{padding-block:var(--space-4);border-block:1px solid var(--line);margin-block:var(--space-4)}.class-cancel-delivery>div{display:flex;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;font-size:13px;line-height:1.7}.class-cancel-delivery>div+div{margin-top:var(--space-3)}.class-cancel-delivery span{color:var(--muted)}.class-cancel-broadcast{display:flex;align-items:flex-start;gap:var(--space-3);font-size:14px;line-height:1.7;min-height:var(--touch-target);cursor:pointer}.class-cancel-broadcast input{width:auto;min-height:0;flex:none;margin-top:5px}.class-cancel-broadcast small{display:block;font-size:12px;color:var(--muted)}.class-cancel-form>.tiny{line-height:1.7}.class-cancel-form .account-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.class-cancel-reason{padding-block:var(--space-4);margin-block:var(--space-4);border-block:1px solid var(--line);line-height:1.8;overflow-wrap:anywhere}.class-cancel-reason p{margin-top:var(--space-2)}.class-cancellation-detail{max-width:760px;margin-inline:auto}.class-cancellation-detail h1{margin-block:var(--space-3);font-size:24px;overflow-wrap:anywhere}.class-cancelled-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-4);border-top:1px solid var(--line)}.class-cancelled-row>div{min-width:0}.class-cancelled-row>div>strong{overflow-wrap:anywhere}.class-cancelled-row>a{flex:none}
@media(max-width:700px){.class-cancel-form .account-actions>*{flex:1}}

.class-cancel-form [hidden]{display:none!important}

/* Time records share minute/second and optional hour inputs. */
:is(#main,#modal) .record-time-input{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;max-width:100%}
:is(#main,#modal) .record-time-input[data-hours="true"]{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)}
:is(#main,#modal) .record-time-input[hidden]{display:none}
:is(#main,#modal) .record-time-input input{min-width:0;width:100%;text-align:center}
:is(#main,#modal) .record-time-input b{font-weight:600}

:is(#main,#modal) .record-value-unit:has(.record-time-input:not([hidden])),:is(#main,#modal) .record-value-unit:has([data-extra-time]:not([hidden])){grid-template-columns:minmax(0,1fr) 136px}

/* Box-private board uses shared controls, flat tabs and compact cafe-style rows. */
.box-community-tabs{border:0;border-bottom:1px solid var(--line,#e2e7e2);border-radius:0;background:transparent;padding:0;gap:24px;margin:16px 0 24px}
.box-community-tabs a{flex:none;border-radius:0;padding:12px 0;color:var(--muted);text-decoration:none;font-size:14px}
.box-community-tabs a.active{background:transparent;box-shadow:none;border-bottom:2px solid var(--box-accent,#263e31);color:var(--ink);font-weight:700}
.box-board-heading{margin:24px 0 16px}.box-board-heading h2{margin:0}.box-board-heading p{margin:8px 0 0}
.box-community-page .post-row{padding:20px 0;gap:16px;border-bottom:1px solid #e8ece8;text-decoration:none;color:inherit}
.box-community-page .post-row:last-child{border-bottom:0}.box-community-page .post-row h2{font-size:16px;margin:8px 0;line-height:1.5}
.box-community-page .post-row-footer{margin-top:8px;gap:8px;font-size:12px;line-height:1.6;color:var(--color-secondary)}
.box-community-page .post-author{max-width:100%;flex:initial}.box-community-page .post-thumbnail{width:76px;height:76px;border-radius:12px}
.box-community-page .post-row-footer time{margin-right:0}.box-community-page .post-row-labels{gap:8px}
@media(max-width:700px){.box-community-page .post-thumbnail{width:68px;height:68px}.box-community-page .post-author{flex-basis:100%}.box-board-heading{gap:12px}.box-board-heading>.btn{flex:none}}

:is(#main,#modal) [data-bc-action="more"][hidden]{display:none}

/* Replies share the comment composer; indentation identifies the conversation. */
.box-community-page .post-comments .box-comment-reply{margin-left:16px;padding-left:16px;border-left:1px solid var(--line,#e2e7e2)}
[data-bc-reply-context]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:13px}
[data-bc-reply-context][hidden]{display:none}

.box-comment-mention{color:var(--box-ink,#365a46)}
.box-community-page .post-comments article [data-bc-comment]{margin-top:16px}

.box-community-page .post-actions>.box-post-menu{margin-left:auto}
.box-comment-heading{display:flex;justify-content:space-between;align-items:start;gap:8px}
.box-comment-heading>div{min-width:0;overflow-wrap:anywhere}
:is(#main,#modal) .box-post-menu>summary{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0}
.box-post-menu>.account-actions{top:44px}

:is(#main,#modal) [data-bc-comment][hidden]{display:none}
.box-comment-edited{white-space:nowrap;color:var(--muted)}
.box-report-list p,.box-report-list blockquote{white-space:pre-wrap;overflow-wrap:anywhere}
.box-report-list blockquote{margin:12px 0;padding-left:12px;border-left:2px solid var(--line)}

/* Keep My Box's selected tab underline above the generic borderless tab reset. */
#main .community-section-tabs.box-community-tabs>a{border-bottom:2px solid transparent}
#main .community-section-tabs.box-community-tabs>a:is(.active,[aria-current="page"]){border-bottom-color:var(--ink);font-weight:750}

/* Editorial news: compact landscape media; card contents always start at top. */
.community-news{align-items:flex-start}
.community-news-card:has(.news-post){display:flex;flex-direction:column;justify-content:flex-start;align-self:flex-start}
.community-news-card>.news-post{display:block;margin:0}
.news-post-editorial .news-post-slide,.community-news-card .news-post-editorial .news-post-slide{aspect-ratio:3/2}
.community-news-card .news-post-copy{padding:12px 16px}
.community-news-card .news-post-copy h3{font-size:16px;line-height:1.5;margin:6px 0!important}

/* Class workflow: existing controls/data handlers, clearer composition and closeout. */
.training-workspace--compose .program-kind-picker{display:flex;gap:8px;padding:0;border:0;background:none;box-shadow:none;align-items:center;margin:0 0 24px}.training-workspace--compose .program-kind-picker>[data-program-kind]{width:auto;flex:none;min-height:var(--ui-control-size)}.training-workspace--compose .program-kind-picker>[data-train="program-draft-new"]{margin-left:auto}
.program-workflow .program-page-head,.program-workflow .program-page-form,.program-workflow .program-draft-bar{max-width:none}.program-workflow .program-steps{border-bottom:1px solid var(--line);gap:24px}.program-workflow .program-steps span{border-radius:0;background:none;color:var(--muted);border-bottom:2px solid transparent;padding:12px 0}.program-workflow .program-steps span.active{background:none;color:var(--box-primary,var(--ink));border-color:currentColor}.program-workflow .program-draft-bar{padding:0;border:0;background:none;margin-bottom:16px}.program-workflow .program-draft-bar>div:empty{display:none}
.program-workflow-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.program-workflow-stages{min-width:0}.program-workflow-aside{position:sticky;top:24px;min-width:0}.program-workflow-summary>summary{font-weight:700;cursor:pointer}.program-workflow-summary pre{white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.9;padding-top:16px;border-top:1px solid var(--line);overflow-wrap:anywhere}.program-workflow-summary h3{font-size:18px;overflow-wrap:anywhere;margin-top:20px}.program-workflow .program-page-pane{margin:0;padding:24px}.program-workflow .program-wod-head{border:0;padding-bottom:0}
.program-workflow .program-source-actions{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid var(--line)}.program-workflow .program-source-actions .text-link{min-height:var(--ui-control-size);white-space:nowrap;flex:none}.program-workflow .program-workflow-exercise{border-top:1px solid var(--line)}.program-workflow-exercise>summary,.program-workflow-scales>summary,.program-workflow-note>summary,.program-workflow-options>summary{padding:16px 0;cursor:pointer;font-size:13px;font-weight:600}.program-workflow .training-block{border:0;border-radius:0;background:none;padding:0 0 16px;margin:0}.program-workflow .training-block>legend{display:none}.program-workflow .scaling-block{background:none;border-radius:0;border:0;border-top:1px solid var(--line);padding:16px 0}.program-workflow-options,.program-workflow-scales,.program-workflow-note{border-top:1px solid var(--line);margin-top:16px}.program-workflow textarea[data-movement-input]{overflow-y:hidden;resize:none}.program-workflow .program-page-submit{position:sticky;bottom:0;z-index:12;grid-column:1/-1;margin:24px 0 0;border-radius:0;border-inline:0;box-shadow:none;padding:16px;background:var(--paper,#fff)}
.history-workflow-status{display:flex;align-items:end;justify-content:space-between;gap:24px}.history-workflow-status h2{font-size:18px;margin:0 0 16px}.history-workflow-status strong{font-size:28px}.history-workflow-status strong small{font-size:13px;color:var(--muted);font-weight:400}.history-workflow-status .account-field{max-width:280px;margin:0;min-width:0}.history-workflow-tools{display:flex;flex-wrap:wrap;gap:16px;padding:16px 0}.history-workflow-tools .text-link{min-height:var(--ui-control-size)}.history-workflow-filters{display:flex;gap:20px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.history-workflow-filters button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;min-height:var(--ui-control-size);color:var(--muted);white-space:nowrap;font:inherit;font-size:13px;padding:8px 0;cursor:pointer}.history-workflow-filters [aria-pressed="true"]{color:var(--box-primary,var(--ink));border-bottom-color:currentColor;font-weight:700}.history-workflow-search{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.history-workflow-search>.account-field{max-width:180px;min-width:0;margin:0}.history-workflow-search>label:first-child{white-space:nowrap;font-size:12px}.history-workflow-person{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px}.history-workflow-person label{display:flex;align-items:center;gap:12px;min-width:0;font-size:14px}.history-workflow-person label strong{overflow-wrap:anywhere}.history-workflow-person small{grid-column:1;grid-row:2;font-size:12px;color:var(--muted)}.history-workflow-person>.text-link{grid-column:2;grid-row:1/3;white-space:nowrap}.training-workspace .history-quick-row{padding:18px 0;background:none;border:0;border-radius:0;border-bottom:1px solid var(--line);margin:0}.history-workflow-editor{padding:16px 0 0 28px}.history-workflow-editor[hidden],[data-workflow-bulk][hidden]{display:none!important}.history-workflow-editor .history-quick-fields{margin-bottom:12px}.history-workflow-editor .history-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.history-workflow-editor .history-quick-more{margin-top:12px}.history-workflow-editor .history-closeout-editor{background:none}.history-workflow-editor .history-quick-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.history-workflow-editor .history-quick-fields.has-reps{grid-template-columns:repeat(3,minmax(0,1fr))}[data-workflow-bulk]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
#history-closeout .history-quick-savebar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;bottom:0;z-index:8;background:var(--paper,#fff);border-top:1px solid var(--line);border-radius:0;padding:16px 0;margin-top:24px}#history-closeout .history-quick-savebar strong{font-size:13px}#history-closeout .history-quick-savebar .tiny{margin:8px 0 0}#history-closeout .history-quick-savebar>.btn{white-space:nowrap}
@media(min-width:701px){.wod-history-detail-layout:has(#history-closeout:not([hidden])){grid-template-columns:minmax(0,1fr) 280px;align-items:start}.wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-workout{grid-column:2;grid-row:1;position:sticky;top:24px}.wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-record-panel{grid-column:1;grid-row:1}}
@media(max-width:700px){.program-workflow-grid{display:block}.program-workflow-aside{position:static;margin-top:20px}.program-workflow .program-page-pane{padding:20px 16px}.program-workflow .program-steps{gap:20px}.program-workflow .program-steps span{flex:none;font-size:12px;text-align:left;padding:12px 0}.program-workflow .program-source-actions{gap:12px}.program-workflow .program-source-actions .text-link{font-size:11px}.program-workflow .program-page-submit{padding:12px 0 max(12px,env(safe-area-inset-bottom));margin-top:20px}.program-workflow .program-page-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px}.program-workflow .program-page-actions>[data-train="program-draft-save"],.program-workflow .program-page-actions>[data-train="compose-prev"],.program-workflow .program-page-actions>[data-train="compose-next"]{grid-column:auto!important;width:100%;justify-self:stretch!important;margin:0!important;min-height:var(--ui-control-size)!important}.program-workflow .program-page-actions>[type="submit"]{grid-column:1/-1!important;width:100%}.history-workflow-status{display:block}.history-workflow-status .account-field{max-width:none;margin-top:16px}.history-workflow-filters{gap:16px}.history-workflow-filters button{font-size:12px}.history-workflow-editor{padding-left:0}.history-workflow-person label{gap:8px;font-size:13px}#history-closeout .history-quick-savebar{flex-direction:column;align-items:stretch;gap:12px}}
/* Specificity over legacy composer action grids. */
#main .program-workflow .program-source-actions{display:flex;flex-wrap:nowrap;justify-content:flex-start}#main .program-workflow .program-source-actions>[data-train]{width:auto;flex:none;min-height:var(--ui-control-size);font-size:11px;padding:0;background:none;border:0;border-radius:0;color:var(--ink);white-space:nowrap}#main .program-kind-picker{display:flex;align-items:center;padding:0;border:0;border-radius:0;background:none;box-shadow:none}#main .program-kind-picker>[data-program-kind]{padding:10px 14px;min-height:var(--ui-control-size);width:auto;flex:none;align-items:center;flex-direction:row}#main .program-kind-picker>[data-train="program-draft-new"]{margin-left:auto}
@media(max-width:700px){.wod-history-detail-layout:has(#history-closeout:not([hidden])){display:flex;flex-direction:column}.wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-record-panel{order:0;width:100%}.wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-workout{order:1;width:100%}}
#main .wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-record-panel{contain:none;max-height:none;overflow:visible;min-height:0}#main .wod-history-detail-layout:has(#history-closeout:not([hidden])){align-items:start}#history-closeout [data-closeout-row],#history-closeout input,#history-closeout select{scroll-margin-block:160px}#history-closeout [data-workflow-roster]{padding-bottom:24px}
#main .program-kind-picker:has([data-program-kind="open"][aria-pressed="true"])>[data-train="program-draft-new"]{display:none}
#history-closeout .history-quick-savebar>div{flex:1;min-width:0}#history-closeout .history-quick-savebar>.btn{width:auto;max-width:100%;flex:0 0 auto}#history-closeout .history-quick-savebar strong{white-space:nowrap}@media(max-width:700px){#history-closeout .history-quick-savebar>.btn{width:100%}}
.history-workflow-avatar{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--accent-soft,#edf2ed);color:var(--muted);overflow:hidden}.history-workflow-avatar img{display:block;width:32px;height:32px;object-fit:cover}.history-workflow-avatar svg{width:22px;height:22px}.history-workflow-person small{margin-left:72px}.history-workflow-person input[type="checkbox"]{flex:none}@media(max-width:700px){.history-workflow-person small{margin-left:64px}}

/* Keep both side previews below the sticky app header, including long workouts. */
#main .program-workflow-aside{top:var(--workflow-sticky-top,92px)}#main .program-workflow-summary[open]{display:flex;flex-direction:column;max-height:calc(100dvh - var(--workflow-sticky-top,92px) - var(--workflow-footer-height,100px) - 24px);overflow:hidden}#main .program-workflow-summary>summary{flex:none;font-size:15px;line-height:1.6;padding-bottom:16px;border-bottom:1px solid var(--line)}#main .program-workflow-summary-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}#main .program-workflow-summary-content h3{font-size:20px;line-height:1.5;margin:16px 0 8px}#main .program-summary-part{padding:16px 0;border-top:1px solid var(--line);margin-top:16px}#main .program-summary-part h4{font-size:13px;line-height:1.6;margin:0 0 8px}#main .program-summary-part pre{border:0;padding:0;margin:0;font-size:13px;line-height:1.9;color:var(--ink)}#main .program-summary-part p{font-size:12px;line-height:1.8;margin:0}
[data-history-workout-source][hidden],[data-history-live-preview][hidden]{display:none!important}.history-live-records>summary{font-size:16px;font-weight:700;line-height:1.6;cursor:pointer}.history-preview-help{margin:12px 0;line-height:1.8}.history-preview-totals{display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px 0;border-block:1px solid var(--line);font-size:12px}.history-live-records-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.history-preview-entry{padding:16px 0;border-bottom:1px solid var(--line)}.history-preview-state{display:inline-block;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:8px}.history-preview-incomplete strong{font-size:13px}.history-preview-incomplete p{margin-top:8px;line-height:1.8}.history-preview-warning{margin:8px 0;line-height:1.8}.history-preview-empty{padding:24px 0;line-height:1.8}
#main [data-history-live-preview] .wod-history-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:0;border:0;min-width:0}#main [data-history-live-preview] .wod-history-person{grid-column:1/-1;min-width:0;align-items:center}#main [data-history-live-preview] .wod-history-person>div{min-width:0}#main [data-history-live-preview] .wod-history-person strong{font-size:13px;overflow-wrap:anywhere}#main [data-history-live-preview] .wod-history-person small{font-size:11px;line-height:1.6;display:block}#main [data-history-live-preview] .wod-history-score{grid-column:2;text-align:right;font-size:15px;overflow-wrap:anywhere;white-space:normal;line-height:1.6}#main [data-history-live-preview] .pill{justify-self:start;max-width:100%;align-self:start}#main [data-history-live-preview] .wod-history-note,#main [data-history-live-preview] .record-performed-details{grid-column:1/-1;margin:0;font-size:12px;line-height:1.8}#main [data-history-live-preview] .wod-history-note{padding-left:calc(var(--history-avatar-size) + var(--history-person-gap))}
@media(min-width:701px){#main .wod-history-detail-layout:has(#history-closeout:not([hidden]))>.wod-history-workout{top:var(--history-preview-top,92px);max-height:calc(100dvh - var(--history-preview-top,92px) - 24px);overflow:hidden;display:flex;flex-direction:column}#main [data-history-live-preview]{min-height:0;display:flex;flex-direction:column}#main .history-live-records[open]{display:flex;flex-direction:column;min-height:0}.history-live-records>summary,.history-preview-help,.history-preview-totals{flex:none}}
@media(max-width:700px){#main .program-workflow-aside{position:static}#main .program-workflow-summary[open]{max-height:none;overflow:visible}#main .program-workflow-summary-content{max-height:none;overflow:visible}.history-live-records-list{max-height:65dvh}}
#main [data-history-live-preview] .history-preview-entry{margin:0;padding:16px 0;border:0;border-bottom:1px solid var(--line)}#main [data-history-live-preview] .history-live-records{margin:0}
/* Keep unscored completion readable in the narrow live record preview. */
#main [data-history-live-preview] .history-no-score{display:grid;gap:var(--space-1);justify-items:end}
#main [data-history-live-preview] .history-no-score>span{white-space:nowrap}
#main [data-history-live-preview] .history-no-score .history-no-score-separator{display:none}

/* Separate the affiliated-box inquiry heading from its first action. */
body[data-workspace="member"] #main .member-inquiry-owned>h2{margin:0 0 var(--space-4)}
body[data-workspace="member"] #main .member-inquiry-owned{margin-bottom:var(--space-4)}

/* Open-gym composer shares the normal workflow preview and responsive spacing. */
.open-gym-form .program-workflow-stages{display:grid;gap:var(--space-4)}
.open-gym-form .program-workflow-stages>.panel{margin:0}
@media(max-width:700px){.open-gym-form .program-workflow-stages>.panel{padding:var(--space-5) var(--space-4)}}

/* Recovery status and actions stay above the open-gym fields. */
#main .open-gym-form .program-draft-bar{width:100%;margin:0;padding:0 0 var(--space-3);display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2)}
#main .open-gym-form .program-draft-bar>.account-actions{width:100%;justify-content:flex-start;gap:var(--space-4)}
#main .open-gym-form .program-draft-bar .text-link{min-height:var(--ui-control-size)}

#main .history-workflow-filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:var(--space-2)}
#main .history-workflow-filters>button{flex:none;white-space:nowrap}
:is(.box-report-list,.post-comments,.member-faq-conversation,.visitor-messages) .notification-target{outline:2px solid var(--ui-focus);outline-offset:var(--space-1);background:var(--color-surface-soft);scroll-margin-block:var(--space-5)}

.wod-photo-import .photo-review-item{padding-block:var(--space-3);border-top:1px solid var(--line);margin-top:var(--space-3)}
.wod-photo-import .photo-review-item>span{font-weight:700;font-size:12px}.wod-photo-import .photo-review-item>p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:var(--space-2)}
.wod-photo-import [data-photo-edit] textarea{width:100%;resize:vertical}

/* Keep spotlight cards readable on wide administrator screens. */
@media(min-width:701px){
 body[data-workspace="box"][data-page="community"] #main .community-hot{min-width:0}
 body[data-workspace="box"][data-page="community"] #main .community-hot-track>.community-wod{flex-basis:min(420px,calc(100% - 20px))}
}

#main .community-hot-track .community-hot-text{scrollbar-width:none}
#main .community-hot-track .community-hot-text::-webkit-scrollbar{display:none}

/* Round counter contact feedback and interval history. */
#tool-stage .counter-tool .round-button{touch-action:none;-webkit-touch-callout:none}
#tool-stage .counter-tool .round-button.counter-confirmed{background:var(--color-accent-hover);border-color:var(--color-ink);box-shadow:0 0 0 6px var(--color-surface-soft)}
#tool-stage .counter-tool .round-button b{display:inline-block}
#tool-stage .counter-tool .counter-row{display:flex;justify-content:center}
#tool-stage .counter-tool .counter-row::after{display:none}
.counter-history{width:min(100%,420px);margin:0 auto;text-align:center;min-width:0}
.counter-history-latest{display:flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:28px;font-size:14px;font-variant-numeric:tabular-nums}
.counter-history-latest>span{color:var(--color-secondary);white-space:nowrap}
.counter-history-actions{display:flex;align-items:flex-start;justify-content:center;gap:var(--space-4);position:relative}
.counter-history-actions>button,.counter-log>summary{min-height:var(--control-height);display:flex;align-items:center;justify-content:center;margin:0;font-size:13px;cursor:pointer}
.counter-history-actions>button:disabled{opacity:.4;cursor:default}
.counter-log>summary{list-style:none;color:var(--color-secondary)}
.counter-log>summary::-webkit-details-marker{display:none}
.counter-log[open]{z-index:2}
.counter-log[open]>summary{font-weight:700;color:var(--color-ink)}
.counter-log>p,.counter-log>ol{position:relative;background:var(--color-surface);text-align:left}
.counter-log>ol{list-style:none;padding:0;margin:0;max-height:180px;overflow:auto;overscroll-behavior:contain;font-size:13px;font-variant-numeric:tabular-nums}
.counter-log li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-line)}
.counter-log li strong{white-space:nowrap}
.counter-log[open]{position:absolute;left:0;right:0;top:auto;bottom:0;max-height:calc(100dvh - 160px);overflow:auto;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:0 var(--space-4) var(--space-3);box-shadow:var(--shadow-soft)}
body.counter-focus-mode #tool-stage .counter-tool{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:var(--space-2);padding:var(--space-4);box-sizing:border-box}
body.counter-focus-mode #tool-stage .counter-heading{position:static;align-self:start}
body.counter-focus-mode #tool-stage .counter-row{position:static;transform:none;width:auto;align-self:center;justify-self:center;margin:0}
body.counter-focus-mode #tool-stage .counter-tool .round-button{width:min(74vw,40dvh,360px);height:min(74vw,40dvh,360px)}
body.counter-focus-mode #tool-stage .counter-history{align-self:end}
body.counter-focus-mode #tool-stage .tool-primary-actions{position:static;margin:0;align-self:end;padding-bottom:env(safe-area-inset-bottom)}
@media(max-height:500px) and (min-width:600px){
 body.counter-focus-mode #tool-stage .counter-tool{grid-template-columns:1fr 1fr;grid-template-rows:auto minmax(0,1fr) auto}
 body.counter-focus-mode #tool-stage .counter-heading{grid-column:1/-1}
 body.counter-focus-mode #tool-stage .counter-row{grid-column:1;grid-row:2/4}
 body.counter-focus-mode #tool-stage .counter-tool .round-button{width:min(36vw,65dvh,300px);height:min(36vw,65dvh,300px)}
 body.counter-focus-mode #tool-stage .counter-history{grid-column:2;grid-row:2;align-self:center}
 body.counter-focus-mode #tool-stage .tool-primary-actions{grid-column:2;grid-row:3}
}
/* Keep expanded history inside the viewport, including short landscape screens. */
body.counter-focus-mode #tool-stage .counter-log[open]{position:fixed;left:var(--space-4);right:var(--space-4);top:auto;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-width:420px;max-height:calc(100dvh - 120px);margin-inline:auto;overflow:auto;box-sizing:border-box}
@media(max-height:500px) and (min-width:600px){body.counter-focus-mode #tool-stage .counter-log[open]{left:calc(50% + var(--space-2));max-width:none}}

#main .wod-history-record-panel .wod-history-record-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
#main .wod-history-record-panel .wod-history-record-filters>label{display:grid;gap:var(--space-2);min-width:0;font-size:13px}
#main .wod-history-record-panel .wod-history-record-filters>label:last-child{grid-column:auto;min-width:0}
.history-record-group{font-size:14px;margin:var(--space-5) 0 0;padding-top:var(--space-3);border-top:1px solid var(--line)}
.history-record-group:first-child{margin-top:0}
.history-rank-help{line-height:1.7;margin-bottom:var(--space-3)}
#main .wod-history-record-panel>.history-closeout-tabs{flex-shrink:0}
/* History keeps the same workspace when switching between records and closeout. */
#main .history-workspace .page-head{margin-block:var(--space-3);padding:0}
#main .history-workspace .page-head h1{font-size:20px}
#main .history-workspace .page-head p{margin-top:var(--space-1)}
#main .history-workspace .wod-history-detail-layout:has(#history-closeout){display:grid;grid-template-columns:minmax(0,1fr);align-items:start}
#main .history-workspace .wod-history-detail-layout:has(#history-closeout)>.wod-history-workout{grid-column:1;grid-row:1;order:0;position:static;max-height:none;overflow:visible;padding:var(--space-3) var(--space-4)}
#main .history-workspace .wod-history-detail-layout:has(#history-closeout)>.wod-history-record-panel{grid-column:1;grid-row:2;order:1;contain:none;height:auto;min-height:0;max-height:none;overflow:visible}
#main .history-workspace .history-source-fold{border:0;padding:0}
#main .history-workspace .history-source-fold>summary{font-weight:700;cursor:pointer}
#main .history-workspace .history-source-fold[open]>summary{margin-bottom:var(--space-4)}
#main .history-workspace .history-closeout-tabs{margin-bottom:var(--space-4);flex:none}
#main .history-workspace .wod-history-record-panel:has(.history-closeout-tabs) .account-section-head{display:none}
#main .history-workspace .wod-history-record-filters{margin-bottom:var(--space-3)}
#main .history-workspace .history-record-group:first-child{margin-top:var(--space-2);padding-top:var(--space-3)}
#main .history-workspace #history-closeout{flex:none;min-height:0;height:auto}
#main .history-workspace #history-closeout .history-quick-savebar{position:static}
@media(min-width:1051px){
 #main .history-workspace .wod-history-detail-layout:has(#history-closeout){grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}
 #main .history-workspace .wod-history-detail-layout:has(#history-closeout)>.wod-history-workout{padding:var(--space-6)}
 #main .history-workspace .wod-history-detail-layout:has(#history-closeout)>.wod-history-record-panel{grid-column:2;grid-row:1;height:max(640px,calc(100dvh - 200px));overflow-y:auto;scrollbar-gutter:stable}
 #main .history-workspace .history-source-fold>summary{display:none}
}
/* Box work uses the same controls for owners and delegated coaches, without changing member navigation. */
body[data-box-operator="true"] #main :is(.wod-workspace-tabs,.member-management-tabs,.history-closeout-tabs){display:flex;flex-wrap:nowrap;gap:0;padding:0;margin:0 0 var(--space-5);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow-x:auto;scrollbar-width:none}
body[data-box-operator="true"] #main :is(.wod-workspace-tabs,.member-management-tabs,.history-closeout-tabs)>:is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:10px 16px;flex:0 0 auto;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap;box-shadow:none}
body[data-box-operator="true"] #main :is(.wod-workspace-tabs,.member-management-tabs,.history-closeout-tabs)>:is(.active,.is-active,[aria-current="page"]){color:var(--ink);border-bottom-color:var(--ink);font-weight:750}
body[data-box-operator="true"] #main .account-section-head{align-items:center;justify-content:space-between;text-align:left;margin-top:0}
body[data-box-operator="true"] #main :is(.member-pass-card,.points-request-panel,.work-task-panel)>h2{text-align:left}
body[data-box-operator="true"] #main .member-list-filters{display:flex;flex-wrap:nowrap;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;margin-bottom:var(--space-4)}
body[data-box-operator="true"] #main .member-list-filters>button{flex:none;white-space:nowrap}
#main .member-overview.is-readonly{margin-block:var(--space-4)}
#main .member-overview.is-readonly>.panel{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4)}
#main .member-overview.is-readonly strong{font-size:24px}
#main .work-task-panel .account-section-head{margin-top:0}
#main .work-task-list-tools{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-block:var(--space-4)}
#main .work-task-filters{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;max-width:100%}
#main .work-task-filters>button{flex:none;white-space:nowrap}
#main .work-task-filters [aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
#main .work-task-list-tools .account-search{min-width:0;max-width:280px}
#main .work-task-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}
#main .work-task-row>div{min-width:0;overflow-wrap:anywhere}
#main .work-task-row>button{flex:none;white-space:nowrap;min-height:var(--control-height)}
#main [data-work-row][hidden]{display:none!important}
#modal .work-decision-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}
@media(max-width:700px){
 #main .work-task-list-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
 #main .work-task-list-tools .account-search{width:100%;max-width:none}
 #main .work-task-row{align-items:flex-start;flex-wrap:wrap;gap:var(--space-2)}
 #main .work-task-row>div{flex:1 1 180px}
 #main .work-task-row>button{margin-left:auto}
 body[data-box-operator="true"] #main .member-list-row .member-row-actions{gap:var(--space-2)}
}
body[data-box-operator="true"] #main .member-detail-grid>.panel>h2{text-align:left}
#main .box-community-page .post-categories button{min-height:var(--control-height)}
body[data-box-operator="true"] #main .history-closeout-tabs>button{flex:1}
body[data-box-operator="true"] #main .history-workspace .page-head p{display:block}
#main .history-attendee-correct{display:inline-flex;align-items:center;min-height:var(--control-height);margin-left:var(--space-8);font-size:12px;color:var(--muted)}
#main .history-closeout-person>.history-attendee-correct{margin-left:0}
#modal .history-attendee-undo{display:inline-flex;align-items:center;min-height:var(--control-height);margin-top:var(--space-4)}

/* Record correction controls leave the history columns and member profiles unchanged. */
#main .history-admin-record-menu{border:0!important;box-shadow:none!important;background:transparent;display:inline-flex;vertical-align:middle;margin-left:var(--space-2);color:var(--muted)}
#modal .correction-menu{display:grid;gap:var(--space-2)}
#modal .correction-menu button{min-height:var(--control-height);text-align:left;justify-content:flex-start;border:0!important;box-shadow:none!important;background:transparent;padding-inline:var(--space-3)}
#modal .class-record-correction .btn{border:0!important;box-shadow:none!important}
#modal .correction-history-item{padding-block:var(--space-4);border-bottom:1px solid var(--line)}
#modal .correction-history-item:last-child{border-bottom:0}
#modal .correction-change-list{background:var(--bg);padding:var(--space-4);border-radius:var(--radius-control,12px);margin-block:var(--space-4);overflow-wrap:anywhere}
#modal .correction-change+.correction-change{margin-top:var(--space-3)}
/* Team records preserve individual profile rows and common controls. */
.team-record-form{display:grid;gap:var(--space-4)}.team-record-form h3{margin-block:var(--space-2)}.team-pick-list{display:grid;gap:var(--space-2);max-height:260px;overflow:auto}.team-common-heading,.team-member-summary,.team-entry-choice,.history-team-group>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.team-member-summary{padding-block:var(--space-3);border-bottom:1px solid var(--line)}.team-member-summary small{display:block;color:var(--muted)}.team-record-entry{padding-block:var(--space-3);border-block:1px solid var(--line);margin-bottom:var(--space-4)}.team-common-heading strong{font-size:24px}.team-history{margin-top:var(--space-5)}.team-admin-tools{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3)}.history-team-group{border:1px solid var(--line);border-radius:var(--radius-card)}.history-team-group>header{font-size:13px;color:var(--muted)}.history-team-body{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3)}.history-team-members{border-left:2px solid var(--line);border-radius:var(--radius-control);padding-left:var(--space-3);min-width:0}.history-team-members .wod-history-record{border-inline:0;border-radius:0;box-shadow:none;padding:var(--space-3) 0}.history-team-members .wod-history-score{display:none}.history-team-score{display:grid;text-align:right;gap:var(--space-1)}.history-team-score strong{font-size:24px}.history-team-score small{color:var(--muted);font-size:11px}.history-team-members .wod-history-person{min-width:0}.history-team-members .wod-history-person strong{overflow-wrap:anywhere}.history-team-members .wod-history-person .text-link{font-size:12px}.history-team-members .wod-history-note,.history-team-members .record-performed-details{grid-column:1/-1}.team-record-form details>summary{cursor:pointer}.team-record-form details:not(.record-class-preview)[open]>summary{margin-bottom:var(--space-3)}
@media(max-width:700px){.history-team-score strong{font-size:20px}.history-team-members{padding-left:var(--space-2)}.history-team-body{gap:var(--space-2)}.history-team-members .wod-history-record{grid-template-columns:minmax(0,1fr)}.history-team-members .pill{justify-self:start}.team-record-form{gap:var(--space-4)}}
.history-team-score{max-width:110px}.history-team-score .history-no-score{display:grid!important;gap:var(--space-1);font-size:16px;white-space:nowrap}.history-team-score .history-no-score>span{display:block}.history-team-members .record-performed-details summary{white-space:normal}
@media(max-width:700px){.history-team-score{max-width:90px}.history-team-score .history-no-score{font-size:14px}}

/* Team members retain the same compact profile / difficulty row as individuals. */
.history-team-group{padding:var(--space-3);margin-block:var(--space-2)}
.history-team-group>header{margin-bottom:var(--space-1)}
.history-team-members .wod-history-record{grid-template-columns:minmax(0,1fr) auto;padding-block:var(--space-2);gap:var(--space-2)}
.history-team-members .wod-history-person{grid-column:auto}
.history-team-members .pill{justify-self:end;align-self:center;white-space:nowrap}
.history-team-members .wod-history-person .text-link{display:inline-flex}
.history-team-members .wod-history-person small{font-size:11px}
.history-team-members .wod-history-person>div{min-width:0}

/* Workout editors: keep actions in document flow while a mobile field is active. */
@media(max-width:700px){
 :is(form[data-training],form[data-wod-space-form]):has(:is(textarea,input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),select,[contenteditable="true"]):focus) :is(.training-submit,.program-page-submit,.modal-actions,.record-form-actions){position:static!important;inset:auto!important;transform:none!important;}
 #modal:has([data-movement-input]:focus) :is(.training-submit,.modal-actions){position:static!important;inset:auto!important;transform:none!important;}
 .program-workflow .program-page-submit{flex-direction:column;align-items:stretch;}
 .program-workflow .program-page-actions{width:100%;min-width:0;}
 .program-workflow .program-page-actions>.btn{min-width:0;}
 .program-workflow [data-training="program-create"][data-step="1"] .program-page-actions>[data-train="compose-next"]{grid-column:1/-1!important;}
}

/* Composer import shortcuts and exceptional recognition guidance. */
.program-workflow .program-source-actions{gap:6px}
.program-import-dot{color:var(--muted);font-size:11px;flex:none;pointer-events:none}
.program-recognition-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.program-recognition-notice[hidden]{display:none}
.program-recognition-notice .text-link{flex:none}
#main .program-workflow .program-source-actions{align-items:center;gap:8px}
#main .program-workflow .program-source-actions>.program-import-dot{display:flex;align-items:center;justify-content:center;align-self:center;line-height:1;width:4px;margin:0;padding:0}
/* Member workout authoring shares the composer shortcut order. */
.wod-space-compose .page-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.wod-space-compose .page-head>.text-link{flex:none}
.personal-import-actions{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.personal-import-actions>.text-link{flex:none;min-height:var(--ui-control-size);padding:0;font-size:11px}
.personal-import-actions>span{flex:none;display:flex;align-items:center;line-height:1;width:4px;color:var(--muted);font-size:11px}
.personal-scales{border-top:1px solid var(--line);margin:16px 0}
.personal-scales>summary{padding:16px 0;font-size:13px;font-weight:600;cursor:pointer}
/* WOD·기록 입력 폼의 옵션 접기는 ▶/▼ 기본 표시 대신 앱 공통 꺾쇠 하나로 맞춘다. */
body[data-workspace] :is(#main,#modal) :is([data-wod-space-form],[data-team-form],[data-team-person],.training-workspace--compose) details:not(.record-class-preview,.is-record-entry,.workout-performance-prescription,.workout-comparison-basis)>summary{display:flex;align-items:center;gap:var(--space-2);list-style:none}
body[data-workspace] :is(#main,#modal) :is([data-wod-space-form],[data-team-form],[data-team-person],.training-workspace--compose) details:not(.record-class-preview,.is-record-entry,.workout-performance-prescription,.workout-comparison-basis)>summary::-webkit-details-marker{display:none}
body[data-workspace] :is(#main,#modal) :is([data-wod-space-form],[data-team-form],[data-team-person],.training-workspace--compose) details:not(.record-class-preview,.is-record-entry,.workout-performance-prescription,.workout-comparison-basis)>summary::after{content:'';flex:0 0 16px;width:16px;height:16px;background:currentColor;mask:var(--disclosure-chevron) center/16px 16px no-repeat;transition:transform var(--motion-base) var(--ease-out)}
body[data-workspace] :is(#main,#modal) :is([data-wod-space-form],[data-team-form],[data-team-person],.training-workspace--compose) details:not(.record-class-preview,.is-record-entry,.workout-performance-prescription,.workout-comparison-basis)[open]>summary::after{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){body[data-workspace] :is(#main,#modal) :is([data-wod-space-form],[data-team-form],[data-team-person],.training-workspace--compose) details:not(.record-class-preview,.is-record-entry,.workout-performance-prescription,.workout-comparison-basis)>summary::after{transition:none}}
.wod-space-compose .wod-space-remove{color:var(--muted)}
@media(hover:none) and (pointer:coarse){:is(#main,#modal) .movement-hint{display:none}}
.personal-scales>.account-section-head{display:none}
.personal-import-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.personal-import-result .btn{flex:none}
.personal-workout-actions>[data-wod-space="draft-save"]{grid-column:1/-1}
#main .wod-space-compose .page-head{flex-direction:row;align-items:flex-start}
#main .wod-space-compose .page-head>div{min-width:0}
#main .wod-space-compose .page-head>[data-wod-space="new-draft"]{flex:none;min-height:var(--ui-control-size);white-space:nowrap;font-size:11px;padding:0}
#main .personal-import-actions>.text-link{font-size:11px;padding:0;min-height:var(--ui-control-size);font-weight:500}
/* Photo-first class closeout: attendance and class photos are separate from optional scores. */
.history-photo-closeout-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.history-photo-closeout-heading h2{font-size:18px;margin:0}
.history-photo-closeout-heading .pill{flex:none}
.history-finish-counts{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;margin-bottom:16px}
.history-finish-counts strong{margin-left:4px}
.history-finish-attendance{border-top:1px solid var(--line)}
.history-finish-attendance>summary{cursor:pointer;padding:14px 0;font-size:13px;font-weight:600}
.history-finish-person{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.history-finish-person strong{font-size:13px}
.history-finish-person small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.history-finish-person .account-actions{gap:12px;flex-wrap:wrap;justify-content:flex-end}
.history-photo-closeout .history-album{padding:0;margin:24px 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
.history-photo-closeout .history-album .account-section-head{padding-top:20px}
.history-finish-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.history-finish-submit>div>strong{font-size:13px}
.history-finish-submit>.btn{flex:none}
.history-optional-records{margin-top:28px;border-top:1px solid var(--line)}
.history-optional-records>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 0;font-size:14px;font-weight:600}
.history-optional-records .history-workflow-status{display:none}
.history-optional-records .history-workflow-tools{margin-top:16px}
.history-finish-notes h2{font-size:18px}
.history-finish-notes section{padding-top:16px}
.history-finish-notes section>strong{font-size:12px;color:var(--muted)}
.history-finish-notes section>p{white-space:pre-wrap;font-size:14px;line-height:1.9;margin-top:8px}
@media(max-width:700px){.history-photo-closeout-heading{display:block}.history-photo-closeout-heading .pill{margin-top:8px}.history-finish-submit{flex-direction:column;align-items:stretch}.history-finish-submit>.btn{width:100%}.history-optional-records>summary{align-items:flex-start;flex-direction:column;gap:4px}.history-finish-counts{gap:16px}.history-finish-person .text-link{font-size:12px}.history-finish-person .history-admin-record-menu{margin:0}.history-photo-closeout [data-history-finish-form]:has(textarea:focus) .history-finish-submit{position:static}}
#main .history-photo-closeout .history-album .account-section-head{display:flex}
#main .history-workspace .wod-history-record-panel:has(.history-closeout-tabs) .history-album .account-section-head{display:flex}
#main .history-workspace .history-photo-closeout #history-album>.history-album{padding:20px 0 0;margin:24px 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
#main .history-workspace:has(#history-closeout:not([hidden])) [data-history-finish-notes]{display:none}

/* Admin CRM: existing controls, two workspaces, no separate mobile navigation. */
.admin-workspace-switch{display:flex;gap:4px;padding:4px;background:var(--color-surface-soft);border-radius:var(--radius-control);margin:8px 0}
.admin-workspace-switch button{flex:1;white-space:nowrap;background:transparent;border:0}
.admin-workspace-switch button[aria-pressed="true"]{background:var(--box-accent,#d7f449);color:var(--box-foreground,#182019);font-weight:700}
.crm-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}
.crm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:20px 0}
.crm-stats>div{background:var(--color-surface);border:1px solid var(--color-line);border-radius:20px;padding:20px;display:grid;gap:8px}
.crm-stats strong{font-size:24px;overflow-wrap:anywhere}
.crm-member-list{display:grid;gap:0}.crm-member-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--color-line);color:inherit;text-decoration:none;flex-wrap:wrap}.crm-member-row>div:not(.avatar){flex:1;min-width:160px}.crm-member-row small,.crm-table small{display:block;color:var(--muted,#747d73);margin-top:4px}
.crm-tag{padding:4px 8px;border-radius:12px;background:var(--color-surface-soft);font-size:12px;white-space:nowrap}
.crm-table-scroll{overflow:auto}.crm-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.crm-table td,.crm-table th{padding:12px;border-bottom:1px solid var(--color-line)}
.crm-empty{padding:24px 0}.crm-contract-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0}.crm-signature{display:block;width:100%;aspect-ratio:10/3;border:1px solid var(--color-line);background:#fff;border-radius:12px;touch-action:none;margin:16px 0} [data-crm-contract-copy] small{overflow-wrap:anywhere}
[data-crm-form],[data-payment-body]:not([hidden]),[data-payment-direct]:not([hidden]){display:grid;gap:var(--space-4)}
#modal [data-crm-form] :is(.account-field,.notice,.btn){margin-block:0}
[data-payment-enrollments]{display:grid;gap:var(--space-2)}[data-crm-form] .crm-actions{margin:0}[data-crm-form] input[type=checkbox]{width:auto}
@media(max-width:700px){.crm-stats{grid-template-columns:1fr 1fr;gap:12px}.crm-stats>div{padding:16px}body[data-workspace=box] #topbar{flex-wrap:wrap}.crm-member-row{gap:8px}.crm-member-row>div:not(.avatar){min-width:120px}.crm-actions .btn{flex-grow:1}}

.crm-panel{margin-bottom:20px;min-width:0}.crm-panel h2{font-size:18px;margin:0 0 16px}.crm-panel h2:not(:first-child){margin-top:24px}.crm-panel h3{margin:12px 0}.crm-panel p{line-height:1.7;margin:8px 0}.crm-panel details{margin:16px 0}.crm-panel details summary{cursor:pointer}.crm-panel .account-field{margin:0}.crm-panel [data-crm-form]{margin-top:16px}
.admin-workspace-switch .btn{font-size:13px;min-width:0}.admin-workspace-switch .btn[aria-pressed="false"]{background:transparent;color:var(--ink)}
@media(max-width:700px){body[data-page=crm] #topbar .top-context>strong,body[data-workspace=box] #topbar:has(.admin-workspace-top) .top-context>strong{display:none}.crm-stats strong{font-size:22px}.crm-panel{padding:20px 16px}.crm-table{white-space:normal}.crm-table th,.crm-table td{padding:12px 8px}.crm-table th:first-child,.crm-table td:first-child{padding-left:0}.crm-table th:last-child,.crm-table td:last-child{padding-right:0}.crm-table td:last-child .btn{padding:8px}.crm-table td:nth-child(4){white-space:nowrap}.crm-table th{font-size:11px}.crm-panel .crm-member-row small{font-size:12px}}

@media(max-width:700px){.crm-table-scroll{overflow:visible}.crm-table thead{display:none}.crm-table tbody{display:block}.crm-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:16px 0;border-bottom:1px solid var(--line)}.crm-table td{display:block;border:0;padding:0!important;font-size:13px;min-width:0}.crm-table td:first-child{grid-column:1/-1;grid-row:1;color:var(--muted);font-size:12px;white-space:nowrap}.crm-table td:nth-child(2){grid-column:1;grid-row:2;font-weight:600;overflow-wrap:anywhere}.crm-table td:nth-child(3){grid-column:1;grid-row:3;color:var(--muted);white-space:nowrap}.crm-table td:nth-child(4){grid-column:2;grid-row:2;font-size:16px;font-weight:700}.crm-table td:nth-child(5){grid-column:2;grid-row:3;text-align:right}.crm-table td:last-child .btn{font-size:12px}.crm-panel .tiny{overflow-wrap:anywhere}}

/* Provider document needs a wide canvas; controls retain shared tokens. */
.eform-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.eform-contracts{margin-block:16px}.eform-document iframe{display:block;width:100%;height:70dvh;border:0;background:#fff}#modal:has(.eform-document){width:min(1100px,calc(100vw - 32px));max-width:none}.eform-document [role=status]{margin-block:0 12px}@media(max-width:700px){.eform-fields{grid-template-columns:1fr}#modal:has(.eform-document){width:100%;}.eform-document iframe{height:calc(100dvh - 210px);min-height:320px}}
[data-pdf-pages] canvas{display:block;max-width:100%;height:auto;margin-block:16px;border:1px solid var(--line);background:#fff}

/* Completed originals fit one page to the available viewport; zoom scrolls only the document. */
#modal[open]:has(.eform-pdf){display:flex;flex-direction:column;height:88dvh;max-height:88dvh;overflow:hidden}
#modal:has(.eform-pdf) .modal-head{flex:none}
#modal:has(.eform-pdf) .modal-content{flex:1;min-height:0;padding:12px 20px 16px;overflow:hidden}
.eform-pdf{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0}
.eform-pdf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;flex:none}
.eform-pdf-controls{display:flex;align-items:center;gap:8px}
.eform-pdf-controls[hidden]{display:none}
.eform-pdf [role=status]{margin:0;font-size:12px;flex:none;color:var(--muted)}
.eform-pdf-stage{flex:1;min-height:0;min-width:0;overflow:auto;background:var(--color-surface-soft);overscroll-behavior:contain}
.eform-pdf-stage canvas{display:block;max-width:none;margin:0 auto;border:0;background:#fff}
.eform-pdf-stage[data-zoom=true] canvas{margin-inline:auto}
@media(max-width:700px){#modal[open]:has(.eform-pdf){height:100dvh;max-height:100dvh}#modal:has(.eform-pdf) .modal-content{padding:8px 12px 12px}}

/* Match the embedded paper ratio, with no nested card padding around tablet signing. */
#modal[open]:has(.eform-writing){display:flex;flex-direction:column;width:min(1100px,calc(100vw - 16px));min-width:0;height:calc(100dvh - 16px);max-height:none;overflow:hidden}
#modal:has(.eform-writing) .modal-head{flex:none;padding:8px 12px;gap:8px}
#modal:has(.eform-writing) .overlay-eyebrow,#modal:has(.eform-writing) .sheet-grip{display:none}
#modal:has(.eform-writing) .modal-head h2{font-size:16px;margin:0}
#modal:has(.eform-writing) .modal-content{flex:1;min-height:0;padding:0;overflow:hidden}
.eform-writing{display:flex;flex-direction:column;height:100%;min-height:0}
.eform-writing iframe{flex:1;min-height:0;height:100%;width:100%;border:0}
.eform-write-feedback{display:flex;align-items:center;gap:8px;padding:8px 12px;flex:none;border-top:1px solid var(--line)}
.eform-write-feedback[hidden]{display:none}
.eform-write-feedback [role=status]{flex:1;margin:0;font-size:12px}
@media(max-width:700px){#modal[open]:has(.eform-writing){width:100%;min-width:0;height:100dvh;max-height:100dvh}#modal:has(.eform-writing) .modal-head{padding-top:max(8px,env(safe-area-inset-top))}}

@media(min-width:701px){#modal[open]:has(.eform-writing[data-tablet=true]){width:min(calc(100vw - 16px),calc((100dvh - 220px)*.7072 + 24px));min-width:min(calc(100vw - 16px),360px)}}

/* Cash ledger: preserve spreadsheet columns on mobile and contain horizontal scroll. */
.crm-revenue{min-width:0}.crm-revenue-filters{display:grid;grid-template-columns:160px 140px 140px minmax(200px,1fr);gap:16px;align-items:end}
.crm-revenue-filters .account-field{min-width:0}.crm-revenue-filters input,.crm-revenue-filters select{width:100%;min-width:0}
.crm-revenue .crm-revenue-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.crm-revenue-stats>div{padding:16px}.crm-revenue-stats strong{font-size:22px;font-variant-numeric:tabular-nums}
.crm-ledger-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.crm-ledger-heading h2{margin:0}.crm-ledger-heading>span{font-size:12px;white-space:nowrap}
.crm-ledger-scroll,.crm-method-scroll{overflow:auto;max-width:100%;overscroll-behavior-x:contain}
.crm-ledger-table,.crm-method-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;font-size:13px}
.crm-ledger-table{min-width:1280px}.crm-ledger-table th,.crm-ledger-table td,.crm-method-table th,.crm-method-table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
.crm-ledger-table thead th,.crm-method-table thead th{font-size:12px;color:var(--muted);font-weight:500;background:var(--color-surface-soft);white-space:nowrap}
.crm-ledger-table tbody th,.crm-method-table tbody th{font-weight:600}.crm-ledger-table th:first-child{position:sticky;left:0;z-index:1;background:var(--paper,#fff);min-width:140px;max-width:160px;border-right:1px solid var(--line)}
.crm-ledger-table thead th:first-child,.crm-ledger-table tfoot th{background:var(--color-surface-soft)}
.crm-ledger-table small{display:block;font-size:11px;font-weight:400;color:var(--muted);line-height:1.6;margin-top:4px;overflow-wrap:anywhere}
.crm-ledger-table .is-money{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.crm-ledger-table .is-date{white-space:nowrap}
.crm-ledger-table .crm-tag{display:inline-block;white-space:nowrap}.crm-ledger-table [data-payment-state=refund],.crm-ledger-table [data-payment-state=refunded]{background:var(--color-surface-soft);color:var(--muted)}
.crm-ledger-table tfoot th,.crm-ledger-table tfoot td{font-weight:700;background:var(--color-surface-soft);border-bottom:0}
.crm-ledger-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;font-size:12px;color:var(--muted)}.crm-ledger-pagination>div{display:flex;align-items:center;gap:8px}
.crm-method-table{min-width:520px}.crm-method-table th:not(:first-child),.crm-method-table td{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.crm-payment-detail dl{display:grid;gap:0;margin:0}.crm-payment-detail dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.crm-payment-detail dt{color:var(--muted)}.crm-payment-detail dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.crm-payment-balance{display:grid;gap:8px;padding:16px;background:var(--color-surface-soft);margin-block:16px}.crm-payment-detail details{margin-block:16px}.crm-payment-detail .tiny{overflow-wrap:anywhere}
@media(max-width:1000px){.crm-revenue-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.crm-revenue-search{grid-column:1/-1}}
@media(max-width:700px){.crm-revenue-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.crm-revenue-filters>.account-field:first-child{grid-column:1/-1}.crm-revenue .crm-revenue-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-revenue-stats strong{font-size:20px}.crm-revenue .crm-ledger-panel{padding-inline:0}.crm-ledger-heading,.crm-ledger-pagination,.crm-ledger-panel>p{margin-inline:16px}.crm-ledger-table{font-size:12px}.crm-ledger-table th:first-child{min-width:116px;max-width:128px}.crm-ledger-table th,.crm-ledger-table td{padding:12px 10px}.crm-ledger-pagination{flex-wrap:wrap}.crm-payment-detail dl>div{grid-template-columns:88px minmax(0,1fr);gap:12px}}
.crm-ledger-table th:nth-child(2),.crm-ledger-table td:nth-child(2){min-width:112px}
.crm-ledger-table th:nth-child(3),.crm-ledger-table td:nth-child(3){min-width:100px}
@media(max-width:700px){.crm-ledger-table th:nth-child(2),.crm-ledger-table td:nth-child(2){min-width:100px}.crm-ledger-table th:nth-child(3),.crm-ledger-table td:nth-child(3){min-width:88px}}
.crm-ledger-table .crm-ledger-empty{padding:32px 16px;color:var(--muted);font-weight:400}

/* Unified owner roster: common button tokens, horizontal tab rail on narrow screens. */
.crm-member-tabs,.crm-member-filters{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:16px 0;padding:4px 0}
/* CRM essential list and member workspace. Shared control dimensions remain in tokens. */
.crm-clean-tools{display:flex;align-items:start;gap:24px;justify-content:space-between}.crm-clean-tools>.account-field{width:100%;max-width:420px;margin:0}.crm-clean-extra summary{min-height:var(--ui-control-size);padding:12px 0;cursor:pointer;font-size:14px}.crm-clean-extra{margin:16px 0;border-block:1px solid var(--line);padding:8px 0}.crm-member-filters span{margin-left:8px;font-size:12px;color:var(--muted)}.crm-clean-table-head,.crm-clean-row{display:grid;grid-template-columns:minmax(170px,1.5fr) minmax(160px,1.2fr) minmax(100px,1fr) minmax(90px,.7fr) 90px;gap:16px;align-items:center}.crm-clean-table-head{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.crm-clean-row{padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:14px}.crm-clean-row:hover{background:var(--color-surface-soft)}.crm-clean-row>div{min-width:0;overflow-wrap:anywhere}.crm-clean-row strong{font-size:14px}.crm-clean-row small{display:block;font-size:12px;color:var(--muted);line-height:1.7;margin-top:4px}.crm-clean-row .crm-tag{margin-top:6px}.crm-clean-person{display:flex;align-items:center;gap:12px}.crm-clean-person .avatar{flex-shrink:0}.crm-clean-due{color:#a65f25;font-weight:700}.crm-clean-row .crm-clean-mobile-label{display:none}.crm-clean-result{margin:16px 0 0}.crm-clean-strip{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.crm-clean-strip small,.crm-clean-strip strong,.crm-clean-strip span{display:block}.crm-clean-strip small{color:var(--muted);font-size:12px;margin-bottom:8px}.crm-clean-strip strong{font-size:18px}.crm-clean-strip span{color:var(--muted);font-size:13px;margin-top:8px}.crm-member-tabs .btn{border-color:transparent;background:transparent}.crm-member-tabs [aria-pressed=true]{border-radius:0;border-bottom:2px solid var(--accent);box-shadow:none}.crm-clean-audit{padding:16px 0;border-bottom:1px solid var(--line)}.crm-clean-audit small{display:block;color:var(--muted);margin-top:8px}.crm-clean-tasks .crm-enroll-summary{border:0;padding:0;box-shadow:none}.crm-enroll-intro{display:flex;gap:16px;align-items:center;justify-content:space-between}.crm-enroll-intro .btn{flex:none}.crm-clean-table .crm-clean-person img{object-fit:cover}
@media(max-width:1150px){.crm-clean-table-head{display:none}.crm-clean-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.crm-clean-row>div:nth-child(2){text-align:right}.crm-clean-row>.crm-clean-last{grid-column:1;font-size:12px;color:var(--muted)}.crm-clean-row>div:nth-child(4){grid-column:2;grid-row:2;text-align:right;font-size:12px}.crm-clean-row>div:nth-child(5){grid-column:1/-1}.crm-clean-row .crm-clean-mobile-label{display:inline;margin-right:6px}.crm-clean-tools{flex-wrap:wrap;gap:4px}.crm-clean-tools>.account-field{max-width:none}}
@media(max-width:700px){.crm-clean-strip{grid-template-columns:1fr 1fr;gap:20px}.crm-clean-strip>div:first-child{grid-column:1/-1}.crm-clean-strip strong{font-size:16px}.crm-enroll-intro{flex-wrap:wrap}.crm-clean-row>div:nth-child(2){max-width:160px}.crm-enroll-intro .btn{white-space:normal}}
/* Standalone signing uses the existing paper form without the admin application shell. */
body.contract-signing-page{margin:0;background:#e8ece9;min-height:100dvh}.contract-signing-page #contract-main{padding:0;margin:0;height:100dvh}.contract-signing-page .native-paper-workspace{height:100dvh;display:flex;flex-direction:column;min-height:0;margin:0}.contract-signing-page .native-paper-desk{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 16px;background:#e8ece9}.contract-signing-page .native-paper-toolbar{flex:none;background:var(--paper);padding:12px 24px;border-bottom:1px solid var(--line);margin:0}.contract-signing-page .native-paper-submit{position:static;flex:none;background:var(--paper);padding:12px 24px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.contract-signing-message{max-width:540px;margin:auto;padding:64px 24px;text-align:center;line-height:1.8}.contract-signing-message>strong{color:#176f5d}.contract-signing-message h1{font-size:26px}.contract-signing-page .native-paper-page{margin-inline:auto}.contract-signing-page .native-paper-toolbar>div{display:flex;gap:8px}.contract-signing-page .native-paper-submit>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.contract-signing-page .native-paper-submit .form-error:empty{display:none}
@media(max-width:700px){.contract-signing-page .native-paper-desk{padding:12px 0}.contract-signing-page .native-paper-toolbar{padding:12px;display:grid;gap:8px}.contract-signing-page .native-paper-toolbar>div{display:grid;grid-template-columns:1fr 1fr}.contract-signing-page .native-paper-submit{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.contract-signing-page .native-paper-submit>div>span{display:none}.contract-signing-page .native-paper-submit .btn{width:100%}.contract-signing-message h1{font-size:23px}}
.crm-member-tabs::-webkit-scrollbar,.crm-member-filters::-webkit-scrollbar{display:none}
.crm-member-tabs .btn,.crm-member-filters .btn{flex:0 0 auto;white-space:nowrap}
.crm-member-tabs [aria-pressed=true],.crm-member-filters [aria-pressed=true]{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.crm-member-summary{margin:12px 0}
[data-crm-member-pane]{min-width:0}
[data-crm-member-pane]>.panel{margin-bottom:20px}
.crm-member-list .avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.crm-member-list .crm-member-row>div:not(.avatar){overflow-wrap:anywhere}

/* One compact workspace switch above the owner sidebar menu. Common control sizing stays intact. */
body[data-workspace=box] #sidebar .admin-workspace-switch{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:16px 0}
body[data-workspace=box] #sidebar .admin-workspace-switch::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:4px;left:4px;bottom:4px;width:calc((100% - 8px)/2);border-radius:var(--radius-control)}
body[data-workspace=box] #sidebar .admin-workspace-switch:has([data-admin-workspace=training][aria-pressed=true])::before{left:50%;width:calc((100% - 8px)/2)}
body[data-workspace=box] #sidebar .admin-workspace-switch .btn{width:100%;justify-content:center;text-align:center;padding-inline:6px;font-size:12px;background:transparent;color:var(--ink);box-shadow:none}
body[data-workspace=box] #sidebar .admin-workspace-switch [aria-pressed=true]{color:var(--box-foreground,#182019)}
body[data-workspace=box] #sidebar .workspace-slide-training::before{animation:workspace-pill-down 220ms cubic-bezier(.2,.7,.2,1)}
body[data-workspace=box] #sidebar .workspace-slide-members::before{animation:workspace-pill-up 220ms cubic-bezier(.2,.7,.2,1)}
@keyframes workspace-pill-down{from{left:4px;width:calc((100% - 8px)/2)}to{left:50%;width:calc((100% - 8px)/2)}}
@keyframes workspace-pill-up{from{left:50%;width:calc((100% - 8px)/2)}to{left:4px;width:calc((100% - 8px)/2)}}
@media(prefers-reduced-motion:reduce){body[data-workspace=box] #sidebar .admin-workspace-switch::before{animation:none}}

/* Clip only the temporary slide, without creating a scrolling container for sticky content. */
body.workspace-transition .shell{overflow-x:clip}

/* Owner desktop already has sidebar destinations; keep local tabs for mobile and all member/coach screens. */
@media(min-width:701px){body[data-workspace=box] #main .box-community-tabs{display:none}}
/* Community source entries share the existing workout record and photo controls. */
.box-feed-closeout{display:grid;gap:var(--space-6);min-width:0}
.box-feed-notes{display:grid;gap:var(--space-4)}
.box-feed-notes>div{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-line)}
.box-feed-notes p,.box-feed-workout p{white-space:pre-wrap;overflow-wrap:anywhere}
.box-feed-workout summary{cursor:pointer;padding:var(--space-3) 0;font-weight:700}
.box-feed-workout section+section{border-top:1px solid var(--color-line);margin-top:var(--space-4)}
.box-feed-photos{display:grid;gap:var(--space-3)}
.box-feed-photos>button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.box-feed-photos img{display:block;width:100%;height:auto;border-radius:var(--radius-control)}
.box-feed-records{display:grid;gap:var(--space-4);min-width:0}
.box-feed-records .account-section-head{flex-wrap:wrap}
.box-feed-records .wod-history-record{margin:0}
.box-feed-records .history-no-score{display:grid}

/* Contract-first CRM uses shared controls and the existing overlay. */
.crm-enroll-steps{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0;color:var(--muted);font-size:13px}.crm-enroll-steps strong{color:var(--ink)}.crm-enroll-summary{margin:20px 0}.crm-enroll-summary .crm-member-row{align-items:flex-start}.crm-enroll-summary .crm-actions{flex-wrap:wrap}.crm-enroll-summary small{white-space:normal}.crm-enroll-summary h2{font-size:18px}@media(max-width:700px){.crm-enroll-steps{gap:12px;font-size:12px}.crm-enroll-summary .crm-member-row{flex-wrap:wrap}}


/* Native CRM contracts reuse approved paper preview presentation. */
/* Contract-only document presentation; shared inputs, buttons and overlay behavior stay intact. */
#modal:has(.native-paper-workspace){width:min(1080px,calc(100vw - 32px));height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);overflow:hidden}
#modal:has(.native-paper-workspace)>.modal-head{padding:12px 20px;min-height:68px}
#modal:has(.native-paper-workspace)>.modal-content{padding:0;overflow:hidden}
.native-paper-workspace{height:100%;display:flex;flex-direction:column;min-height:0}
.native-paper-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--line);background:#fff;flex:none}
.native-paper-toolbar>span{font-weight:650}.native-paper-toolbar small{font-weight:400;color:var(--muted);margin-left:8px}.native-paper-toolbar>div{display:flex;gap:8px}
.native-paper-desk{overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:24px;background:#e6e9e7;scroll-padding-top:24px}
.native-paper-page{max-width:794px;min-height:1123px;margin:0 auto 24px;padding:40px 48px 32px;background:#fff;box-shadow:0 3px 16px #25352c18;color:#252d29;display:flex;flex-direction:column;overflow-wrap:anywhere}
.native-paper-page:last-child{margin-bottom:0}.native-paper-masthead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:2px solid #25352c}.native-paper-masthead strong{font-size:19px;letter-spacing:1px}.native-paper-masthead>span{font-size:11px;color:var(--color-secondary)}
.native-paper-title{text-align:center;margin:32px 0}.native-paper-title>p{font-size:var(--font-caption,11px);letter-spacing:2px;color:#748079}.native-paper-title h2{font-size:26px;margin:12px 0;font-weight:750;line-height:1.5}.native-paper-title>span{font-size:12px;color:var(--color-secondary)}
.native-paper-section{margin:0 0 24px}.native-paper-section h3{display:flex;align-items:center;gap:12px;font-size:15px;margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid #d9dfda}.native-paper-section h3>span{color:var(--color-secondary-sage);font-size:12px;font-weight:500}
.native-paper-facts{display:grid;grid-template-columns:100px minmax(0,1fr);margin:0;border-top:1px solid #dce2dd;border-left:1px solid #dce2dd;font-size:13px}.native-paper-facts dt,.native-paper-facts dd{padding:12px;margin:0;border-bottom:1px solid #dce2dd;border-right:1px solid #dce2dd}.native-paper-facts dt{background:#f5f7f5;color:var(--color-secondary)}.native-paper-facts dd{font-weight:550}
.native-paper-note{font-size:12px;color:var(--color-secondary);line-height:1.8;margin:8px 0 12px}.native-paper-person>.en-fields{grid-template-columns:1fr 1fr;gap:16px}.native-paper-person>h3:not(:first-child),.native-paper-person>.en-muted{display:none}.native-paper-person .account-field{font-size:12px}.native-paper-person input,.native-paper-person select{background:#f0f6fc;border-color:#b9cfdf}.native-paper-page .native-terms{font-size:12px;line-height:1.9;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.native-paper-consents .en-choice{border-width:0 0 1px;border-radius:0;padding:16px 0;margin:0}.native-paper-consents .en-choice:has(input:checked){background:transparent;border-color:#dce2dd}.native-paper-consents small{display:block;color:var(--color-secondary);font-size:11px;margin-bottom:4px}.native-paper-consents strong{font-size:13px;font-weight:550;line-height:1.7}
.native-paper-signbox{position:relative;border:1px solid #b9cfdf;background:#f0f6fc}.native-paper-signbox>span{position:absolute;inset:0;display:grid;place-items:center;font-size:16px;color:#a5b7c3;pointer-events:none}.native-paper-signbox .en-sign{position:relative;display:block;height:180px;border:0;border-radius:0;background:transparent}.native-paper-signactions{display:flex;justify-content:flex-end;margin-top:8px}.native-paper-declaration{font-size:13px;line-height:1.9;text-align:center;padding:24px 0;color:var(--color-secondary)}.native-paper-footer{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:24px;border-top:1px solid #dce2dd;color:#89938c;font-size:var(--font-caption,11px)}
.native-paper-submit{flex:none;padding:12px 20px;background:#fff;border-top:1px solid var(--line)}.native-paper-submit>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.native-paper-submit span{color:var(--muted);font-size:12px}.native-paper-submit #sign-error:not(:empty){color:#a34430;font-size:13px;margin:0 0 8px}
#modal:has(.native-record){width:min(1040px,calc(100vw - 32px))}
@media(max-width:700px){#modal:has(.native-paper-workspace){width:100%;height:100dvh;max-height:100dvh;border-radius:0}#modal:has(.native-paper-workspace)>.modal-head{padding:12px 16px} .native-paper-toolbar{padding:8px 12px;gap:8px}.native-paper-toolbar>span{font-size:13px}.native-paper-toolbar small{font-size:var(--font-caption,11px)}.native-paper-toolbar>div{width:100%;display:grid;grid-template-columns:1fr 1fr}.native-paper-desk{padding:12px;scroll-padding-top:12px}.native-paper-page{padding:24px 20px;min-height:960px;margin-bottom:16px}.native-paper-masthead{align-items:flex-start}.native-paper-masthead>span{font-size:var(--font-caption,11px);text-align:right}.native-paper-title{margin:24px 0}.native-paper-title h2{font-size:21px}.native-paper-person>.en-fields{grid-template-columns:1fr}.native-paper-facts{grid-template-columns:76px minmax(0,1fr)}.native-paper-facts dt,.native-paper-facts dd{padding:12px 8px}.native-paper-submit{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.native-paper-submit>div{display:block}.native-paper-submit span{display:none}.native-paper-submit .btn{width:100%}.native-paper-footer{font-size:var(--font-caption,11px)}.native-paper-declaration br{display:none}}
#modal[open]:has(.native-paper-workspace){display:flex;flex-direction:column}
#modal:has(.native-paper-workspace)>.modal-head{flex:none}
#modal:has(.native-paper-workspace)>.modal-content{height:auto;min-height:0;flex:1}
/* Restored layout from the original AGLET eform test membership form. */
.native-original-form .native-paper-masthead{border:0;padding-bottom:0}.native-original-form .native-paper-masthead strong{color:#168675}.native-original-form .native-paper-masthead>span{font-size:var(--font-caption,11px)}
.native-original-form .native-paper-title{text-align:left;margin:20px 0 16px;padding-bottom:20px;border-bottom:1px solid #168675}.native-original-form .native-paper-title h2{font-size:28px;margin:0 0 8px;letter-spacing:1px;color:#233a35}.native-original-form .native-paper-title>span{color:#7a8b85;font-size:13px}
.native-form-test{margin:0 0 24px;font-size:12px;line-height:1.8}.native-form-test strong{color:#168675}.native-form-test p{color:#7a8b85;margin-top:4px}
.native-original-form .native-paper-section h3{border:0;padding:0;font-size:17px;letter-spacing:.5px;margin-bottom:16px}.native-original-form .native-paper-section h3>span{color:#168675;font-weight:650}.native-original-form .native-paper-section{margin-bottom:24px}
.native-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.native-form-box{grid-template-columns:1.6fr 1fr}.native-contract-fixed{gap:8px;color:#687e76;font-size:12px}.native-contract-fixed>div{border:1px solid #d7e1dd;border-radius:var(--radius-control);padding:12px;min-height:44px;color:#233a35;background:#fff;font-weight:500;line-height:1.5}.native-original-form .account-field{color:#687e76;font-size:12px}.native-original-form .account-field input,.native-original-form .account-field select{border-color:#b9cfdf;background:#f4f8fc}.native-original-form .native-paper-person .en-fields{gap:16px}.native-original-form .native-paper-person>.en-fields{margin-top:0}.native-original-next{font-size:12px;color:#778a81;line-height:1.8;margin:0 0 24px}.native-original-next>div{margin-top:12px}.native-original-form .native-terms{font-size:12px;line-height:1.8}.native-box-terms{border:1px solid #d7e1dd;padding:16px;background:#fbfcfb}.native-original-form .native-paper-consents .en-choice{padding:12px 0}.native-original-form .native-paper-signbox .en-sign{height:130px}.native-sign-meta{margin-bottom:16px}
@media(max-width:700px){.native-original-form .native-paper-title h2{font-size:22px;letter-spacing:0}.native-form-grid,.native-form-box{grid-template-columns:1fr}.native-original-form .native-paper-title>span{font-size:12px}.native-original-form .native-paper-section h3{font-size:16px}.native-original-form .native-paper-person>.en-fields{grid-template-columns:1fr}.native-box-terms{padding:12px}}

#modal .native-paper-person .en-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.native-paper-consents .en-choice{display:flex;align-items:center;gap:12px;cursor:pointer}.native-paper-consents input{flex:none}.native-paper-workspace .crm-signature{touch-action:none}.native-consent-editor{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px;margin:16px 0}@media(max-width:700px){#modal .native-paper-person .en-fields{grid-template-columns:1fr}.native-consent-editor{grid-template-columns:minmax(0,1fr) 90px}}

@media(max-width:700px){#modal:has(.native-paper-workspace input:not([type=checkbox]):focus) .native-paper-submit,#modal:has(.native-paper-workspace select:focus) .native-paper-submit{display:none}}

.contract-signing-page .native-paper-submit>div{width:100%}.contract-signing-page .native-paper-submit .btn{margin-left:auto}
@media(max-width:700px){.contract-signing-page:has(.native-paper-person input:not([type=checkbox]):focus) .native-paper-submit,.contract-signing-page:has(.native-paper-person select:focus) .native-paper-submit{display:none}}

/* Compact clause hierarchy; editing controls retain shared readable input sizes. */
.native-paper-page .contract-terms,.contract-terms-preview .contract-terms{white-space:normal;font-size:11px;line-height:1.6;color:#293730}
.contract-terms>div{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.contract-terms .contract-term-heading{font-size:13px;font-weight:700;line-height:1.65;margin:10px 0 4px}
.contract-terms .contract-term-heading:first-child{margin-top:0}
.contract-terms .contract-term-body{font-size:11px;line-height:1.6}
.contract-terms .contract-term-item{font-size:var(--font-caption,11px);line-height:1.65;padding-left:12px;text-indent:-10px}
.contract-terms .contract-term-space{height:6px;font-size:0;line-height:6px}
.contract-terms-preview{margin:12px 0 20px;border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 16px}
.contract-terms-preview>summary{cursor:pointer;min-height:var(--ui-control-size);display:flex;align-items:center;font-size:13px;font-weight:650}
.contract-terms-preview .contract-terms{background:#fff;padding:16px;border:1px solid var(--line);margin-top:12px}
@media(max-width:700px){.contract-terms .contract-term-heading{font-size:14px}.contract-terms .contract-term-body{font-size:12px}.contract-terms .contract-term-item{font-size:11px}}

/* Administrator-owned entrance slideshow. */
.checkin-photo-manager{padding-block:20px;border-bottom:1px solid var(--line,#e1e6e4);margin-bottom:20px}
.checkin-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-block:16px}
.checkin-photo-grid figure{margin:0;min-width:0}
.checkin-photo-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-control,12px)}
.checkin-photo-grid figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;margin-top:8px}
.checkin-photo-interval{max-width:240px}
@media(max-width:700px){.checkin-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.checkin-photo-grid video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#172a23;border-radius:var(--radius-control,12px)}

/* Keep navigation out of the soft keyboard viewport; chat composers retain their own behavior. */
@media(max-width:700px){
 body.mobile-text-input-active #mobile-nav{display:none!important}
 body.mobile-text-input-active :is(.personal-workout-actions,.program-page-submit,.training-submit,.record-form-actions){position:static!important;inset:auto!important;transform:none!important}
}

/* CRM refund choices share the standard form spacing. */
[data-refund-passes],[data-refund-end]:not([hidden]){display:grid;gap:var(--space-4)}

/* Pending contract actions are controls, not the expanding row content. */
.crm-enroll-pending .crm-member-row>.crm-actions{flex:0 0 auto;min-width:0;margin:0 0 0 auto;justify-content:flex-end;gap:var(--space-2)}
.crm-enroll-pending .crm-member-row>.crm-actions .btn{flex:0 0 auto}
@media(max-width:700px){.crm-enroll-pending .crm-member-row>.crm-actions{flex-basis:100%}}

/* Persisted contract workspace: signature status, templates and reusable terms. */.cw-tabs{margin-bottom:24px}.cw-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.cw-stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px}.cw-stat span{font-size:13px;color:var(--muted)}.cw-stat strong{display:block;font-size:28px;margin-top:8px}.cw-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.cw-toolbar .account-field{margin:0;flex:1;min-width:180px}.cw-filters{display:flex;gap:8px;overflow:auto;scrollbar-width:none;max-width:100%;padding-bottom:4px}.cw-filters .btn{flex:none}.cw-row{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);padding:20px 0;min-width:0}.cw-row:last-child{padding-bottom:0}.cw-person{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.cw-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--color-surface-soft);flex:none;font-weight:700}.cw-person strong{font-size:14px}.cw-person small{display:block;color:var(--muted);font-size:12px;margin-top:5px;overflow-wrap:anywhere}.cw-row .crm-actions{flex:none;justify-content:flex-end;margin:0}.cw-row .crm-actions .btn{flex:none}.cw-badge{font-size:11px;padding:5px 8px;border-radius:8px;background:var(--color-surface-soft);white-space:nowrap}.cw-badge.waiting{background:#fff3e2;color:#946325}.cw-badge.signed{background:#e8f3ef;color:#217561}.cw-template{padding:20px 0;border-top:1px solid var(--line);display:flex;align-items:start;gap:20px}.cw-template>div:first-child{flex:1;min-width:0}.cw-template h3{margin:0 0 8px;font-size:16px}.cw-template p{color:var(--muted);font-size:13px;line-height:1.7;margin:8px 0}.cw-template .crm-actions{margin:0;justify-content:flex-end;flex:none}.cw-note{color:var(--muted);font-size:12px;line-height:1.8;margin:16px 0 0}.cw-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:24px;align-items:start}.contract-workspace .account-field{margin-block:16px}.cw-preview{position:sticky;top:24px;background:#eef0eb;padding:20px;border-radius:var(--radius-card)}.cw-paper{background:white;border:1px solid var(--line);padding:28px;color:#29312a}.cw-paper h3{text-align:center;font-size:18px;margin:16px 0 24px}.cw-paper h4{font-size:12px;margin:18px 0 6px}.cw-paper p{font-size:11px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.cw-paper dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px;padding:12px;background:var(--color-canvas)}.cw-paper dd{margin:0}.cw-paper dt{color:var(--muted)}.cw-block{border-top:1px solid var(--line);padding:16px 0}.cw-block-head{display:flex;gap:12px;align-items:center}.cw-block-head label{display:flex;align-items:center;gap:10px;flex:1;font-size:14px;min-width:0;cursor:pointer;min-height:var(--touch-target)}.cw-block-head input{width:auto;accent-color:#1c8c76;flex:none}.cw-block p{font-size:12px;color:var(--muted);line-height:1.8;margin:4px 0 0;white-space:pre-wrap}.cw-order{display:flex;gap:4px;flex:none}.cw-order .btn{padding-inline:10px}.cw-empty{padding:32px 0;text-align:center;color:var(--muted)}.contract-workspace .btn[aria-pressed=true]{background:var(--color-surface-soft);border-color:#7e9987;color:var(--ink)}@media(max-width:1000px){.cw-editor{grid-template-columns:minmax(0,1fr)}.cw-preview{position:static}.cw-template{flex-wrap:wrap}.cw-template .crm-actions{flex-basis:100%}}
@media(max-width:700px){.cw-stats{gap:8px}.cw-stat{padding:16px 12px}.cw-stat strong{font-size:24px}.cw-row{flex-wrap:wrap;gap:12px}.cw-row>.cw-badge{margin-left:auto}.cw-row .crm-actions{flex-basis:100%}.cw-row .crm-actions .btn{flex:none}.cw-template .crm-actions .btn{flex:none}.cw-editor{gap:16px}.cw-preview{padding:12px}.cw-paper{padding:20px}.cw-paper dl{grid-template-columns:1fr 1fr}.cw-block-head{gap:8px}.cw-block-head label{font-size:13px}}

.cw-stat{font:inherit;color:var(--ink);text-align:left;cursor:pointer}.cw-stat small{font-size:13px;font-weight:400;margin-left:5px}.cw-pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4);font-size:12px;color:var(--muted)}.cw-pagination>div{display:flex;gap:var(--space-2)}.cw-tabs{margin-top:0}.cw-block-head input{min-height:auto}.cw-template details{font-size:13px}.cw-preview{max-height:calc(100dvh - 100px);overflow:auto}.cw-paper .native-terms{font-size:12px}.cw-badge.review{background:#fff3e2;color:#946325}
@media(max-width:700px){.cw-row .crm-actions{width:100%}.cw-row .cw-person{flex-basis:60%}.cw-template .crm-actions{justify-content:flex-start}.cw-preview{max-height:none}.cw-toolbar .cw-filters{width:100%}.cw-toolbar .account-field{min-width:0;width:100%}}

#modal:has([data-cw-template]){width:min(1120px,calc(100vw - 32px));max-width:none}.cw-editor>div{min-width:0}.cw-block-head label{overflow-wrap:anywhere}.cw-editor .account-field{margin-block:var(--space-4)}.cw-editor .account-field:first-child{margin-top:0}@media(max-width:700px){#modal:has([data-cw-template]){width:100%}}

/* Expand template into a read-only paper contract; no nested scrolling. */
.cw-contract-preview{margin-bottom:var(--space-4)}
.cw-contract-preview>summary{cursor:pointer;color:var(--ink);padding-block:var(--space-3);font-weight:600}
.cw-contract-desk{background:var(--color-surface-soft);padding:var(--space-4);margin-top:var(--space-3)}
.cw-contract-desk .native-paper-page{box-sizing:border-box;min-width:0}
.cw-contract-desk .native-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.cw-contract-desk .account-field{margin-block:0}
@media(max-width:700px){.cw-contract-desk{padding:var(--space-2)}.cw-contract-desk .native-paper-page{padding:var(--space-4);min-height:0}.cw-contract-desk .native-form-grid{grid-template-columns:minmax(0,1fr)}}

.cw-consent-item{border-top:1px solid var(--line);padding-block:var(--space-4)}.cw-consent-item .crm-actions{align-items:center;gap:var(--space-2)}

/* Contract template editor: clear sections, shared controls, non-floating save. */
.cw-editor-intro{color:var(--muted);margin:0 0 var(--space-5);font-size:14px;line-height:1.7}
.cw-editor-sections{display:grid;gap:var(--space-4)}
.cw-edit-section{border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-5);background:var(--paper)}
.cw-edit-section>header{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-4)}
.cw-edit-section>header>span{font-size:12px;color:var(--muted);padding-top:4px}
.cw-edit-section h3{font-size:17px;margin:0}.cw-edit-section header p{font-size:12px;line-height:1.7;color:var(--muted);margin:4px 0 0}.cw-edit-section h4{font-size:13px;margin:0 0 var(--space-2)}
.cw-edit-section .account-field:last-child{margin-bottom:0}
.cw-template-form .cw-preview{top:0;background:var(--color-surface-soft)}
.cw-editor-preview>summary{cursor:pointer;font-weight:600;font-size:14px}.cw-editor-preview .cw-note{margin:var(--space-2) 0 var(--space-4)}
.cw-consent-caption{display:flex;justify-content:space-between;gap:var(--space-2);font-size:12px}.cw-consent-caption span{color:var(--muted)}
.cw-template-form .native-consent-editor{margin:var(--space-3) 0 var(--space-2);align-items:start}.cw-template-form .native-consent-editor .account-field{margin:0}
.cw-template-form .cw-consent-item .crm-actions{margin:0;justify-content:flex-end}
.cw-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:var(--space-5)}.cw-editor-footer .cw-note{margin:0}.cw-editor-footer>.btn{flex:none}.cw-editor-footer .form-error:empty{display:none}
@media(max-width:700px){.cw-edit-section{padding:var(--space-4)}.cw-template-form .cw-preview{max-height:none;overflow:visible}.cw-editor-footer{flex-direction:column;align-items:stretch}.cw-template-form .cw-paper{padding:var(--space-4)}}

/* Shared paper renderer in independently scrollable live template preview. */
.cw-template-form .cw-preview{max-height:none;overflow:visible;padding:var(--space-3)}
.cw-paper-nav{gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap}
.cw-live-paper{max-height:calc(100dvh - 280px);min-height:240px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:var(--color-surface-soft)}
.cw-live-paper>.cw-note{font-size:11px;margin:0;padding:var(--space-2)}
.cw-live-paper .cw-contract-desk{padding:var(--space-2);margin:0}
.cw-live-paper .native-paper-page{min-height:620px;padding:var(--space-4);margin-bottom:var(--space-4)}
.cw-live-paper .native-paper-title{margin:var(--space-4) 0}.cw-live-paper .native-paper-title h2{font-size:18px}.cw-live-paper .native-form-grid{gap:var(--space-2)}
.cw-live-paper .native-paper-section{margin-bottom:var(--space-4)}
.cw-live-paper .native-contract-fixed>div{padding:var(--space-2);font-size:11px}.cw-live-paper .native-paper-section h3{font-size:13px}.cw-live-paper .native-terms{font-size:11px}
@media(max-width:700px){.cw-live-paper{max-height:65dvh}.cw-live-paper .native-paper-page{min-height:0}.cw-paper-nav>.btn{flex:1}.cw-live-paper .native-form-grid{grid-template-columns:minmax(0,1fr)}}

@media(min-width:1001px){.cw-template-form .cw-preview{top:88px}.cw-live-paper{max-height:calc(100dvh - 360px)}}

/* Member directory: compact scanning, existing controls and actions preserved. */
.crm-members-screen .page-head{margin-bottom:var(--space-5);align-items:center}
.crm-members-screen .page-head .crm-actions{margin:0;gap:var(--space-2)}
.crm-members-panel{padding:var(--space-5) var(--space-6)}
.crm-members-screen .crm-clean-tools{align-items:flex-end;gap:var(--space-4);justify-content:flex-start}
.crm-members-screen .crm-clean-tools>.account-field{max-width:480px}
.crm-members-screen .crm-member-filters{margin:var(--space-4) 0 var(--space-2);gap:var(--space-2)}
.crm-members-screen .crm-member-filters .btn{background:transparent;border-color:transparent;box-shadow:none}
.crm-members-screen .crm-member-filters .btn[aria-pressed=true]{background:var(--color-surface-soft);border-color:var(--color-line);color:var(--ink);font-weight:700}
.crm-members-screen .crm-clean-table-head{background:var(--color-surface-soft);padding:var(--space-3);border:0}
.crm-members-screen .crm-clean-row{padding:var(--space-4) var(--space-3);gap:var(--space-4)}
.crm-members-screen .crm-clean-person>div{min-width:0}
.crm-members-screen .crm-clean-person strong{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap;font-size:15px}
.crm-person-code{font-size:12px;font-weight:400;color:var(--muted)}
.crm-members-screen .crm-person-meta{display:flex;gap:4px 12px;flex-wrap:wrap}
.crm-person-meta>span{white-space:nowrap}
/* Delegated member lookup keeps the same photo-first compact rhythm. */
body[data-workspace] #main .member-directory-row{display:block;padding:var(--space-2) 0;margin:0;min-height:var(--touch-target);background:transparent}
body[data-workspace] #main .member-directory-row[hidden]{display:none}
#main .member-directory-link{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2);color:var(--ink);text-decoration:none;min-height:var(--touch-target)}
#main .member-directory-link>.member-avatar{width:32px;height:32px;min-width:32px;min-height:32px}
#main .member-directory-link .member-profile-image{width:100%;height:100%;object-fit:cover;border-radius:inherit}
#main .member-directory-link>strong{display:flex;align-items:center;gap:var(--space-1);min-width:0;overflow-wrap:anywhere;font-size:14px;line-height:1.5}
#main .member-directory-state{font-size:var(--font-meta);color:var(--muted);text-align:right;white-space:nowrap}
#main .member-overview.is-readonly{display:none}
#main .member-directory-panel .member-list-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;margin-block:var(--space-3);scrollbar-width:none}
#main .member-directory-panel .member-list-filters>.btn{flex:none;background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--muted);padding-inline:var(--space-3);white-space:nowrap;min-height:var(--control-height)}
#main .member-directory-panel .member-list-filters>.btn[aria-pressed=true]{background:transparent!important;color:var(--ink)!important;border-color:transparent!important;font-weight:650}
.crm-members-screen .crm-clean-row .crm-tag{margin-top:0}
.crm-members-screen .crm-contract-state[data-state=waiting] .crm-tag{color:#8a5c24;background:#fff5e5}
.crm-members-screen .crm-clean-result{font-size:12px;margin:var(--space-3) 0 0}
/* A compact directory; full contact details stay in the member detail screen. */
#main .crm-members-screen .crm-clean-row{padding:var(--space-2) var(--space-3);gap:var(--space-3);min-height:var(--touch-target)}
#main .crm-members-screen .crm-clean-person{gap:var(--space-2)}
#main .crm-members-screen .crm-clean-person .avatar{width:32px;height:32px;min-width:32px;min-height:32px;font-size:14px}
#main .crm-members-screen .crm-clean-row small{margin-top:var(--space-1);line-height:1.5}
#main .crm-members-screen .crm-clean-person strong{font-size:14px;line-height:1.5}
#main .crm-members-screen .crm-clean-phone{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
#main .crm-members-screen .crm-contract-state{font-size:var(--font-meta);color:var(--muted)}
#main .crm-members-screen .crm-contract-state[data-state=waiting]{color:#8a5c24;font-weight:650}
@media(max-width:1150px){
 body[data-workspace] #main .crm-members-screen .crm-clean-row{display:block;padding:var(--space-2) 0;gap:0;border-radius:0;background:transparent;box-shadow:none}
 body[data-workspace] #main .crm-members-screen .crm-clean-row>div:not(.crm-mobile-member){display:none}
 body[data-workspace] #main .crm-members-screen .crm-clean-row>.crm-mobile-member{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;gap:var(--space-1) var(--space-2);align-items:center;max-width:none;text-align:left}
 #main .crm-members-screen .crm-mobile-avatar{grid-column:1;grid-row:1/span 2;width:32px;height:32px;min-width:32px;min-height:32px;font-size:14px}
 #main .crm-members-screen .crm-mobile-avatar>img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
 #main .crm-members-screen .crm-mobile-member-top{display:contents}
 #main .crm-members-screen .crm-mobile-member-top>strong{grid-column:2;grid-row:1}
 #main .crm-members-screen .crm-mobile-member-state{grid-column:3;grid-row:1;text-align:right}
 #main .crm-members-screen .crm-mobile-member-state>.crm-mobile-attention{white-space:nowrap}
 #main .crm-members-screen .crm-mobile-chevron{grid-column:4;grid-row:1/span 2}
 #main .crm-members-screen .crm-mobile-member-meta{grid-column:2/4;grid-row:2}
 #main .crm-members-screen .crm-mobile-member-meta{display:flex;align-items:baseline;min-width:0;font-size:var(--font-meta);line-height:1.5}
 #main .crm-members-screen .crm-mobile-pass{min-width:0;white-space:nowrap;color:var(--muted);font-size:var(--font-meta)}
 #main .crm-members-screen .crm-mobile-member-top>strong{font-size:14px;line-height:1.5}
}
.crm-members-support{margin-top:var(--space-4)}
@media(max-width:1150px){
 .crm-members-screen .crm-clean-tools{flex-wrap:nowrap;align-items:flex-start}
 .crm-members-screen .crm-clean-row{grid-template-columns:minmax(0,1fr) auto}
 .crm-members-screen .crm-clean-person{grid-column:1/-1;grid-row:1}
 .crm-members-screen .crm-clean-row>div:nth-child(2){grid-column:1;grid-row:2;text-align:left;max-width:none}
 .crm-members-screen .crm-contract-state{grid-column:2!important;grid-row:2}
 .crm-members-screen .crm-clean-row>.crm-clean-last{grid-column:1;grid-row:3}
 .crm-members-screen .crm-clean-row>div:nth-child(4){grid-column:2;grid-row:3}
}
@media(max-width:700px){
 .crm-members-screen .page-head{align-items:flex-start;gap:var(--space-3)}
 .crm-members-screen .page-head .crm-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr}
 .crm-members-panel{padding:var(--space-4)}
 .crm-members-screen .crm-clean-tools{flex-wrap:wrap;gap:0}
 .crm-members-screen .crm-member-filters{margin-top:var(--space-2)}
 .crm-members-screen .crm-clean-row{padding:var(--space-4) 0;gap:var(--space-3)}
}
#main .crm-members-screen .crm-clean-tools>.account-field{margin:0}
#main .crm-members-screen .crm-members-panel{padding:var(--space-5) var(--space-6)}
@media(max-width:700px){#main .crm-members-screen .crm-members-panel{padding:var(--space-4)}}
/* CRM selection rails and signed member profile */
#main .crm-member-tabs,#main .crm-members-screen .crm-member-filters{gap:var(--space-1);border-bottom:1px solid var(--color-line);padding-bottom:0}
#main .crm-member-tabs>.btn,#main .crm-members-screen .crm-member-filters>.btn{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;color:var(--muted);padding-inline:var(--space-4)}
#main .crm-member-tabs>.btn[aria-pressed=true],#main .crm-members-screen .crm-member-filters>.btn[aria-pressed=true]{border-bottom-color:var(--accent);color:var(--ink);font-weight:700;background:transparent}
#main .crm-member-tabs>.btn:hover,#main .crm-members-screen .crm-member-filters>.btn:hover{background:var(--color-surface-soft)}
.crm-member-detail .page-head{margin-bottom:var(--space-4)}
.crm-member-detail .crm-clean-strip{gap:var(--space-5)}
.crm-member-detail .crm-clean-strip>div+div{border-left:1px solid var(--color-line);padding-left:var(--space-5)}
.crm-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5) var(--space-6);margin:var(--space-5) 0 0}
.crm-profile-grid dt{font-size:12px;color:var(--muted);margin-bottom:var(--space-2)}
.crm-profile-grid dd{margin:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}
.crm-profile-consents{margin-top:var(--space-5);border-top:1px solid var(--color-line);padding-top:var(--space-3)}
.crm-profile-consents>div{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4);font-size:13px;padding:var(--space-2) 0}
.crm-profile-consents small{color:var(--muted)}
.crm-profile-consents strong{white-space:nowrap;flex:none}
.crm-profile-card .account-section-head{gap:var(--space-3);flex-wrap:wrap}
@media(max-width:700px){.crm-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-4)}.crm-profile-grid dd{font-size:14px}.crm-member-detail .crm-clean-strip>div+div{border-left:0;padding-left:0}#main .crm-member-tabs>.btn,#main .crm-members-screen .crm-member-filters>.btn{padding-inline:var(--space-3)}}
body[data-page=crm] #main .crm-member-tabs>.btn,body[data-page=crm] #main .crm-members-screen .crm-member-filters>.btn{background:transparent;box-shadow:none;border-top:0;border-left:0;border-right:0}
#main .crm-profile-card .account-section-head{margin-bottom:var(--space-2)}
#main .crm-profile-card .account-section-head h2{margin:0}

/* Revenue: concise ledger; preserve original payments and separate refund entries. */
.crm-revenue-clear .crm-revenue-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.crm-revenue-clear .crm-revenue-stats small{display:block;color:var(--muted);font-size:12px;margin-top:8px}
.crm-revenue-clear .crm-revenue-net{border-color:var(--accent);background:var(--color-surface-soft)}
.crm-revenue-clear .crm-revenue-net strong{color:var(--accent)}
.crm-revenue-clear .crm-ledger-table{min-width:0;table-layout:auto}
.crm-revenue-clear .crm-ledger-table th:first-child{position:static;min-width:0;max-width:none;border-right:0;background:transparent}
.crm-revenue-clear .crm-ledger-table th:nth-child(2),.crm-revenue-clear .crm-ledger-table td:nth-child(2),.crm-revenue-clear .crm-ledger-table th:nth-child(3),.crm-revenue-clear .crm-ledger-table td:nth-child(3){min-width:0}
.crm-revenue-clear .crm-ledger-table td,.crm-revenue-clear .crm-ledger-table th{vertical-align:middle}
.crm-revenue-clear .crm-revenue-person{overflow-wrap:anywhere;max-width:260px}
.crm-revenue-clear .crm-ledger-heading h2 small{color:var(--muted);font-weight:400;font-size:13px;margin-left:8px}
.crm-revenue-clear .is-refund strong{color:#a44935}
.crm-revenue-clear .crm-revenue-breakdown summary{cursor:pointer;font-weight:600;padding:4px 0}
.crm-revenue-clear .crm-revenue-breakdown[open] summary{margin-bottom:16px}
@media(max-width:1000px){
.crm-revenue-clear .crm-ledger-table thead{display:none}
.crm-revenue-clear .crm-ledger-table,.crm-revenue-clear .crm-ledger-table tbody{display:block}
.crm-revenue-clear .crm-ledger-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;padding:16px;border-bottom:1px solid var(--line)}
.crm-revenue-clear .crm-ledger-table td,.crm-revenue-clear .crm-ledger-table th{padding:0;border:0;min-width:0}
.crm-revenue-clear .crm-revenue-person{grid-column:1;grid-row:1;max-width:none;text-align:left}
.crm-revenue-clear .crm-ledger-table .is-money{grid-column:2;grid-row:1}
.crm-revenue-clear .crm-ledger-table .is-date{grid-column:1;grid-row:2;color:var(--muted);font-size:12px}
.crm-revenue-clear .crm-revenue-method{grid-column:2;grid-row:2;text-align:right;color:var(--muted);font-size:12px}
.crm-revenue-clear .crm-revenue-state{grid-column:1;grid-row:3;align-self:center}
.crm-revenue-clear .crm-revenue-detail{grid-column:2;grid-row:3;text-align:right}
.crm-revenue-clear .crm-ledger-empty{grid-column:1/-1}
}
@media(max-width:700px){
.crm-revenue-clear .crm-revenue-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.crm-revenue-clear .crm-revenue-net{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 8px}
.crm-revenue-clear .crm-revenue-net small{grid-column:1/-1}
.crm-revenue-clear .crm-ledger-heading{align-items:start;flex-direction:column;gap:4px}
}
.crm-revenue-clear .crm-revenue-filters .account-field{margin:0;gap:8px}.crm-revenue-clear .crm-revenue-filters{row-gap:16px}
#main .crm-revenue-clear .crm-revenue-filters .account-field{margin:0;gap:8px}

/* Shared neutral palette, 2026-10-26: identity on selected controls, not reading surfaces. */
:root{--ui-surface-line:var(--color-line);--ui-surface-soft:var(--color-surface-soft)}
body:is([data-workspace="member"],[data-workspace="box"]) #topbar{background:var(--color-canvas);border-bottom-color:var(--color-line)}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.saved-wod-preview,.wod-space-content,.community-wod-space-entry,.record-pr-group .pr-group-history,.record-pr-group[open]>summary,.flow-highlight,.point-coach-summary,.record-icon,.member-home-intro,.member-status-strip a){background:var(--color-surface-soft);border-color:var(--color-line);color:var(--color-ink);box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.wod-feature,.member-home-wod,.point-wallet){background:var(--color-surface);border-color:var(--color-line);color:var(--color-ink);box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) .wod-feature :is(h2,pre,.wod-label){color:var(--color-ink)}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.record-item-actions[open]>summary,.wod-history-times span,.wod-history-person>svg){background:var(--color-surface-soft);color:var(--color-secondary)}
/* Destination rails retain their layout and underline, with no white button boxes. */
body:is([data-workspace="member"],[data-workspace="box"]) #main :is(.record-page-tabs,.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs,.community-section-tabs,.crm-member-tabs,.tools-tabs){background:transparent;box-shadow:none;border-color:var(--color-line)}
body:is([data-workspace="member"],[data-workspace="box"]) #main :is(.record-page-tabs,.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs,.community-section-tabs,.crm-member-tabs,.tools-tabs)>:is(a,button){background:transparent;border-color:transparent;color:var(--color-secondary);box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) #main :is(.record-page-tabs,.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs,.community-section-tabs,.crm-member-tabs,.tools-tabs)>:is(.active,.is-active,.is-current,[aria-selected="true"],[aria-current="page"],[aria-pressed="true"]){background:transparent;color:var(--color-ink);border-bottom-color:var(--color-accent);box-shadow:inset 0 -2px var(--color-accent)}
/* Compact filter choices: shared neutral idle and accessible box/AGLET selection. */
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.chip,.post-categories>button,.wod-space-categories>button,.record-kind-filters>button,.member-date-choices>button,.box-settings-categories>a,.box-settings-subnav>a){background:transparent;color:var(--color-secondary);border-color:var(--color-line);box-shadow:none}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.chip,.post-categories>button,.wod-space-categories>button,.record-kind-filters>button,.member-date-choices>button,.box-settings-categories>a,.box-settings-subnav>a):is(.active,.is-active,[aria-pressed="true"],[aria-selected="true"],[aria-current="page"]){background:var(--color-ink);color:#fff;border-color:var(--color-ink);box-shadow:none}

body:is([data-workspace="member"],[data-workspace="box"]) #main .record-kind-filters>.btn.outline:not([aria-pressed="true"]){background:transparent;border-color:var(--color-line);color:var(--color-secondary)}
body:is([data-workspace="member"],[data-workspace="box"]) #main .record-kind-filters>.btn[aria-pressed="true"]{background:var(--color-ink);color:#fff;border-color:var(--color-ink)}
body[data-page="crm"] #main .crm-members-screen .crm-member-filters>.btn[aria-pressed="true"]{border-bottom-color:var(--color-ink);color:var(--color-ink)}
body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) :is(.record-kind-filters,.wod-space-categories,.post-categories)>.btn.outline:not(.active):not(.is-active):not(.is-current):not([aria-selected="true"]):not([aria-pressed="true"]){background:transparent;border-color:var(--color-line);color:var(--color-secondary)}
body:is([data-workspace="member"],[data-workspace="box"]) #modal,body:is([data-workspace="member"],[data-workspace="box"]) #modal[data-presentation="page"]{background:var(--color-surface);color:var(--color-ink)} body:is([data-workspace="member"],[data-workspace="box"]) #modal .modal-head{background:var(--color-surface);border-color:var(--color-line)} body:is([data-workspace="member"],[data-workspace="box"]) :is(#main,#modal) .pill{background:var(--color-surface-soft);color:var(--color-secondary)}

/* Mobile CRM directory: keep comparison table on PC, concise linked rows on mobile. */
.crm-members-screen .crm-clean-row>.crm-mobile-member{display:none}
@media(max-width:700px){
 #main .crm-members-screen .crm-clean-row{display:block;padding:var(--space-3) 0;border-radius:0;background:transparent;box-shadow:none}
 #main .crm-members-screen .crm-clean-row>div:not(.crm-mobile-member){display:none}
 #main .crm-members-screen .crm-clean-row>.crm-mobile-member{display:grid;gap:var(--space-1);text-align:left;max-width:none}
 .crm-mobile-member-top{display:flex;align-items:center;gap:var(--space-2)}
 .crm-mobile-member-top>strong{flex:1;min-width:0;overflow-wrap:anywhere;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1)}
 .crm-mobile-status{font-size:12px;color:var(--color-muted);white-space:nowrap}
 .crm-mobile-chevron{color:var(--color-muted)}
 .crm-mobile-pass{font-size:13px;color:var(--color-muted);overflow-wrap:anywhere}
 .crm-mobile-attention{font-size:12px;color:#8a5c24}
 #main .crm-members-screen .crm-clean-tools{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:var(--space-3)}
 #main .crm-members-screen .crm-clean-tools>.account-field{flex:1;min-width:0}
}

.member-qr{text-align:center}.member-qr svg{display:block;width:min(100%,280px);height:auto;margin:var(--space-4) auto;background:white}.member-qr p{margin-block:var(--space-3)}
.member-qr-camera{display:block;width:100%;max-height:50dvh;aspect-ratio:1;object-fit:cover;background:#161b18;border-radius:var(--radius-card);margin-block:var(--space-4)}
.account-hero>div:first-child{min-width:0}
.member-connect-actions{display:flex;flex-wrap:wrap;gap:12px;max-width:100%}
.member-connect-actions>.btn{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
#main .box-discovery-tools>.box-connect-qr{grid-column:1/-1;justify-self:start;max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}
#main .box-discovery-tools>.account-search{grid-column:1;min-width:0}
#main .box-discovery-tools>[data-action="box-map"]{grid-column:2;min-width:0}
#connect-main{box-sizing:border-box;width:100%;overflow-wrap:anywhere}
#connect-main>.btn:not([hidden]){display:flex;width:100%;max-width:100%;box-sizing:border-box;justify-content:center;white-space:normal;text-align:center;margin:12px 0 0}
#connect-main>p{margin-block:16px}
#contract-main>#finish-qr{display:flex;margin:16px auto 32px;max-width:calc(100% - 32px)}
@media(max-width:700px){.member-connect-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.member-connect-actions>.btn{width:100%}#main .box-discovery-tools>.box-connect-qr{justify-self:stretch;width:100%}#connect-main{padding:32px 20px}}

/* Actionable toast reuses common controls; hidden actions cannot receive focus. */
#toast:has(.toast-action){display:flex;align-items:center;gap:var(--space-3);text-align:left}
#toast.toast-show:has(.toast-action){pointer-events:auto}
#toast .toast-action{flex:none;color:inherit;border-color:currentColor;background:transparent}

/* Existing-member choice: separate from the preceding join guidance. */
.box-join-existing{margin-top:var(--space-4);gap:var(--space-3);font-size:14px;line-height:1.6;cursor:pointer}
.box-join-existing input[type=checkbox]{width:var(--space-5);height:var(--space-5);min-height:0;margin-top:2px}


/* A clipped loading strip below the header keeps box colors and logo separate. */
.mobile-pull-refresh{position:fixed;top:var(--pull-refresh-top,80px);left:0;right:0;height:var(--pull-refresh-offset,0px);z-index:40;display:grid;place-items:center;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .18s ease;background:var(--color-canvas,#f7f8fa);isolation:isolate}
.mobile-pull-refresh[data-visible=true]{opacity:1}
.mobile-pull-refresh[hidden]{display:none}
.pull-refresh-logo{display:block;width:28px;height:28px;flex:none;opacity:var(--pull-refresh-progress,1);transform:scale(calc(.75 + var(--pull-refresh-progress,1) * .25))}
.mobile-pull-refresh[data-loading=true] .pull-refresh-logo{animation:aglet-pull-logo 1s ease-in-out infinite}
.pull-refresh-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes aglet-pull-logo{0%,100%{transform:scale(.88);opacity:.6}50%{transform:scale(1);opacity:1}}
@media(max-width:700px){html.has-mobile-pull-refresh{overscroll-behavior-y:none}html.pull-refresh-active #main{translate:0 var(--pull-refresh-offset,0px)}html.pull-refresh-settling #main{transition:translate .22s cubic-bezier(.2,.8,.2,1)}html.pull-refresh-settling .mobile-pull-refresh{transition:height .22s cubic-bezier(.2,.8,.2,1),opacity .18s ease}}
@media(min-width:701px){.mobile-pull-refresh{display:none}}
@media(prefers-reduced-motion:reduce){html.pull-refresh-settling #main,.mobile-pull-refresh{transition:none!important}.mobile-pull-refresh[data-loading=true] .pull-refresh-logo{animation:none;opacity:1;transform:none}}

/* CRM membership: compact facts, one action group; shared control sizing retained. */
.crm-pass-workspace{display:grid;gap:var(--space-4);min-width:0}
.crm-pass-workspace>.panel{margin:0;min-width:0}
.crm-pass-workspace .member-pass-card{padding:var(--space-5)}
.crm-pass-workspace .member-pass-card .eyebrow{display:none}
.crm-pass-workspace .member-pass-card .account-section-head{align-items:center;flex-wrap:wrap;gap:var(--space-3)}
.crm-pass-workspace .crm-pass-controls{margin:0;gap:var(--space-2);justify-content:flex-start}
.crm-pass-workspace .crm-pass-controls .btn{flex:0 0 auto}
.crm-pass-workspace .member-pass-remaining{margin:var(--space-4) 0 var(--space-2);gap:var(--space-2)}
.crm-pass-workspace .member-pass-remaining strong{font-family:inherit;font-size:28px;line-height:1.25;font-weight:750}
.crm-pass-workspace .member-pass-card h3{margin:var(--space-2) 0;font-size:16px}
.crm-pass-workspace .holding-stats{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:var(--space-3) 0}
.crm-pass-workspace .holding-stats>div{display:flex;align-items:baseline;gap:var(--space-2);padding:0;background:none;border-radius:0}
.crm-pass-workspace .holding-stats strong{font-size:16px;line-height:1.5}
.crm-pass-workspace .member-pass-card .tiny{margin-top:var(--space-2);line-height:1.5}
.crm-pass-workspace .member-pass-card details{margin-top:var(--space-3);border-top:1px solid var(--color-line);padding-top:var(--space-3)}
@media(max-width:700px){
 .crm-pass-workspace .member-pass-card{padding:var(--space-4)}
 .crm-pass-workspace .member-pass-card .account-section-head{display:block}
 .crm-pass-workspace .crm-pass-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--space-3);width:100%}
 .crm-pass-workspace .crm-pass-controls .btn{width:100%;min-width:0}
 .crm-pass-workspace .crm-pass-controls .btn:first-child:last-child{grid-column:1/-1}
}

/* Contract search aligns the controls, not the label above the input. */
.contract-workspace .cw-toolbar{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:nowrap}
.contract-workspace .cw-toolbar .account-field{flex:1;min-width:0;margin:0}
.contract-workspace .cw-toolbar .cw-filters{display:flex;align-items:center;gap:var(--space-2);margin:0;padding:0;flex-shrink:0}
@media(max-width:700px){.contract-workspace .cw-toolbar{flex-wrap:wrap}.contract-workspace .cw-toolbar .account-field{flex-basis:100%}.contract-workspace .cw-toolbar .cw-filters{overflow-x:auto;flex-wrap:nowrap}.contract-workspace .cw-toolbar .cw-filters .btn{flex-shrink:0}}
/* Override the shared #main field margins as well as feature-level toolbar rules. */
#main .contract-workspace .cw-toolbar>.account-field{margin:0;align-self:end}
#main .contract-workspace .cw-toolbar input[type=search],
#main .contract-workspace .cw-toolbar .cw-filters>.btn{height:var(--control-height);min-height:var(--control-height);box-sizing:border-box;padding-block:0;margin-block:0}
#main .contract-workspace .cw-toolbar>.cw-filters{align-self:end;padding-block:0;margin-block:0}
/* Shared list selection: neutral black, independent of each box theme. */
body :is(#main,#modal) :is(.crm-revenue-filters,.event-filters,.filterbar,.member-list-filters,.platform-task-filters,.post-categories,.record-kind-filters,.wod-history-record-filters,.wod-space-categories,.work-task-filters)>:is(button,a,.btn):is(.active,.is-active,.is-current,[aria-pressed="true"],[aria-selected="true"],[aria-current="page"]){background:#20262d!important;color:#fff!important;border-color:#20262d!important;box-shadow:none!important}
body :is(#main,#modal) :is(.cw-filters,.crm-member-filters:not(.cw-tabs),.member-list-filters,.event-filters)>:is(button,a,.btn):is(.active,.is-active,[aria-pressed="true"],[aria-selected="true"]) :is(span,small){color:inherit}
body #main :is(.cw-tabs,.cw-filters,.crm-member-tabs,.crm-members-screen .crm-member-filters,.history-workflow-filters,.record-page-tabs,.wod-workspace-tabs,.member-management-tabs,.purchase-category-tabs,.checkin-section-tabs,.history-closeout-tabs,.operator-tool-tabs,.community-section-tabs,.tools-tabs)>:is(button,a,.btn):is(.active,.is-active,.is-current,[aria-pressed="true"],[aria-selected="true"],[aria-current="page"]){background:transparent!important;color:#20262d!important;border-bottom-color:#20262d!important;box-shadow:none!important;border-bottom-width:2px!important;border-bottom-style:solid!important}

/* One thin underline; shared My Box heading typography across both destinations. */
#main .community-section-tabs.box-community-tabs>a{font-size:14px;line-height:1.4;border-bottom-width:1px}
body[data-workspace="box"] #main .box-community-page .member-box-home-identity>h1{font-size:28px;font-weight:800;line-height:1.3;letter-spacing:-.8px;margin:0}
body[data-workspace="member"] #main .box-community-page .member-box-home-identity>h1{font-size:clamp(24px,3vw,30px);font-weight:800;line-height:1.4;letter-spacing:-.7px;margin:0}
#main .box-community-page .member-box-home-identity>p{margin:var(--space-1) 0 0;font-size:13px;font-weight:400;color:var(--muted)}
#main .box-community-page .member-box-home-heading{padding:var(--space-2) 0 var(--space-4);margin:0}
@media(max-width:700px){body[data-workspace="box"] #main .box-community-page .member-box-home-identity>h1{font-size:26px}}

/* My Box and its board share one header geometry; controls follow the tab rail. */
body:is([data-workspace="member"],[data-workspace="box"]):is([data-page="today"],[data-page="home"],[data-page="box-community"]) #main{padding-top:var(--space-6)}
body:is([data-workspace="member"],[data-workspace="box"]):is([data-page="today"],[data-page="home"],[data-page="box-community"]) #main .member-box-home-heading{display:flex;align-items:center;padding:var(--space-2) 0 var(--space-4);margin:0;border:0;border-radius:0;background:transparent;max-width:none}
body[data-workspace="box"] #main .member-box-home-identity>h1{font-size:28px;font-weight:800;line-height:1.3;letter-spacing:-.8px;margin:0;overflow-wrap:anywhere}
body:is([data-workspace="member"],[data-workspace="box"]) #main .member-box-home-identity>p{margin:var(--space-1) 0 0;font-size:13px;font-weight:400;line-height:1.5;color:var(--muted)}
body:is([data-workspace="member"],[data-workspace="box"]) #main .community-section-tabs.box-community-tabs{margin:0 0 var(--space-6);padding:0;gap:0}
body:is([data-workspace="member"],[data-workspace="box"]) #main .community-section-tabs.box-community-tabs>a{padding:12px 8px;border-bottom:2px solid transparent;font-size:14px;line-height:1.4;font-weight:400}
body:is([data-workspace="member"],[data-workspace="box"]) #main .community-section-tabs.box-community-tabs>a.active{font-weight:750}
#main .community-section-tabs::after{height:2px}
#main .community-section-tabs.box-community-tabs::after{display:none}
body[data-workspace="box"] #main .box-community-page{max-width:none;margin:0}
body[data-workspace="member"] #main .box-community-page{max-width:760px;margin:0}
#main .box-home-operating-actions{margin:0 0 var(--space-4);align-items:center}
body:is([data-workspace="member"],[data-workspace="box"]):is([data-page="today"],[data-page="home"],[data-page="box-community"]) #topbar{background:var(--color-canvas);border-bottom:0;box-shadow:none}
@media(max-width:700px){
 body:is([data-workspace="member"],[data-workspace="box"]):is([data-page="today"],[data-page="home"],[data-page="box-community"]) #main{padding-top:var(--space-3)}
 body[data-workspace="box"] #main .member-box-home-identity>h1{font-size:26px}
}
/* Box community uses a flat list with separators; detail and editor surfaces stay intact. */
#main .box-community-page .post-list-card[data-bc-list]{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#main .box-community-page [data-bc-list]>.post-row{margin:0;padding:var(--space-5) 0;border:0;border-bottom:1px solid var(--color-line);border-radius:0;background:transparent;box-shadow:none}
#main .box-community-page [data-bc-list]>.post-row:last-child{border-bottom:0}
/* WOD community category chips retain AGLET lime; operational filters stay black. */
body :is(#main,#modal) .wod-space-page .wod-space-categories>button[data-wod-space="category"][aria-pressed="true"]{background:var(--color-accent)!important;color:var(--color-ink)!important;border-color:var(--color-accent)!important;box-shadow:none!important}
body :is(#main,#modal) .wod-space-page .wod-space-categories>button[data-wod-space="category"][aria-pressed="false"]{background:transparent;color:var(--color-secondary);border-color:var(--color-line);box-shadow:none}
/* Quiet neutral grouping for PR entry and saved workouts. */
body :is(#main,#modal) :is(.pr-template-selected,.pr-entry-form .record-primary-result){background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:var(--space-4);color:var(--color-ink);box-shadow:none}
body :is(#main,#modal) .pr-template-grid>button{background:var(--color-surface);border-color:var(--color-line);color:var(--color-ink);box-shadow:none}
body :is(#main,#modal) .pr-template-grid>button:hover{background:var(--color-surface-soft)}
body :is(#main,#modal) .pr-entry-form :is(input,select,textarea){background:var(--color-surface)}
body :is(#main,#modal) .saved-wod-row{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:var(--space-4);margin-block:var(--space-3);box-shadow:none}
body :is(#main,#modal) .saved-wod-row pre{color:var(--color-secondary)}
body :is(#main,#modal) .saved-wod-row>.account-actions{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-line)}

/* Gray canvas behind white PR and saved-workout surfaces, including mobile full-page sheets. */
#modal:has(.pr-template-intro,.pr-entry-form,.saved-workout-search),
#modal:has(.pr-template-intro,.pr-entry-form,.saved-workout-search)>.modal-content,
#modal:has(.pr-template-intro,.pr-entry-form,.saved-workout-search)>.modal-head{background:var(--color-canvas)}
#modal:has(.pr-template-intro,.pr-entry-form,.saved-workout-search)>.modal-head{border-bottom-color:var(--color-line)}


/* Route focus targets the content landmark, not an interactive control. */
#main[tabindex='-1']:focus{outline:none}


/* Unconnected members: one clear entry to the existing join and personal QR flows. */
.connect-guide{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:var(--space-6);margin-block:var(--space-5);color:var(--color-ink);min-width:0}
.connect-guide-intro{display:flex;gap:var(--space-4);align-items:flex-start}
.connect-guide-mark{display:grid;place-items:center;flex:none;background:var(--color-accent);border-radius:var(--radius-card);padding:var(--space-3)}
.connect-guide-mark svg{width:28px;height:28px}
.connect-guide .eyebrow{color:var(--color-secondary)}
.connect-guide h2{word-break:keep-all;font-size:clamp(20px,2vw,26px);line-height:1.4;margin:var(--space-1) 0 var(--space-2)}
.connect-guide p{color:var(--color-secondary);line-height:1.65;margin:0;overflow-wrap:anywhere}
.connect-guide .member-connect-actions{margin-top:var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-3)}
.connect-guide .member-connect-actions .btn{flex:0 1 auto;white-space:normal;text-align:center}
.connect-guide-status{margin-top:var(--space-5);border-top:1px solid var(--color-line);padding-top:var(--space-4);display:grid;gap:var(--space-2)}
.connect-guide-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);margin-top:var(--space-8);padding-block:var(--space-6);border-block:1px solid var(--color-line)}
.connect-guide h3{font-size:17px;line-height:1.5;margin:var(--space-2) 0}
.connect-guide-how{margin-top:var(--space-8)}
.connect-guide-how ol{padding-left:var(--space-5);margin:var(--space-4) 0 0;display:grid;gap:var(--space-5)}
.connect-guide-how li{padding-left:var(--space-2)}
.connect-guide-how li::marker{font-weight:700}
.connect-guide-how li p{margin-top:var(--space-2)}
.connect-guide .connect-guide-footnote{font-size:13px;margin-top:var(--space-4)}
@media(max-width:700px){.connect-guide{padding:var(--space-5) var(--space-4)}.connect-guide-features{grid-template-columns:1fr;gap:var(--space-5)}.connect-guide .member-connect-actions{display:grid;grid-template-columns:minmax(0,1fr)}.connect-guide .member-connect-actions .btn{width:100%}.connect-guide-mark{padding:var(--space-2)}.connect-guide-mark svg{width:24px;height:24px}}

/* Compact home invitation; the full My Box guide remains detailed. */
.connect-guide--compact{padding:var(--space-4);background:var(--color-surface);box-shadow:none}
.connect-guide--compact .connect-guide-intro{align-items:center;gap:var(--space-3)}
.connect-guide--compact .connect-guide-mark{padding:var(--space-2);background:var(--color-surface-soft)}
.connect-guide--compact .connect-guide-mark svg{width:24px;height:24px}
.connect-guide--compact h2{font-size:18px;margin:0 0 var(--space-1);line-height:1.4}
.connect-guide--compact p{font-size:13px;line-height:1.5}
.connect-guide--compact .member-connect-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-4)}
.connect-guide--compact .member-connect-actions .btn{width:100%;min-width:0}

@media(min-width:901px){.connect-guide--compact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4)}.connect-guide--compact .member-connect-actions{margin:0}.connect-guide--compact .connect-guide-status{grid-column:1/-1;margin:0}}
/* Photo review uses shared controls and stacks at the standard mobile boundary. */
.photo-evidence-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line,#e5e7eb)}
.photo-evidence-row>div{min-width:0;overflow-wrap:anywhere}
.photo-evidence-row .btn{flex-shrink:0}
.photo-evidence-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.photo-evidence-grid section{min-width:0}
.photo-evidence-grid figure{margin:0 0 16px}
.photo-evidence-grid img{display:block;width:100%;height:auto}
.photo-evidence-grid pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}
@media(max-width:700px){.photo-evidence-grid{grid-template-columns:minmax(0,1fr);gap:16px}}

/* 2026-10-29 shared component refresh. Colour !important declarations below are
   limited to legacy box-theme/selected-control boundaries; layout uses normal cascade. */
/* Box colours still tint the workspace, but are pulled toward the AGLET green so every box reads as one family. */
body[data-box-theme]{--surface-deep:color-mix(in srgb,var(--box-deep) 40%,#1d2f25)}

/* ---------- 2. One deep green family ---------- */
body[data-workspace="box"] .sidebar,
body[data-box-theme][data-workspace="box"] .sidebar{background:var(--surface-deep)}
body #floating-notes .floating-workspace{background:var(--surface-deep)!important}
.account-hero{background:var(--brand-deep)}
.operation-counts button[aria-pressed="true"],
.operation-counts button.active{background:var(--brand-deep)!important;border-color:var(--brand-deep)!important;color:#fff!important}

/* ---------- 1. Lime only for the main action ---------- */
/* Sidebar: the current page is marked with a lime bar instead of a lime block. */
body[data-workspace="box"] #sidebar .nav-item.active,
body[data-box-theme][data-workspace="box"] #sidebar .nav-item.active{background:#ffffff1f!important;color:#fff!important;box-shadow:none;border-color:transparent!important}
body[data-workspace="box"] #sidebar .nav-item.active .nav-icon,
body[data-workspace="box"] #sidebar .nav-item.active .icon,
body[data-box-theme][data-workspace="box"] #sidebar .nav-item.active .nav-icon{color:var(--box-accent,var(--color-accent))!important}
/* Workspace switch: white pill on the deep sidebar. */
body[data-workspace=box] #sidebar .admin-workspace-switch{background:#ffffff14}
body[data-workspace=box] #sidebar .admin-workspace-switch::before{background:#fff}
body[data-workspace=box] #sidebar .admin-workspace-switch button[aria-pressed="true"]{background:transparent;color:var(--brand-deep);font-weight:700}
body[data-workspace=box] #sidebar .admin-workspace-switch .btn[aria-pressed="false"]{color:#ffffffc7}
/* Secondary choices use the deep green outline instead of lime. */
.program-kind-picker .btn[aria-pressed="true"]{border-color:var(--brand-deep)!important;background:var(--brand-deep-soft)!important;color:var(--brand-deep)!important}
.notification-detail .btn.lime{background:transparent!important;border:1px solid var(--line)!important;color:var(--ink)!important}
.program-draft-resume{max-width:none;margin:0 0 16px}
.program-draft-resume .btn.lime{background:var(--brand-deep)!important;border-color:var(--brand-deep)!important;color:#fff!important}
/* Draft actions keep the shared control size without growing each list row. */
#modal .program-draft-list{gap:0;margin:0}
#modal .program-draft-list>.program-draft-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--line);border-radius:0}
#modal .program-draft-list>.program-draft-row:last-child{border-bottom:0}
:is(#main,#modal) :is(.program-draft-row-copy,.program-draft-resume-copy){min-width:0}
#modal .program-draft-row-copy h3,#main .program-draft-resume-copy>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.5;margin:0}
#modal .program-draft-row-copy p{margin:var(--space-1) 0 0;line-height:1.5}
:is(#main,#modal) .program-draft-row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:var(--space-2);margin:0}
:is(#main,#modal) .program-draft-row-actions>.btn{width:100%;min-height:var(--control-height);height:var(--control-height);margin:0;padding-inline:var(--space-3);white-space:nowrap}
#main .program-draft-resume{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-soft);border:0;border-radius:var(--radius-control)}
#main .program-draft-resume-copy{display:grid;gap:var(--space-1)}
#main .program-draft-resume-copy>.tiny{line-height:1.5;color:var(--muted)}
@media(max-width:700px){
 #main .program-draft-resume{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}
 #main .program-draft-resume-copy{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:var(--space-1) var(--space-2)}
 #main .program-draft-resume-copy>span:first-child{display:none}
 #main .program-draft-resume-copy>.tiny{white-space:nowrap}
}

/* Metadata is opt-in by component class; native small/time and editor content retain their typography. */
:is(#main,#modal) :is(.tiny,.session-caption,.class-when,.movement-hint,.dashboard-seats,.dashboard-class-wod,.home-wod-swipe-hint,.community-hot-swipe-hint,.booking-time-state){font-size:var(--font-meta)}
:is(#main,#modal) :is(.program-steps span,.program-draft-bar>span,.program-source-actions .text-link,.program-kind-picker .text-link,.program-page-submit>div>p,.account-section-head .text-link,.handoff-date .text-link,.dashboard-member-counts span){font-size:var(--font-meta)}
.notification-popover :is(.notification-type,.notification-delete-controls button,.notification-popover-head span,.notification-title small){font-size:var(--font-meta)}
#sidebar .admin-nav-section{font-size:var(--font-caption);letter-spacing:.02em;opacity:.8}
#sidebar .nav-caption{font-size:var(--font-caption,11px)}
#sidebar .brand-sub{font-size:var(--font-meta)}
/* Reserve the same two-line identity slot for community and box menus. */
body[data-workspace="box"] #sidebar .brand-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.5;height:3em;min-height:3em;flex-shrink:0;overflow:hidden;overflow-wrap:anywhere}
#sidebar .brand small{font-size:9px}
#mobile-nav a span{font-size:var(--font-caption)}
.shell>footer,.shell>footer span{font-size:var(--font-caption)}
.box-home-operating-date,.tiny.muted{line-height:1.6}

/* ---------- 4. Floating button never covers content ---------- */
body #floating-notes .floating-workspace{right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom))}
body:has(.floating-workspace) .shell>footer{padding-right:96px}
body:has(#floating-notes .floating-workspace) #main{padding-bottom:max(var(--workspace-note-clearance),var(--main-bottom,0px))}
@media(max-width:700px){
  body #floating-notes .floating-workspace{width:48px;min-width:48px;height:48px;bottom:calc(16px + env(safe-area-inset-bottom));right:16px}
  body:has(#floating-notes .floating-workspace) #main{padding-bottom:max(88px,var(--main-bottom,0px))}
  body:has(.program-page-submit) #floating-notes .floating-workspace{display:none}
  /* Admin mobile: memo stays fixed in the sticky top bar beside the bell and opens downward from it, so it never covers card actions. */
  body[data-workspace="box"] #floating-notes .floating-workspace{position:fixed;top:calc(10px + env(safe-area-inset-top));right:54px;bottom:auto;width:44px;min-width:44px;height:44px;background:transparent!important;color:var(--color-ink);border:0;box-shadow:none}
  body[data-workspace="box"]:has(#floating-notes .floating-workspace) #main{padding-bottom:var(--main-bottom,0px)}
  body[data-workspace="box"] #floating-notes .workspace-note{top:calc(65px + env(safe-area-inset-top) + var(--space-2));bottom:auto}
  body[data-workspace="box"] .top-context{padding-right:52px;min-width:0}
}
body:has(.program-page-submit) #floating-notes .floating-workspace{display:none}

/* ---------- 5. Fuller first screen ---------- */
.auth-story{position:relative}
@media(max-width:700px){
  .auth-layout.auth-refined .auth-brand-mark{position:relative;padding-top:120px}
  /* Two weight plates: a lime ring and a deep green disc. */
  .auth-layout.auth-refined .auth-brand-mark::before{content:"";position:absolute;left:4px;top:4px;width:72px;height:72px;border-radius:50%;border:14px solid var(--color-accent);background:radial-gradient(circle,var(--brand-deep) 0 9px,transparent 10px)}
  .auth-layout.auth-refined .auth-brand-mark::after{content:"";position:absolute;left:78px;top:22px;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,var(--color-canvas) 0 7px,var(--brand-deep) 8px)}
}
/* Photo-less box cover: pattern + "사진 준비 중" instead of one large letter. */
.box-browse-cover:not(:has(img)){position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--box-color,#d6f247) 70%,#fff),color-mix(in srgb,var(--box-color,#d6f247) 30%,#fff));background-image:radial-gradient(circle at 1px 1px,#21372b14 1px,transparent 0),linear-gradient(135deg,color-mix(in srgb,var(--box-color,#d6f247) 70%,#fff),color-mix(in srgb,var(--box-color,#d6f247) 30%,#fff));background-size:14px 14px,auto}
.box-browse-cover:not(:has(img))>span{font-size:44px;width:84px;height:84px;display:grid;place-items:center;border-radius:24px;background:#ffffffd9;color:var(--brand-deep)!important;box-shadow:0 6px 20px #21372b1a}
.box-browse-cover:not(:has(img))::after{content:"사진 준비 중";position:absolute;right:14px;bottom:12px;font-size:12px;font-weight:600;color:#21372bb3;background:#ffffffb3;padding:4px 10px;border-radius:999px}
/* Admin prompt to add box photos (rendered only when the box has none). */
.dashboard-photo-prompt{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:18px 22px;border-radius:var(--radius-card);background:var(--brand-deep-soft);border:1px solid #d5e2d8}
.dashboard-photo-prompt h3{font-size:16px;margin:0 0 4px;color:var(--brand-deep)}
.dashboard-photo-prompt p{margin:0;font-size:13px;color:var(--muted)}
.dashboard-photo-prompt .btn{flex-shrink:0;background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}
@media(max-width:700px){.dashboard-photo-prompt{flex-direction:column;align-items:stretch}}

/* ---------- 6. Consistent page widths ---------- */
@media(min-width:1100px){
  #main{max-width:var(--page-max)}
  .platform-body #platform-main,.platform-body .platform-header{max-width:var(--page-max);margin-left:auto;margin-right:auto;padding-left:36px;padding-right:36px;box-sizing:border-box;width:100%}
}

/* Operator center: tabs and filters use the deep green; metric cards fill the row. */
.platform-tabs .btn.lime[aria-pressed="true"]{background:var(--brand-deep)!important;border-color:var(--brand-deep)!important;color:#fff!important}
.platform-metrics{grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}

/* Member list navigation: single scrolling row, never shrink labels or wrap archive. */
#main .crm-members-screen .crm-member-filters{flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none}
#main .crm-members-screen .crm-member-filters>.btn{flex:0 0 auto;white-space:nowrap}
@media(max-width:700px){
 #main .crm-members-screen>.page-head{min-width:0}
 #main .crm-members-screen>.page-head>.crm-actions{display:flex;flex-wrap:nowrap;justify-content:flex-start;width:100%;max-width:100%;min-width:0;overflow-x:auto;scrollbar-width:none;gap:var(--space-2)}
 #main .crm-members-screen>.page-head>.crm-actions>*{flex:0 0 auto;white-space:nowrap}
}
/* AI ability analysis: scoped chart and evidence; shared controls remain unchanged. */
.ability-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);cursor:pointer;list-style:none}.ability-panel>summary h2{margin:0}.ability-panel>summary p{margin:8px 0 0}.ability-status{margin:20px 0;font-size:13px;color:var(--color-secondary)}.ability-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}.ability-radar{display:block;width:100%;max-width:460px;margin:auto;overflow:visible}.ability-radar text{font-size:12px;fill:var(--color-ink);font-family:inherit}.ability-ring{fill:none;stroke:var(--color-line);stroke-width:1}.ability-area{fill:#779c3f;fill-opacity:.18;stroke:none}.ability-edge{stroke:#4a722c;stroke-width:2;fill:none}.ability-dot{fill:#4a722c}.ability-area.previous{fill:#7896b3;fill-opacity:.06}.ability-edge.previous{stroke:#7896b3;stroke-dasharray:4 4}.ability-dot.previous{fill:#7896b3}.ability-unknown{stroke:#9aa3ad;stroke-dasharray:2 2;fill:var(--color-surface)}.ability-legend{display:flex;justify-content:center;gap:16px;font-size:12px;color:var(--color-secondary);flex-wrap:wrap}.ability-summary{padding:20px;background:var(--color-canvas);border-radius:var(--radius-card)}.ability-summary h3{margin:10px 0;font-size:20px;line-height:1.5;word-break:keep-all}.ability-summary p{line-height:1.75;overflow-wrap:anywhere}.ability-evidence{margin-top:24px}.ability-evidence>details{border-top:1px solid var(--color-line)}.ability-evidence>details>summary{display:flex;gap:12px;align-items:center;min-height:var(--touch-target);padding:12px 0;cursor:pointer;font-size:14px}.ability-evidence>details>summary strong{font-size:13px;margin-left:auto;font-weight:500;color:var(--color-secondary)}.ability-evidence ul{padding:0;list-style:none}.ability-evidence li{padding:12px 0;border-top:1px solid var(--color-line);font-size:13px}.ability-evidence li>span{display:block;margin-top:5px;color:var(--color-secondary)}.ability-evidence pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--color-canvas);padding:12px;font:inherit;line-height:1.7}.ability-evidence p,.ability-method p{line-height:1.7;font-size:13px;overflow-wrap:anywhere}.ability-method{margin:20px 0;color:var(--color-secondary);font-size:13px}.ability-method>summary{cursor:pointer;min-height:var(--touch-target);display:flex;align-items:center}.ability-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;margin:20px 0}.ability-consent input{flex:none;margin-top:4px}.ability-error{color:var(--color-danger)}
@media(max-width:700px){.ability-layout{grid-template-columns:minmax(0,1fr);gap:20px}.ability-summary h3{font-size:18px}.ability-evidence>details>summary{font-size:13px}.ability-evidence>details>summary strong{font-size:12px}.ability-panel{padding:20px 16px}.ability-panel .account-actions{display:flex;flex-wrap:wrap;gap:8px}}

/* Competition discovery: prioritize cards, retain shared control dimensions. */
.competitions-page .event-compact-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 12px}
.competitions-page .event-compact-tools .record-kind-filters{margin:0;gap:4px}
.competitions-page .event-compact-tools .record-kind-filters>.btn{flex:0 0 auto}
.competitions-page .event-compact-tools>.text-link{white-space:nowrap;font-size:var(--font-size-meta,13px)}
.competitions-page .event-compact-filters{gap:8px}
#main .competitions-page .event-compact-filters .account-field{gap:0;margin:0}
.competitions-page .event-compact-count{margin:16px 0 10px}

/* Event discovery shares the WOD community header, search and category controls. */
.event-community-page{max-width:1180px}
.event-community-filter-row.wod-space-search{margin-bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px}
.event-community-filter-row .wod-space-categories{margin:0;min-width:0}
.event-community-filter-row>select{flex:0 0 auto;max-width:110px}
body :is(#main,#modal) .event-community-page .wod-space-categories>button[data-competition-category][aria-pressed="true"]{background:var(--color-accent)!important;color:var(--color-ink)!important;border-color:var(--color-accent)!important;box-shadow:none!important}

/* Community discovery search and select share the event control height. */
#main .wod-space-page>.wod-space-search>label:first-child{height:var(--control-height);box-sizing:border-box}
#main .wod-space-page>.wod-space-search input{height:100%;min-height:0;padding-block:0}
#main .wod-space-page>.wod-space-search>select{height:var(--control-height);box-sizing:border-box;padding-block:0}

/* Shared community headings: eyebrow, title/action row, then description. */
body[data-workspace] #main .wod-space-library-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(var(--control-height),auto) auto;gap:8px 12px;align-items:center;text-align:left}
body[data-workspace] #main .wod-space-library-head>div{display:contents}
body[data-workspace] #main .wod-space-library-head .eyebrow{display:block;grid-column:1/-1;grid-row:1;margin:0}
body[data-workspace] #main .wod-space-library-head h1{grid-column:1;grid-row:2;margin:0;line-height:1.3;letter-spacing:-.8px}
body[data-workspace] #main .wod-space-library-head>.btn{grid-column:2;grid-row:2;justify-self:end;margin:0;white-space:nowrap}
body[data-workspace] #main .wod-space-library-head p{grid-column:1/-1;grid-row:3;margin:0;font-size:13px;line-height:1.6;color:var(--muted)}

/* Shared destination-tab indicator: measured width supports unequal/scrollable tabs. */
body :is(#main,#modal) [data-underline-motion]{position:relative}
body :is(#main,#modal) [data-underline-motion]::after{content:"";display:block!important;position:absolute;left:0;bottom:0;height:2px;width:var(--underline-width);background:var(--color-ink);transform:translateX(var(--underline-x));transition:transform var(--underline-duration,420ms) cubic-bezier(.22,.8,.25,1),width var(--underline-duration,420ms) cubic-bezier(.22,.8,.25,1);animation:none!important;pointer-events:none}
body[data-workspace] :is(#main,#modal) [data-underline-motion]>:is(a,button,.btn):is(.active,.is-active,.is-current,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]){border-bottom-color:transparent!important;box-shadow:none!important}
body :is(#main,#modal) [data-underline-motion][data-underline-motion][data-underline-motion]>:is(a,button)::after{display:none!important}
@media(prefers-reduced-motion:reduce){body :is(#main,#modal) [data-underline-motion]::after{transition:none!important}}
html[data-app-motion="none"] body :is(#main,#modal) [data-underline-motion]::after{transition:none!important}

/* Contract navigation and status share one underline treatment. */
#main .contract-workspace :is(.cw-tabs,.cw-filters){display:flex;flex-wrap:nowrap;gap:var(--space-1);border-bottom:1px solid var(--color-line);overflow-x:auto;scrollbar-width:none}
#main .contract-workspace :is(.cw-tabs,.cw-filters)>.btn{flex:0 0 auto;white-space:nowrap;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;color:var(--muted);padding-inline:var(--space-3)}

/* Underline controls never inherit secondary action button surfaces. */
body #main .contract-workspace :is(.cw-tabs,.cw-filters)>.btn{background:transparent!important;box-shadow:none!important}

/* Operator workspace: preserve the existing actions, group destinations once. */
.platform-body{background:var(--color-canvas);color:var(--color-ink)}
.platform-body .platform-header{padding-block:var(--space-4);border-bottom:1px solid var(--color-line)}
.platform-body #platform-main{max-width:var(--page-max);padding:var(--space-6);margin:auto;width:100%;box-sizing:border-box}
.ops-layout{grid-template-columns:220px minmax(0,1fr);gap:var(--space-8);align-items:start}
.ops-sidebar{top:var(--space-6);color:white}
.ops-identity{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid #ffffff24}
.ops-identity img{width:40px;height:40px;flex:none}.ops-identity strong,.ops-identity small{display:block}.ops-identity small{font-size:var(--font-caption);opacity:.7;margin-top:var(--space-1)}
.ops-navigation section{margin-top:var(--space-5)}.ops-navigation section>p{font-size:var(--font-caption);color:#ffffff99;margin:0 0 var(--space-2)}
.ops-navigation [data-tab]{width:100%;display:flex;align-items:center;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-control);background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}
.ops-navigation [data-tab] span{opacity:0}.ops-navigation [data-tab]:hover{background:#ffffff12}.ops-navigation [aria-current=page]{font-weight:700}.ops-navigation [aria-current=page] span{opacity:1}.ops-logout{color:#ffffffb3;margin-top:var(--space-6)}
.ops-content{min-width:0}.ops-content>.eyebrow{margin-bottom:var(--space-3)}.ops-menu-toggle{display:none}
.ops-content .panel{border-radius:var(--radius-card);box-shadow:none}.ops-content .platform-list{gap:0;background:var(--color-surface);border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--color-line)}
.ops-content .platform-row,.ops-content .platform-box-row{margin:0;border:0;border-bottom:1px solid var(--color-line);border-radius:0;text-align:left;padding:var(--space-5);min-width:0}.ops-content .platform-row:last-child,.ops-content .platform-box-row:last-child{border-bottom:0}
.ops-content .platform-row>span:first-child{min-width:0;overflow-wrap:anywhere}.ops-content .platform-row small{display:block;color:var(--muted);margin-top:var(--space-2);line-height:1.6}
.ops-content .platform-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:var(--space-2);padding-block:var(--space-2);scrollbar-width:none}.ops-content .platform-tabs>.btn{flex:none;white-space:nowrap;background:transparent;box-shadow:none}
.ops-content .platform-tabs>.btn.lime,.ops-content .platform-tabs>[aria-pressed=true]{background:var(--color-ink)!important;color:white!important;border-color:var(--color-ink)!important}
.ops-content .platform-metrics{gap:var(--space-3)}.ops-content .platform-task{border:0;border-bottom:1px solid var(--color-line);border-radius:0;padding-block:var(--space-4);background:transparent}.ops-content .platform-task:last-child{border-bottom:0}.ops-content .platform-task-copy{min-width:0;overflow-wrap:anywhere}
.ops-content .platform-detail{max-width:960px}.ops-content .platform-detail .platform-pre{white-space:pre-wrap;overflow-wrap:anywhere}.ops-content .platform-activity time{white-space:nowrap}
@media(max-width:1000px){.ops-layout{grid-template-columns:190px minmax(0,1fr);gap:var(--space-5)}.ops-content .platform-work-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.platform-body #platform-main{padding:var(--space-4)}.ops-layout{display:block}.ops-sidebar{position:static;max-height:none;margin-bottom:var(--space-5);padding:var(--space-4)}.ops-identity{border:0;padding:0}.ops-menu-toggle{display:flex;width:100%;justify-content:space-between;margin-top:var(--space-3);background:transparent!important;color:white!important;border-color:#ffffff40!important}.ops-content .platform-row{padding:var(--space-4);gap:var(--space-2)}.ops-content .platform-task{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2)}.ops-content .platform-task time{grid-column:2}.ops-content .platform-task>span:last-child{display:none}.ops-content .platform-box-row{flex-wrap:wrap;gap:var(--space-4)}}

.ops-content .platform-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-content .platform-metric{padding:var(--space-4);gap:var(--space-2)}.ops-content .platform-metric>span:last-child{display:none}.ops-content .platform-metric>strong{font-size:26px}
@media(max-width:700px){.ops-content .platform-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Operator app uses the same fixed/sidebar and mobile drawer pattern as box admin. */
.platform-body{--ops-navy:#202b40;--ops-navy-soft:#e9edf4}
.ops-ready #platform-main{margin-left:224px;width:calc(100% - 224px);max-width:none;padding:var(--space-8)}
.ops-ready .platform-header{margin-left:224px;width:calc(100% - 224px);max-width:none;padding-inline:var(--space-8)}
.ops-layout{display:block}.ops-content{max-width:var(--page-max);margin:auto}
.ops-sidebar{position:fixed;inset:0 auto 0 0;width:224px;height:100dvh;max-height:none;margin:0;padding:var(--space-6) var(--space-4);border-radius:0;background:var(--ops-navy);z-index:96;overflow-y:auto;overscroll-behavior:contain}
.ops-identity{position:relative}.ops-navigation{display:block}.ops-navigation [data-tab]{justify-content:flex-start;gap:var(--space-3)}.ops-navigation [data-tab] b{font-weight:inherit;flex:1}.ops-navigation [data-tab] .icon{width:18px;height:18px;color:#bdcce4}.ops-navigation [aria-current=page]{color:white;background:#ffffff18}.ops-navigation [aria-current=page] .icon{color:white}
.ops-content .btn.lime,.ops-content .btn.primary{background:var(--ops-navy);border-color:var(--ops-navy);color:white}.ops-content .pill{background:var(--ops-navy-soft);color:var(--ops-navy)}
.ops-close,.ops-backdrop,.platform-header .ops-menu-toggle{display:none}
@media(max-width:700px){
 .ops-ready #platform-main{margin:0;width:100%;padding:var(--space-4)}.ops-ready .platform-header{margin:0;width:100%;padding:var(--space-3) var(--space-4);display:flex;gap:var(--space-3);align-items:center}.ops-ready .platform-header>strong{flex:1}
 .ops-ready .platform-header .ops-menu-toggle{display:inline-flex;flex:none;width:var(--control-height);margin:0;color:var(--ops-navy)!important;border-color:var(--color-line)!important;background:var(--color-surface)!important;justify-content:center;padding:0}
 .ops-sidebar{width:min(300px,calc(100vw - 48px));transform:translateX(-100%);visibility:hidden;transition:transform var(--motion-sheet) var(--ease-out),visibility var(--motion-sheet)}
 .ops-drawer-open{overflow:hidden}.ops-drawer-open .ops-sidebar{transform:translateX(0);visibility:visible}.ops-close{display:inline-flex;margin-left:auto;flex:none;width:var(--control-height);padding:0;background:transparent!important;color:white!important;border:0}
 .ops-backdrop:not([hidden]){display:block;position:fixed;inset:0;width:100%;height:100dvh;border:0;background:#10182766;z-index:95}.ops-navigation{display:block}.ops-sidebar .ops-identity{padding-bottom:var(--space-4);border-bottom:1px solid #ffffff24}
}
@media(prefers-reduced-motion:reduce){.ops-sidebar{transition:none}}

/* Compact purchase queue: shared controls, original direct actions retained. */
.purchase-compact .account-section-head{margin-bottom:8px}
.purchase-compact h2 small{color:var(--muted);font-weight:400}
.purchase-request-all{display:inline-flex;align-items:center;min-height:var(--control-height);color:var(--muted);font-size:var(--font-meta);white-space:nowrap;text-decoration:none}
.purchase-request-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.purchase-request-identity{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;min-width:0;overflow-wrap:anywhere}
.purchase-request-identity span{color:var(--muted)}
.purchase-request-meta{display:flex;gap:12px;align-items:center;white-space:nowrap;font-variant-numeric:tabular-nums}
.purchase-request-meta small{color:var(--muted)}
.purchase-request-actions{margin:0;gap:8px}
@media(max-width:1000px){.purchase-request-row{grid-template-columns:1fr auto}.purchase-request-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:700px){.purchase-compact{padding:16px!important}.purchase-request-row{gap:8px 12px}.purchase-request-identity{grid-column:1/-1}.purchase-request-meta{grid-column:1/-1;justify-content:space-between}.purchase-request-actions{justify-content:flex-start}}
/* Holding range selection: existing shared button dimensions and focus retained. */
.holding-range-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-2);align-items:center}
.holding-range-summary .btn{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);min-width:0}
.holding-range-summary small{color:var(--muted);font-weight:400}
.holding-range-summary strong{font-size:var(--mobile-input-font-size)}
.holding-range-summary [aria-pressed=true]{border-color:var(--color-ink)}
.holding-calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:var(--space-4) 0 var(--space-2)}
.holding-calendar-week,.holding-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.holding-calendar-week{color:var(--muted);font-size:12px;margin-bottom:var(--space-1)}
.holding-date-cell{display:flex;align-items:center;justify-content:center;margin-block:var(--space-1)}
.holding-date-cell .holding-date{width:100%;min-width:0;padding-inline:0;background:transparent;box-shadow:none;border-color:transparent}
.holding-date-cell.is-between{background:var(--color-surface-soft)}
.holding-date-cell.is-edge .holding-date{background:var(--color-ink);color:white}
.holding-date:disabled{opacity:.3}
.holding-policy{margin:var(--space-3) 0;color:var(--muted);font-size:12px}
.holding-policy summary{cursor:pointer}
.member-holding-body [data-holding-calendar]{max-width:420px;margin-inline:auto}
/* Member holding calendar: full-width grid and explicit ink over generic primary buttons. */
#main .member-holding-body{margin-top:var(--space-3);padding-top:var(--space-3)}
#main .member-holding-body .holding-stats{margin:0 0 var(--space-2);gap:var(--space-2)}
#main .member-holding-body .holding-stats>div{padding:var(--space-3);gap:var(--space-1);background:var(--color-surface-soft)}
#main .member-holding-body .holding-stats strong{font-size:24px}
#main .member-holding-body .holding-stats+p{margin:var(--space-2) 0;font-size:12px}
#main .member-holding-body .holding-policy{margin:var(--space-2) 0;padding:0;border:0;background:none}
#main .member-holding-body .holding-form{margin-top:var(--space-3);gap:var(--space-2);align-content:start}
#main .member-holding-body [data-holding-calendar]{width:100%;min-width:0;justify-self:stretch}
#main .member-holding-body .holding-calendar-heading{margin-top:var(--space-3)}
#main .member-holding-body .holding-date-cell{margin-block:0}
#main .member-holding-body .holding-date{color:var(--ink);background:transparent}
#main .member-holding-body .holding-date:disabled{color:var(--muted);opacity:.4}
#main .member-holding-body .is-edge .holding-date{color:#fff;background:var(--ink)}
#main .member-holding-body [data-holding-duration]{margin:var(--space-1) 0}
#main .member-holding-body .holding-form .account-field{margin:var(--space-2) 0 0}
#main .member-holding-body .holding-form .form-error:empty{display:none}
#main .member-holding-body .holding-form>.btn{margin-top:var(--space-2)}
#main .member-holding-body .holding-history{margin-top:var(--space-4);padding-top:var(--space-3)}
.product-category-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:var(--space-3);scrollbar-width:none;margin-block:var(--space-3)}
.product-category-filters::-webkit-scrollbar{display:none}
.product-category-filters>.btn{flex:none;white-space:nowrap}

/* Product category rail: plain text with the shared measured sliding underline. */
body :is(#main,#modal) .product-category-filters{position:relative;display:flex;gap:0;padding:0;margin-block:var(--space-3);border:0;border-bottom:1px solid var(--color-line);background:transparent;box-shadow:none}
body :is(#main,#modal) .product-category-filters>.product-category-tab{flex:none;white-space:nowrap;min-height:var(--control-height);padding:var(--space-2) var(--space-4);margin:0;border:0;border-radius:0;background:transparent!important;box-shadow:none!important;color:var(--color-secondary);font:inherit;font-weight:500;cursor:pointer;transition:color var(--motion-base)}
body :is(#main,#modal) .product-category-filters>.product-category-tab[aria-pressed=true]{color:var(--color-ink);background:transparent!important;box-shadow:none!important}
body :is(#main,#modal) .product-category-filters:not([data-underline-motion])>.product-category-tab[aria-pressed=true]{border-bottom:2px solid var(--color-ink)}
/* Member detail: same controls/data, compact hierarchy and secondary disclosures. */
#main .crm-member-detail--compact > .page-head{margin:var(--space-3) 0 var(--space-2);align-items:center}
#main .crm-member-detail--compact > .page-head .eyebrow{display:none}
#main .crm-member-detail--compact > .page-head h1{font-size:26px}
#main .crm-member-detail--compact .crm-clean-strip{padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:none}
#main .crm-member-detail--compact .crm-clean-strip strong{font-size:18px}
#main .crm-member-detail--compact .crm-profile-card{padding:var(--space-5);margin-bottom:var(--space-4)}
#main .crm-member-detail--compact .crm-profile-card h2{font-size:17px}
#main .crm-member-detail--compact .crm-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}
#main .crm-member-detail--compact .crm-profile-grid>div{padding:0;border:0;background:none}
#main .crm-member-detail--compact .crm-profile-grid dd{margin-top:var(--space-1)}
#main .crm-member-detail--compact .crm-member-tabs{gap:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:var(--space-5)}
#main .crm-member-detail--compact .crm-member-tabs>.btn{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:var(--muted);white-space:nowrap;padding-inline:var(--space-4)}
#main .crm-member-detail--compact .crm-member-tabs>.btn[aria-pressed=true]{color:var(--ink)}
#main .crm-detail-more{position:relative}
#main .crm-detail-more>summary{list-style:none}
#main .crm-detail-more>summary::-webkit-details-marker{display:none}
#main .crm-detail-more>div{position:absolute;right:0;top:100%;z-index:8;min-width:180px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);padding:var(--space-3);box-shadow:var(--shadow-soft);display:grid;gap:var(--space-2)}
#main .crm-profile-consent-fold{border-top:1px solid var(--line);padding-top:var(--space-2);margin-top:var(--space-4)}
#main .crm-profile-consent-fold>summary,#main .crm-detail-fold>summary{cursor:pointer;min-height:var(--control-height);align-content:center;color:var(--muted);font-size:14px;overflow-wrap:anywhere}
#main .crm-detail-fold{padding:var(--space-2) var(--space-5);margin:0 0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper)}
#main .crm-detail-fold>section{padding:var(--space-3) 0;margin:0;border:0;box-shadow:none;background:none}
#main .crm-detail-fold>section>h2,#main .crm-detail-fold>section>.account-section-head>h2{display:none}
#main .crm-profile-consent-fold .crm-profile-consents{margin-top:var(--space-3)}
/* My Box: WOD first; retain header benefit links and all booking/record actions. */
#main .member-box-overview--focused .member-box-home-heading{margin-bottom:var(--space-3)}
#main .member-box-overview--focused .member-box-home-heading h1{font-size:24px}
#main .member-home-wod--focused{padding:var(--space-5)}
#main .member-home-wod--focused .member-home-section-heading{margin-bottom:var(--space-3)}
#main .member-home-wod--focused .member-home-section-heading h2{font-size:21px}
#main .member-home-wod--focused h3{font-size:20px;margin-block:var(--space-3) var(--space-2)}
#main .member-home-wod--focused .home-wod-times{margin-block:var(--space-2) var(--space-3)}
#main .member-home-wod--focused .member-home-wod-section{padding:var(--space-3) 0;margin-block:var(--space-3);border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
#main .member-home-wod--focused .home-wod-preview{font-size:16px;line-height:1.6;margin-bottom:0}
#main .member-home-wod--focused .member-home-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-4)}
#main .member-home-wod--focused .member-home-action-row>.btn{width:100%;margin:0}
#main .member-home-wod--focused .member-home-action-row>.btn:only-child{grid-column:1/-1}
#main .member-home-wod--focused .home-wod-swipe-hint{font-size:var(--font-meta);margin-block:var(--space-3) 0}
#main:has(.member-box-overview--focused) .member-home-quick-links{padding:var(--space-2) var(--space-5);border:0;border-radius:0;background:transparent;box-shadow:none}
#main:has(.member-box-overview--focused) .member-tools-shortcut{padding-block:var(--space-4);border-bottom:1px solid var(--line)}
#main:has(.member-box-overview--focused) .member-tools-shortcut strong{font-size:16px}
#main:has(.member-box-overview--focused) .member-tools-shortcut span{font-size:var(--font-meta)}
#main:has(.member-box-overview--focused) .member-home-contact{margin-block:var(--space-3)}
@media(max-width:700px){
 #main .crm-member-detail--compact > .page-head h1{font-size:24px}
 #main .crm-member-detail--compact > .page-head{flex-wrap:wrap;gap:var(--space-3)}
 #main .crm-member-detail--compact .crm-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .crm-member-detail--compact .crm-clean-strip{display:grid;gap:var(--space-4)}
 #main .crm-member-detail--compact .crm-member-tabs>.btn{padding-inline:var(--space-3)}
 #main .member-home-wod--focused{padding:var(--space-4)}
 #main .member-home-wod--focused .home-wod-times{font-size:var(--font-meta)}
}
/* A single expandable notice line preserves the published links and index. */
body[data-workspace="member"] #topbar .member-status-strip a{padding:var(--space-2);min-height:var(--control-height)}
body[data-workspace="member"] #topbar .member-status-strip strong{font-size:12px}
body[data-workspace="member"] #topbar .member-status-strip span{font-size:var(--font-caption)}
/* Keep the focused home surfaces flat even under older workspace panel rules. */
body[data-workspace="member"] #main:has(.member-box-overview--focused) .member-home-quick-links{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body[data-workspace="member"] #main .member-home-wod--focused .member-home-section-heading{border-bottom:0;padding-bottom:0}
body[data-workspace="member"] #main .member-home-wod--focused .member-home-section-heading h2{font-size:21px}
/* WOD detail reference: neutral, compact rows; preserve computation and source details. */
:is(#main,#modal) .wod-detail .training-section{padding-block:0}
:is(#main,#modal) .wod-detail .training-section>.eyebrow{margin-bottom:var(--space-2)}
:is(#main,#modal) .wod-detail .training-section>pre{margin-block:var(--space-2) 0}
:is(#main,#modal) .class-training-info{background:var(--color-surface-soft)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:var(--radius-control);box-shadow:none;margin-block:var(--space-4);padding:var(--space-4);font-size:13px}
:is(#main,#modal) .class-training-info strong{color:var(--ink)}
:is(#main,#modal) .class-info-heading{font-size:14px;margin:0 0 var(--space-2);color:var(--ink)}
:is(#main,#modal) .class-load-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding-block:var(--space-2);min-width:0}
:is(#main,#modal) .class-load-row>span{min-width:0;overflow-wrap:anywhere}
:is(#main,#modal) .class-load-row small{display:block;font-size:var(--font-meta);font-weight:400;color:var(--muted);margin-top:var(--space-1)}
:is(#main,#modal) .class-load-row>strong{text-align:right;font-size:16px;font-variant-numeric:tabular-nums;flex-shrink:0;max-width:55%;overflow-wrap:anywhere}
:is(#main,#modal) :is(.class-load-basis,.workout-comparison-basis)>summary{min-height:var(--control-height);align-content:center;font-size:var(--font-meta);color:var(--muted);cursor:pointer}
:is(#main,#modal) :is(.class-load-basis,.workout-comparison-basis) p{margin-block:var(--space-2);font-size:var(--font-meta);color:var(--muted)}
:is(#main,#modal) .class-training-info .personal-load-pr-action{margin-top:var(--space-2)}
:is(#main,#modal) .class-training-info .workout-performance-row{padding-block:var(--space-2)}
:is(#main,#modal) .wod-detail .scaling-recommendation{background:var(--color-surface-soft);border:1px solid var(--line);color:var(--ink);border-radius:var(--radius-control);box-shadow:none}
:is(#main,#modal) .wod-detail .scaling-recommendation h4{font-size:14px;margin:0 0 var(--space-2)}
:is(#main,#modal) .wod-detail .scaling-recommendation p{font-size:13px;margin-block:var(--space-2)}
:is(#main,#modal) .wod-detail .scaling-recommendation>details>summary{min-height:var(--control-height);align-content:center;font-size:var(--font-meta);color:var(--muted);cursor:pointer}

/* WOD detail spacing only; retain typography, neutral palette and44px disclosures. */
:is(#main,#modal) .wod-detail .training-section{margin-block:var(--space-4)}
:is(#main,#modal) .wod-detail .class-training-info{margin-block:var(--space-3);padding:var(--space-3)}
:is(#main,#modal) .wod-detail .class-info-heading{margin-bottom:var(--space-1)}
:is(#main,#modal) .wod-detail :is(.class-load-row,.class-training-info .workout-performance-row){padding-block:var(--space-1)}
:is(#main,#modal) .wod-detail .class-training-info>.class-load-info+.class-record-info{margin-top:var(--space-2);padding-top:var(--space-2)}
:is(#main,#modal) .wod-detail .scaling-recommendation{margin-block:var(--space-4);padding:var(--space-3)}

/* Compact reference disclosures requested by user: remove inherited details padding,
   and shorten these text rows only (primary buttons retain their standard size). */
:is(#main,#modal) .wod-detail .class-training-info :is(.class-load-basis,.workout-performance-prescription,.workout-comparison-basis){padding:0;margin:0}
:is(#main,#modal) .wod-detail .class-training-info :is(.class-load-basis,.workout-performance-prescription,.workout-comparison-basis)>summary{min-height:0;line-height:20px;padding:var(--space-1) 0;margin:0;font-size:var(--font-meta)}
/* Discovery detail only: list cards retain their existing design. */
#main .box-place{max-width:960px;margin-inline:auto;min-width:0;padding:var(--space-6);padding-bottom:calc(112px + var(--mobile-nav-height,0px));background:var(--paper);border-radius:var(--radius-card)}
#main .box-place-heading{display:flex;justify-content:space-between}
#main .box-place-heading>div{min-width:0;overflow-wrap:anywhere}
#main .box-place-heading .eyebrow{margin:0;color:var(--muted)}
#main .box-place-english{color:var(--muted);margin:0}
#main .box-place-tagline{margin-block:var(--space-3);color:var(--muted)}
#main .box-place-nav{gap:var(--space-5);overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);padding-bottom:var(--space-2);margin-top:var(--space-5)}
#main .box-place-nav button{white-space:nowrap;min-height:var(--control-height);font-size:14px;flex:none}
#main .box-place-section{border-bottom:1px solid var(--line);scroll-margin-top:var(--space-6)}
#main .box-place .box-place-section>.panel{padding:0;margin:0;background:transparent;border:0;box-shadow:none;border-radius:0}
#main .box-place-hours{border-top:1px solid var(--line);padding-top:var(--space-3);margin-top:var(--space-4)}
#main .box-place-hours>summary{min-height:var(--control-height);align-content:center;cursor:pointer;font-size:14px}
#main .box-place-address{justify-content:space-between;align-items:start;gap:var(--space-4)}
#main .box-place-address>div{min-width:0;overflow-wrap:anywhere}
#main .box-place-address .text-link{flex:none}
#main .box-place-directions,#main .box-place-amenity-note{color:var(--muted)}
#main .box-place-contacts{justify-content:flex-start;margin-top:var(--space-4)}
#main .box-place .box-amenity-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);padding:0;margin:0;list-style:none}
#main .box-place .box-amenity-list li{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-soft);border:0;border-radius:var(--radius-control);padding:var(--space-3);font-size:13px;min-width:0;overflow-wrap:anywhere}
#main .box-place .box-amenity-list svg{flex:none;color:var(--muted)}
#main .box-place-photos .box-gallery{position:relative;margin:0;padding:0;overflow:hidden}
#main .box-place-photos .box-gallery>.account-section-head{position:absolute;right:var(--space-3);top:var(--space-3);z-index:1;margin:0}
#main .box-place-photos .box-gallery h2{display:none}
#main .box-place-photos .box-gallery-count{background:#ffffffeb;border-radius:var(--radius-control);padding:var(--space-2) var(--space-3);color:var(--ink)}
#main .box-place-photos .box-gallery-track{grid-auto-columns:100%;scroll-padding:0}
#main .box-place-photos .box-gallery-slide{padding:0;border:0;border-radius:0;position:relative;background:var(--color-surface-soft)}
#main .box-place-photos .box-gallery-slide img{width:100%;height:100%;object-fit:cover}
#main .box-place-photos .box-gallery-slide>span{position:absolute;bottom:0;left:0;right:0;padding:var(--space-3);background:linear-gradient(transparent,#0008);color:white;text-align:left}
#main .box-place-photos .box-gallery-hint{display:none}
#main .box-place-photo-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);background:var(--color-surface-soft);border-radius:var(--radius-card);color:var(--muted)}
.box-place-actions{position:fixed;left:var(--place-left,0px);right:var(--place-right,0px);bottom:0;z-index:5;padding:var(--space-3) var(--space-4);background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 16px #20262d08}
.box-place-action-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);max-width:960px;margin:auto}
.box-place-action-inner>.btn{margin:0;width:100%;min-width:0;white-space:nowrap}
body[data-workspace="member"] .box-place-actions{bottom:var(--mobile-nav-height,0px)}
#main .box-place[data-place-preview="true"]{padding:var(--space-4)}
#main .box-place[data-place-preview="true"] .box-place-actions{position:static;padding:var(--space-3) 0;box-shadow:none;margin-top:var(--space-4)}
body.mobile-text-input-active .box-place-actions{visibility:hidden}
@media(max-width:700px){
 #main .box-place{padding:var(--space-4);padding-bottom:calc(100px + var(--mobile-nav-height,80px))}
 #main .box-place-heading h1{font-size:24px}
 #main .box-place .box-amenity-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .box-place-section{padding-block:var(--space-5)}
 #main .box-place-section .account-section-head{flex-wrap:wrap;align-items:center}
 .box-place-actions{padding:var(--space-3)}
}

/* Standalone discovery detail, scoped away from the administrator preview. */
body:has(.box-place[data-place-preview="false"]){background:var(--paper)}
body:has(.box-place[data-place-preview="false"]) :is(#sidebar,#topbar,#mobile-nav,.shell>footer){display:none!important}
body:has(.box-place[data-place-preview="false"]) .shell{margin:0!important;padding:0!important;width:100%;max-width:none}
body:has(.box-place[data-place-preview="false"]) #main{margin:0 auto!important;padding:0 0 90px!important;max-width:960px;width:100%}
body:has(.box-place[data-place-preview="false"]) #main>.text-link{display:none}
#main .box-place[data-place-preview="false"]{padding:0 24px 24px;border-radius:0;max-width:none}
#main .box-place-photos{position:relative;margin-inline:-24px}
#main .box-place-photos .box-gallery{border-radius:0}
#main .box-place-photos .box-gallery-track{border-radius:0}
#main .box-place-photos .box-gallery-slide{height:clamp(300px,55vw,520px)}
#main .box-place-photos :is(.account-section-head,.box-gallery-slide>span,.box-gallery-controls>button){display:none!important}
#main .box-place-photos .box-gallery-controls{position:absolute;bottom:12px;left:0;right:0;margin:0;justify-content:center;pointer-events:none}
#main .box-place-photos .box-gallery-dots{pointer-events:auto;padding:8px;background:#0004;border-radius:20px}
#main .box-place-photos .box-gallery-dots button{background:#ffffff70}
#main .box-place-photos .box-gallery-dots button[aria-current="true"]{background:#fff}
#main .box-place-back{position:absolute;top:calc(16px + env(safe-area-inset-top));left:16px;z-index:2;min-width:var(--control-height)}
#main .box-place-nav{display:none}
#main .box-place-amenities-inline h2{display:none}
#main .box-place-amenities-inline .box-amenity-list{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}
#main .box-place-amenities-inline .box-amenity-list li{flex:none}
#main .box-place-map{display:block;width:100%;border:0;background:var(--color-surface-soft)}
body:has(.box-place[data-place-preview="false"]) .box-place-actions{bottom:0;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
#main .box-place[data-place-preview="true"] .box-place-photos{margin:0}

/* Place detail refinements: one full-width photo, restrained controls. */
#main .box-place-photos .box-gallery-slide{flex:0 0 100%;width:100%;max-width:100%}
#main .box-place-photos .box-gallery-track{gap:0;padding:0}
#main .box-place-back{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);border:0;box-shadow:none;text-decoration:none}
#main .box-place-photos:has(.box-place-photo-empty) .box-place-back{color:var(--ink);text-shadow:none}
#main .box-place-heading{align-items:flex-start}
#main .box-place-heading-actions{display:flex;flex-wrap:nowrap;margin:0;flex:none}
#main .box-place-heading-actions :is(a,button){flex:none}
#main .box-place-amenities-inline .box-amenity-list{gap:var(--space-2)}
#main .box-place-amenities-inline .box-amenity-list li{background:var(--color-surface-soft);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control)}

#main .box-place-amenities-inline{margin-inline:-16px}
#main .box-place-amenities-inline .box-amenity-list{padding-inline:8px}
#main .box-place-save{position:absolute;right:16px;top:calc(16px + env(safe-area-inset-top));z-index:2}
#main .box-place-save button{background:#ffffffb3;border:0;box-shadow:none;color:var(--ink);backdrop-filter:blur(6px)}
#main .box-place-back{color:var(--ink);background:#ffffff80;backdrop-filter:blur(6px);text-shadow:none;font-weight:600;border-radius:var(--radius-control)}
#main .box-place-tabs{position:relative;display:flex;border-bottom:1px solid var(--line)}
#main .box-place-tabs button{flex:1;min-width:0;min-height:var(--control-height);text-align:center;background:transparent;border:0;border-radius:0;color:var(--muted)}
#main .box-place-tabs button[aria-selected="true"]{color:var(--ink);font-weight:700}
#main .box-place-tab-line{position:absolute;bottom:-1px;left:0;width:25%;height:2px;background:var(--ink);transform:translateX(calc(var(--place-tab,0)*100%));transition:transform var(--motion-sheet) var(--ease-out)}
#main .box-place [data-place-panel][hidden]{display:none!important}
#main .box-place-address{display:block;font-size:14px;line-height:1.7}
#main .box-place-address .text-link{display:inline;min-height:0;margin-left:8px;padding:0;color:var(--muted);font-size:12px;font-weight:400}

/* AGLET place detail finish: shared neutral palette, type and spacing. */
#main .box-place{color:var(--ink)}
#main .box-place-heading{margin-top:var(--space-5);gap:var(--space-3)}
#main .box-place-heading h1{font-size:24px;line-height:1.35;letter-spacing:-.025em;margin:0 0 var(--space-1)}
#main .box-place-english{font-size:13px;line-height:1.5;font-weight:400}
#main .box-place-heading .eyebrow{font-size:var(--font-meta);font-weight:400;letter-spacing:0;margin-top:var(--space-2)}
#main .box-place-tagline{font-size:14px;line-height:1.65;margin:var(--space-3) 0 var(--space-4)}
#main .box-place-heading-actions{gap:var(--space-1)}
#main .box-place-heading-actions a{color:var(--muted)}
#main .box-place-amenities-inline>.panel{padding:0!important;margin:0!important;border:0;background:transparent;box-shadow:none}
#main .box-place-amenities-inline .box-amenity-list{padding:var(--space-1) var(--space-2) var(--space-3);scrollbar-width:none}
#main .box-place-amenities-inline .box-amenity-list::-webkit-scrollbar{display:none}
#main .box-place-amenities-inline .box-amenity-list li{font-size:var(--font-meta);line-height:1.5;color:var(--muted);gap:var(--space-2)}
#main .box-place-amenities-inline svg{width:18px;height:18px}
#main .box-place-section{padding-block:var(--space-5)}
#main .box-place-section h2{font-size:16px;line-height:1.5;margin:0 0 var(--space-3)}
#main .box-place-section p{font-size:14px;line-height:1.7;margin-block:var(--space-2)}
#main .box-place-section[data-place-section="intro"]{padding-top:var(--space-3);padding-bottom:var(--space-5);border:0}
#main .box-place-tabs{margin-top:var(--space-2)}
#main .box-place-tabs button{font-size:13px;box-shadow:none}
#main .box-place [data-place-panel="coaches"]>.box-coaches>h2,#main .box-place [data-place-panel="schedule"]>h2{display:none}
#main .box-place [data-place-panel="coaches"] .coach-public-grid{border-top:0}
#main .box-place [data-place-panel="coaches"] .coach-public-card:first-child{padding-top:0}
#main .box-place .box-place-hours{padding:var(--space-2) 0 0;background:transparent;box-shadow:none;border-radius:0}
#main .box-place .box-place-hours>summary{font-size:13px;color:var(--muted)}
#main .box-place [data-place-panel="location"] .account-section-head{margin:0;align-items:center}
#main .box-place [data-place-panel="location"] .account-section-head h2{margin:0}
#main .box-place-map{border-radius:var(--radius-control);overflow:hidden;margin:var(--space-3) 0}
#main .box-place-save button,#main .box-place-back{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);border:1px solid #ffffff60;background:#ffffffb3;border-radius:var(--radius-control);color:var(--ink);box-shadow:var(--shadow-soft);backdrop-filter:blur(8px)}
#main .box-place-back{font-size:inherit}
#main .box-place-save button[aria-pressed="true"]{background:var(--lime);border-color:transparent}
.box-place-action-inner>.btn{font-size:13px;min-height:var(--control-height);border-radius:var(--radius-control)}
body:has(.box-place[data-place-preview="false"]) .box-place-actions{box-shadow:none;background:var(--paper);border-top:1px solid var(--line)}
@media(min-width:701px){
 #main .box-place-heading h1{font-size:28px}
 #main .box-place-section{padding-block:var(--space-6)}
 #main .box-place-tabs{margin-top:var(--space-3)}
}

#main .box-place-tabs button{white-space:nowrap;padding-inline:var(--space-1)}
#main .box-place-intro-edit{display:inline-flex;align-items:center;min-height:var(--control-height);font-size:13px;color:var(--muted);margin-top:var(--space-2)}

/* Profile editor: full-width introduction and contained live detail preview. */
#main .box-profile-editor .box-settings-fields>.account-field.box-settings-wide{grid-column:1/-1}
#main .box-profile-editor textarea[name="description"]{width:100%;resize:vertical;min-height:180px;line-height:1.7}
#main .box-member-preview[data-preview-section="profile"]{padding:var(--space-4);min-width:0;align-self:start}
#main .box-member-preview[data-preview-section="profile"]>.account-section-head h2{font-size:16px;margin:0}
#main .box-member-preview[data-preview-section="profile"]>.account-section-head .eyebrow{display:none}
#main .box-member-preview[data-preview-section="profile"]>.tiny{margin-block:var(--space-2);line-height:1.6}
#main .box-member-preview[data-preview-section="profile"]>[data-preview-status]{display:none}
#main .box-member-preview[data-preview-section="profile"] .box-preview-tabs{margin:var(--space-3) 0;display:flex;gap:var(--space-2)}
#main .box-member-preview[data-preview-section="profile"] .box-preview-tabs button{flex:1;min-width:0}
#main .box-member-preview[data-preview-section="profile"] .box-preview-viewport{width:100%;max-width:390px;margin:auto;border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;background:var(--paper)}
#main .box-member-preview[data-preview-section="profile"][data-profile-preview-mode="detail"] .box-preview-topbar{display:none}
#main .box-member-preview[data-preview-section="profile"] .box-preview-content{padding:0;max-height:620px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
#main .box-member-preview[data-preview-section="profile"] .box-place[data-place-preview="true"]{padding:0 var(--space-4) var(--space-4);border-radius:0}
#main .box-member-preview[data-preview-section="profile"] .box-place-photos{margin-inline:calc(-1 * var(--space-4))}
#main .box-member-preview[data-preview-section="profile"] .box-gallery-slide{height:220px}
#main .box-member-preview[data-preview-section="profile"] .box-place-heading h1{font-size:22px}
#main .box-member-preview[data-preview-section="profile"] .box-place-tabs button{font-size:12px;padding-inline:0}
#main .box-member-preview[data-preview-section="profile"] .box-place-actions{margin-top:var(--space-4);padding-top:var(--space-3)}
#main .box-member-preview[data-preview-section="profile"] .box-place-amenities-inline{margin-inline:calc(-1 * var(--space-2))}
@media(min-width:1101px){
 #main .box-member-preview[data-preview-section="profile"]{position:sticky;top:calc(var(--control-height) + var(--space-10))}
 #main .box-member-preview[data-preview-section="profile"] .box-preview-content{max-height:calc(100dvh - 240px)}
}
@media(max-width:700px){#main .box-member-preview[data-preview-section="profile"]{position:static}}

#main .box-member-preview[data-preview-section="profile"] .box-place-amenities-inline>.panel{border:0;border-radius:0;box-shadow:none;background:transparent}

/* Equal tab cells and a readable public timetable, including editor preview. */
#main .box-place-tabs{gap:0}
#main .box-place-tabs>button{display:flex;align-items:center;justify-content:center;flex:1 1 0;text-align:center;padding-inline:0;margin:0}
#main .box-place [data-place-panel="schedule"]>.box-settings-info{margin:0;gap:0}
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div{grid-template-columns:52px minmax(0,1fr);gap:var(--space-3);padding:var(--space-4) 0;border-top:0;align-items:start}
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div:first-child{padding-top:0}
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div>span{font-size:13px;font-weight:600;color:var(--ink);padding-top:var(--space-2)}
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div>strong{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-2);font-size:13px;font-weight:400;line-height:1.6}
#main .box-place .session-public-time{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);margin:0;background:var(--color-surface-soft);border-radius:var(--radius-control);color:var(--ink);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
#main .box-place .session-public-time small{font-size:var(--font-meta);font-weight:400;line-height:1.5;color:var(--muted);margin:0;word-break:keep-all;overflow-wrap:anywhere}
#main .box-place .box-place-hours{padding-top:var(--space-5);margin-top:var(--space-5)}
#main .box-place .box-place-hours h3{font-size:14px;line-height:1.5;margin:0 0 var(--space-3)}
#main .box-place .box-place-hours>.box-settings-info{margin:0}
#main .box-place .box-place-hours .box-settings-info>div{grid-template-columns:72px minmax(0,1fr)}
#main .box-place .box-place-hours .box-settings-info>div:first-child{border-top:0}

/* Timetable: compact times, one operating description per matching group. */
#main .box-place .place-day-sessions{display:grid;gap:var(--space-4);min-width:0}
#main .box-place .place-session-description{margin:0 0 var(--space-2);font-size:var(--font-meta);font-weight:400;line-height:1.6;color:var(--muted);word-break:keep-all;overflow-wrap:anywhere}
#main .box-place .place-session-times{display:flex;flex-wrap:wrap}
#main .box-place .place-session-times time{display:block;padding:0;background:transparent;border-radius:0;color:var(--ink);font-size:14px;font-weight:500;line-height:1.6;font-variant-numeric:tabular-nums}

#main .box-place .place-day-row{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:baseline;gap:var(--space-3);padding-block:var(--space-3)}
#main .box-place .place-day-row>span{font-weight:600;line-height:1.6}
#main .box-place .place-day-sessions>.muted{line-height:1.6}

/* Workspace polish: neutral surfaces, consistent controls and stable page rhythm.
   Box branding, status colours and animated underline rails retain their own rules. */
body[data-workspace] #main :is(.page-head,.community-heading,.wod-space-library-head) h1{
 font-size:var(--page-title-size);line-height:var(--page-title-leading);letter-spacing:-.7px;
}
body[data-workspace] #main .wod-space-library-head{margin-block:0 var(--page-heading-gap);padding:0;border:0;background:transparent}
body[data-workspace] #main .wod-space-library-head .eyebrow{font-size:var(--font-caption);line-height:1.5}
body[data-workspace] #main :is(.member-box-home-heading,.member-box-community-heading) h1{font-size:var(--page-title-size);line-height:var(--page-title-leading)}
:is(#main,#modal) .team-record-form>.account-field{margin-block:0}
:is(#main,#modal,#platform-main) .form-error:empty{min-height:0;margin:0;padding:0}
:is(#main,#modal,#platform-main) :is(.account-field,.field) :is(input,textarea,select){font-weight:400}
:is(#main,#modal,#platform-main) select:not([multiple]):not([size]){
 appearance:none;background-color:var(--color-surface);color:var(--color-ink);
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2368717c' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;
 border:1px solid var(--color-line);border-radius:var(--radius-control);min-height:var(--control-height);max-width:100%;min-width:0;
}
:is(#main,#modal,#platform-main) select:not([multiple]):not([size]):disabled{background-color:var(--color-canvas);color:var(--color-secondary)}
#main :is(.training-block,.scaling-block){background:var(--color-surface)}
#main :is(.scaling-prescription,.member-home-coach-note,.briefing-owner-note,.briefing-coach-note,.box-color-preview){background:var(--color-canvas);color:var(--color-ink)}
#main :is(.member-avatar,.dashboard-request-avatar,.briefing-flow-number){background:var(--color-surface-soft);color:var(--color-ink)}
#main :is(.member-list-row,.member-home-news-item):hover{background:var(--color-canvas)}
#main :is(.home-wod-calendar,.home-wod-navigation button){background:var(--color-surface);color:var(--color-ink)}
#main :is(.home-wod-calendar,.home-wod-navigation button):not(:disabled):hover{background:var(--color-surface-soft)}
#platform-main .btn{min-height:var(--control-height);border-radius:var(--radius-control);font-size:13px;line-height:1.4;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);max-width:100%;white-space:normal}
#platform-main .account-field{min-width:0;margin-block:var(--space-3);gap:var(--space-2);font-size:13px}
#platform-main .account-field :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),textarea,select){width:100%;min-width:0;max-width:100%;min-height:var(--control-height);padding:11px 12px;border:1px solid var(--color-line);border-radius:var(--radius-control);background-color:var(--color-surface);color:var(--color-ink);font-size:14px;line-height:1.5}
#platform-main .account-field select{padding-right:36px}
#platform-main .account-field textarea{min-height:96px;resize:vertical}
@media(max-width:700px){#platform-main .account-field :is(input,textarea,select){font-size:var(--mobile-input-font-size)}}
@media(forced-colors:active){:is(#main,#modal,#platform-main) select:not([multiple]):not([size]){appearance:auto;background-image:none}}

/* Discovery tabs reserve the same row before every page heading. */
body[data-workspace] #main :is(.community-page,.wod-space-page)>.community-section-tabs{height:46px;min-height:46px;box-sizing:border-box;margin:0 0 var(--space-5);padding-block:0;align-items:center}
@media(max-width:700px){body[data-workspace="box"][data-page="community"] #main{padding-top:20px}}

body[data-workspace] #main .wod-space-library-head>.btn{height:var(--control-height);box-sizing:border-box;padding-block:0}

/* Scroll sentinel stays observable without adding a line to the heading flow. */
#main [data-wod-space-top-marker]{position:absolute;width:1px;height:1px;pointer-events:none}

/* Narrow desktop content must wrap controls rather than squeeze their labels. */
#main .purchase-product-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}
#main .purchase-product-bottom .account-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;min-width:0}
#main .purchase-product-bottom .account-actions>.btn{flex:1 0 auto;min-width:max-content}
body:not(.focus-mode) #tool-stage .barbell-plate-picker{grid-template-columns:repeat(auto-fit,minmax(76px,1fr))}

/* Personal workout composition uses the mobile viewport without global navigation. */
@media(max-width:700px){
 body[data-workspace="member"]:has(#main [data-wod-space-form="personal"]) #mobile-nav{display:none!important}
 body[data-workspace="member"]:has(#main [data-wod-space-form="personal"]) #main{padding-bottom:var(--space-6)}
 body[data-workspace="member"] #main [data-wod-space-form="personal"] .personal-workout-actions{padding-bottom:max(var(--space-3),env(safe-area-inset-bottom))}
}

/* Docked action bars cover the viewport edge; safe areas belong inside the bar. */
#main :is(.training-submit,.program-page-submit,.history-quick-savebar){background:var(--color-surface);border-bottom-left-radius:0;border-bottom-right-radius:0}
#main .training-submit{bottom:0}
#modal .modal-actions{background:var(--color-surface)}
@media(max-width:700px){
 #main :is(.training-submit,.program-page-submit,.history-quick-savebar){padding-bottom:max(var(--space-3),env(safe-area-inset-bottom))}
 body[data-workspace="member"] #main .personal-workout-actions{bottom:var(--mobile-nav-height,calc(80px + env(safe-area-inset-bottom)))}
 body[data-workspace="member"] #main [data-wod-space-form="personal"] .personal-workout-actions{bottom:0}
}

/* Personal saved-WOD collections share the animated underline navigation. */
.wod-collection-tabs{display:flex;gap:0;overflow-x:auto;position:relative;margin:var(--space-4) 0;border-bottom:1px solid var(--color-line);scrollbar-width:none}
#modal .wod-collection-tabs>button{flex:none;min-height:var(--control-height);padding:10px 16px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:var(--color-secondary);font:inherit;white-space:nowrap}
#modal .wod-collection-tabs>button[aria-pressed=true]{color:var(--color-ink);border-bottom-color:var(--color-ink);font-weight:700}
.wod-collection-choices{display:grid;gap:var(--space-2);margin-block:var(--space-4)}
.wod-collection-choices .account-checkbox{margin:0;padding-block:var(--space-2);overflow-wrap:anywhere}

/* Continuous box detail, shared by discovery and administrator preview. */
#main .box-place-description:has([data-place-description-toggle])[data-expanded="false"]>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
#main .box-place-description>[data-place-description-toggle]{margin-top:var(--space-2)}

/* Subtle full-width section breaks keep the place detail easy to scan. */
#main .box-place{--place-section-gutter:var(--space-6)}
#main .box-place>.box-place-section{border-bottom:0;padding-block:var(--space-6)}
#main .box-place>.box-place-section+.box-place-section{border-top:6px solid var(--color-canvas);margin-inline:calc(-1 * var(--place-section-gutter));padding-inline:var(--place-section-gutter)}
#main .box-place>.box-place-section h2{font-weight:700}
#main .box-place[data-place-preview="true"]{--place-section-gutter:var(--space-4)}
@media(max-width:700px){#main .box-place{--place-section-gutter:var(--space-4)}}

/* Keep a single rule before operating hours and a shorter location map. */
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div:last-child{border-bottom:0}
#main .box-place-map{height:260px}

/* A lighter introduction and timetable within the shared detail layout. */
#main .box-place-amenities-inline{border-bottom:0;padding-bottom:var(--space-3)}
#main .box-place [data-place-panel="schedule"]>.box-settings-info>div{border-bottom:0;padding-block:var(--space-3)}
#main .box-place .box-place-hours .box-settings-info>div{border-top:0;border-bottom:0;padding-block:var(--space-2)}
#main .box-place .box-place-hours .box-settings-info>div>span{color:var(--muted);font-weight:400}
#main .box-place .place-session-times{column-gap:var(--space-4);row-gap:var(--space-2)}

/* Discovery cards share the calm surfaces and hierarchy of place detail. */
#main .box-directory-grid{gap:var(--space-6)}
#main .box-browse-card{border-color:var(--line);box-shadow:none;background:var(--paper)}
#main .box-browse-heading h3{margin:0;font-size:20px;letter-spacing:-.5px;overflow-wrap:anywhere}
#main .box-browse-english,#main .box-browse-city{display:block;font-size:var(--font-meta);line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
#main .box-browse-body>p{margin:0;line-height:1.65}
#main .box-card-requests{border-top:1px solid var(--line);padding-top:var(--space-3);margin-top:var(--space-2)}
#main .box-browse-cover:not(:has(img)){background:var(--color-surface-soft)}
#main .box-browse-cover:not(:has(img))>span{background:transparent;box-shadow:none;border-radius:0;color:var(--muted)!important}
#main .box-browse-cover:not(:has(img))::after{background:transparent;color:var(--muted);font-weight:400}
@media(max-width:700px){#main .box-directory-grid{gap:var(--space-4)}#main .box-browse-body{padding:var(--space-4)}}

/* Compact discovery toolbar and essential-only cards. */
#main .box-discovery-tools{gap:var(--space-3) var(--space-2)}
#main .box-discovery-tools>.box-discovery-secondary{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0}
#main .box-discovery-secondary>.btn{background:transparent;border-color:transparent;box-shadow:none;color:var(--muted);padding-inline:0;white-space:normal;text-align:left}
#main .box-discovery-secondary>.box-connect-qr{width:auto;justify-self:auto}
#main #box-location-status{margin-top:0;margin-bottom:var(--space-4);font-size:var(--font-caption)}
#main .box-browse-cover{aspect-ratio:2/1}
#main .box-browse-body{padding:var(--space-4)}
#main .box-browse-body>p{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:13px}
#main .box-browse-body>p:empty{display:none}
#main .box-browse-actions{margin-top:var(--space-1);padding-top:0}

#main .box-discovery-secondary>.text-link{display:inline-flex;align-items:center;min-height:var(--control-height);background:transparent;border:0;box-shadow:none;color:var(--muted);font-size:var(--font-meta);padding:0;white-space:normal}

/* Card typography rhythm and a photo-corner save action. */
#main .box-browse-media{position:relative;min-width:0}
#main .box-browse-media>.box-bookmark.btn{position:absolute;top:var(--space-3);right:var(--space-3);display:grid;place-items:center;width:var(--control-height);height:var(--control-height);min-height:var(--control-height);padding:0;margin:0;border-radius:var(--radius-control);color:var(--ink)}
#main .box-browse-media>.box-bookmark.btn[aria-pressed="true"]{border-color:transparent;color:var(--ink)}
#main .box-browse-body{gap:var(--space-2)}
#main .box-browse-heading>div{display:grid;gap:var(--space-1)}
#main .box-browse-heading h3{line-height:1.4}
#main .box-browse-body>.box-browse-actions{margin-top:var(--space-1)}

/* Small borderless bookmark, with an unchanged accessible touch area. */
#main .box-browse-media>.box-bookmark.btn{border:0;background:transparent;backdrop-filter:none}
#main .box-browse-media>.box-bookmark.btn::before{content:"";position:absolute;inset:var(--space-1);border-radius:50%;background:#ffffffa6;z-index:0;pointer-events:none}
#main .box-browse-media>.box-bookmark.btn svg{position:relative;z-index:1;width:18px;height:18px}
#main .box-browse-media>.box-bookmark.btn[aria-pressed="true"]{background:transparent}
#main .box-browse-media>.box-bookmark.btn[aria-pressed="true"]::before{background:var(--lime)}

body[data-workspace] #main .box-browse-card .box-browse-media>.box-bookmark.btn{background:transparent;border:0;box-shadow:none}

/* Quiet circular save controls, shared by discovery and place detail. */
body[data-workspace] #main :is(.box-browse-media,.box-place-save)>.box-bookmark.btn{width:var(--control-height);height:var(--control-height);min-height:var(--control-height);padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);box-shadow:none;backdrop-filter:none;isolation:isolate}
body[data-workspace] #main .box-place-save>.box-bookmark.btn{position:relative}
body[data-workspace] #main :is(.box-browse-media,.box-place-save)>.box-bookmark.btn::before{content:"";position:absolute;inset:var(--space-1);border-radius:50%;background:#ffffff1a;border:1px solid #ffffff70;z-index:0;pointer-events:none;transition:background-color .2s,border-color .2s}
body[data-workspace] #main :is(.box-browse-media,.box-place-save)>.box-bookmark.btn svg{position:relative;z-index:1;width:18px;height:18px}
body[data-workspace] #main :is(.box-browse-media,.box-place-save)>.box-bookmark.btn[aria-pressed="true"]{background:transparent;color:#000}
body[data-workspace] #main :is(.box-browse-media,.box-place-save)>.box-bookmark.btn[aria-pressed="true"]::before{background:#ffffff1a;border-color:#ffffff70}

/* Save is a bare icon beside the place name, without photo decoration. */
body[data-workspace] #main :is(.box-browse-heading,.box-place-heading-actions)>.box-bookmark.btn{position:static;align-self:flex-start;display:grid;place-items:center;width:var(--control-height);height:var(--control-height);min-height:var(--control-height);margin:0;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none;color:var(--ink)}
body[data-workspace] #main :is(.box-browse-heading,.box-place-heading-actions)>.box-bookmark.btn::before{display:none}
body[data-workspace] #main :is(.box-browse-heading,.box-place-heading-actions)>.box-bookmark.btn[aria-pressed="true"]{color:#000;background:transparent}
#main .box-place-heading-actions{align-self:flex-start}

#connect-main .member-qr-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);width:100%;margin-top:var(--space-4)}
#connect-main .member-qr-actions>.btn{min-width:0;width:100%;white-space:normal;overflow-wrap:anywhere;margin:0;display:flex;align-items:center;justify-content:center}
#connect-main .member-qr-actions>[hidden]{display:none}

#connect-main .member-qr-actions:has(>#scan-retry[hidden]){grid-template-columns:minmax(0,1fr)}

/* Record list prioritizes the result; context lives in WOD detail. */
#main .record-history-row{row-gap:var(--space-2);padding-block:var(--space-4)}
#main .record-history-row h3{margin:var(--space-1) 0 var(--space-2);font-size:16px;line-height:1.5}
#main .record-history-row>.record-history-actions{grid-column:1;grid-row:2}
#main .record-history-actions>.btn{flex:none;width:auto;padding-inline:var(--space-3)}
#main .record-search-count{margin-block:var(--space-2);color:var(--muted)}
#main .record-quick-actions{gap:var(--space-2);margin-bottom:var(--space-4)}

/* Benchmark search and sort stay on one compact, aligned row. */
#main .benchmark-toolbar{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 var(--space-2)}
#main .benchmark-toolbar .benchmark-search{width:100%;max-width:none;min-width:0;margin:0}
#main .benchmark-toolbar .benchmark-sort{display:block;min-width:0;margin:0}
#main .benchmark-toolbar :is(input,select){height:var(--control-height);min-height:var(--control-height);margin:0}
#main .benchmark-toolbar .benchmark-sort select{width:auto;max-width:100%}

/* Expanded PR variants use the parent card width, without nested boxes. */
body[data-workspace] #main .records-workspace .record-pr-group{gap:0}
body[data-workspace] #main .records-workspace .record-pr-group[open],body[data-workspace] #main .records-workspace .record-pr-group[open]>summary{background:var(--paper);box-shadow:none}
body[data-workspace] #main .records-workspace .record-pr-group .pr-group-history{margin:0;padding:0 var(--space-4);border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;max-height:none;overflow:visible}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line)}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row:last-child{border-bottom:0}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row>span{display:block;flex:1;min-width:0}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row b{display:block;min-width:0;min-height:0;padding:0;background:transparent;border:0;border-radius:0;color:var(--ink);overflow-wrap:anywhere}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row small{display:block;margin-top:var(--space-1);color:var(--muted)}
body[data-workspace] #main .records-workspace .record-pr-group .pr-history-row>strong{flex:none;white-space:nowrap;color:var(--ink)}

#main .records-workspace .record-pr-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}

body[data-workspace] #main .records-workspace .record-pr-group>summary{transition:background-color .18s ease}
body[data-workspace] #main .records-workspace .record-pr-group[open]>summary{background:var(--color-surface-soft)}
@media(prefers-reduced-motion:reduce){body[data-workspace] #main .records-workspace .record-pr-group>summary{transition:none}}

body[data-workspace] #main .records-workspace .record-pr-group[open]{background:var(--color-surface-soft)}

/* Compact saved library with collection context and common management menu. */
#modal .saved-wods-toolbar{display:flex;gap:var(--space-2);margin:0 0 var(--space-3)}
#modal .saved-wods-toolbar>.btn{flex:1;min-width:0;white-space:normal}
#modal:has(.saved-wods-toolbar) .saved-workout-search{margin-block:var(--space-3)}
#modal:has(.saved-wods-toolbar) .wod-collection-tabs{margin-block:var(--space-3)}
body #modal .saved-wod-row{padding:var(--space-3);margin-block:var(--space-2)}
#modal .saved-wod-row h3{font-size:16px;line-height:1.5;margin:var(--space-1) 0;overflow-wrap:anywhere}
#modal .saved-wod-collections{margin:0;color:var(--muted);overflow-wrap:anywhere;line-height:1.5}
body #modal .saved-wod-row>.saved-wod-actions{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:0;border-top:0}
#modal .saved-wod-actions>.btn{flex:1;min-width:0;padding-inline:var(--space-2)}
#modal .saved-wod-more{margin-left:auto}
#modal .saved-wod-more>summary{display:flex;align-items:center;justify-content:center;width:var(--control-height);min-height:var(--control-height);padding:0}
#modal .saved-wod-more>.account-actions{top:var(--control-height);max-width:calc(100vw - 48px)}

#modal .saved-wod-composition{margin-top:var(--space-2)}
#modal .saved-wod-composition section+section{margin-top:var(--space-3)}
#modal .saved-wod-composition h4{margin:0 0 var(--space-1);font-size:var(--font-meta);color:var(--ink)}
#modal .saved-wod-composition pre{display:block;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;overflow:visible;max-height:none}


body #modal .saved-wod-row{position:relative}
#modal .saved-wod-row>.saved-wod-more{position:absolute;top:var(--space-3);right:var(--space-3);margin:0}
#modal .saved-wod-heading{padding-right:calc(var(--control-height) + var(--space-2))}

/* Collection picker: scrollable choices and a bottom action inside the overlay. */
body[data-workspace] #modal[open]:has([data-wod-collection-picker],[data-collection-items]){display:flex;flex-direction:column;height:min(560px,88dvh);overflow:hidden}
body[data-workspace] #modal:has([data-wod-collection-picker],[data-collection-items])>.modal-head{flex:none}
body[data-workspace] #modal:has([data-wod-collection-picker],[data-collection-items])>.modal-content{display:flex;flex:1;min-height:0;padding:0;overflow:hidden}
#modal [data-wod-collection-picker]{display:flex;flex-direction:column;flex:1;min-height:0;margin:0;width:100%}
#modal .wod-collection-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-5)}
#modal .wod-collection-workout{margin-bottom:var(--space-5)}
#modal .wod-collection-workout h3{font-size:18px;line-height:1.5;margin:0 0 var(--space-1);overflow-wrap:anywhere}
#modal .wod-collection-workout p{margin:0;color:var(--muted)}
#modal .wod-collection-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}
#modal .wod-collection-heading h4{margin:0;font-size:14px}
#modal .wod-collection-heading>.tiny{color:var(--muted)}
#modal .wod-collection-choices{gap:0;margin:var(--space-2) 0 var(--space-4)}
#modal .wod-collection-choices .account-checkbox{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--line);margin:0}
#modal .wod-collection-choices .account-checkbox:has(:checked){background:var(--color-surface-soft)}
#modal .wod-collection-choices input{flex:none;accent-color:var(--color-ink)}
#modal .wod-collection-choices span{min-width:0;overflow-wrap:anywhere}
#modal .wod-collection-new>summary{display:flex;align-items:center;min-height:var(--control-height);cursor:pointer;color:var(--ink);font-size:13px;list-style:none}
#modal .wod-collection-new>summary::-webkit-details-marker{display:none}
#modal .wod-collection-new>.account-field{margin:var(--space-2) 0 0}
body[data-workspace] #modal .wod-collection-footer{position:static;flex:none;margin:0;padding:var(--space-4) var(--space-5) max(var(--space-4),env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper)}
#modal .wod-collection-footer>.btn{width:100%;min-height:var(--control-height)}
@media(max-width:700px){body[data-workspace] #modal[open]:has([data-wod-collection-picker],[data-collection-items]){height:100dvh;max-height:100dvh}}

#modal .wod-collection-new-preview[hidden]{display:none}
#modal .wod-collection-new-preview .account-checkbox>span{flex:1}
#modal .wod-collection-new-preview [data-new-collection-status]{flex:none;color:var(--muted);font-size:11px}

/* Category management: compact category rows and title-only ordered workouts. */
#modal .collection-manager-list{display:grid}
#modal .collection-manager-list>button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;min-height:var(--control-height);background:transparent;border:0;border-bottom:1px solid var(--line);text-align:left;color:var(--ink);font:inherit;cursor:pointer}
#modal .collection-manager-list>button>span:first-child{min-width:0;overflow-wrap:anywhere}
#modal .collection-manager-list>button>span:last-child{flex:none}
#modal [data-collection-manager]>[data-collection-back]{margin-bottom:var(--space-4)}
#modal [data-collection-edit]>.account-actions{display:flex;gap:var(--space-2)}
#modal .collection-wod-heading{margin-top:var(--space-5);margin-bottom:var(--space-1)}
#modal .collection-wod-heading h3{margin:0;font-size:15px}
#modal .collection-wod-list{list-style:none;padding:0;margin:var(--space-3) 0}
#modal .collection-wod-list>li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-bottom:1px solid var(--line);padding:var(--space-2) 0}
#modal .collection-wod-list>li>span{min-width:0;overflow-wrap:anywhere;font-size:14px}
#modal .collection-wod-list .account-actions{flex:none;display:flex;gap:var(--space-1);margin:0}
#modal .collection-wod-list .btn{width:var(--control-height);min-width:var(--control-height);padding:0}
#modal [data-collection-status]:empty{display:none}

#modal [data-collection-manager]>.modal-actions{background:var(--color-surface)}
#modal .collection-wod-list>[data-collection-wod]{position:relative;min-height:var(--control-height);box-sizing:border-box;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-y}
#modal .collection-wod-list .collection-drag-grip{flex:none;color:var(--muted);font-size:20px;padding-inline:var(--space-2)}
#modal .collection-wod-list>.is-dragging{z-index:2;background:var(--color-surface-soft);box-shadow:var(--shadow-soft);cursor:grabbing}
#modal .collection-wod-list.is-reordering{cursor:grabbing}

#modal .collection-wod-list>.is-dragging{border-radius:var(--radius-control)}
/* Full-page workout writing: share, personal training and class programming. */
body[data-workspace]:has(#main :is([data-wod-space-form="personal"],[data-wod-space-form="publish"],[data-training="program-create"],[data-training="open-gym-create"])){background:var(--color-surface)}
body[data-workspace] #main:has(:is([data-wod-space-form],[data-training="program-create"],[data-training="open-gym-create"])){background:var(--color-surface)}
body[data-workspace] #main .wod-space-compose>form.panel,
body[data-workspace] #main .program-workflow .program-page-pane,
body[data-workspace] #main [data-training="open-gym-create"] .program-workflow-stages>.panel{border:0;border-radius:0;box-shadow:none;background:transparent;padding:0;margin:0}
body[data-workspace] #main .wod-space-compose :is(.wod-space-section,.wod-space-scale),
body[data-workspace] #main .program-workflow :is(.program-workflow-exercise,.scaling-block,.program-slot),
body[data-workspace] #main [data-training="open-gym-create"] :is(.training-block,.scaling-block){min-width:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;padding:var(--space-5) 0;margin:var(--space-5) 0}
body[data-workspace] #main .program-workflow-exercise>.training-block{border:0;border-radius:0;box-shadow:none;background:transparent;padding:0;margin:0}
body[data-workspace] #main .program-workflow-exercise{padding-top:0}
body[data-workspace] #main .wod-space-compose :is(.wod-space-section,.wod-space-scale)>legend{padding:0 var(--space-2) 0 0;font-size:14px;font-weight:600}
body[data-workspace] #main :is(.wod-space-compose,.program-workflow,[data-training="open-gym-create"]) .form-grid{gap:var(--space-4)}
body[data-workspace] #main .program-workflow-summary{border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;padding:0 0 0 var(--space-5)}
body[data-workspace] #main [data-training="open-gym-create"] .program-workflow-stages>.panel+.panel{border-top:1px solid var(--line);padding-top:var(--space-5)}
body[data-workspace] #main .wod-space-compose .page-head h1,
body[data-workspace] #main:has([data-training="program-create"])>.page-head h1{font-size:var(--page-title-size);line-height:var(--page-title-leading)}
body[data-workspace] #main .wod-space-compose .page-head,
body[data-workspace] #main:has([data-training="program-create"])>.page-head{margin-bottom:var(--page-heading-gap)}
body[data-workspace] #main .wod-space-compose .personal-workout-actions,
body[data-workspace] #main .program-workflow .program-page-submit,
body[data-workspace] #main [data-training="open-gym-create"]>.training-submit{background:var(--color-surface);border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;gap:var(--space-2);padding:var(--space-3) 0 max(var(--space-3),env(safe-area-inset-bottom));margin-top:var(--space-5);bottom:0}
body[data-workspace] #main [data-wod-space-form="publish"]>.personal-workout-actions{display:grid;grid-template-columns:minmax(0,1fr)}
body[data-workspace] #main .program-workflow-exercise:first-child{margin-top:0}
@media(min-width:701px){
 body[data-workspace] #main [data-wod-space-form="personal"]>.personal-workout-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
 body[data-workspace] #main [data-wod-space-form="personal"]>.personal-workout-actions>.btn{grid-column:auto}
}
@media(max-width:700px){
 body[data-workspace]:has(#main :is([data-wod-space-form],[data-training="program-create"],[data-training="open-gym-create"])) #mobile-nav{display:none!important}
 body[data-workspace] #main:has(:is([data-wod-space-form],[data-training="program-create"],[data-training="open-gym-create"])){padding-bottom:var(--space-6)}
 body[data-workspace] #main .wod-space-compose .personal-workout-actions{bottom:0}
 body[data-workspace] #main .program-workflow-summary{border-left:0;border-top:1px solid var(--line);padding:var(--space-4) 0 0}
 body[data-workspace] #main [data-wod-space-form="personal"]>.personal-workout-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
 body[data-workspace] #main [data-wod-space-form="personal"]>.personal-workout-actions>[value="record"]{grid-column:1/-1}
}
body[data-workspace] #main .wod-space-compose>.page-head{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}
body[data-workspace] #main .wod-space-compose>.page-head>div{min-width:0}
body[data-workspace] #main .wod-space-compose>.page-head>[data-wod-space="new-draft"]{flex:none;white-space:nowrap}
body[data-workspace] #main .wod-space-compose .personal-import-actions,
body[data-workspace] #main .program-workflow .program-source-actions{border-bottom:0;margin-bottom:0;padding-bottom:var(--space-3)}
body[data-workspace] #main .wod-space-compose :is(.wod-space-section,.wod-space-scale){padding-top:var(--space-3)}
body[data-workspace] #main .wod-space-compose>.page-head{flex-wrap:nowrap}
body[data-workspace] #main .wod-space-compose>.page-head>div{flex:1;width:auto}
body[data-workspace] #main .wod-space-compose>.page-head>[data-wod-space="new-draft"]{width:auto;margin-left:auto}
#modal .collection-manager-tools{margin-bottom:var(--space-3)}
#modal [data-collection-list]{margin-bottom:var(--space-4)}
#modal [data-collection-choice][hidden]{display:none}
#modal .collection-member-choices .account-checkbox{cursor:pointer}

#modal [data-collection-items]{display:flex;flex-direction:column;flex:1;min-height:0;margin:0;width:100%}
#modal [data-collection-items]>.wod-collection-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
/* Mobile class programming uses the same full-width writing scale as member editors. */
@media(max-width:700px){
 body[data-workspace] #main:has(.training-workspace--compose){padding:var(--space-4) 18px var(--space-6)!important;font-size:15px}
 body[data-workspace] #main .training-workspace--compose .program-page-pane{padding:0!important;border:0;border-radius:0;box-shadow:none}
 body[data-workspace] #main .training-workspace--compose :is(.account-field,.form-field){font-size:14px}
 body[data-workspace] #main .training-workspace--compose :is(input,select,textarea){font-size:var(--mobile-input-font-size)}
 body[data-workspace] #main .training-workspace--compose :is(.program-workflow-exercise,.program-workflow-scales,.program-workflow-note)>summary{font-size:14px}
 body[data-workspace] #main .training-workspace--compose .program-page-submit{padding-inline:0}
 body[data-workspace] #main .training-workspace--compose .program-steps{gap:var(--space-4)}
 body[data-workspace] #main .training-workspace--compose .program-steps span{font-size:13px}
 body[data-workspace] #main .training-workspace--compose [data-program-step="1"]:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
 body[data-workspace] #main .training-workspace--compose [data-program-step="1"]>.account-field{margin:0;min-width:0}
 body[data-workspace] #main .training-workspace--compose [data-program-step="1"]>:not(.account-field){grid-column:1/-1}
}
/* Pair related choices only; composition, notes and primary actions retain full width. */
body[data-workspace] #main [data-wod-space-form="publish"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-4)}
body[data-workspace] #main [data-wod-space-form="publish"]>*{grid-column:1/-1;min-width:0}
body[data-workspace] #main [data-wod-space-form="publish"]>.account-field:has([name="category"],[name="visibility"]){grid-column:auto}
body[data-workspace] #main .personal-workout-result-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-4)}
body[data-workspace] #main .personal-workout-result-fields>*{grid-column:1/-1;min-width:0}
body[data-workspace] #main .personal-workout-result-fields>.account-field:not(:has(textarea)){grid-column:auto}
@media(max-width:700px){
 body[data-workspace] #main .training-workspace--compose .program-slot-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
 body[data-workspace] #main .training-workspace--compose .program-slot-actions>.btn{width:100%;min-width:0;padding-inline:var(--space-2)}
 body[data-workspace] #main :is(.program-source-actions>[data-train],.personal-import-actions>.text-link){font-size:var(--font-meta)}
}
/* Import helpers share one quiet toolbar in editors and performed-composition forms. */
body[data-workspace] :is(#main,#modal) :is(.program-source-actions,.personal-import-actions,[data-wod-space-form="publish"]>.account-actions:has(>[data-wod-space="photo"]),[data-performed-fields]>.account-actions:has(>[data-train="record-photo"])){display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;min-width:0;padding:0 0 var(--space-2);margin:var(--space-2) 0 var(--space-4);border:0;border-bottom:1px solid var(--line);background:transparent;box-shadow:none}
body[data-workspace] :is(#main,#modal) :is(.program-source-actions,.personal-import-actions,[data-wod-space-form="publish"]>.account-actions:has(>[data-wod-space="photo"]),[data-performed-fields]>.account-actions:has(>[data-train="record-photo"]))>button{flex:none;width:auto;min-width:0;min-height:var(--control-height);padding:0;border:0;background:transparent!important;box-shadow:none;color:var(--ink);font-size:var(--font-meta);font-weight:500;white-space:nowrap}
body[data-workspace] :is(#main,#modal) :is(.program-source-actions,.personal-import-actions,[data-wod-space-form="publish"]>.account-actions:has(>[data-wod-space="photo"]),[data-performed-fields]>.account-actions:has(>[data-train="record-photo"]))>button:hover{background:transparent!important;color:var(--ink);text-decoration:underline;text-underline-offset:3px;box-shadow:none}

body[data-workspace] :is(#main,#modal) [data-class-performed]>.scale-confirm{background:var(--color-surface-soft)!important;color:var(--ink);border-color:var(--line)}
body[data-workspace] #modal [data-team-form]>:is(.scale-confirm,.notice){background:var(--color-surface-soft)!important;color:var(--ink);border-color:var(--line)}
#modal [data-team-form]>[data-team-replace][hidden]{display:none!important}
body[data-workspace] :is(#main,#modal) [data-class-performed]>.scale-confirm input{accent-color:var(--ink)}
body[data-workspace] #main [data-wod-space-form="personal"] [data-wod-space-sections]>.wod-space-section:first-child,body[data-workspace] #main .program-workflow #wod-sections>.program-workflow-exercise:first-child{border-top:0}
/* Four import actions share the available width without squeezing their labels. */
body[data-workspace] #main :is(.personal-import-actions,.program-source-actions:has(>[data-train="program-saved-wods"]))>button:is([data-train],[data-wod-space]){flex:1 0 auto;text-align:center;justify-content:center}
body[data-workspace] #main .training-workspace--compose [data-program-step="1"]:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
body[data-workspace] #main .training-workspace--compose [data-program-step="1"]>.account-field{margin:0;min-width:0}
body[data-workspace] #main .training-workspace--compose [data-program-step="1"]>:not(.account-field){grid-column:1/-1}
body[data-workspace] #main .training-workspace--compose .program-slot-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);width:100%}
body[data-workspace] #main .training-workspace--compose .program-slot-actions>.btn,
body[data-workspace] #main .training-workspace--compose [data-program-step="1"]>.account-field>input{width:100%;min-width:0;height:var(--control-height);min-height:var(--control-height);box-sizing:border-box}
#main .program-schedule-status{margin:0;color:var(--muted);overflow-wrap:anywhere}
#main .program-schedule-status:empty{display:none}
/* Keep class record mode choices together below the automatic sharing notice. */
#modal [data-training="record-save"]>.record-auto-share-notice{padding-bottom:var(--space-2)}
#modal .team-record-entry>.team-entry-choice{justify-content:flex-start;gap:var(--space-2);flex-wrap:wrap}
#modal .team-entry-choice>.team-entry-dot{flex:none;color:var(--muted);font-size:13px}
#modal .team-entry-choice>strong{flex:none;font-size:13px}
#modal .team-entry-choice>[data-start-team]{flex:none;width:auto;margin:0;padding-inline:0;min-height:var(--control-height);font-size:13px}

/* Team record class preview keeps a stable chevron and content inset. */
#modal [data-team-form]>.record-class-preview>summary{justify-content:flex-start}
#modal [data-team-form]>.record-class-preview>summary::after{content:'';flex:0 0 16px;width:16px;height:16px;background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");transform-origin:center}
#modal [data-team-form]>.record-class-preview[open]>summary::after{content:'';transform:rotate(180deg)}
#modal [data-team-form]>h3:not(:first-of-type){margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--line)}
#modal [data-team-form] .team-guest-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:end}
#modal [data-team-form] .team-guest-add>.account-field{margin:0}
#modal [data-team-form] .team-guest-add>.btn{flex:none;min-width:72px}
#modal [data-team-form] .team-selected-list>.tiny{margin:0;color:var(--muted)}
#modal [data-team-form]>h3+.tiny{margin-top:calc(var(--space-3) * -1)}
#modal [data-team-form]>div[data-team-person-fields]{display:grid;gap:var(--space-3)}
#modal [data-team-form]>div[data-team-person-fields]>.account-field{margin:0}
#modal [data-team-form]>.record-class-preview>.record-class-preview-body{padding:var(--space-2) var(--space-4) var(--space-4)}

/* My box: quiet notices and a stable WOD stage across dates. */
body[data-workspace="member"][data-page="today"] #main .member-home-notices{background:transparent;border:0;border-radius:0;box-shadow:none;padding:var(--space-2) 0;margin:0}
#main .member-box-overview--focused{margin-bottom:var(--space-2)}
#main .home-wod-carousel{height:516px;border-radius:var(--radius-card)}
#main .home-wod-carousel .member-home-wod[data-home-wod]{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}
#main .home-wod-carousel .member-home-section-heading{flex:none}
#main .home-wod-body{flex:1;min-height:0;overflow:hidden;padding-right:var(--space-1)}
#main .home-wod-body>.member-home-empty{display:flex;flex-direction:column;height:100%;box-sizing:border-box}
#main .home-wod-body>.member-home-empty>.member-home-wod-actions{margin-top:auto;flex-shrink:0}
#main .home-wod-body .home-wod-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;max-height:8em;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}
#main .home-wod-carousel .member-next-action,#main .home-wod-carousel .home-wod-swipe-hint{flex:none}

#main .home-wod-body:has(.home-wod-picker[open]){overflow-y:auto}
#main .home-wod-body .home-wod-choices{max-height:240px;overflow-y:auto;overscroll-behavior-y:contain}

/* One workout group, with compact time rows shared by owners and coaches. */
body[data-workspace] #main .managed-class-group{padding:0;margin:0 0 var(--space-4);overflow:hidden}
#main .managed-class-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4)}
#main .managed-class-head>div:first-child{min-width:0}
#main .managed-class-head h3{margin:var(--space-1) 0 0;overflow-wrap:anywhere}
#main .managed-class-head p{margin:0;color:var(--muted)}
#main .managed-completed-group{border:0;margin:0;background:transparent;border-radius:0}
#main .managed-completed-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);min-height:var(--touch-target);list-style:none;cursor:pointer}
#main .managed-completed-summary::-webkit-details-marker{display:none}
#main .managed-completed-summary>div{min-width:0}
#main .managed-completed-summary p{margin:0;color:var(--muted)}
#main .managed-completed-summary h3{margin:var(--space-1) 0 0;overflow-wrap:anywhere}
#main .managed-completed-summary>svg{width:16px;height:16px;flex:none;color:var(--muted);transition:transform var(--motion-fast) var(--ease-out)}
#main .managed-completed-group[open]>.managed-completed-summary>svg{transform:rotate(180deg)}
#main .managed-completed-group>.managed-class-actions{padding:0 var(--space-4) var(--space-4)}
#main .managed-class-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);flex-shrink:0}
#main .managed-class-actions>.btn{margin:0;min-height:var(--control-height)}
#main .managed-class-slot{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
#main .managed-class-slot>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);min-height:var(--touch-target);list-style:none;cursor:pointer}
#main .managed-class-slot>summary::-webkit-details-marker{display:none}
#main .managed-class-slot>summary>svg{width:16px;height:16px;transition:transform var(--motion-fast) var(--ease-out);flex:none;color:var(--muted)}
#main .managed-class-slot[open]>summary{background:var(--color-surface-soft)}
#main .managed-class-slot[open]>summary>svg{transform:rotate(180deg)}
#main .managed-class-time{display:grid;gap:var(--space-1);min-width:0}
#main .managed-class-time time{font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#main .managed-class-time small{font-size:var(--font-meta);color:var(--muted);overflow-wrap:anywhere}
#main .managed-class-count{font-size:var(--font-meta);white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums}
#main .managed-class-slot-body{padding:var(--space-3) var(--space-4) var(--space-4)}
#main .managed-class-slot-body>p{margin:0 0 var(--space-3);overflow-wrap:anywhere}
#main .managed-class-owner-note{white-space:pre-wrap}
#main .managed-class-slot-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
#main .managed-class-slot-actions>.btn{margin:0;min-height:var(--control-height)}
@media(max-width:700px){
 #main .managed-class-head{align-items:stretch;flex-direction:column;gap:var(--space-3)}
 #main .managed-class-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .managed-class-actions>.btn{width:100%}
 #main .managed-class-actions>.btn:only-child{grid-column:1/-1}
 #main .managed-class-slot-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .managed-class-slot-actions>.btn{width:100%}
 #main .managed-class-slot-actions>.btn:last-child:nth-child(odd){grid-column:1/-1}
}

/* Compact member rows keep identity and actions on one line, contact and pass on the next. */
@media(max-width:1150px){
 #main .crm-members-screen .crm-mobile-member-top>strong{display:flex;flex-wrap:nowrap;min-width:0;white-space:nowrap;overflow:hidden}
 #main .crm-members-screen .crm-mobile-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #main .crm-members-screen .crm-person-code{flex:none}
 #main .crm-members-screen .crm-mobile-member-state{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2);white-space:nowrap;font-size:var(--font-meta)}
 #main .crm-members-screen .crm-mobile-member-state:empty{display:none}
 #main .crm-members-screen .crm-mobile-member-meta{gap:var(--space-2);flex-wrap:nowrap;white-space:nowrap}
 #main .crm-members-screen .crm-mobile-member-meta>.crm-clean-phone{flex:none}
 #main .crm-members-screen .crm-mobile-pass{overflow:hidden;text-overflow:ellipsis}
}
#main .member-directory-panel .member-list-filters{position:relative;width:100%;gap:0;border-bottom:0;background:linear-gradient(var(--line),var(--line)) left bottom / 100% 1px no-repeat;align-items:stretch}
#main .member-directory-panel .member-list-filters>.btn{margin:0;transform:none;border-bottom:2px solid transparent!important}
#main .member-directory-panel .member-list-filters>.btn[aria-pressed=true]{border-bottom-color:var(--ink)!important}
body[data-workspace] #main .member-directory-panel .member-list-filters{gap:0}
body[data-workspace] #main .member-directory-panel .member-list-filters>.btn{background:transparent!important}

#main .member-directory-link>.member-avatar{grid-column:1;grid-row:1/span 2}
#main .member-directory-link>strong{grid-column:2;grid-row:1;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#main .member-directory-link>.member-directory-state{grid-column:3;grid-row:1}
#main .member-directory-link>.crm-mobile-chevron{grid-column:4;grid-row:1/span 2}
#main .member-directory-meta{grid-column:2/4;grid-row:2;display:flex;gap:var(--space-2);color:var(--muted);font-size:var(--font-meta);white-space:nowrap;min-width:0;overflow:hidden}
#main .member-directory-meta>span:first-child{flex:none}
#main .member-directory-meta>span:last-child{overflow:hidden;text-overflow:ellipsis}
body[data-workspace] #main .member-directory-panel [data-underline-motion].member-list-filters>.btn[aria-pressed=true]{border-bottom-color:transparent!important}

/* Box community categories share the measured underline used by destination filters. */
body[data-workspace] #main .box-community-page .post-categories{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;padding:0;margin-bottom:var(--space-4);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
body[data-workspace] #main .box-community-page .post-categories>button{flex:none;min-height:var(--control-height);padding:var(--space-2) var(--space-3);margin:0;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;font-size:13px;font-weight:500;white-space:nowrap}
body[data-workspace] #main .box-community-page .post-categories>button[aria-pressed=true]{background:transparent!important;color:var(--ink)!important;border-color:transparent!important;font-weight:650}
body[data-workspace] #main .box-community-page .post-categories:not([data-underline-motion])>button[aria-pressed=true]{border-bottom-color:var(--ink)!important}
/* Category names and actions use stable columns instead of distributing the actions across the row. */
#modal [data-bc-category-manager] .collection-wod-list>li{display:grid;grid-template-columns:minmax(0,1fr) auto var(--space-8);gap:var(--space-2)}
#modal [data-bc-category-manager] .collection-wod-list .account-actions{display:grid;grid-template-columns:repeat(2,var(--control-height));gap:var(--space-1);margin:0;align-items:center}
#modal [data-bc-category-manager] .collection-wod-list .account-actions>.text-link{min-height:var(--control-height);padding:0;justify-content:center;text-align:center;white-space:nowrap}
#modal [data-bc-category-manager] .collection-wod-list .collection-drag-grip{text-align:center;padding:0}

/* Member identity and summary share the same layout for owner and delegated member views. */
#main .crm-detail-title{display:flex;align-items:center;gap:var(--space-3);min-width:0}
#main .crm-detail-title>.avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--control-height);height:var(--control-height);flex:none;overflow:hidden;font-size:18px}
#main .crm-detail-title>.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
#main .crm-detail-title>span:last-child{min-width:0;overflow-wrap:anywhere}
#main .crm-member-detail--compact .crm-clean-strip{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr))}
#main .crm-member-detail--compact .crm-clean-strip>div{min-width:0;overflow-wrap:anywhere}
#main .crm-member-detail--compact .crm-read-strip{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
#main .crm-member-detail [data-member-section=profile]>.account-avatar{display:none}
#main .crm-member-detail [data-member-read-pane][hidden]{display:none}
@media(max-width:700px){#main .crm-member-detail--compact .crm-clean-strip{grid-template-columns:repeat(2,minmax(0,1fr))}#main .crm-member-detail--compact .crm-clean-strip>div:first-child{grid-column:auto}}
#main .crm-member-detail--compact>.page-head{margin-block:var(--space-2) var(--space-3)}
#main .crm-member-detail--compact>.page-head h1{margin:0}
#main .crm-member-detail--compact>.crm-clean-strip{margin-top:0;margin-bottom:var(--space-3);padding:var(--space-4)}
#main .crm-member-detail--compact>.crm-member-tabs{margin-bottom:var(--space-4)}
body[data-workspace] #main .crm-member-detail--compact>.page-head{margin:var(--space-2) 0 var(--space-3);min-height:0}
body[data-workspace] #main .crm-member-detail--compact>.page-head h1{margin:0}
body[data-workspace] #main .crm-member-detail--compact>.crm-clean-strip{margin-top:0;margin-bottom:var(--space-3);padding-block:var(--space-4)}
body[data-workspace] #main .crm-member-detail--compact>.crm-member-tabs{margin:0 0 var(--space-3)}

body[data-workspace] #main .crm-member-detail--compact>.page-head>.crm-actions{margin:0}
/* Signing forms fit the available width; only the document desk scrolls vertically. */
.native-paper-workspace,.native-paper-toolbar,.native-paper-desk{box-sizing:border-box;min-width:0;max-width:100%}
.native-paper-desk{width:100%;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
.native-paper-page{width:100%;min-width:0;box-sizing:border-box}
.native-paper-workspace .native-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.native-paper-workspace .native-form-box{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.native-paper-workspace :is(.account-field,.en-fields,.native-contract-fixed){min-width:0;max-width:100%}
.native-paper-workspace :is(input,select,textarea){box-sizing:border-box;min-width:0;max-width:100%}
.native-paper-workspace input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
.contract-signing-page{overscroll-behavior:none}
.contract-signing-page #contract-main{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:700px){
 .native-paper-workspace .native-form-grid,.native-paper-workspace .native-form-box,#modal .native-paper-person .en-fields{grid-template-columns:minmax(0,1fr)}
 .native-paper-workspace .native-paper-toolbar>div{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;max-width:100%}
 .native-paper-workspace .native-paper-toolbar .btn{min-width:0;max-width:100%;white-space:normal}
 .native-paper-workspace .native-paper-page{min-height:0}
}
/* Member detail actions stay beside the name; the trailing More button never moves. */
.crm-detail-qr .crm-qr-short{display:none}
@media(max-width:700px){
 body[data-workspace] #main .crm-member-detail--compact>.page-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:center}
 body[data-workspace] #main .crm-member-detail--compact>.page-head>div:first-child{min-width:0;width:100%}
 body[data-workspace] #main .crm-member-detail--compact .crm-detail-title{gap:var(--space-2)}
 body[data-workspace] #main .crm-member-detail--compact .crm-detail-title>span:last-child{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body[data-workspace] #main .crm-member-detail--compact>.page-head>.crm-actions{display:flex;flex-wrap:nowrap;gap:var(--space-2);width:auto;align-items:center;justify-content:flex-end}
 body[data-workspace] #main .crm-member-detail--compact>.page-head>.crm-actions>.crm-detail-more{flex:none}
 body[data-workspace] #main .crm-detail-qr{width:var(--control-height);min-width:var(--control-height);padding:0;justify-content:center}
 body[data-workspace] #main .crm-detail-qr .crm-qr-full{display:none}
 body[data-workspace] #main .crm-detail-qr .crm-qr-short{display:inline}
}

@media(max-width:700px){body[data-workspace] #main .crm-member-detail--compact .crm-detail-connection{flex:none;padding-inline:var(--space-2)}}

#main .account-connected-box-row>div{display:grid;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}
#main .account-connected-box-row .pill{justify-self:start}
#main .account-connected-box-row>.btn{flex:none}

/* Outstanding balances reuse the existing contract-linked payment flow. */
#main .crm-due-list{display:grid}
#main .crm-due-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding-block:var(--space-3);border-top:1px solid var(--line)}
#main .crm-due-person{min-width:0}
#main .crm-due-person>a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
#main .crm-due-person>small{display:block;color:var(--muted);margin-top:var(--space-1)}
#main .crm-due-amount{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){
 #main .crm-due-row{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}
 #main .crm-due-person{grid-column:1;grid-row:1/3}
 #main .crm-due-amount{grid-column:2;text-align:right}
 #main .crm-due-row>.btn{grid-column:2;justify-self:end}
}

/* Member operations shares the class/news dashboard columns and queue controls. */
#main .crm-home-columns{align-items:start}
#main .crm-home-columns .dashboard-section-head{flex-wrap:wrap;gap:var(--space-2)}
#main .crm-home-columns .crm-actions{margin-bottom:var(--space-5)}

body[data-workspace] #main .crm-home-columns{align-items:start}
#main .crm-home-columns>.dashboard-column:first-child>.panel{width:100%;margin-bottom:0}
#main .crm-home-columns .dashboard-section-head h2{font-size:19px;line-height:1.4;margin:0}
@media(max-width:1050px){#main .crm-home-columns .crm-panel{order:2}}

/* Both owner home screens share title geometry and the primary action slot. */
body[data-workspace="box"]:is([data-page="home"],[data-page="crm"]) #main .workspace-home-heading{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--control-height)*2.5);align-items:center;gap:var(--space-3);padding:var(--space-2) 0 var(--space-4);margin:0 0 var(--space-3);max-width:none}
body[data-workspace="box"] #main .workspace-home-heading .member-box-home-identity{min-width:0}
body[data-workspace="box"] #main .workspace-home-heading h1{font-size:var(--page-title-size);line-height:var(--page-title-leading);font-weight:800;letter-spacing:-.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
body[data-workspace="box"] #main .workspace-home-heading .eyebrow{margin:0 0 var(--space-1);font-size:12px;line-height:1.5}
body[data-workspace="box"] #main .workspace-home-heading .workspace-home-location{margin:var(--space-1) 0 0;font-size:13px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#main .workspace-home-primary{display:flex;min-width:0}
#main .workspace-home-primary>.btn{width:100%;margin:0;white-space:nowrap}

body[data-workspace="box"]:has(#main>.workspace-home-heading) #main{padding-top:var(--space-6)}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #topbar{background:var(--color-canvas);border-bottom:0;box-shadow:none}
@media(max-width:700px){body[data-workspace="box"]:has(#main>.workspace-home-heading) #main{padding-top:var(--space-3)}}

@media(max-width:700px){body[data-workspace="box"]:has(#main>.workspace-home-heading) #topbar .top-context>strong{display:block}}

/* Shared owner-home overview: three compact metrics and equal queue geometry. */
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-toolbar{grid-template-columns:minmax(0,1fr) 224px;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4)}
#main .workspace-home-toolbar>.account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);width:100%}
#main .workspace-home-toolbar .btn{width:100%;margin:0;white-space:nowrap}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0 0 var(--space-4)}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight{box-sizing:border-box;min-height:136px;padding:var(--space-4);margin:0;align-content:start;gap:var(--space-2)}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-queue>.dashboard-section-head{box-sizing:border-box;margin:0 0 var(--space-3);align-items:start}
#main .workspace-home-columns .workspace-queue-list{height:auto;overflow:visible}
#main .workspace-home-columns .dashboard-queue{box-sizing:border-box;min-width:0}
#main .workspace-home-columns .operation-counts{margin:0 0 var(--space-3)}
@media(max-width:1050px){
 #main .workspace-home-columns>.dashboard-column{display:block;width:100%}
 #main .workspace-home-columns>.dashboard-column:first-child{order:1}
 #main .workspace-home-columns>.dashboard-column:last-child{order:0}
 #main .workspace-home-columns>.dashboard-column>.panel{margin-bottom:var(--space-4)}
}
@media(max-width:700px){
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-toolbar{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}
 #main .workspace-home-toolbar>.account-actions{justify-self:end;width:224px}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insights{gap:var(--space-2)}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight{min-height:112px;padding:var(--space-3) var(--space-2);gap:var(--space-1)}
}

body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column:first-child{display:flex;flex-direction:column;gap:var(--space-4)}
#main .workspace-home-columns>.dashboard-column:first-child>*{width:100%;min-width:0;box-sizing:border-box}

body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-queue>.dashboard-section-head{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto;row-gap:var(--space-1);min-height:0}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-queue>.dashboard-section-head h2{font-size:19px;line-height:1.4;margin:0}

/* Home daily collections: transaction date, three recent ledger entries. */
#main .crm-daily-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);padding-bottom:var(--space-4)}
#main .crm-daily-totals>div{display:grid;gap:var(--space-1);min-width:0}
#main .crm-daily-totals span{color:var(--muted);font-size:13px}
#main .crm-daily-totals strong{font-size:20px;line-height:1.4;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
#main .crm-daily-totals{margin-top:var(--space-3);border-bottom:1px solid var(--line)}
#main .crm-daily-list{margin-bottom:var(--space-3)}
#main .crm-daily-list>.crm-daily-row:first-child{border-top:0}
#main .crm-daily-list>.crm-empty{margin-top:var(--space-3)}
#main .crm-daily-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}
#main .crm-daily-row>span:first-child{min-width:0;overflow-wrap:anywhere}
#main .crm-daily-row small{display:block;margin-top:var(--space-1);color:var(--muted);font-size:12px}
#main .crm-daily-amount{flex:none;text-align:right;font-variant-numeric:tabular-nums}
@media(min-width:701px){
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight{min-height:112px;gap:var(--space-1)}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight strong{font-size:18px;line-height:1.5}
}

#main .crm-daily-revenue .dashboard-section-head h2{align-self:start}

#main .workspace-home-columns .dashboard-zero{padding:var(--space-2) 0;margin:0}
#main .workspace-home-columns .workspace-queue-list>details{margin:var(--space-2) 0 0}
#main .workspace-home-columns .workspace-queue-list>details>summary{cursor:pointer;color:var(--muted);padding-block:var(--space-2)}

/* Enrollment period stays paired on mobile and desktop. */
#modal [data-enroll-setup] .crm-enroll-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
#modal [data-enroll-setup] .crm-enroll-dates .account-field{min-width:0}
#modal [data-enroll-setup] .crm-enroll-dates input{min-width:0;width:100%;max-width:100%}

/* Ledger: a stable trailing action column and aligned numeric values. */
#main .crm-revenue-clear .crm-ledger-table .crm-revenue-detail,
#main .crm-revenue-clear .crm-ledger-table .crm-revenue-detail-head{text-align:right;white-space:nowrap;width:calc(var(--control-height)*1.75)}
#main .crm-revenue-clear .crm-ledger-detail-button{display:inline-flex;width:auto;margin:0;background:transparent;border-color:transparent;box-shadow:none;color:var(--color-ink);gap:var(--space-2)}
#main .crm-revenue-clear .crm-ledger-detail-button:hover{background:var(--color-surface-soft)}
#main .crm-revenue-clear .crm-ledger-table tbody tr:last-child>*{border-bottom:0}
#main .crm-revenue-clear .crm-revenue-person a{display:block;line-height:1.5;padding-block:3px;margin-block:-3px}
#main .crm-revenue-clear .crm-ledger-table .is-money strong{font-variant-numeric:tabular-nums}
@media(min-width:1001px){
 #main .crm-revenue-clear .crm-ledger-table{table-layout:fixed}
 #main .crm-revenue-clear .crm-ledger-table th:nth-child(2){width:112px}
 #main .crm-revenue-clear .crm-ledger-table th:nth-child(3){width:64px}
 #main .crm-revenue-clear .crm-ledger-table th:nth-child(4){width:144px}
 #main .crm-revenue-clear .crm-ledger-table th:nth-child(5){width:128px}
 #main .crm-revenue-clear .crm-ledger-table td,#main .crm-revenue-clear .crm-ledger-table th{padding-block:var(--space-3)}
}
@media(max-width:1000px){
 #main .crm-revenue-clear .crm-ledger-table tr{gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4)}
 #main .crm-revenue-clear .crm-ledger-table .crm-revenue-detail{width:auto;justify-self:end;align-self:end}
 #main .crm-revenue-clear .crm-revenue-state{align-self:center}
 #main .crm-revenue-clear .crm-ledger-table small{margin-top:var(--space-1)}
 #main .crm-revenue-clear .crm-ledger-table tbody tr:last-child{border-bottom:0}
}

#main .crm-revenue-clear .crm-ledger-table thead th:first-child{background:var(--color-surface-soft)}
#main .crm-revenue-clear .crm-revenue-person>a{font-size:13px;font-weight:600;color:var(--color-ink)}
@media(max-width:1000px){#main .crm-revenue-clear .crm-revenue-person>a{font-size:14px}}

/* Contract navigation uses the shared transparent underline rail, without action-button skins. */
body #main .contract-workspace :is(.cw-tabs,.cw-toolbar>.cw-filters){gap:0;padding:0;background:transparent;box-shadow:none;border:0;border-bottom:1px solid var(--color-line)}
body #main .contract-workspace :is(.cw-tabs,.cw-filters)>.cw-tab{display:inline-flex;align-items:center;justify-content:center;flex:none;white-space:nowrap;height:var(--control-height);min-height:var(--control-height);padding:var(--space-2) var(--space-4);margin:0;border:0;border-radius:0;background:transparent!important;box-shadow:none!important;color:var(--color-secondary);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:color var(--motion-base)}
body #main .contract-workspace :is(.cw-tabs,.cw-filters)>.cw-tab[aria-pressed=true]{color:var(--color-ink);font-weight:600}
body #main .contract-workspace :is(.cw-tabs,.cw-filters)[data-underline-motion]>.cw-tab{border-bottom:0!important}

/* Notifications and operating notes: neutral shared workspace surfaces. */
.notification-popover{width:380px;max-width:calc(100vw - 24px);border-color:var(--color-line);border-radius:var(--radius-card);box-shadow:var(--shadow-overlay);color:var(--color-ink)}
.notification-popover .notification-popover-head{padding:var(--space-3) var(--space-4);gap:var(--space-2);background:var(--color-surface)}
.notification-popover-head>strong{font-size:16px}.notification-popover-head>.notification-delete-controls{flex-basis:100%;justify-content:flex-end}
:is(.notification-popover,.notification-inbox) .notification-delete-controls button{border-radius:var(--radius-control);color:var(--color-secondary);background:transparent}
:is(.notification-popover,.notification-inbox) .notification-delete-controls [data-notification-read-all]:not(:disabled){color:var(--color-ink);background:var(--color-surface-soft)}
:is(.notification-popover,.notification-inbox) .notification-delete-controls [data-notification-confirm]{color:var(--color-danger)}
:is(.notification-popover,.notification-inbox) .notification-delete-confirm{justify-content:flex-end;color:var(--color-secondary)}
.notification-delete-confirm>span{margin-right:auto}
.notification-popover .notification-popover-list{max-height:min(480px,calc(100dvh - 230px));padding:0 var(--space-4)}
:is(.notification-popover,.notification-inbox) .notification-item>summary{gap:var(--space-2);align-items:center;padding-block:var(--space-4)}
:is(.notification-popover,.notification-inbox) .notification-title{gap:var(--space-2)}
:is(.notification-popover,.notification-inbox) .notification-title strong{font-size:14px;line-height:1.5;color:var(--color-ink)}
.notification-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
:is(.notification-popover,.notification-inbox) .notification-meta .notification-type{display:inline;min-width:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-secondary);font-size:12px;font-weight:500}
:is(.notification-popover,.notification-inbox) .notification-title small{font-size:12px;color:var(--color-secondary)}
:is(.notification-popover,.notification-inbox) .notification-delete{width:var(--control-height);height:var(--control-height);color:var(--color-secondary);border-radius:var(--radius-control)}
:is(.notification-popover,.notification-inbox) .notification-delete:hover{background:var(--color-surface-soft);color:var(--color-danger)}
.notification-chevron{color:var(--color-secondary)}
:is(.notification-popover,.notification-inbox) .notification-detail p{font-size:13px;color:var(--color-secondary)}
:is(.notification-popover,.notification-inbox) .notification-detail .btn{min-height:var(--control-height);font-size:13px;border-radius:var(--radius-control)}
.notification-menu>summary:hover,.notification-menu[open]>summary{background:var(--color-surface-soft)}
#floating-notes .workspace-note{border-color:var(--color-line);border-radius:var(--radius-card);color:var(--color-ink)}
#floating-notes .workspace-note header{padding:var(--space-2) var(--space-4);font-size:16px;background:var(--color-surface);flex-shrink:0}
#floating-notes .workspace-note header .icon-btn{width:var(--control-height);height:var(--control-height);background:transparent;border:0;border-radius:var(--radius-control);color:var(--color-secondary)}
#floating-notes .note-list{background:var(--color-canvas);padding:var(--space-3);border-color:var(--color-line)}
#floating-notes .note-list button{min-height:var(--control-height);font-size:13px;border-radius:var(--radius-control);color:var(--color-secondary);margin-bottom:var(--space-1)}
#floating-notes .note-list button.active{background:var(--color-surface);color:var(--color-ink)}
#floating-notes .note-list [data-note-add]{margin-bottom:var(--space-3)}
#floating-notes .note-editor{padding:var(--space-4);gap:var(--space-3);min-width:0}
#floating-notes .note-title-row>input{font-size:16px;line-height:1.5}
#floating-notes .note-delete{min-width:var(--control-height);min-height:var(--control-height);border-radius:var(--radius-control);color:var(--color-secondary)}
#floating-notes .note-toolbar{border-bottom:1px solid var(--color-line);padding-bottom:var(--space-3);gap:var(--space-2);color:var(--color-secondary)}
#floating-notes .note-mode{min-height:var(--control-height);font-size:13px;border-radius:var(--radius-control);border-color:var(--color-line)}
#floating-notes .note-mode.is-active{border-color:var(--color-ink)}
#floating-notes .note-editor-footer{gap:var(--space-2);justify-content:space-between;border-top:1px solid var(--color-line);padding-top:var(--space-2)}
#floating-notes .note-editor-footer small{font-size:12px;color:var(--color-secondary);opacity:1}
#floating-notes .note-sync-retry{min-height:var(--control-height);border:0;border-radius:var(--radius-control);padding:var(--space-2) var(--space-3);background:var(--color-surface-soft);color:var(--color-ink);font-size:13px}
#floating-notes .note-list-toggle{min-height:var(--control-height);border-radius:var(--radius-control);background:var(--color-surface-soft);border-color:var(--color-line);color:var(--color-ink)}
#floating-notes .note-list-toggle[aria-expanded=true]{background:var(--color-surface-soft)}
#floating-notes :is(button,input):focus-visible{outline-color:var(--ui-focus)}
@media(max-width:700px){#floating-notes .note-toolbar{align-items:flex-start}#floating-notes .note-text-tools{margin-left:0}#floating-notes .note-editor{gap:var(--space-2)}}

.notification-meta>small::before{content:'·';margin-right:var(--space-2);color:var(--color-secondary)}
.notification-item>summary[data-notification-record] .notification-chevron{transform:rotate(-90deg)}
#floating-notes .note-list [data-note-select].active{background:var(--color-surface);color:var(--color-ink)}
#floating-notes .note-sync-retry{text-decoration:none}

/* Movable operating notes: keep writing and touch scrolling independent of the window handles. */
#floating-notes .workspace-note{animation:none}
#floating-notes [data-note-drag]{cursor:grab;touch-action:none;user-select:none}
#floating-notes [data-note-drag] button{cursor:pointer}
#floating-notes .note-is-moving [data-note-drag]{cursor:grabbing}
#floating-notes .note-is-moving{box-shadow:var(--shadow-overlay);user-select:none}
#floating-notes.note-dragging .floating-workspace{z-index:80;transition:transform var(--motion-fast),box-shadow var(--motion-fast)}
#floating-notes.note-dock-ready .floating-workspace{transform:scale(1.15);box-shadow:0 0 0 8px var(--color-surface-soft),var(--shadow-overlay)}
#floating-notes.note-dock-ready .floating-workspace::after{content:'놓으면 접혀요';position:absolute;right:0;bottom:calc(100% + var(--space-3));white-space:nowrap;padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);background:var(--color-ink);color:var(--color-surface);font-size:12px;pointer-events:none}
#floating-notes .note-resize-handle{position:absolute;bottom:0;min-height:0;padding:0;border:0;background:transparent;touch-action:none;z-index:5}
#floating-notes .note-resize-se{right:0;cursor:nwse-resize}
#floating-notes .note-resize-sw{left:0;cursor:nesw-resize}
#floating-notes .note-resize-handle::after{content:'';position:absolute;border-right:2px solid var(--color-secondary);border-bottom:2px solid var(--color-secondary);opacity:.5}
#floating-notes .note-editor{padding-bottom:var(--space-6);overflow-y:auto}
#floating-notes .note-rich-body{flex-shrink:0}
#floating-notes .note-compact .note-list-toggle{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);font:inherit;cursor:pointer}
#floating-notes .note-compact .note-list-toggle svg{width:19px;height:19px}
#floating-notes .note-compact .note-columns{display:flex;position:relative;overflow:hidden}
#floating-notes .note-compact .note-editor,#floating-notes .note-compact .note-empty{width:100%;min-width:0;box-sizing:border-box}
#floating-notes .note-compact .note-list{position:absolute;inset:0 auto 0 0;width:min(240px,80%);box-sizing:border-box;z-index:3;transform:translateX(-100%);visibility:hidden;transition:transform var(--motion-base) var(--ease-out),visibility var(--motion-base)}
#floating-notes .note-compact.note-list-open .note-list{transform:translateX(0);visibility:visible}
#floating-notes .note-compact .note-list-scrim{position:absolute;inset:0;border:0;border-radius:0;padding:0;background:#20262d30;z-index:2}
#floating-notes .note-compact.note-list-open .note-list-scrim{display:block}
#floating-notes .note-compact .note-text-tools{margin-left:0}
@media(pointer:coarse){#floating-notes .note-resize-handle{height:var(--control-height)}}
@media(prefers-reduced-motion:reduce){#floating-notes .note-list,#floating-notes .floating-workspace{transition:none!important}}

#floating-notes [data-note-drag]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-3px}
#floating-notes .note-resize-handle{height:var(--control-height);width:var(--control-height)}
#floating-notes .note-editor-footer{margin-inline:var(--space-4)}
@media(pointer:coarse){#floating-notes .note-resize-handle{width:var(--control-height)}#floating-notes .note-editor-footer{padding-inline:var(--space-2)}}

#floating-notes .floating-workspace{z-index:26}

/* Mobile notes retain the anchored button-only interaction. */
@media(max-width:700px){#floating-notes [data-note-drag]{cursor:default;touch-action:auto;user-select:auto}#floating-notes .note-resize-handle{display:none}#floating-notes .note-editor{padding-bottom:var(--space-4)}#floating-notes .note-editor-footer{margin-inline:0;padding-inline:0}}

/* Note color belongs to the list and title icon, not the editor surface. */
#floating-notes .note-list [data-note-select],#floating-notes .note-list [data-note-select].active{background:var(--note-color);color:var(--color-ink);box-shadow:none;border:1px solid transparent;align-items:center}
#floating-notes .note-list [data-note-select].active{border-color:var(--color-secondary);font-weight:600}
#floating-notes .note-title-row{background:transparent;border:0;border-radius:0;padding:0;gap:var(--space-2)}
#floating-notes .note-title-icon{background:transparent}
#floating-notes .note-title-icon svg rect{fill:var(--note-color)}
#floating-notes .note-delete,#floating-notes .note-delete:hover{background:transparent;border:0;box-shadow:none}
#floating-notes .note-mode{display:inline-flex;align-items:center;justify-content:center;width:var(--control-height);height:var(--control-height);min-width:var(--control-height);padding:0;border:0;background:transparent;box-shadow:none;color:var(--color-secondary);transition:background var(--motion-base),color var(--motion-base)}
#floating-notes .note-mode svg{width:22px;height:22px}
#floating-notes .note-mode.is-active{border:0;background:var(--color-surface-soft);color:var(--color-ink)}
#floating-notes .note-text-tools,#floating-notes .note-compact .note-text-tools{margin-left:auto}
#floating-notes .note-resize-handle::after{width:14px;height:14px;bottom:6px;right:6px;border-radius:0 0 calc(var(--radius-card) - 6px) 0}
#floating-notes .note-resize-sw::after{left:6px;right:auto;transform:none;border-right:0;border-left:2px solid var(--color-secondary);border-radius:0 0 0 calc(var(--radius-card) - 6px)}

/* Light title separator and secondary add action. */
#floating-notes .note-toolbar{border-top:1px solid var(--color-line);padding-top:var(--space-2)}
#floating-notes .note-list [data-note-add]{background:transparent;color:var(--color-ink);border:0;box-shadow:none;text-align:left;font-weight:500}
#floating-notes .note-list [data-note-add]:hover{background:var(--color-surface-soft)}

/* Pointer actions do not inherit legacy green focus rings; keyboard focus remains visible. */
body :is(button,a,summary,[role="button"],input[type="checkbox"],input[type="radio"]){-webkit-tap-highlight-color:transparent}
body :is(button:not([data-note-color]),a,summary,[role="button"],input[type="checkbox"],input[type="radio"]):focus:not(:focus-visible),
body[data-input-modality="pointer"] :is(button:not([data-note-color]),a,summary,[role="button"],input[type="checkbox"],input[type="radio"]):focus{outline:none!important}
body[data-input-modality="keyboard"] :is(button,a,summary,[role="button"],input[type="checkbox"],input[type="radio"]):focus-visible{outline:2px solid var(--ui-focus)!important;outline-offset:3px}
body :is(input,textarea,select):focus{outline-color:var(--ui-focus)!important}

/* A completed checklist item keeps its text appearance; only the checkbox changes. */
#floating-notes .note-rich-line.is-done>[data-note-line-text]{text-decoration:none;opacity:1}

/* Keep note color choices and checklist on a common centerline. */
/* Text-based disclosures share a centered icon; existing SVG controls stay intact. */
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-toolbar{display:block;margin-bottom:var(--space-3)}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-toolbar>p{margin:0}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-heading{padding-block:0 var(--space-2);margin-bottom:var(--space-2)}
@media(min-width:1051px){
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main{padding-top:var(--space-3);padding-bottom:var(--space-4)}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight{padding:var(--space-3);gap:var(--space-1)}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insights{margin-bottom:var(--space-3)}
 body[data-workspace="box"] #main .workspace-home-columns{gap:var(--space-4);margin-bottom:0}
 body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column{gap:var(--space-3)}
 body[data-workspace="box"] #main .workspace-home-columns .panel{padding:var(--space-4)}
 body[data-workspace="box"] #main .workspace-home-columns .dashboard-section-head{margin-bottom:var(--space-2)}
 body[data-workspace="box"] #main .workspace-home-columns .handoff-date{padding-bottom:var(--space-2)}
 body[data-workspace="box"] #main .workspace-home-columns .operation-counts{margin-bottom:var(--space-2)}
}
@media(min-width:1051px){
 body[data-workspace="box"] #main .crm-home-columns{align-items:stretch}
 body[data-workspace="box"] #main .crm-home-columns>.dashboard-column:first-child>.crm-daily-revenue{flex:1;display:flex;flex-direction:column;margin-bottom:0}
 body[data-workspace="box"] #main .crm-daily-revenue>.crm-daily-list{flex:1}
 body[data-workspace="box"] #main .crm-daily-revenue>.btn{align-self:flex-start}
}
body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-blank{align-items:flex-start;text-align:left;gap:var(--space-4);padding:var(--space-6) 0 var(--space-8)}
#main .dashboard-blank-icon{width:36px;height:36px;flex:none;color:var(--color-secondary)}
body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-blank>.btn{margin:var(--space-1) 0 0;min-height:var(--control-height);padding-inline:var(--space-5);border-radius:var(--radius-control)}
@media(min-width:1051px){
 body[data-workspace="box"] #main .workspace-home-columns:has(.dashboard-blank){align-items:stretch}
 body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column:has(.dashboard-blank)>.dashboard-session-panel{flex:1;order:2;display:flex;flex-direction:column;margin-bottom:0}
 body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column:has(.dashboard-blank)>.dashboard-photo-prompt{order:1}
 body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-blank{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--space-4)}
}
:root{--disclosure-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
:is(#main,#modal) :is(.benchmark-chevron,.pr-expand,.division-chevron),#main .booking-time-state>span[aria-hidden],#main .home-wod-picker>summary>span[aria-hidden]{display:inline-block;flex:0 0 20px;width:20px;height:20px;font-size:0;line-height:0;vertical-align:middle;background:currentColor;mask:var(--disclosure-chevron) center/20px 20px no-repeat;transform:rotate(0deg);transform-origin:center;transition:transform var(--motion-base) var(--ease-out)}
:is(#main,#modal) details[open]>summary :is(.benchmark-chevron,.pr-expand,.division-chevron),#main .booking-time-card[open]>summary .booking-time-state>span[aria-hidden],#main .home-wod-picker[open]>summary>span[aria-hidden]{transform:rotate(180deg)}
body[data-workspace] :is(#main,#modal) :is(.record-class-preview,.member-inline-help,.admin-row-more)>summary::after,body[data-workspace] #main .past-class-list>summary::before{content:'';display:inline-block;flex:0 0 20px;width:20px;height:20px;vertical-align:middle;background:currentColor;mask:var(--disclosure-chevron) center/20px 20px no-repeat;transform:rotate(0deg);transform-origin:center;transition:transform var(--motion-base) var(--ease-out)}
body[data-workspace] :is(#main,#modal) :is(.record-class-preview,.member-inline-help,.admin-row-more)[open]>summary::after,body[data-workspace] #main .past-class-list[open]>summary::before{content:'';transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){:is(#main,#modal) :is(.benchmark-chevron,.pr-expand,.division-chevron),#main .booking-time-state>span[aria-hidden],#main .home-wod-picker>summary>span[aria-hidden],body[data-workspace] :is(#main,#modal) :is(.record-class-preview,.member-inline-help,.admin-row-more)>summary::after,body[data-workspace] #main .past-class-list>summary::before{transition:none}}
/* Notification actions stay in one compact row while confirmation expands. */
.notification-item>summary .notification-chevron{display:inline-grid;place-items:center;position:relative;flex:0 0 20px;width:20px;height:20px;font-size:0;line-height:0;transform:none}
.notification-item>summary .notification-chevron::before{content:'';width:12px;height:12px;background:currentColor;clip-path:polygon(10% 22.5%,50% 57.5%,90% 22.5%,100% 34.5%,50% 77.5%,0 34.5%);transform:rotate(0deg);transform-origin:center;transition:transform var(--motion-base) var(--ease-out)}
.notification-item[open]>summary .notification-chevron{transform:none}
.notification-item[open]>summary .notification-chevron::before{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.notification-item>summary .notification-chevron::before{transition:none}}
:is(.notification-popover,.notification-inbox) .notification-delete-controls{display:flex;flex-wrap:nowrap;align-items:center;gap:0;padding:0}
.notification-popover-head>.notification-delete-controls{padding-top:0;border-top:0}
:is(.notification-popover,.notification-inbox) .notification-delete-controls button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;height:32px;min-width:0;flex-shrink:0;padding:0 var(--space-2);font-size:12px;line-height:1;white-space:nowrap;box-sizing:border-box}
:is(.notification-popover,.notification-inbox) .notification-delete-confirm{width:0;overflow:hidden;flex-wrap:nowrap;gap:0;opacity:0;visibility:hidden;transition:width var(--motion-base) var(--ease-out),opacity var(--motion-base),visibility var(--motion-base)}
:is(.notification-popover,.notification-inbox) [data-notification-clear]{width:68px;overflow:hidden;transition:width var(--motion-base) var(--ease-out),padding var(--motion-base),opacity var(--motion-base)}
:is(.notification-popover,.notification-inbox) .is-confirming [data-notification-clear]{width:0;padding-inline:0;opacity:0;visibility:hidden}
:is(.notification-popover,.notification-inbox) .is-confirming .notification-delete-confirm{width:92px;opacity:1;visibility:visible}
:is(.notification-popover,.notification-inbox) .notification-delete-confirm button{width:46px}
.notification-popover-head{padding-block:var(--space-2);row-gap:var(--space-1)}
@media(max-width:700px){.notification-popover{left:auto;right:12px;width:320px;max-width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.notification-delete-controls :is([data-notification-clear],.notification-delete-confirm){transition:none!important}}
#floating-notes .note-toolbar{align-items:center}
#floating-notes .note-color-tools{font-size:14px;flex-wrap:nowrap;gap:var(--space-2)}
#floating-notes .note-color-tools>span{white-space:nowrap}
#floating-notes .note-palette{gap:var(--space-1)}
#floating-notes .note-palette>button{width:24px;height:24px;flex-shrink:0}
#floating-notes .note-toolbar input[type=color]{width:28px;height:28px;flex-shrink:0}
@media(max-width:700px){
 #floating-notes .note-list-toggle,#floating-notes .note-list-toggle[aria-expanded=true]{width:var(--control-height);height:var(--control-height);padding:0;justify-content:center;border:0;background:transparent;box-shadow:none}
 #floating-notes .note-list-toggle>span{display:none}
 #floating-notes .note-list-toggle svg{width:22px;height:22px}
}
@media(max-width:360px){
 #floating-notes .note-toolbar{display:grid;grid-template-columns:minmax(0,1fr) var(--control-height);align-items:end}
 #floating-notes .note-color-tools{display:grid;grid-template-columns:auto 28px;gap:var(--space-2)}
 #floating-notes .note-color-tools>span{grid-column:1/-1}
 #floating-notes .note-palette{align-items:center;min-height:var(--control-height)}
 #floating-notes .note-toolbar input[type=color]{align-self:center}
}
/* Operating homes fill spare height with their lower cards. */
body[data-workspace="box"]:has(#main>.workspace-home-heading) .shell{display:flex;flex-direction:column;min-height:100dvh}
body[data-workspace="box"]:has(#main>.workspace-home-heading) .shell>#topbar,body[data-workspace="box"]:has(#main>.workspace-home-heading) .shell>footer{flex-shrink:0}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main{display:flex;flex-direction:column;flex:1 0 auto;min-height:0;width:100%;margin:0 auto}
body[data-workspace="box"]:has(#main>.workspace-home-heading) #main>*{flex-shrink:0}

@media(min-width:1051px){
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .dashboard-insight{min-height:112px}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main>.workspace-home-columns{flex:1 0 auto;min-height:348px;align-items:stretch}
 body[data-workspace="box"]:has(#main>.workspace-home-heading) #main .workspace-home-columns>.dashboard-column>.handoff-panel{flex:1}
}
/* Secondary owner action stays with the sidebar footer on desktop and mobile. */
#sidebar .side-bottom .operation-log-nav{width:100%;border:0;background:transparent;box-shadow:none;text-align:left;margin-bottom:var(--space-2)}
body:not(.signed-out) #sidebar .side-bottom:has(.operation-log-nav){display:block;padding-top:var(--space-4)}
#sidebar .side-bottom:has(.operation-log-nav)>.tiny{display:none}

#main .crm-members-screen .crm-clean-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,180px);align-items:end;gap:var(--space-3)}
#main .crm-members-screen .crm-member-state-select{margin:0;min-width:0}
.badge-member-row .crm-clean-person{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.badge-member-row .avatar{width:36px;height:36px;flex:none;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--color-canvas)}
.badge-member-row .avatar img{width:100%;height:100%;object-fit:cover}
.badge-member-row .crm-clean-person>div{min-width:0;overflow-wrap:anywhere}
.badge-member-row>.btn{flex:none}
.badge-member-labels{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}
.badge-appearance{display:flex;align-items:center;gap:var(--space-6);margin-block:var(--space-4)}
.badge-appearance .account-field{margin:0}
.badge-appearance input[type=color]{width:var(--control-height);height:var(--control-height);padding:var(--space-1)}

.badge-recent{margin-block:var(--space-3) var(--space-4)}
.badge-recent-colors{display:flex;flex-wrap:wrap;gap:var(--space-1)}
.badge-recent-colors button{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);padding:0;border:0;background:transparent;box-shadow:none}
.badge-recent-colors button::before{content:"";width:24px;height:24px;border-radius:50%;background:var(--badge-swatch);border:1px solid var(--color-line)}
.badge-recent-colors button[aria-pressed=true]::before{outline:2px solid var(--color-ink);outline-offset:3px}
/* Purchase actions use balanced rows on mobile, including permission-limited sets. */
@media(max-width:700px){
 body #main .purchase-request-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:var(--space-2)}
 body #main .purchase-request-actions>.btn{width:100%;min-width:0;margin:0;white-space:normal;text-align:center}
 body #main .purchase-request-actions>.btn:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:700px){
 body #main .purchase-request-actions>[data-purchase-action="settle"]:first-child:nth-last-child(3){grid-column:1/-1}
 body #main .purchase-request-actions:has(>[data-purchase-action="settle"]:first-child:nth-last-child(3))>.btn:last-child{grid-column:auto}
}

.crm-members-screen .crm-current-state{display:none}
@media(min-width:1151px){
 #main .crm-members-screen :is(.crm-clean-table-head,.crm-clean-row){gap:var(--space-3)}
 #main .crm-members-screen .crm-clean-table-head{padding-inline:var(--space-3)}
 #main .crm-members-screen .crm-current-state{display:block;white-space:nowrap;font-size:var(--font-meta);font-weight:650}
}

@media(min-width:1151px){
 #main .crm-members-screen :is(.crm-clean-table-head,.crm-clean-row){grid-template-columns:minmax(160px,1.5fr) 84px minmax(150px,1.4fr) minmax(76px,.7fr) 84px minmax(90px,.8fr);column-gap:var(--space-4)}
 #main .crm-members-screen .crm-clean-row>div:not(.crm-mobile-member){grid-row:1}
 #main .crm-members-screen .crm-clean-row>.crm-clean-person{grid-column:1}
 #main .crm-members-screen .crm-clean-row>.crm-current-state{grid-column:2}
 #main .crm-members-screen .crm-clean-row>div:nth-child(2){grid-column:3}
 #main .crm-members-screen .crm-clean-row>div:nth-child(4){grid-column:4}
 #main .crm-members-screen .crm-clean-row>.crm-contract-state{grid-column:5}
 #main .crm-members-screen .crm-clean-row>.crm-clean-last{grid-column:6}
}

/* Shared member state palette for owner and delegated CRM, on every viewport. */
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status){color:var(--color-secondary-sage)}
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status)[data-status="홀딩 중"]{color:#876b3e}
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status)[data-status="시작 대기"]{color:#4f6f92}
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status):is([data-status="휴면"],[data-status="보관 중"]){color:#737b86}
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status)[data-status="회원권 없음"]{color:var(--color-secondary)}
#main .crm-members-screen :is(.crm-current-state,.crm-mobile-status):is([data-status="기간 만료"],[data-status="횟수 소진"],[data-status="이용 종료"]){color:#8b6265}
/* Checkbox rows must honor conditional form visibility. */
.account-checkbox[hidden]{display:none!important}
body[data-workspace="box"] #main .dashboard-session-panel{display:flex;flex-direction:column;min-width:0}
body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-section-head{flex:none}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-day-caption{min-block-size:var(--control-height)}
body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-wod-full-list{display:block;flex:1 0 auto;block-size:312px;min-block-size:312px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}
body[data-workspace="box"] #main .dashboard-session-panel>.dashboard-wod-actions{flex:none;margin-top:var(--space-4)}
body[data-workspace="box"] #main .dashboard-session-panel .dashboard-empty-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-4)}
body[data-workspace="box"] #main .dashboard-empty-summary h3{font-size:20px;line-height:1.5;margin:0;overflow-wrap:anywhere}
body[data-workspace="box"] #main .dashboard-empty-summary .dashboard-blank-icon{width:20px;height:20px}
body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column>.dashboard-session-panel{order:0;flex:1}
body[data-workspace="box"] #main .workspace-home-columns>.dashboard-column>.dashboard-photo-prompt{order:1}
@media(max-width:700px){body[data-workspace="box"] #main .dashboard-empty-summary h3{font-size:18px}}
/* Mobile task pages use the same neutral surfaces as their parent workspaces. */
body:is([data-workspace="box"],[data-workspace="member"]){--ui-surface-line:var(--color-line);--ui-surface-soft:var(--color-surface-soft)}
body:is([data-workspace="box"],[data-workspace="member"]) #modal[open][data-presentation="page"]{background:var(--color-surface);color:var(--color-ink)}
body:is([data-workspace="box"],[data-workspace="member"]) #modal[open][data-presentation="page"]::backdrop{background:var(--color-surface)}
body:is([data-workspace="box"],[data-workspace="member"]) #modal[open][data-presentation="page"] :is(.modal-head,.modal-actions){background:var(--color-surface);border-color:var(--color-line)}
body:is([data-workspace="box"],[data-workspace="member"]) #modal[open][data-presentation="page"] [data-overlay-back]{color:var(--color-ink)}
body[data-workspace="box"] :is(#main,#modal) .notice:not(.warning):not(.error):not(.success){background:var(--color-surface-soft);color:var(--color-ink);border-color:var(--color-line)}
body[data-workspace="box"] #modal .purchase-discount-preview{background:var(--color-surface-soft);color:var(--color-ink);border-color:var(--color-line)}
body[data-workspace="box"] #modal .purchase-discount-preview :is(strong,.purchase-preview-price){color:var(--color-ink)}
.badge-picker{margin:0;min-width:0}
.badge-picker-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;list-style:none;gap:var(--space-3);text-align:left}
.badge-picker-trigger::-webkit-details-marker{display:none}
.badge-picker-trigger::marker{content:""}
.badge-picker-trigger>svg{flex:none;align-self:center}
.badge-picker-trigger>[data-badge-current]{flex:1;min-width:0;overflow-wrap:anywhere;text-align:left}
.badge-choice-list{max-block-size:240px;overflow-y:auto;overscroll-behavior:contain;margin-top:var(--space-2);padding:var(--space-1);border:1px solid var(--ui-surface-line);border-radius:var(--radius-control);background:var(--color-surface)}
.badge-choice-list .badge-choice{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;border-color:transparent;background:transparent;color:var(--color-ink);gap:var(--space-3)}
.badge-choice-list .badge-choice[aria-selected="true"]{background:var(--color-surface-soft)}
.badge-choice-check{margin-inline-start:auto;flex:none}
.badge-catalog-scroll{max-block-size:clamp(240px,40dvh,360px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-inline-end:var(--space-2)}
[data-primary-badge]:empty{display:none}
.crm-member-payments :is(th,td):last-child{text-align:right;white-space:nowrap}
.crm-member-payments td:last-child .btn{margin-inline-start:auto}
.crm-member-history-list{max-block-size:clamp(240px,40dvh,360px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-inline-end:var(--space-2)}
.crm-member-history-list>p{margin:0;padding-block:var(--space-3);border-bottom:1px solid var(--ui-surface-line);overflow-wrap:anywhere}
.crm-member-history-list>p:last-child{border-bottom:0}
.badge-catalog-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:var(--space-3)}
.badge-catalog-row>.account-actions{display:flex;flex-wrap:nowrap;white-space:nowrap;min-width:max-content;justify-content:flex-end}
.badge-catalog-row>.account-actions button{flex:none;white-space:nowrap;word-break:keep-all}
[data-crm-form="pass"] :is([data-grant-manual],[data-manual-payment],[data-grant-payment]){border:0;margin:0;padding:0;min-width:0}
/* Revenue periods reuse shared controls; the search no longer expands over the row. */
#main .crm-revenue-clear .crm-revenue-filters{grid-template-columns:minmax(340px,2fr) minmax(100px,.6fr) minmax(100px,.6fr) minmax(160px,1fr);gap:var(--space-3);align-items:end}
#main .crm-revenue-clear .crm-revenue-filters:has([data-revenue-date]){grid-template-columns:minmax(400px,2fr) minmax(100px,.6fr) minmax(100px,.6fr) minmax(160px,1fr)}
.crm-revenue-period{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--space-3);min-width:0}
.crm-revenue-period [data-revenue-period-fields]{min-width:0}
.crm-revenue-date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);min-width:0}
#main .crm-revenue-clear .crm-revenue-search{grid-column:auto}
@media(max-width:1150px){
 #main .crm-revenue-clear .crm-revenue-filters,#main .crm-revenue-clear .crm-revenue-filters:has([data-revenue-date]){grid-template-columns:repeat(2,minmax(0,1fr)) minmax(160px,1.4fr)}
 .crm-revenue-period{grid-column:1/-1}
}
@media(max-width:700px){
 #main .crm-revenue-clear .crm-revenue-filters,#main .crm-revenue-clear .crm-revenue-filters:has([data-revenue-date]){grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .crm-revenue-clear .crm-revenue-search{grid-column:1/-1}
 .crm-revenue-period:has([data-revenue-date]){grid-template-columns:1fr}
}
/* Requests: keep the conversation visible beside a compact people list. */
.crm-request-workspace{display:grid;gap:var(--space-5);min-width:0}
.request-workspace-switch>.request-view-filters{margin-bottom:0!important}
#main .request-view-filters{gap:0;padding:0;background:transparent;border:0;border-bottom:1px solid var(--color-line);border-radius:0;box-shadow:none}
#main .request-view-filters>button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:var(--space-2) var(--space-4);border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--color-secondary);box-shadow:none;font-size:14px;font-weight:600;white-space:nowrap}
#main .request-view-filters>button[aria-selected="true"]{color:var(--color-ink);border-bottom-color:var(--color-ink)}
.request-view-pane{min-width:0}
#main .request-view-pane[hidden]{display:none!important}
.request-other-fold>summary::-webkit-details-marker{display:none}
.request-other-body{display:grid;gap:var(--space-5);padding-block:var(--space-3);min-width:0}
.request-other-body .other-request-group,.request-other-body>.panel{border:0;border-radius:0;box-shadow:none;background:transparent;margin:0;padding:0!important;min-width:0}
.request-other-body .account-section-head{gap:var(--space-3);margin-bottom:var(--space-2)}
.request-other-body :is(h2,h3){font-size:16px;margin:0}
.request-other-body h3 small{font-size:12px;font-weight:400;color:var(--color-secondary)}
.request-other-body .other-request-list{max-height:320px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.request-other-body .setting-row{display:flex;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-line);padding-block:var(--space-3)}
.request-other-body .setting-row>div{flex:1;min-width:0;overflow-wrap:anywhere}
.request-other-body .setting-row>.btn{flex:none;white-space:nowrap}
.request-other-body .setting-row p{font-size:13px;color:var(--color-secondary);margin:var(--space-1) 0 0}
@media(min-width:1101px){.request-other-body{grid-template-columns:minmax(0,1fr)}}
#main .request-other-body .account-section-head{min-height:var(--control-height);align-items:center;margin:0 0 var(--space-2)}
body #main .request-other-body :is(h2,h3),body[data-workspace="box"] #main .request-other-body .account-section-head :is(h2,h3){font-size:16px;font-weight:700;margin:0}
#main .request-other-body :is(h2,h3) small{font-size:12px;font-weight:400;color:var(--color-secondary)}
#main .request-other-body>.panel{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
.request-other-body .request-row-actions{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}
@media(max-width:700px){.request-other-body .setting-row{flex-wrap:wrap}.request-other-body .request-row-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.request-other-body .request-row-actions:has(>.btn:nth-child(3):last-child)>.btn:first-child{grid-column:1/-1}}
.crm-request-workspace .visitor-workspace-head{margin:0;min-height:var(--control-height)}
.crm-request-workspace .visitor-inbox{margin:0}
/* Compact chat composer and readable message/action cards in the requests workspace. */
#main .visitor-messenger.is-persistent .visitor-reply-input{padding:var(--space-1) var(--space-1) var(--space-1) var(--space-2);border-radius:var(--radius-card);gap:var(--space-1);align-items:flex-end;background:var(--color-surface-soft);border-color:transparent}
#main .visitor-messenger.is-persistent .visitor-chat-reply{margin:0;gap:0}
#main .visitor-messenger.is-persistent #visitor-reply-message{height:var(--control-height);min-height:var(--control-height);max-height:120px;box-sizing:border-box;padding:calc((var(--control-height) - 1.5em) / 2) var(--space-1);font-size:14px;line-height:1.5;resize:none;overflow-y:auto}
@supports (field-sizing:content){#main .visitor-messenger.is-persistent #visitor-reply-message{field-sizing:content;height:auto}}
#main .visitor-messenger.is-persistent .visitor-chat-compose{padding-block:var(--space-2)}
#main .visitor-messenger.is-persistent .visitor-input-actions{padding-bottom:0}
#main .visitor-messenger.is-persistent .visitor-messages{gap:var(--space-3)}
#main .visitor-messenger.is-persistent .visitor-message{width:fit-content;max-width:min(82%,440px);min-width:0;gap:var(--space-1)}
#main .visitor-messenger.is-persistent .visitor-message>div{padding:var(--space-2) var(--space-3);font-size:14px;line-height:1.6;overflow-wrap:anywhere;border-radius:var(--radius-card)}
#main .visitor-messenger.is-persistent .visitor-message.member>div{border-start-start-radius:var(--radius-control)}
#main .visitor-messenger.is-persistent .visitor-message.operator>div{border-start-end-radius:var(--radius-control)}
#main .visitor-messenger.is-persistent .visitor-message-label{font-size:11px;color:var(--color-secondary)}
#main .visitor-messenger.is-persistent .visitor-message>time{font-size:var(--font-caption,11px);color:var(--color-secondary)}
#main .visitor-messenger.is-persistent .visitor-message.automatic{align-self:center;max-width:min(92%,480px);text-align:center}
#main .visitor-messenger.is-persistent .visitor-message.automatic>div{padding:var(--space-2);border:0;font-size:12px;line-height:1.6}
#main .visitor-messenger.is-persistent .inquiry-system-card{max-width:360px;margin:var(--space-1) auto;padding:var(--space-4);border-radius:var(--radius-card);box-shadow:none}
#main .visitor-messenger.is-persistent .inquiry-system-meta{align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);font-size:11px}
#main .visitor-messenger.is-persistent .inquiry-system-meta>time{white-space:nowrap;font-variant-numeric:tabular-nums}
#main .visitor-messenger.is-persistent .inquiry-system-card h3{font-size:14px;line-height:1.5;margin:0 0 var(--space-2);overflow-wrap:anywhere}
#main .visitor-messenger.is-persistent .inquiry-system-card p{font-size:13px;line-height:1.6;margin:var(--space-1) 0}
#main .visitor-messenger.is-persistent .inquiry-system-card .inquiry-system-reason{margin-top:var(--space-2);padding-top:var(--space-2)}
#main .visitor-messenger.is-persistent .inquiry-system-card>a{min-height:var(--control-height);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-control);background:var(--color-surface-soft);color:var(--color-ink);font-size:13px;font-weight:600}
#main .visitor-messenger.is-persistent .inquiry-system-card>a:hover{background:var(--color-line)}
@media(max-width:700px){#main .visitor-messenger.is-persistent #visitor-reply-message{font-size:var(--mobile-input-font-size)}}
.crm-request-workspace .visitor-inbox-count{background:var(--color-surface-soft);color:var(--color-secondary);margin:0}
#main .visitor-messenger.is-persistent{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:0;height:clamp(480px,68dvh,720px);max-height:none;min-height:0;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);overflow:hidden}
#main .visitor-messenger.is-persistent>.visitor-conversations{display:flex;min-width:0;min-height:0;height:100%;max-height:none;overflow:hidden;border:0;border-right:1px solid var(--color-line);border-radius:0;background:var(--color-surface)}
#main .visitor-messenger.is-persistent>.visitor-chat{display:flex;height:100%;min-height:0;max-height:none;border:0;border-radius:0;background:var(--color-surface)}
.visitor-messenger.is-persistent .visitor-list-heading{padding:var(--space-4) var(--space-4) var(--space-2)}
.visitor-messenger.is-persistent .visitor-list-heading>span{background:var(--color-surface-soft);color:var(--color-secondary)}
.visitor-messenger.is-persistent .visitor-search{padding:var(--space-2) var(--space-3) var(--space-3)}
.visitor-messenger.is-persistent .visitor-search>div{background:var(--color-canvas);border:1px solid var(--color-line);border-radius:var(--radius-control)}
.visitor-messenger.is-persistent .visitor-search input{font-size:14px;min-height:var(--control-height)}
.visitor-messenger.is-persistent [data-visitor-list]{padding:0 var(--space-2) var(--space-2);scrollbar-color:var(--color-line) transparent}
.visitor-messenger.is-persistent .visitor-conversation{border:0;border-bottom:1px solid var(--color-line);border-radius:0;margin:0;padding:var(--space-3) var(--space-2);gap:var(--space-2);background:transparent}
.visitor-messenger.is-persistent .visitor-conversation:is(:hover,.is-selected){background:var(--color-surface-soft)}
.visitor-messenger.is-persistent .visitor-avatar{background:var(--color-surface-soft);color:var(--color-secondary)}
.visitor-messenger.is-persistent .visitor-conversation-title strong{font-size:14px;color:var(--color-ink)}
.visitor-messenger.is-persistent .visitor-conversation-title small,.visitor-messenger.is-persistent .visitor-conversation-snippet{color:var(--color-secondary);font-size:12px}
.visitor-messenger.is-persistent .visitor-chat-head{padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-line);justify-content:flex-start}
.visitor-messenger.is-persistent .visitor-chat-head h2{font-size:16px;margin:0}
.visitor-messenger.is-persistent .visitor-chat-head p{margin:var(--space-1) 0 0}
.visitor-messenger.is-persistent .visitor-messages{flex:1;min-height:0;max-height:none;margin:0;border-radius:0;padding:var(--space-4);background:var(--color-canvas);scrollbar-color:var(--color-line) transparent}
.visitor-messenger.is-persistent .visitor-message>div{background:var(--color-surface);border-color:var(--color-line);color:var(--color-ink)}
.visitor-messenger.is-persistent .visitor-message.operator>div{background:var(--color-surface-soft)}
.visitor-messenger.is-persistent .visitor-message.automatic>div{background:transparent;color:var(--color-secondary)}
.visitor-messenger.is-persistent .visitor-chat-compose{padding:var(--space-3);background:var(--color-surface);border-top:1px solid var(--color-line);flex:none}
.visitor-messenger.is-persistent .visitor-macro-menu>summary{background:transparent;color:var(--color-secondary);border-color:transparent}.visitor-messenger.is-persistent .visitor-macro-menu>summary:hover,.visitor-messenger.is-persistent .visitor-macro-menu[open]>summary{background:var(--color-surface);color:var(--color-ink)}
.visitor-messenger.is-persistent .visitor-macro-options{border-color:var(--color-line);color:var(--color-ink)}
.visitor-messenger.is-persistent #visitor-reply-message::placeholder{color:var(--color-secondary)}
.visitor-messenger.is-persistent .visitor-chat-empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:var(--space-5);background:var(--color-canvas);text-align:center}
.visitor-messenger.is-persistent .visitor-chat-empty h3{font-size:16px;color:var(--color-ink)}
.visitor-messenger.is-persistent .visitor-chat-closed{background:var(--color-surface);color:var(--color-secondary);padding:var(--space-4);font-size:13px}
@media(min-width:1101px){.visitor-messenger.is-persistent .visitor-chat-compose{padding-inline-end:calc(var(--space-3) + var(--touch-target))}}
@media(max-width:1100px){
 #main .visitor-messenger.is-persistent{grid-template-columns:minmax(0,1fr);height:auto;overflow:visible}
 #main .visitor-messenger.is-persistent>.visitor-conversations{height:210px;border-right:0;border-bottom:1px solid var(--color-line);border-radius:var(--radius-card) var(--radius-card) 0 0}
 #main .visitor-messenger.is-persistent>.visitor-chat{height:clamp(460px,65dvh,620px);border-radius:0 0 var(--radius-card) var(--radius-card)}
}
@media(max-width:700px){
 .visitor-messenger.is-persistent .visitor-search input{font-size:var(--mobile-input-font-size)}
 .crm-request-workspace{gap:var(--space-4)}
}
/* Mobile requests chat: the inbox list opens first as a full-width side panel, a button in the chat header brings it back. */
#main .visitor-messenger .visitor-list-open,#main .visitor-messenger .visitor-list-close{display:none}
@media(max-width:700px){
 #main .visitor-messenger.is-persistent{position:relative;grid-template-columns:minmax(0,1fr);height:clamp(480px,calc(100dvh - 240px),800px);overflow:hidden}
 #main .visitor-messenger.is-persistent>.visitor-chat{height:100%;border-radius:0}
 #main .visitor-messenger.is-persistent>.visitor-conversations{position:absolute;inset:0;z-index:3;height:100%;border:0;border-radius:0;flex-direction:column;transform:translateX(-102%);visibility:hidden}
 #main .visitor-messenger.is-persistent.is-list-open>.visitor-conversations{transform:none;visibility:visible}
 #main .visitor-messenger.is-persistent [data-visitor-list]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
 .visitor-messenger.is-persistent .visitor-list-heading{display:flex;align-items:center;gap:var(--space-2)}
 #main .visitor-messenger.is-persistent .visitor-list-close{display:inline-flex;margin-left:auto}
 #main .visitor-messenger.is-persistent .visitor-list-open{display:inline-flex;flex:none;align-self:flex-start;margin:var(--space-3) var(--space-2) 0 var(--space-3)}
 #main .visitor-messenger.is-persistent .visitor-chat-head .visitor-list-open{margin:0 var(--space-2) 0 0}
 #main .visitor-messenger .visitor-list-open{border:0;background:transparent;box-shadow:none;font-size:20px;line-height:1}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){
 #main .visitor-messenger.is-persistent>.visitor-conversations{transition:transform .2s var(--ease-out),visibility 0s linear .2s}
 #main .visitor-messenger.is-persistent.is-list-open>.visitor-conversations{transition-delay:0s}
}
/* Mobile ledger rows are one tap target that opens the transaction detail. */
@media(max-width:700px){#main .crm-revenue-clear tbody tr[data-crm-row-detail]{cursor:pointer}#main .crm-revenue-clear .crm-revenue-person>a{pointer-events:none}}
/* Saved WOD cards open on a tap anywhere; community WOD detail uses the full width like the saved WOD sheet, with no box inside a box. */
body :is(#main,#modal) .saved-wod-row{cursor:pointer}
body:is([data-workspace="member"],[data-workspace="box"]) #main .wod-space-detail{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}
body:is([data-workspace="member"],[data-workspace="box"]) #main article.wod-space-detail section.wod-space-content{background:transparent;border:0;border-radius:0;margin:0;padding:var(--space-4) 0}
body:is([data-workspace="member"],[data-workspace="box"]) #main article.wod-space-detail section.wod-space-content+section.wod-space-content{border-top:1px solid var(--color-line)}
