/* Two focused tasks: write a workout, or follow one. */
.focus-mode{--focus-sidebar-width:0px}
.focus-mode{display:block}.focus-mode .sidebar,.focus-mode .topbar,.focus-mode .mobile-nav{display:none!important}.focus-mode .main{width:100%;grid-column:auto}.focus-mode .page{max-width:800px;padding:20px 22px 0}.focus-mode .storage-error{max-width:800px;margin:auto}
.focus-bar{position:sticky;top:0;z-index:25;display:flex;align-items:center;gap:9px;padding:8px max(16px,calc((100vw - 780px)/2));min-height:64px;background:#fafbf7;border-bottom:1px solid var(--line)}
.focus-bar>strong{font-size:15px;font-weight:600;flex:1;min-width:0;line-height:1.3;overflow-wrap:anywhere}.focus-back,.focus-menu{display:grid;place-items:center;min-width:40px;min-height:44px;padding:0;border-radius:8px}.focus-back:hover,.focus-menu:hover{background:#eaf0e1}.focus-menu{font-size:23px;letter-spacing:1px}.demo-button{padding:6px 8px;min-height:44px;font-size:11px;color:var(--muted)}
.editor-flow{min-height:calc(100svh - 84px);display:flex;flex-direction:column}.flow-step{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;margin-bottom:13px;font-size:12px;font-weight:600;color:var(--muted)}.flow-step .text-link{font-size:13px;min-height:40px;padding:8px 0}
.writing-step{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.writing-step .draft-title{font-size:21px;line-height:1.35;padding:19px 20px 14px;font-weight:600;border-radius:0;border:0;border-bottom:1px solid #eef1e8}.writing-step .source{padding:18px 20px;min-height:max(290px,calc(100svh - 340px));max-height:none;resize:vertical;line-height:1.8;font-size:16px}.writing-step .source::placeholder{color:#84907b}
.flow-actions{position:sticky;bottom:0;z-index:15;background:var(--ground);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0 max(15px,env(safe-area-inset-bottom));margin-top:auto;min-height:82px;border-top:1px solid transparent}.flow-actions:before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px;background:linear-gradient(transparent,var(--ground));pointer-events:none}.flow-actions .btn{min-height:48px;min-width:215px;font-size:15px}.flow-actions .save{font-size:11px}.flow-actions .save .icon{width:14px}.editor-flow>.notice{margin:0 0 14px}.editor-flow>.notice strong{font-size:14px}.editor-flow>.notice p{margin-top:5px}
.review-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:2px 0 22px}.review-title h1{font-size:26px;letter-spacing:-.7px;overflow-wrap:anywhere}.review-title .text-link{flex:none;display:inline-flex;align-items:center;gap:5px;font-size:13px;min-height:40px;padding:0;text-align:left}.review-date{display:flex;align-items:center;gap:16px;margin-bottom:24px}.review-date label{flex:1;color:var(--muted);font-weight:400;font-size:14px}.review-date input{width:185px;font-size:16px;background:white}.review-step .plan-block{margin-bottom:12px}.review-step .block-type{display:none}.review-step .block-number{background:transparent;color:#87917e;min-width:18px;font-weight:400}.review-step .block-rules{gap:5px}.review-step .rule{background:#f3f5ef}.review-step .source-detail{font-size:11px}.review-step .block-title{font-size:17px}.review-issues{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--warn);margin-bottom:15px}.review-ack{padding:16px;margin:20px 0 8px;background:#fff7e8;border-radius:12px;align-items:center;min-height:56px;font-size:14px}.review-ack input{margin:0;width:21px;height:21px;flex:none}
.context-sheet{display:grid;gap:17px}.context-sheet>.context-client{font-size:17px;font-weight:600}.context-sheet>h3{font-size:15px;margin-top:6px}.context-sheet .weight-row{padding:14px 0}.context-sheet .weight-label{display:block}.context-sheet .weight-history{margin-top:-10px}.context-sheet .context-empty{padding:0}.context-session{border:1px solid var(--line);border-radius:10px;padding:12px 14px}.context-session summary{cursor:pointer;font-size:14px;font-weight:550}.context-session summary small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:3px}.context-session pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:14px;line-height:1.65;margin-bottom:0}.context-session .actual{margin:16px 0 0}.draft-menu{display:grid;gap:22px}.draft-menu>.text-link{text-align:left;width:fit-content;color:#825b40}.demo-preview{font-size:13px;color:var(--muted)}.demo-preview summary{cursor:pointer;padding:8px 0}.demo-preview .btn{margin-top:10px}.focused #toast{bottom:100px}
@media(max-width:680px){.focus-mode .page{padding:12px 16px 0}.focus-bar{padding:7px 10px;gap:5px;min-height:60px}.focus-bar>strong{font-size:14px}.editor-flow{min-height:calc(100svh - 72px)}.flow-step{margin-bottom:8px}.writing-step .draft-title{font-size:20px;padding:17px 16px 13px}.writing-step .source{padding:15px 16px;min-height:max(260px,calc(100svh - 320px))}.flow-actions{min-height:84px;gap:12px}.flow-actions .btn{min-width:0;flex:1;max-width:250px;font-size:14px}.flow-actions .save{max-width:116px;font-size:11px;line-height:1.4;gap:4px}.review-title{display:block;margin-bottom:18px}.review-title h1{font-size:25px}.review-title .text-link{margin-top:8px;min-height:32px}.review-date{gap:10px;margin-bottom:18px}.review-date input{width:165px}.review-step .block-type{display:none}.review-step .plan-block{border-radius:12px}}
@media(max-width:360px){.focus-mode .page{padding-left:12px;padding-right:12px}.focus-bar>strong{font-size:13px}.focus-bar{gap:3px}.demo-button{padding:5px;font-size:10px}.focus-menu{min-width:34px}.flow-step{font-size:11px}.flow-step .text-link{font-size:12px}.flow-actions{gap:8px}.flow-actions .save{font-size:10px;max-width:91px}.flow-actions .btn{font-size:13px;padding:11px 12px}}
