.editor-phone { max-width:480px; }
.editor-header { display:flex; gap:12px; align-items:center; padding:calc(16px + env(safe-area-inset-top)) 18px 20px; }
.editor-header>a { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; font-size:22px; color:var(--muted); }
.editor-header>div { flex:1; min-width:0; }
.editor-header>div>span { display:block; font-size:9px; letter-spacing:1.5px; color:var(--green); margin-bottom:6px; }
.editor-header h1 { font-size:21px; letter-spacing:-.6px; font-weight:600; margin:0; }
.editor-status { color:var(--muted); background:#1b251e; border:1px solid #304236; padding:6px 9px; border-radius:20px; font-size:10px; white-space:nowrap; }
.editor-client { display:flex; align-items:center; gap:10px; padding:15px 0 22px; }
.client-avatar { width:40px; height:40px; display:grid; place-items:center; background:#223229; border-radius:50%; font-size:12px; font-weight:600; color:#c7e6d1; flex-shrink:0; }
.editor-client>div { flex:1; min-width:0; }
.editor-client strong { display:block; font-size:15px; font-weight:600; }
.editor-client>div>span { display:block; color:var(--muted); font-size:10px; line-height:1.6; margin-top:3px; }
.editor-client label { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:11px; }
.editor-client select { width:52px; min-height:44px; border:1px solid var(--line); border-radius:9px; padding:8px; background:var(--sheet); color:var(--text); font-size:16px; }
.editor-phone .day-picker { margin-bottom:22px; }
.editor-day-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.editor-day-heading h2 { font-size:30px; font-weight:600; letter-spacing:-1px; margin:0; }
.editor-day-heading>span { color:var(--muted); font-size:12px; }
.editor-hint { color:var(--muted); font-size:11px; margin:9px 0 20px; line-height:1.5; }
.editor-blocks { list-style:none; padding:0; margin:0; }
.editor-block { background:var(--sheet); border:1px solid var(--line); border-radius:15px; margin-bottom:13px; padding:4px 15px 0; }
.editor-block.superset { border-left:3px solid var(--green); }
.editor-block-head { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; }
.editor-block-head>span { color:var(--muted); font-size:10px; }
.editor-block.superset .editor-block-head>span { color:var(--green); font-weight:600; font-size:12px; }
.editor-block-head button { min-height:44px; padding:0 4px; background:transparent; border:0; color:var(--muted); font-size:11px; }
.editor-block-actions { display:flex; align-items:center; gap:3px; }
.editor-exercise-row { display:flex; align-items:center; gap:3px; border-top:1px solid var(--line); }
.editor-exercise-row .editor-exercise { border-top:0; flex:1; min-width:0; }
.editor-block:not(.superset) .editor-exercise-row { border-top:0; }
.editor-delete,.editor-block-head .editor-delete { display:grid; place-items:center; width:44px; min-width:44px; height:44px; padding:0; border:0; border-radius:9px; background:transparent; color:#bd9993; flex-shrink:0; }
.editor-delete svg,.builder-delete svg,.builder-exercise-heading button svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.editor-delete:active,.builder-delete:active { background:#402524; }
.editor-block-summary { color:var(--muted); font-size:10px; margin:0 0 4px; line-height:1.6; }
.editor-exercise { display:flex; align-items:center; justify-content:space-between; gap:12px; text-align:left; width:100%; min-height:80px; padding:16px 0; border:0; border-top:1px solid var(--line); background:transparent; color:var(--text); }
.editor-block:not(.superset) .editor-exercise { border-top:0; padding-top:6px; }
.editor-exercise>div { min-width:0; }
.editor-exercise strong { display:block; font-size:16px; font-weight:600; letter-spacing:-.2px; overflow-wrap:anywhere; }
.editor-exercise small { display:block; font-size:12px; color:#b2bfb5; line-height:1.6; margin-top:7px; overflow-wrap:anywhere; }
.editor-exercise>span { flex-shrink:0; color:#83978b; font-size:20px; }
.editor-exercise .has-note { color:var(--muted); font-size:10px; margin-top:4px; }
.editor-block-add { width:100%; min-height:48px; border:0; border-top:1px solid var(--line); background:transparent; color:var(--green); font-size:12px; text-align:left; }
.editor-block-add:disabled { color:var(--muted); opacity:.6; }
.editor-add { display:grid; grid-template-columns:1fr; margin:20px 0; }
.editor-add button { min-height:48px; border:1px dashed #455c4c; border-radius:11px; background:transparent; color:#c9ded0; font-size:13px; }
.editor-day-note { display:grid; gap:9px; color:var(--muted); font-size:11px; }
.editor-day-note textarea { width:100%; background:var(--sheet); color:var(--text); border:1px solid var(--line); border-radius:11px; padding:12px; font:inherit; font-size:16px; resize:vertical; }
.editor-demo-caption { font-size:10px; line-height:1.7; color:#879a8d; margin:19px 0 25px; }
.editor-phone main { padding-bottom:calc(90px + env(safe-area-inset-bottom)); }
.editor-footer { position:fixed; z-index:20; bottom:0; left:50%; transform:translateX(-50%); width:100%; max-width:480px; display:grid; grid-template-columns:1fr 1.1fr; gap:10px; padding:13px 20px calc(13px + env(safe-area-inset-bottom)); background:#111614f5; border-top:1px solid var(--line); backdrop-filter:blur(14px); }
.editor-footer button { min-height:48px; border:1px solid var(--line); border-radius:11px; background:var(--sheet); color:var(--text); font-size:12px; font-weight:550; }
#coachSave { background:var(--green); color:#062515; border-color:var(--green); }
.coach-sheet { width:min(460px,calc(100% - 24px)); max-height:88dvh; overflow-y:auto; padding:20px; border:1px solid #405045; border-radius:20px; background:var(--bg); color:var(--text); }
.coach-sheet::backdrop { background:#000a; backdrop-filter:blur(5px); }
.sheet-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:19px; }
.sheet-heading h2 { font-size:22px; font-weight:600; letter-spacing:-.6px; margin:0; }
.sheet-heading>button { width:44px; height:44px; border:0; background:transparent; color:var(--muted); font-size:26px; }
.sheet-fields { display:grid; grid-template-columns:1fr 1fr; gap:15px 12px; }
.sheet-fields label { display:grid; gap:8px; min-width:0; color:var(--muted); font-size:11px; line-height:1.5; }
.sheet-fields .full { grid-column:1/-1; }
.sheet-fields input,.sheet-fields select,.sheet-fields textarea { width:100%; min-width:0; min-height:48px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:var(--sheet); color:var(--text); font-family:inherit; font-size:16px; }
.sheet-fields textarea { min-height:70px; resize:vertical; }
.sheet-fields input:focus,.sheet-fields textarea:focus,.sheet-fields select:focus { outline:1px solid var(--green); }
.sheet-fields details { grid-column:1/-1; }
.sheet-fields summary { min-height:44px; color:var(--muted); font-size:12px; line-height:44px; cursor:pointer; }
.sheet-fields details>div { display:grid; grid-template-columns:1fr 1fr; gap:15px 12px; margin-top:4px; }
.sheet-context { color:var(--muted); font-size:12px; line-height:1.6; margin:-8px 0 20px; }
.sheet-mode-help,.sheet-count-help { color:var(--muted); font-size:12px; line-height:1.7; margin:17px 0 0; }
.sheet-count-help { color:#d3bc8b; }
.sheet-save { width:100%; min-height:48px; border:0; border-radius:11px; background:var(--green); color:#062515; font:inherit; font-size:14px; font-weight:600; margin-top:23px; }
.sheet-options { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.sheet-options button { flex:1; min-width:90px; min-height:44px; border:1px solid var(--line); border-radius:8px; background:transparent; color:var(--muted); font-size:11px; }
.sheet-options button.danger { color:#e5a59e; }
.sheet-error { color:#ffaaa2; font-size:12px; line-height:1.6; }
.editor-toast { position:fixed; z-index:100; bottom:calc(88px + env(safe-area-inset-bottom)); left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100% - 32px); border:1px solid #405045; border-radius:11px; background:#24332a; color:#e3f1e7; padding:12px 16px; font-size:12px; }
.editor-toast { display:flex; align-items:center; gap:15px; }
.editor-toast button { min-height:44px; border:0; background:transparent; color:var(--green); font-size:12px; font-weight:600; padding:0 4px; }
.client-preview-sheet .preview-list { list-style:none; padding:0; margin:0; }
.client-preview-sheet .preview-row { padding:17px 0; border-bottom:1px solid var(--line); }
.client-preview-sheet .preview-row:last-child { border-bottom:0; }
.client-preview-sheet .preview-sequence { padding:12px; margin:15px 0; border:1px solid var(--line); border-left:3px solid var(--green); border-radius:12px; }
.client-preview-sheet .preview-sequence>strong { color:var(--green); font-size:12px; }
.client-preview-sheet .preview-sequence>p { color:var(--muted); font-size:11px; line-height:1.6; }
.client-preview-sheet .preview-row>strong { font-size:16px; font-weight:600; }
.client-preview-sheet .preview-row>p { margin:7px 0 0; font-size:12px; line-height:1.7; color:#b7c8bc; }
.client-preview-sheet .preview-row b { color:var(--green); font-weight:600; }
.client-preview-sheet .preview-row .preview-minute { color:var(--green); font-size:11px; }
.coach-sheet.block-editor-sheet { width:min(560px,calc(100% - 16px)); height:min(94dvh,1000px); max-height:94dvh; padding:0; overflow:hidden; }
.coach-sheet.block-editor-sheet.block-type-picker,
#trainer-app .coach-sheet.block-editor-sheet.block-type-picker { height:fit-content; }
.block-type-picker .block-builder-form { height:auto; }
.block-type-picker .block-builder-body { flex:none; }
.block-builder-form { height:100%; display:flex; flex-direction:column; }
.block-builder-heading { flex-shrink:0; margin:0; padding:12px 18px; border-bottom:1px solid var(--line); }
.block-builder-heading h2 { font-size:21px; }
.builder-heading-actions { display:flex; align-items:center; gap:2px; }
.builder-heading-actions>button { display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; border-radius:9px; background:transparent; color:var(--muted); font-size:26px; }
.builder-heading-actions .builder-delete { color:#bd9993; }
.block-builder-body { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:18px; scroll-padding-top:12px; }
.block-builder-settings { gap:12px; }
.block-builder-settings>label { align-self:start; }
.builder-list-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:24px 0 13px; }
.builder-list-heading h3 { margin:0; font-size:16px; font-weight:600; }
.builder-list-heading>span { font-size:11px; color:var(--muted); }
.builder-exercise { margin-bottom:12px; padding:0 13px 13px; border:1px solid var(--line); border-radius:13px; background:#171e19; scroll-margin-top:12px; }
.builder-exercise-heading { display:flex; align-items:center; justify-content:space-between; height:44px; }
.builder-exercise-heading>span { font-size:11px; color:var(--muted); }
.builder-exercise-heading>button { width:44px; height:44px; margin-right:-9px; border:0; background:transparent; color:#bd9993; font-size:21px; }
.builder-exercise .sheet-fields { gap:11px 10px; }
.builder-exercise .sheet-fields :is(input,select,textarea) { padding-left:9px; padding-right:9px; }
.builder-effort-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.builder-target-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.builder-load-fields { display:grid; grid-template-columns:minmax(104px,.65fr) minmax(0,1.35fr); gap:10px; }
.block-builder-form[data-block-mode="single"] .builder-target-fields { grid-template-columns:minmax(48px,.7fr) minmax(100px,1.3fr) minmax(0,1fr); }
.block-builder-form [hidden] { display:none!important; }
.builder-exercise summary { line-height:44px; }
.builder-add-exercise { width:100%; min-height:48px; border:1px dashed #455c4c; border-radius:11px; background:transparent; color:var(--green); font-size:13px; }
.builder-actions { margin-top:20px; }
.builder-actions>summary { min-height:44px; line-height:44px; color:var(--muted); font-size:12px; cursor:pointer; }
.builder-actions .sheet-options { margin-top:4px; }
.block-builder-footer { flex-shrink:0; display:grid; grid-template-columns:1fr 1.4fr; gap:10px; border-top:1px solid var(--line); padding:12px 18px calc(12px + env(safe-area-inset-bottom)); background:var(--bg); }
.block-builder-footer button { min-height:48px; margin:0; border:1px solid var(--line); border-radius:11px; background:var(--sheet); color:var(--text); font-size:13px; }
.block-builder-footer .sheet-save { background:var(--green); color:#062515; border-color:var(--green); }
@media(max-width:350px) { .editor-header { gap:6px; padding-left:12px; padding-right:12px; } .editor-header h1 { font-size:18px; } .editor-block { padding-left:12px; padding-right:12px; } .editor-client { gap:7px; } .editor-client label { gap:4px; } .client-avatar { width:34px; height:34px; } }
@media(min-width:850px) { .editor-phone main { padding-bottom:0; } .editor-footer { position:static; transform:none; padding-bottom:16px; } .editor-phone { flex-shrink:0; } body:has(.editor-phone) { gap:50px; } .presentation { max-width:340px; } }
