@import "https://fonts.googleapis.com/css2?family=Oswald:wght@500;600&family=Inter:wght@400;500;600&display=swap";:root{--bg:#eaf5ef;--surface:#fff;--surface-alt:#dcede3;--border:#bdd9c9;--text-primary:#112218;--text-secondary:#3f5d4b;--text-faint:#52705e;--shadow-card:0 2px 8px #0b2a1814;--selected:#15803d;--on-selected:#fff;--link:#116b33;--accent:#e8590c;--accent-hover:#c94a08;--accent-2:#f59e0b;--accent-3:#c2410c;--accent-muted:#15803d59;--accent-faint:#15803d1f;--accent-faint-border:#15803d59;--on-accent:#fff;--logo-text:#112218;--info:#0284c7;--success:#15803d;--danger:#dc2626;--danger-text:#b91c1c;--warning:#b45309;--danger-faint:#dc262614;--danger-faint-border:#dc262659;--success-faint:#15803d1a;--warning-faint:#b453091a;--warning-faint-border:#b4530966;--overlay-faint:#1122180f}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,sans-serif}h1,h2,h3{letter-spacing:.01em;margin:0 0 4px;font-family:Oswald,sans-serif;font-weight:600}h1{font-size:26px}h2{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:17px}p{margin:0 0 8px;line-height:1.5}.muted{color:var(--text-secondary)}.muted.small,p.small{color:var(--text-faint);font-size:13px}a{color:var(--link)}.link-btn{font:inherit;color:var(--link);cursor:pointer;background:0 0;border:none;margin:0;padding:0;text-decoration:underline}.link-btn:hover{color:var(--selected)}.app-shell{flex-direction:column;min-height:100%;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.brand{color:var(--text-primary);letter-spacing:.02em;font-family:Oswald,sans-serif;font-size:20px;font-weight:600;text-decoration:none}.brand span{color:var(--link)}.topbar-right{align-items:center;gap:16px;display:flex}.topbar-user{color:var(--text-secondary);border-radius:999px;align-items:center;gap:8px;padding:2px 10px 2px 2px;font-size:14px;text-decoration:none;display:inline-flex}.topbar-user:hover,.topbar-user-active{color:var(--text-primary);background:var(--overlay-faint)}.avatar{object-fit:cover;border-radius:50%;flex:none;display:inline-block}.avatar-initials{background:var(--accent-faint);border:1px solid var(--accent-faint-border);color:var(--link);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.profile-page{max-width:720px}.profile-card{flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;display:flex}.profile-card h2,.profile-card h3{margin:0}.profile-photo-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.profile-photo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-tabs{margin-bottom:14px}.check-group{border:0;min-width:0;margin:0;padding:0}.check-group legend{margin-bottom:6px;padding:0;font-weight:600}.check-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 12px;display:grid}.inline-pair{gap:8px;display:flex}.inline-pair input{width:80px}.biz-logo{object-fit:contain;border-radius:8px;max-width:160px;max-height:88px}.biz-logo-empty{border:1px dashed var(--accent-faint-border);justify-content:center;align-items:center;width:120px;height:88px;display:inline-flex}.profile-roles{flex-wrap:wrap;gap:8px;display:flex}.nav-link{color:var(--text-secondary);font-size:14px;font-weight:600;text-decoration:none}.nav-link:hover,.nav-link-active{color:var(--link)}.staff-invite-form{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.staff-invite-form input{flex:1;min-width:160px}.staff-invite-form select{min-width:140px}.app-main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:32px 24px 64px}.page-header{margin-bottom:24px}.back-link{color:var(--text-faint);margin-bottom:12px;font-size:13px;text-decoration:none;display:inline-block}.back-link:hover{color:var(--link)}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:10px 18px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface-alt);color:var(--text-primary);border-color:var(--border)}.btn-secondary:hover{border-color:var(--selected)}.btn-ghost{color:var(--text-secondary);border-color:var(--border);background:0 0}.btn-ghost:hover{color:var(--text-primary);border-color:var(--text-faint)}label{color:var(--text-secondary);flex-direction:column;gap:6px;margin-bottom:16px;font-size:13px;display:flex}input,select{border:1px solid var(--border);background:var(--surface-alt);color:var(--text-primary);border-radius:8px;padding:10px 12px;font-family:Inter,sans-serif;font-size:15px}input:focus,select:focus{border-color:var(--selected);outline:none}.password-field{display:flex;position:relative}.password-field input{width:100%;padding-right:40px}.password-toggle{color:var(--text-faint);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-toggle:hover{color:var(--text-secondary)}.auth-page{justify-content:center;align-items:center;padding:40px 20px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:380px;padding:32px}.auth-subtitle{color:var(--text-secondary);margin-bottom:24px;font-size:14px}.auth-card .btn{width:100%;margin-top:4px}.auth-footer{color:var(--text-faint);text-align:center;margin-top:16px;font-size:13px}.add-client-form{gap:12px;margin-bottom:20px;display:flex}.add-client-form input{flex:1}.client-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.checkbox-list{background:var(--surface);border:1px solid var(--border);border-radius:10px;max-height:260px;padding:4px 12px;overflow-y:auto}.checkbox-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 0;font-size:14px;display:flex}.checkbox-row:last-child{border-bottom:none}.client-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.client-info{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.client-name{font-weight:600}.client-email{color:var(--text-faint);font-size:13px}.client-actions{flex-wrap:wrap;gap:8px;display:flex}.status-pill{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.status-active{background:var(--success-faint);color:var(--success)}.status-nologin{color:var(--text-faint);background:#52705e24}.status-invited{background:var(--accent-faint);color:var(--link)}.status-expired{color:var(--text-faint);background:#52705e24}.card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:20px 24px}.card-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.picker-row{gap:8px;display:flex}.picker-row select{padding:6px 10px;font-size:13px}.range-row{gap:6px;margin-bottom:16px;display:flex}.range-pill{border:1px solid var(--border);color:var(--text-faint);cursor:pointer;background:0 0;border-radius:999px;padding:5px 12px;font-family:Inter,sans-serif;font-size:12px;font-weight:600}.range-pill:hover{color:var(--text-primary);border-color:var(--text-faint)}.range-pill-active{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.stat-row{flex-wrap:wrap;gap:28px;margin:12px 0;display:flex}.stat{flex-direction:column;display:flex}.stat-value{color:var(--link);font-family:Oswald,sans-serif;font-size:28px;font-weight:600}.stat-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;font-size:12px}.upload-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.upload-row input[type=file]{color:var(--text-secondary);background:0 0;border:none;padding:0;font-size:13px}.mapping-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-top:12px;padding:16px}.mapping-section{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.mapping-section:first-of-type{border-top:none;margin-top:8px;padding-top:0}.mapping-section h4{letter-spacing:.02em;margin:0 0 2px;font-family:Oswald,sans-serif;font-size:15px}.mapping-row{align-items:center;gap:10px;margin-top:8px;display:flex}.mapping-row span{color:var(--text-secondary);flex:0 0 200px;font-size:13px}.mapping-row select,.mapping-row .builder-input{flex:1;margin-bottom:0}.mapping-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}@media (width<=720px){.mapping-row{flex-direction:column;align-items:stretch;gap:4px}.mapping-row span{flex:none}}.table-scroll{overflow-x:auto}.session-table{border-collapse:collapse;width:100%;font-size:14px}.session-table th{text-align:left;color:var(--text-faint);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px}.session-table td{border-bottom:1px solid var(--border);color:var(--text-secondary);padding:10px}.notes-cell{white-space:nowrap;text-overflow:ellipsis;max-width:220px;overflow:hidden}.error-banner,.success-banner{border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13px}.error-banner{background:var(--danger-faint);border:1px solid var(--danger-faint-border);color:var(--danger-text)}.error-banner ul{margin:8px 0 0;padding-left:18px}.success-banner{background:var(--success-faint);border:1px solid var(--accent-faint-border);color:var(--success)}@media (width<=640px){.app-main{padding:20px 16px 48px}.topbar{padding:12px 16px}.add-client-form{flex-direction:column}}.mode-row{gap:8px;margin-bottom:12px;display:flex}.mode-pill{border:1px solid var(--border);background:var(--surface-alt);color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:6px 14px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.mode-pill-active{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.topbar-toggle{margin-bottom:0}.enroll-form{flex-direction:column;gap:10px;max-width:360px;margin-bottom:20px;display:flex}.enroll-password-row{gap:10px;display:flex}.enroll-password-row input{flex:1}.btn-danger{color:var(--danger);border-color:var(--danger-faint-border);background:0 0}.btn-danger:hover:not(:disabled){background:var(--danger-faint);border-color:var(--danger)}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.builder{flex-direction:column;gap:16px;margin-top:16px;display:flex}.draft-banner{border:1px solid var(--selected);background:var(--surface-alt);color:var(--text-secondary);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.draft-banner-actions{flex-shrink:0;gap:8px;display:flex}.day-tabs{flex-wrap:wrap;gap:6px;display:flex}.day-tab{border:1px solid var(--border);background:var(--surface-alt);color:var(--text-secondary);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.day-tab-active{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.day-tab-active .day-tab-dot-valid{background:var(--on-selected)}.day-tab-dot{background:var(--border);border-radius:50%;width:7px;height:7px;display:inline-block}.day-tab-dot-valid{background:var(--selected)}.builder-day-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.builder-day-header h3{margin:0}.copy-day-select{background:var(--surface-alt);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:13px}.lift-sections{grid-template-columns:1fr;gap:16px;display:grid}@media (width<=720px){.lift-sections{grid-template-columns:1fr}}.builder-section{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;padding:14px}.builder-section h4{color:var(--text-primary);margin:0 0 10px}.builder-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.builder-section-header h4{margin:0}.core-toggle-row{color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.builder-input{background:var(--surface);width:100%;color:var(--text-primary);border:1px solid var(--border);border-radius:8px;margin-bottom:8px;padding:8px 10px;font-family:Inter,sans-serif;font-size:13px}textarea.builder-input{resize:vertical;min-height:44px}.exercise-row{grid-template-columns:auto 2fr 1fr 1fr 1fr auto;align-items:center;gap:8px;margin-bottom:8px;display:grid}.exercise-row .builder-input{margin-bottom:0}.core-row{grid-template-columns:auto auto 1.2fr 1.6fr 1.2fr auto}.exercise-row.lift-row{grid-template-columns:auto auto 1.1fr 2fr .7fr .7fr 1fr .8fr auto}@media (width<=720px){.exercise-row,.exercise-row.lift-row{grid-template-columns:auto 1fr 1fr}.row-remove-btn{grid-column:span 2;justify-self:end}}.row-remove-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;width:32px;height:32px}.row-remove-btn:hover{color:var(--danger);border-color:var(--danger)}.row-move-col{flex-direction:column;gap:2px;display:flex}.row-drag-handle{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;text-align:center;min-width:22px;color:var(--text-secondary);letter-spacing:-2px;padding:6px 4px;font-size:14px;line-height:1}.row-drag-handle:hover{color:var(--link)}.row-drag-handle:active{cursor:grabbing}.exercise-row.row-dragging{opacity:.4}.exercise-row.row-drop-before{box-shadow:0 -3px 0 0 var(--selected)}.exercise-row.row-drop-after{box-shadow:0 3px 0 0 var(--selected)}.row-move-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;width:22px;height:18px;padding:0;font-size:12px;line-height:1}.row-move-btn:hover:not(:disabled){color:var(--link);border-color:var(--selected)}.row-move-btn:disabled{opacity:.3;cursor:default}.add-row-btn{border:1px dashed var(--border);color:var(--link);cursor:pointer;background:0 0;border-radius:8px;width:100%;padding:8px 12px;font-size:13px;font-weight:600}.add-row-btn:hover{border-color:var(--selected);background:var(--accent-faint)}.cardio-type-row{gap:8px;margin-bottom:10px;display:flex}.builder-save-bar{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;position:sticky;bottom:0}.builder-ready-text{color:var(--link);font-size:13px;font-weight:600}.builder-save-actions{gap:8px;display:flex}.builder-name-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px;display:flex}.builder-name-row .builder-input{flex:1;min-width:220px}.builder-input-missing{border-color:var(--danger)}.field-required-text{color:var(--danger-text);margin:-2px 0 6px;font-size:13px}.visibility-switch-label{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;display:flex}.visibility-switch-text{color:var(--text-secondary);font-size:13px;font-weight:600}.visibility-switch-text-public{color:var(--link);font-size:13px;font-weight:600}.switch{flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute}.switch-track{background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;transition:background .15s,border-color .15s;position:absolute;inset:0}.switch-track:before{content:"";background:var(--text-secondary);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.switch input:checked~.switch-track{background:var(--selected);border-color:var(--selected)}.switch input:checked~.switch-track:before{background:var(--bg);transform:translate(18px)}.switch input:disabled~.switch-track{opacity:.5;cursor:not-allowed}.rest-day-switch-label{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;display:flex}.rest-day-switch-text{color:var(--text-secondary);font-size:13px;font-weight:600}.rest-day-switch-text-on{color:var(--link);font-size:13px;font-weight:700}.day-tab-rest-badge{text-transform:uppercase;letter-spacing:.03em;color:var(--link);background:var(--accent-faint);border:1px solid var(--accent-faint-border);border-radius:999px;padding:1px 6px;font-size:12px;font-weight:700;line-height:1.4}.builder-day-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn-small{padding:4px 10px;font-size:12px}.add-row-actions{flex-direction:column;gap:8px;display:flex}.circuit-select{margin-bottom:10px}.cardio-picker-row{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.library-toggle-btn{border:1px dashed var(--accent-faint-border);color:var(--link);cursor:pointer;background:0 0;border-radius:8px;width:100%;padding:8px 12px;font-size:13px;font-weight:600}.library-toggle-btn:hover{border-color:var(--selected);background:var(--accent-faint)}.library-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-top:4px;padding:10px}.library-panel-header{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.library-filter-row{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.library-filter-row select{background:var(--surface-alt);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;flex:1;min-width:110px;padding:6px 8px;font-size:12px}.library-results{flex-direction:column;gap:4px;max-height:220px;display:flex;overflow-y:auto}.library-result-row{background:var(--surface-alt);cursor:pointer;text-align:left;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-family:Inter,sans-serif;display:flex}.library-result-row:hover{border-color:var(--selected);background:var(--accent-faint)}.library-result-name{color:var(--text-primary);font-size:13px;font-weight:500}.library-result-tags{color:var(--text-faint);white-space:nowrap;font-size:12px}.link-button{color:var(--text-primary);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0}.link-button:hover:not(:disabled){color:var(--link);text-decoration:underline}.link-button:disabled{cursor:default;opacity:.7}.modal-overlay{z-index:100;background:#11221880;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:640px;max-height:calc(100vh - 80px);display:flex}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 12px;display:flex}.modal-header h2{margin:0 0 4px}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:24px;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:16px 20px 20px;overflow-y:auto}.preview-day{border-bottom:1px solid var(--border);padding:12px 0}.preview-day:last-child{border-bottom:none}.preview-day h3{letter-spacing:.02em;margin:0 0 8px;font-family:Oswald,sans-serif;font-size:16px}.preview-rest-tag{color:var(--text-faint);margin:0;font-style:italic}.preview-section{margin-bottom:10px}.preview-section:last-child{margin-bottom:0}.preview-section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px;font-size:13px;font-weight:600}.preview-exercise-list{color:var(--text-secondary);margin:0;padding-left:18px;font-size:14px}.preview-exercise-list li{margin-bottom:2px}.brand-block{flex-direction:column;gap:2px;display:flex}.log-who-card{text-align:left;cursor:pointer;color:inherit;font-family:inherit}.log-who-card:hover{border-color:var(--selected)}.log-exercise-card{margin-bottom:16px}.set-rows{flex-direction:column;gap:10px;margin-top:10px;display:flex}.set-row{align-items:center;gap:16px;display:flex}.set-row-label{color:var(--text-faint);min-width:48px;font-size:13px}.set-row-field{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:12px;display:flex}.set-row-field .builder-input{width:100px;margin-bottom:0}.finish-bar{justify-content:flex-end;align-items:center;gap:16px;margin-top:16px;margin-bottom:40px;display:flex}.log-focus-heading{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:20px 0 8px;font-size:14px;font-weight:700}.set-delete-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-self:flex-end;align-items:center;margin-left:auto;padding:0;display:inline-flex}.set-delete-btn:hover{color:var(--danger-text);border-color:var(--danger)}.set-add-btn{margin-top:10px}.pt-chips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.pt-chip{border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;background:0 0;border-radius:999px;padding:6px 14px}.pt-chip-active{background:var(--selected);border-color:var(--selected);color:#fff}.pt-chip-count{opacity:.7;font-size:.85em}.pt-add-category{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.pt-add-category input{flex:1;min-width:220px}.pt-custom-cat{border:1px dashed var(--border);border-radius:999px;padding:4px 6px 4px 12px;font-size:.9em}.pt-custom-cat button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.1em}.pt-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.pt-card h3{margin:8px 0 4px}.pt-thumb{aspect-ratio:16/9;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;display:flex;overflow:hidden}.pt-thumb img{object-fit:cover;width:100%;height:100%;display:block}.pt-cues{white-space:pre-wrap;margin:6px 0}.pt-defaults{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.pt-defaults label{flex-direction:column;gap:4px;font-size:.85em;display:flex}@media (width<=720px){.pt-defaults{grid-template-columns:repeat(2,1fr)}}.pt-starter{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:14px 16px;display:flex}.pt-starter p{margin:4px 0 0}@media (width<=640px){.pt-starter{flex-direction:column;align-items:stretch}}.plan-freq{flex-wrap:wrap;gap:20px;margin-bottom:10px;display:flex}.plan-field{flex-direction:column;gap:4px;margin:10px 0;font-size:.9em;display:flex}.plan-items,.plan-pick{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.plan-item{border:1px solid var(--border);background:var(--surface,transparent);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.plan-item-dragging{opacity:.4}.plan-grip{cursor:grab;color:var(--text-faint);-webkit-user-select:none;user-select:none;letter-spacing:-2px;padding-top:2px}.plan-item-main{flex:1;min-width:0}.plan-fields{flex-wrap:wrap;gap:10px;margin:8px 0;display:flex}.plan-fields label{flex-direction:column;gap:3px;font-size:.8em;display:flex}.plan-fields input{width:84px}.plan-note{width:100%}.plan-proto{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.plan-pick li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;display:flex}.plan-logs{border-collapse:collapse;width:100%;font-size:.9em}.plan-logs th,.plan-logs td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:6px 8px}.plan-pain-high{color:var(--danger-text);font-weight:700}.plan-pain-mid{color:var(--warning);font-weight:600}.topbar-right{flex-wrap:wrap;justify-content:flex-end}.site{flex-direction:column;gap:8px;display:flex}.site-hero{text-align:center;padding:40px 0 28px}.site-hero h1{margin-bottom:12px;font-size:40px;line-height:1.1}.site-hero-small{padding:16px 0 8px}.site-hero-small h1{font-size:32px}.site-lead{max-width:620px;color:var(--text-secondary);margin:0 auto 20px;font-size:17px}.site-cta-row{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.site-hero .site-cta-row{justify-content:center}.site-section{margin:12px 0 20px}.site-heading{color:var(--text-primary);margin-bottom:12px;font-size:22px}.site-more,.site-note{margin-top:8px}.site-list{margin:8px 0 12px;padding-left:18px;line-height:1.6}.site-trainer-band{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px}.site-prose h2{margin-top:20px}.site-prose p{color:var(--text-secondary)}.site-footer{border-top:1px solid var(--border);text-align:center;margin-top:32px;padding-top:20px}.site-footer-links{flex-wrap:wrap;justify-content:center;gap:18px;margin-bottom:8px;display:flex}.site-footer-links a{color:var(--text-secondary);font-size:14px;text-decoration:none}.site-footer-links a:hover{color:var(--link)}.plan-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:16px;display:grid}.plan-tier-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px 22px}.plan-tier-current{border-color:var(--selected)}.plan-tier-head{justify-content:space-between;align-items:center;display:flex}.plan-tier-price{margin:8px 0 2px;font-family:Oswald,sans-serif;font-size:30px}.plan-tier-price span{color:var(--text-faint);font-family:Inter,sans-serif;font-size:14px}.plan-tier-features{margin:12px 0 0;padding-left:18px;font-size:14px;line-height:1.6}.option-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.option-row{text-align:left;border:1px solid var(--border);background:var(--surface-alt);color:var(--text-primary);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-family:inherit;font-size:15px;display:flex}.option-row-on{border-color:var(--selected);background:var(--accent-faint)}.option-mark{border:1px solid var(--border);width:22px;height:22px;color:var(--link);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.option-hint{display:block}.wide-input{width:100%}.inline-field{color:var(--text-secondary);flex-direction:column;gap:4px;margin:10px 0;font-size:13px;display:flex}.food-results{max-height:340px;margin:10px 0 0;padding:0;list-style:none;overflow-y:auto}.food-result{text-align:left;border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-primary);cursor:pointer;background:0 0;justify-content:space-between;gap:12px;padding:10px 12px;font-family:inherit;font-size:14px;display:flex}.food-result:hover{background:var(--surface-alt)}.food-detail{margin-top:14px}.plan-row{border-top:1px solid var(--border);padding:12px 0}.plan-slot{background:var(--surface-alt);border-radius:10px;margin-top:10px;padding:10px 14px}.diff-card h2{color:var(--text-primary);text-transform:none;margin-bottom:10px;font-size:18px}.diff-row{color:var(--text-secondary);font-size:14px;line-height:1.55}.diff-tag{letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-size:12px;font-weight:600;display:block}.diff-tag-typical{color:var(--text-faint)}body{background:var(--bg);background-attachment:fixed}.brand{align-items:center;gap:10px;display:inline-flex}.brand-trainer{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-family:Inter,sans-serif;font-size:12px;font-weight:600}.btn-primary{box-shadow:0 6px 20px -8px #e8590c80}.site-hero{position:relative}.site-hero h1{background:linear-gradient(#112218 30%,#3f5d4b 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;padding-bottom:.12em;line-height:1.25}.diff-tag-us{color:var(--warning)}.card{box-shadow:var(--shadow-card)}.form-guide-link{white-space:nowrap;color:var(--link);vertical-align:middle;border:1px solid;border-radius:999px;margin-left:8px;padding:1px 9px;font-size:.8em;font-weight:600;text-decoration:none;display:inline-block}.form-guide-link:hover{text-decoration:underline}.form-guide-thumb{background:var(--surface-alt);width:100%;height:100%;display:block;position:relative}.form-guide-thumb img{object-fit:cover;width:100%;height:100%;display:block}.form-guide-play{background:var(--accent);width:44px;height:44px;color:var(--on-accent);box-shadow:var(--shadow-card);border-radius:50%;justify-content:center;align-items:center;padding-left:3px;font-size:18px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.form-guide-tag{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:2px 9px;font-size:12px;position:absolute;bottom:8px;left:8px}.pt-badge{letter-spacing:.4px;border-radius:999px;margin:0 0 6px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.pt-badge-open{background:var(--warning-faint);color:var(--warning);border:1px solid var(--warning-faint-border)}.pt-badge-done{background:var(--success-faint);color:var(--success);border:1px solid var(--accent-faint-border)}.staff-toasts{z-index:1000;flex-direction:column;align-items:stretch;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.staff-toast{background:var(--surface-alt);border:1px solid var(--accent-faint-border);border-left:4px solid var(--success);border-radius:10px;align-items:flex-start;gap:10px;padding:12px 12px 12px 14px;display:flex;box-shadow:0 8px 24px #0b2a182e}.staff-toast-text{color:var(--text-primary);flex-direction:column;flex:1;gap:4px;font-size:14px;display:flex}.staff-toast-text span{color:var(--text-secondary);font-size:13px}.staff-toast-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:20px;line-height:1}.staff-toast-close:hover{color:var(--text-primary)}.staff-toast-all{align-self:flex-end}.preview-confirm{border:1px solid var(--accent-faint-border);background:var(--accent-faint);border-radius:10px;flex-direction:column;gap:8px;max-width:340px;margin-top:10px;padding:10px;display:flex}.preview-confirm img{border-radius:8px;width:100%;display:block}.preview-confirm textarea{width:100%}.review-title{margin:14px 0 8px;font-size:16px}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.review-card{border:1px solid var(--accent-faint-border);border-radius:12px;min-width:0;padding:10px}.review-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.review-card .preview-confirm{gap:6px;max-width:none;margin-top:6px;padding:8px}.review-card .preview-confirm img{object-fit:contain;background:var(--overlay-faint);max-height:34vh}.review-card .preview-confirm textarea{min-height:0}@media (width<=760px){.review-grid{grid-template-columns:1fr}}.staff-toast-img{border-radius:8px;width:100%;margin-top:4px;display:block}.staff-toast-text textarea{width:100%}.staff-toast-err{color:var(--danger)}.update-banner{z-index:1100;background:var(--surface-alt);border:1px solid var(--accent-faint-border);color:var(--text-primary);border-radius:999px;align-items:center;gap:12px;padding:8px 8px 8px 16px;font-size:14px;display:flex;position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0b2a182e}.req-progress{margin-top:8px}.req-progress ol{flex-wrap:wrap;gap:4px;margin:0 0 4px;padding:0;list-style:none;display:flex}.req-progress li{background:var(--overlay-faint);color:var(--text-faint);border-radius:999px;padding:2px 8px;font-size:12px}.req-progress li.done{background:var(--success-faint);color:var(--success)}.req-progress li.now{background:var(--selected);color:var(--on-selected);font-weight:600}.fav-block{margin-top:10px}.fav-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:12px 0 4px;font-size:13px}.barcode-video{background:#000;border-radius:8px;width:100%;max-width:360px;margin:8px 0}.fav-row{align-items:center;gap:6px;display:flex}.fav-row .food-result{flex:1}.heart-btn{color:var(--selected);font-size:20px;line-height:1}.own-food-form .inline-field{flex-direction:column;gap:4px;margin:6px 0;display:flex}.check-row{align-items:center;gap:8px;margin:10px 0;display:flex}.ex-note{border-top:1px dashed var(--border);margin-top:10px;padding-top:8px}.ex-note-has,.ex-note-editing{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;padding:10px 12px}.ex-note-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.ex-note-label{margin-bottom:4px;font-weight:600;display:block}.ex-note textarea{box-sizing:border-box;width:100%}.ex-note-text{white-space:pre-wrap;margin:4px 0 8px}.ex-note-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ex-note-badge{border:1px solid var(--border);color:var(--text-faint);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:12px}.ex-note-badge-shared{color:var(--link);border-color:var(--selected)}.notes-summary{margin-top:16px}.notes-summary-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.notes-email-preview{white-space:pre-wrap;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;max-height:280px;padding:12px;font-family:inherit;overflow:auto}@media print{body *{visibility:hidden!important}.notes-print,.notes-print *{visibility:visible!important}.notes-print{color:#000;background:#fff;width:100%;position:absolute;top:0;left:0}.notes-print .noprint{display:none!important}.notes-print .print-only{display:block!important}}.print-only{display:none}.notes-summary .ex-note-badge{margin-left:8px}.hub-tabs{border-bottom:1px solid var(--border);background:var(--surface);gap:8px;padding:12px 24px;display:flex;overflow-x:auto}.hub-tabs .day-tab{white-space:nowrap;text-decoration:none}.diff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=720px){.diff-grid{grid-template-columns:minmax(0,1fr)}}.persona-group{margin-bottom:14px}.persona-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.persona-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.persona-card{text-align:left;border:1.5px solid var(--border);background:var(--surface-alt);min-height:64px;color:var(--text-primary);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.persona-card:hover{border-color:var(--text-faint)}.persona-card-on{border-color:var(--selected);background:var(--accent-faint)}.persona-card-title{font-size:14px;font-weight:600}.persona-card-text{color:var(--text-secondary);font-size:12px}@media (width<=520px){.persona-cards{grid-template-columns:minmax(0,1fr)}.persona-card{min-height:56px}}.auth-card-wide{max-width:480px}.menu-toggle{display:none}@media (width<=720px){.topbar{flex-wrap:wrap;row-gap:8px}.menu-toggle{border:1px solid var(--border);background:var(--surface-alt);min-height:44px;color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;margin-left:auto;padding:0 10px;font:600 14px Inter,system-ui,sans-serif;display:inline-flex}.menu-toggle-bars{background:currentColor;width:16px;height:2px;box-shadow:0 5px,0 -5px}.topbar-right{flex-direction:column;flex-basis:100%;justify-content:flex-start;align-items:stretch;gap:0;display:flex}.topbar-right:not(.topbar-open)>:not(.topbar-toggle){display:none}.topbar-right:not(.topbar-open):not(:has(.topbar-toggle)){display:none}.topbar-right .topbar-toggle{flex-wrap:wrap;gap:6px;margin-bottom:8px}.topbar-right .mode-pill{padding:6px 11px;font-size:12px}.topbar-right .nav-link{border-bottom:1px solid var(--border);padding:13px 4px;font-size:15px}.topbar-right .topbar-user{padding:12px 4px 4px}.topbar-right .btn{margin-top:8px}}.hub-tabs-wrap{position:relative}.hub-tabs-wrap:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(to right, transparent, var(--surface) 85%);width:44px;transition:opacity .15s;position:absolute;top:0;bottom:1px;right:0}.hub-tabs-more:after{opacity:1}.hub-tabs{scrollbar-width:none}.hub-tabs::-webkit-scrollbar{display:none}@media (width<=640px){.hub-tabs{padding:10px 16px}}.app-main-wide{max-width:1240px}.roster-toolbar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.roster-add{margin-bottom:16px}.row-menu{position:relative}.row-menu-panel{z-index:30;background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;flex-direction:column;min-width:190px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 12px 28px -10px #0b2a184d}.row-menu-item{text-align:left;font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:10px 12px;font-size:14px;font-weight:500}.row-menu-item:hover:not(:disabled){background:var(--accent-faint)}.row-menu-item:disabled{opacity:.5;cursor:not-allowed}.row-menu-item-danger{color:var(--danger);border-top:1px solid var(--border);border-radius:0 0 6px 6px;margin-top:4px}.welcome-card{border-color:var(--accent-faint-border);background:linear-gradient(180deg, var(--accent-faint), transparent 70%), var(--surface)}.welcome-steps{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.welcome-steps li{grid-template-columns:32px 1fr auto;align-items:center;gap:12px;display:grid}.welcome-num{background:var(--selected);width:32px;height:32px;color:var(--on-selected);border-radius:50%;place-items:center;font-weight:600;display:grid}.welcome-done .welcome-num{background:var(--success)}.welcome-text{flex-direction:column;gap:2px;display:flex}@media (width<=560px){.welcome-steps li{grid-template-columns:32px 1fr}.welcome-steps li .btn{grid-column:2;justify-self:start}}.progress-summary{color:var(--text-primary);margin:0 0 16px;font-size:18px;line-height:1.4}.empty-hero{text-align:center;padding:36px 24px}.empty-hero .site-cta-row{justify-content:center}.option-row{border-width:2px;padding:11px 13px}.option-row:hover{border-color:var(--text-faint)}.option-row-on,.option-row-on:hover{border-color:var(--selected);background:var(--accent-faint)}.option-mark{border:2px solid var(--text-faint);border-radius:6px;font-size:15px;font-weight:700}.option-row-on .option-mark{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.set-grid{flex-direction:column;gap:6px;margin-top:10px;display:flex}.set-grid-head,.set-grid-row{grid-template-columns:52px 44px minmax(64px,110px) minmax(64px,130px) 64px 36px;align-items:center;gap:10px;display:grid}.set-grid-head{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);font-size:12px;font-weight:600}.set-grid-row .builder-input{width:100%;margin-bottom:0}.set-grid-row .set-delete-btn{align-self:center;margin-left:0}.set-grid-row .set-row-label{min-width:0}.set-done-box{width:24px;height:24px;accent-color:var(--success);cursor:pointer;margin:0 auto}.set-same-btn{font:inherit;border:1px solid var(--border);min-height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;font-size:12px;font-weight:600}.set-same-btn:hover{color:var(--link);border-color:var(--selected)}.set-grid-done{opacity:.7}.set-grid-done .set-row-label{color:var(--success)}@media (width<=480px){.set-grid-head,.set-grid-row{grid-template-columns:44px 36px minmax(0,1fr) minmax(0,1fr) 52px 34px;gap:6px}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:10px 0 18px;display:grid}.stat-grid .stat{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:2px;padding:12px 14px}.stat-grid .stat-value{font-size:26px;line-height:1.15}.stat-grid .stat-label{font-size:12px;line-height:1.3}.acct-toolbar{margin:14px 0 6px}.acct-toolbar-end{flex-wrap:wrap;align-items:center;gap:14px;margin-left:auto;display:inline-flex}.acct-test{color:var(--text-secondary);cursor:pointer;flex-direction:row;align-items:center;gap:8px;display:inline-flex}.acct-test input{width:auto;margin:0}.proto-list{margin:6px 0 10px;padding-left:18px}.proto-list li{margin-bottom:2px}.proto-more{margin-left:-18px;list-style:none}.proto-empty{margin:6px 0 10px}.guide-filters{z-index:5;background:var(--bg);border-bottom:1px solid var(--border);flex-flow:wrap;align-items:center;gap:8px 14px;margin-bottom:8px;padding:10px 0 8px;display:flex;position:sticky;top:0}.guide-filters input[type=text]{flex:0 260px;width:260px;max-width:100%}.guide-filters .range-row{flex-wrap:wrap}.guide-count{align-items:center;gap:10px;margin-left:4px;display:inline-flex}.preset-filters{flex-wrap:wrap;align-items:center;gap:8px 14px;margin:8px 0 12px;display:flex}.preset-filters input[type=text]{flex:0 240px;width:240px;max-width:100%}.preset-filters .range-row{flex-wrap:wrap}.preset-count{flex-basis:100%;margin:0}.preset-blurb{color:var(--text-secondary);margin-top:2px;font-size:13px;display:block}.client-info:has(.preset-blurb){flex-wrap:wrap;flex:1 1 0;row-gap:2px;min-width:0}.preset-blurb{flex:0 0 100%}.client-info:has(.preset-blurb) .preset-blurb{width:100%}.preset-filters .range-pill{text-transform:capitalize}.skel-wrap{flex-direction:column;gap:12px;margin:8px 0;display:flex}.skel{background:var(--surface-alt);border-radius:10px;position:relative;overflow:hidden}.skel:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb3,#0000);animation:1.4s ease-in-out infinite skel-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skel-title{width:38%;height:22px}.skel-card{border:1px solid var(--border);flex-direction:column;gap:10px;height:78px;padding:16px;display:flex}.skel-card:after{display:none}.skel-line{background:var(--overlay-faint);width:55%;height:12px}.skel-line-lg{width:32%;height:16px}.skel-line:after{display:block}@keyframes skel-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skel:after{animation:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-hero-split{text-align:left;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:36px;padding:36px 0 24px;display:grid}.site-hero-split .site-lead{margin-left:0;margin-right:0}.site-hero-split .site-cta-row{justify-content:flex-start}.hero-phone{justify-content:center;margin:0;display:flex}.hero-phone-frame{background:#0b0e13;border:8px solid #112218;border-radius:38px;width:min(300px,100%);max-height:560px;position:relative;overflow:hidden;box-shadow:0 24px 60px #0b2a184d,0 0 0 1px #0b2a181a}.hero-phone-frame img{width:100%;height:auto;display:block}.hero-phone-frame:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0b0e13);height:90px;position:absolute;bottom:0;left:0;right:0}@media (width<=860px){.site-hero-split{text-align:center;grid-template-columns:minmax(0,1fr);gap:24px}.site-hero-split .site-lead{margin-left:auto;margin-right:auto}.site-hero-split .site-cta-row{justify-content:center}.hero-phone-frame{width:min(240px,70vw);max-height:400px}}:focus-visible{outline:3px solid var(--selected);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--selected);outline-offset:1px}.btn-primary:disabled{background:var(--surface-alt);color:var(--text-secondary);border:1px solid var(--border);opacity:1}.site-final-cta{text-align:center;border:1px solid var(--selected);background:var(--surface);border-radius:14px;padding:36px 20px}.site-final-cta .site-cta-row{justify-content:center}.checkbox-row{text-align:left;cursor:pointer;flex-direction:row;margin-bottom:0}.checkbox-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--selected);flex:none;margin:0}.plan-popular{letter-spacing:.05em;text-transform:uppercase;background:var(--selected);color:var(--on-selected);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}@media (width<=600px),(pointer:coarse){.set-grid-head,.set-grid-row{grid-template-columns:40px 40px minmax(0,1fr) minmax(0,1fr) 52px 40px;gap:6px}.set-done-box{width:32px;height:32px}.set-same-btn{min-height:44px}.set-grid-row .set-delete-btn{min-width:40px;min-height:44px;padding:0}.set-grid-row .builder-input{padding-left:8px;padding-right:4px}.mode-pill,.range-pill,.day-tab{align-items:center;min-height:40px;display:inline-flex}}.how-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.how-step{align-content:start;gap:6px;display:grid}.how-step h3{margin:4px 0 0;font-size:1.1rem}.how-step p{margin:0}.how-num{background:var(--selected);width:32px;height:32px;color:var(--on-selected);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}@media (width<=720px){.how-steps{grid-template-columns:minmax(0,1fr)}}.finish-bar{z-index:5;padding:12px 0 max(12px, env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--border);justify-content:space-between;margin-bottom:0;position:sticky;bottom:0}.finish-progress{flex:1;gap:6px;min-width:0;display:grid}.finish-count{font-variant-numeric:tabular-nums;font-weight:600}.finish-track{background:var(--overlay-faint);border-radius:3px;height:6px;overflow:hidden}.finish-fill{background:var(--success);height:100%;transition:width .2s}@media (prefers-reduced-motion:reduce){.finish-fill{transition:none}}.recent-foods{gap:6px;margin-bottom:10px;display:grid}.recent-foods p{margin:0}.recent-foods-row{flex-wrap:wrap;gap:8px;display:flex}.recent-food{overflow-wrap:anywhere;text-align:left;max-width:100%}.week-dots{flex-wrap:wrap;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.week-dot{justify-items:center;gap:4px;display:grid}.week-dot-circle{border:2px solid var(--border);background:var(--surface-alt);width:36px;height:36px;color:var(--on-selected);border-radius:50%;place-items:center;font-weight:700;display:grid}.week-dot-done .week-dot-circle{background:var(--selected);border-color:var(--selected)}.week-dot-today .week-dot-circle{border-color:var(--selected)}.week-dot-label{color:var(--text-secondary);font-size:12px}.week-sentence{margin:0 0 6px}.week-sentence strong{color:var(--link)}.interval-switch{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px;display:flex}.interval-btn{font:inherit;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:8px 18px;font-weight:600}.interval-btn.interval-on{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.invite-age{color:var(--text-secondary);white-space:nowrap;font-size:.85rem}.creator-form{grid-template-columns:1fr;gap:12px 20px;display:grid}.creator-form-title{margin:0}@media (width>=900px){.creator-form{grid-template-columns:1fr 1fr}.creator-form-title,.creator-form>.error-banner,.creator-form>div{grid-column:1/-1}.creator-form>label:has(textarea){grid-column:1/-1}.creator-form>label:has(input[type=checkbox]){grid-column:1/-1}}.acct-empty{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;margin:12px 0;padding:16px 18px}.acct-empty h3{margin:0 0 6px}.acct-empty p{margin:0 0 12px}.pt-empty{padding:16px 20px}.pt-empty h3{margin:0 0 4px}.pt-empty p{margin:0}body.dnd-active,body.dnd-active *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.dnd-ghost{z-index:1000;pointer-events:none;background:var(--selected);max-width:280px;color:var(--on-selected);white-space:nowrap;text-overflow:ellipsis;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:600;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 6px 18px #0b2a1840}.dz-ready{outline:1px dashed var(--accent-faint-border);outline-offset:2px;border-radius:8px}.dz-over{outline:2px solid var(--selected);outline-offset:2px;background:var(--accent-faint);border-radius:8px}.day-tab.dz-over{border-color:var(--selected);color:var(--text-primary);border-radius:999px}.day-tab.dz-ready{border-radius:999px}.plan-drop{border:2px dashed var(--accent-faint-border);text-align:center;color:var(--text-secondary);border-radius:10px;padding:14px;font-size:13px;font-weight:600}.plan-drop.dz-over{color:var(--text-primary);border-style:solid}.drop-hint{text-align:center;margin:4px 0 8px}.core-zone{display:block}.builder-shell{position:relative}.builder-shell.lib-open{padding-bottom:min(44vh,440px)}.builder-shell.lib-open .builder-save-bar{position:static}.lib-tray{z-index:60;background:var(--surface);border-top:2px solid var(--selected);flex-direction:column;gap:8px;height:min(40vh,420px);min-height:250px;padding:10px 16px 12px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 28px #0b2a1826}.lib-tray .builder-input{margin-bottom:0}.lib-tray-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.lib-tray-header .muted{flex:1;min-width:160px}.lib-tabs{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.lib-tabs .mode-pill{white-space:nowrap}.lib-tray .library-filter-row{margin-bottom:0}.lib-list{flex:1;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-content:start;gap:6px;min-height:0;display:grid;overflow-y:auto}.lib-group-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);grid-column:1/-1;margin:6px 0 0;font-size:12px;font-weight:700}.lib-list>.muted{grid-column:1/-1}.lib-item{background:var(--surface-alt);cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;display:flex}.lib-item:hover{border-color:var(--selected);background:var(--accent-faint)}.lib-item-grip{color:var(--text-faint);letter-spacing:-2px;font-size:14px}.lib-item-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.lib-item-main .library-result-name,.lib-item-main .library-result-tags{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lib-add-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;padding:4px 9px;font-size:12px;font-weight:600}.lib-add-btn:hover{color:var(--text-primary);border-color:var(--selected)}.lib-program{flex-direction:column;grid-column:1/-1;gap:6px;display:flex}.lib-item-program{border-color:var(--accent-faint-border)}.lib-program-days{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px;padding-left:10px;display:grid}.lib-day-rest{padding:7px 8px}@media (width<=720px){.lib-tray{height:46vh;padding:8px 12px 10px}.builder-shell.lib-open{padding-bottom:48vh}.lib-list,.lib-program-days{grid-template-columns:1fr}}.builder-workspace{z-index:500;background:var(--bg);color:var(--text-primary);flex-direction:column;display:flex;position:fixed;inset:0}.builder-workspace.bw-loading{justify-content:center;align-items:center}.bw-header{background:var(--surface);border-bottom:1px solid var(--border);flex-direction:column;flex:none;gap:8px;padding:10px 16px;display:flex}.bw-header-top{align-items:center;gap:10px;display:flex}.bw-title{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.bw-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.bw-header-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.bw-header-meta .builder-input{flex:280px;margin:0}.bw-header .field-required-text{margin:0}.bw-lib-toggle-on{border-color:var(--selected);color:var(--text-primary)}.bw-body{flex-direction:row;flex:auto;min-height:0;display:flex}.bw-lib{border-right:1px solid var(--border);flex:0 0 min(380px,36vw);min-width:300px;min-height:0;display:flex}.bw-lib .lib-tray{width:100%;height:auto;min-height:0;box-shadow:none;background:var(--surface);border-top:0;padding:12px;position:static}.bw-lib .lib-list,.bw-lib .lib-program-days{grid-template-columns:1fr}.bw-main{flex:auto;min-width:0;padding:16px 20px 56px;overflow-y:auto}.bw-main .builder{max-width:980px;margin:0 auto}.bw-hint{background:var(--accent-faint);border:1px solid var(--accent-faint-border);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.bw-hint-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:0 4px;font-size:22px;line-height:1}.bw-hint-close:hover{color:var(--text-primary)}.bw-header-meta .visibility-switch-label{flex-direction:row;align-items:center;gap:8px;margin:0}.bw-lib .lib-tabs{flex-wrap:wrap;overflow:visible}@media (width<=900px){.bw-header{padding:8px 12px}.bw-body{flex-direction:column}.bw-main{flex:1 1 0;order:1;padding:12px 12px 40px}.bw-lib{border-right:0;border-top:2px solid var(--selected);flex:0 0 46vh;order:2;min-width:0}.bw-lib .lib-tray{padding:8px 12px 10px}}a.row-menu-item{text-decoration:none;display:block}.plan-week{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-top:8px;display:grid}.plan-day{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.plan-day h3{align-items:center;gap:8px;margin:0 0 6px;font-family:Oswald,sans-serif;font-size:15px;display:flex}.plan-day-list{flex-direction:column;gap:3px;margin:0 0 6px;padding:0;font-size:14px;list-style:none;display:flex}.plan-day p{margin:2px 0 0}.client-actions>.btn{align-self:center}.bw-group-note{color:var(--link);font-weight:600}.info-banner{background:var(--accent-faint);border:1px solid var(--accent-faint-border);color:var(--text-primary);border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:13px}.info-banner p{margin:0}.bw-status-todo{color:var(--warning);font-size:13px;font-weight:600}.bw-problems ul{margin:6px 0 0 18px;padding:0}.bw-problems li{margin:2px 0}.day-tab-todo{border-style:dashed;border-color:var(--warning)}.day-tab-ready{border-color:var(--accent-faint-border,var(--selected))}.day-tab-active.day-tab-todo,.day-tab-active.day-tab-ready{border-style:solid;border-color:var(--selected)}.day-tab-mark{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.day-tab-mark-ok{color:var(--on-selected);background:var(--selected)}.day-tab-mark-todo{color:#fff;background:var(--warning)}.day-tab-active .day-tab-mark-ok{color:var(--selected);background:var(--on-selected)}.bw-rest-helper{flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 2px;display:flex}.bw-rest-confirm{margin:6px 0}@media (width<=900px){.bw-title .bw-status-todo,.bw-title .builder-ready-text{white-space:normal;line-height:1.25}.bw-header-top{flex-wrap:wrap}.bw-title{flex:100%;order:3}}h2:before,.stat-label:before,.preview-section-label:before,.log-focus-heading:before,.fav-title:before,.lib-group-title:before{content:"";background:var(--selected);vertical-align:-2px;border-radius:2px;width:3px;height:14px;margin-right:8px;display:inline-block}.day-tab-active .day-tab-rest-badge{color:var(--on-selected);background:#ffffff2e;border-color:#ffffff8c}.card,.modal-box{box-shadow:var(--shadow-card)}.user-menu{position:relative}.user-menu-btn{cursor:pointer;background:0 0;border:0;font-family:inherit}.user-menu-caret{color:var(--text-faint);font-size:11px}.user-menu-panel{z-index:50;background:var(--surface);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow-card);border-radius:12px;padding:6px;display:none;position:absolute;top:calc(100% + 8px);right:0}.user-menu-open .user-menu-panel{flex-direction:column;display:flex}.user-menu-item{text-align:left;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px;font:500 14px Inter,system-ui,sans-serif;text-decoration:none;display:block}.user-menu-item:hover{background:var(--overlay-faint)}.user-menu-item-active{color:var(--link);font-weight:700}.user-menu-logout{border-top:1px solid var(--border);color:var(--text-secondary);border-radius:0 0 8px 8px;margin-top:4px}@media (width<=720px){.user-menu-caret{display:none}.user-menu-panel{box-shadow:none;border:0;flex-direction:column;min-width:0;padding:0;display:flex;position:static}.user-menu-item{border-bottom:1px solid var(--border);border-radius:0;padding:13px 4px;font-size:15px}.user-menu-logout{border-top:0;margin-top:0}}.welcome-line{flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 16px;display:flex}.welcome-line-title{color:var(--text-primary)}.welcome-line-steps{color:var(--text-secondary);flex-wrap:wrap;flex:auto;align-items:center;gap:6px 18px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.welcome-line-steps li{align-items:center;gap:8px;display:inline-flex}.welcome-line-steps .welcome-num{width:22px;height:22px;font-size:12px}.welcome-line-hide{margin-left:auto}.disclosure{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:14px;margin-bottom:16px}.disclosure-heading{font-family:inherit;font-size:inherit;text-transform:none;letter-spacing:0;color:inherit;margin:0}.disclosure-head{width:100%;min-height:44px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;margin:0;padding:12px 20px;display:flex}button.disclosure-head:hover{background:var(--overlay-faint)}button.disclosure-head:focus-visible{outline:2px solid var(--selected);outline-offset:-2px}.disclosure-open>.disclosure-heading>.disclosure-head{border-bottom-right-radius:0;border-bottom-left-radius:0}.disclosure-static .disclosure-head{cursor:default}.disclosure-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.disclosure-lead{flex:none;align-items:center;display:inline-flex}.disclosure-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);overflow-wrap:anywhere;font-family:Oswald,sans-serif;font-size:17px;font-weight:600}.disclosure-row .disclosure-title{letter-spacing:0;text-transform:none;color:var(--text-primary);font-family:Inter,system-ui,sans-serif;font-size:15px}.disclosure-badge{vertical-align:middle;text-transform:none;letter-spacing:0;margin-left:8px;font-family:Inter,system-ui,sans-serif;display:inline-flex}.disclosure-summary{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1.35;display:block;overflow:hidden}.disclosure-desc{min-width:0;display:block}.ex-desc{-webkit-line-clamp:2;line-clamp:2;letter-spacing:0;text-transform:none;white-space:normal;color:var(--text-secondary);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1.35;display:-webkit-box;overflow:hidden}.ex-desc-fallback{font-style:italic}.ex-desc-loading{min-height:2.7em}li>.ex-desc,.checkbox-row .ex-desc,.log-guide-line+.ex-desc{margin-top:2px}.library-result-text{flex-direction:column;gap:1px;min-width:0;display:flex}.disclosure-chevron{color:var(--text-faint);flex:none;transition:transform .15s}.disclosure-open>.disclosure-heading .disclosure-chevron{transform:rotate(180deg)}.disclosure-body{padding:4px 20px 20px}.disclosure-body>:first-child{margin-top:0}.disclosure-body>:last-child{margin-bottom:0}.disclosure-list{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:14px;margin-bottom:16px}.disclosure-list>.disclosure-row:first-child>.disclosure-heading>.disclosure-head{border-top-left-radius:13px;border-top-right-radius:13px}.disclosure-list>.disclosure-row:last-child:not(.disclosure-open)>.disclosure-heading>.disclosure-head{border-bottom-right-radius:13px;border-bottom-left-radius:13px}.disclosure-aside{flex:none;margin-left:auto}.disclosure-row{border:0;border-top:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin:0}.disclosure-row:first-child{border-top:0}.disclosure-row>.disclosure-heading>.disclosure-head{border-radius:0;padding:10px 16px}.disclosure-row .disclosure-body{padding:4px 16px 16px}.disclosure-body .disclosure-list{box-shadow:none;border-radius:10px}.disclosure-body .disclosure-card{box-shadow:none}@media (width<=720px){.disclosure-head{padding:12px 14px}.disclosure-body{padding:4px 14px 16px}.disclosure-row>.disclosure-heading>.disclosure-head{padding:10px 12px}.disclosure-row .disclosure-body{padding:4px 12px 14px}}@media (prefers-reduced-motion:reduce){.disclosure-chevron{transition:none}}.page-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.page-header-main{flex:260px;min-width:0}.page-header-sub{margin:0;font-size:14px}.page-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-header-help{margin:12px 0 0}@media (width<=720px){.page-header-actions{width:100%}}.confirm-box{max-width:440px;padding:20px 24px}.confirm-box h2{margin:0 0 8px}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.log-day-line{margin:0 0 12px;font-size:14px}.log-check{color:var(--success);font-size:18px;font-weight:700;line-height:1}.log-guide-line{margin-bottom:4px}.log-guide-line .form-guide-link{margin-left:0}.disclosure-dragging{opacity:.5}.plan-card .disclosure-list{box-shadow:none}.disclosure-thumb{background:var(--surface-alt);border:1px solid var(--border);text-align:center;border-radius:6px;justify-content:center;align-items:center;width:64px;height:40px;font-size:11px;display:inline-flex;overflow:hidden}.disclosure-thumb img{object-fit:cover;width:100%;height:100%;display:block}.disclosure-badge .pt-badge{margin:0}.pt-starter{margin-bottom:0;padding:8px 0}.profile-card-body{flex-direction:column;gap:12px;display:flex}.mobility-heading{color:var(--text-primary);margin:18px 0 2px;font-size:14px;font-weight:600}.mobility-list{margin:4px 0 8px;padding:0;list-style:none}.mobility-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:6px 0;display:flex}.mobility-main{flex-direction:column;min-width:0;display:flex}.mobility-title{color:var(--text-primary);font-size:14px;font-weight:600}.mobility-main .muted.small{margin:0}.mobility-tag{color:var(--text-secondary);background:var(--surface-alt);border-radius:999px;flex:none;padding:3px 10px;font-size:12px;font-weight:500}.sch-page{max-width:1280px}.sch-tabs-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.sch-tabs{gap:6px;display:flex}.sch-tab{border:1px solid var(--border);background:var(--surface-alt);color:var(--text-secondary);border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none}.sch-tab:hover{border-color:var(--selected);color:var(--text-primary)}.sch-tab-active{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}.sch-viewas{flex-direction:row;align-items:center;gap:8px;margin:0}.sch-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.sch-nav,.sch-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sch-title{text-transform:none;color:var(--text-primary);letter-spacing:.01em;margin:0 0 0 8px;font-size:20px}.sch-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:16px;display:grid}.sch-layout:has(.sch-side){grid-template-columns:240px minmax(0,1fr)}.sch-layout:not(:has(.sch-side)){grid-template-columns:minmax(0,1fr)}.sch-side{margin-bottom:0;position:sticky;top:12px}.sch-side .disclosure-body{flex-direction:column;max-height:calc(100vh - 140px);padding-top:0;display:flex;overflow-y:auto}.sch-layout:has(.sch-side:not(.disclosure-open)){grid-template-columns:minmax(0,1fr)}.sch-side h3{margin-bottom:2px}.sch-client-list{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.sch-client{border:1px solid var(--border);background:var(--surface-alt);cursor:grab;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;font-size:14px;display:flex}.sch-client:hover{border-color:var(--selected)}.sch-client-selected{border-color:var(--selected);background:var(--accent-faint)}.sch-grip{color:var(--text-faint);letter-spacing:-2px}.sch-client-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.sch-owes{color:var(--warning);font-size:12px}.sch-main{min-width:0}.sch-grid{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.sch-grid-head,.sch-grid-body{grid-template-columns:52px repeat(var(--sch-cols), minmax(0, 1fr));display:grid}.sch-grid-head{border-bottom:1px solid var(--border);background:var(--surface-alt)}.sch-day-head{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-left:1px solid var(--border);flex-direction:column;align-items:center;padding:8px 4px;font-size:12px;display:flex}.sch-day-head strong{color:var(--text-primary);font-family:Oswald,sans-serif;font-size:18px}.sch-day-today strong{color:var(--link)}.sch-grid-body{min-height:360px;max-height:calc(100vh - 330px);position:relative;overflow-y:auto}.sch-gutter{position:relative}.sch-hour-label{color:var(--text-faint);font-size:12px;position:absolute;right:6px;transform:translateY(-7px)}.sch-col{border-left:1px solid var(--border);background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(#bdd9c980 1px, transparent 1px);background-size:100% var(--sch-hour), 100% var(--sch-slot);position:relative}.sch-col-today{background-color:#15803d14}.sch-closed{pointer-events:none;background:#11221812;position:absolute;left:0;right:0}.sch-event{cursor:grab;text-align:left;color:var(--text-primary);border:1px solid;border-left-width:4px;border-radius:6px;flex-direction:column;padding:2px 6px;font-family:inherit;font-size:12px;line-height:1.25;display:flex;position:absolute;overflow:hidden}.sch-event:focus-visible{outline:2px solid var(--selected)}.sch-event-time{align-items:center;gap:5px;font-weight:700;display:flex}.sch-event-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sch-kind{color:var(--on-selected);background:#0369a1;border-radius:999px;padding:0 5px;font-size:12px;font-style:normal}.sch-dot{background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.sch-status-scheduled{background:var(--accent-faint);border-color:var(--selected)}.sch-status-completed{border-color:var(--success);background:#15803d24}.sch-status-no_show{border-color:var(--warning);background:#b453091f}.sch-status-cancelled{border-color:var(--text-faint);color:var(--text-faint);background:#52705e24;text-decoration:line-through}.sch-needs-marking{box-shadow:0 0 0 2px var(--warning)}.sch-dragging{opacity:.4}.sch-block-ext{color:var(--text-faint);cursor:default;pointer-events:none;background:#52705e38;border-style:solid}.sch-block{border:1px dashed var(--text-faint);color:var(--text-secondary);text-align:left;cursor:pointer;background:repeating-linear-gradient(45deg,#52705e2e,#52705e2e 6px,#52705e14 6px 12px);border-radius:6px;padding:2px 6px;font-family:inherit;font-size:12px;position:absolute;left:2px;right:2px;overflow:hidden}.sch-ghost{border:2px dashed var(--selected);background:var(--accent-faint);color:var(--link);pointer-events:none;z-index:3;border-radius:6px;padding:2px 6px;font-size:12px;font-weight:700;position:absolute;left:2px;right:2px}.sch-now{background:var(--danger);z-index:2;pointer-events:none;height:2px;position:absolute;left:0;right:0}.sch-legend{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:10px;display:flex}.sch-swatch{vertical-align:middle;border:1px solid;border-radius:3px;width:12px;height:12px;text-decoration:none;display:inline-block}.sch-month{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.sch-month-head{text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--surface-alt);border-bottom:1px solid var(--border);padding:8px;font-size:12px}.sch-month-cell{border-left:1px solid var(--border);border-top:1px solid var(--border);cursor:pointer;flex-direction:column;gap:3px;min-height:108px;padding:4px;display:flex}.sch-month-cell:nth-child(7n+8){border-left:none}.sch-month-out{opacity:.5}.sch-month-today .sch-month-num{color:var(--link);font-weight:700}.sch-month-over{background:var(--accent-faint)}.sch-month-num{color:var(--text-secondary);font-size:12px}.sch-chip{text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:grab;color:var(--text-primary);border:1px solid;border-left-width:3px;border-radius:4px;padding:1px 4px;font-family:inherit;font-size:12px;overflow:hidden}.sch-more{color:var(--text-faint);font-size:12px}.sch-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.sch-check{cursor:pointer;flex-direction:row;align-items:center;gap:8px}.sch-check input{width:auto}.sch-inline-check{margin:0}.sch-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.sch-dialog-actions-split{justify-content:space-between}.sch-warn{background:var(--warning-faint);border:1px solid var(--warning-faint-border);color:var(--warning);border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px;line-height:1.45}.sch-mark-banner .link-btn{color:var(--link)}.sch-status-set{border:1px solid var(--border);border-radius:10px;margin:0 0 16px;padding:10px 12px}.sch-status-set legend{color:var(--text-secondary);padding:0 6px;font-size:13px}.sch-status-opt{border:1px solid var(--border);cursor:pointer;color:var(--text-primary);border-left-width:4px;border-radius:8px;flex-direction:row;align-items:center;gap:8px;margin-bottom:6px;padding:8px 10px;text-decoration:none}.sch-status-opt input{width:auto}.sch-status-picked{outline:2px solid var(--selected)}.sch-charge-box{border:1px solid var(--border);background:var(--surface-alt);border-radius:10px;margin-bottom:16px;padding:12px}.sch-hours{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.sch-hours-row{grid-template-columns:130px 1fr auto 1fr;align-items:center;gap:8px;display:grid}.sch-hours-row label{margin:0}.sch-feed{gap:8px;margin-bottom:12px;display:flex}.sch-feed input{flex:1;min-width:0}.sch-filter-row{flex-wrap:wrap;align-items:center;gap:16px;margin:12px 0;display:flex}.sch-filter-row .wide-input{flex:1;min-width:200px}.sch-num{text-align:right;white-space:nowrap}.sch-owed{color:var(--warning);font-weight:700}.sch-money-row{cursor:pointer}.sch-money-row:hover td{background:var(--surface-alt)}.sch-pill-gap{margin-left:8px}.sch-ledger-actions{margin:12px 0}.sch-panel{border:1px solid var(--accent-faint-border);background:var(--surface-alt);border-radius:10px;margin-bottom:14px;padding:14px}@media (width<=860px){:is(.sch-layout,.sch-layout:has(.sch-side)){grid-template-columns:minmax(0,1fr)}.sch-side{position:static}.sch-side .disclosure-body{max-height:320px}.sch-form-row{grid-template-columns:1fr}.sch-hours-row{grid-template-columns:1fr 1fr auto 1fr}.sch-grid-body{max-height:70vh}}.sch-side-tabs{gap:6px;margin:0 0 10px;display:flex}.sch-side-tabs .range-pill{text-align:center;flex:1}.sch-proto{border:1px solid var(--border);cursor:grab;background:var(--surface-alt);-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.sch-proto:active{cursor:grabbing}.sch-proto-selected{outline:2px solid var(--selected)}.sch-proto-name{font-weight:600}.sch-event-proto{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.2;display:block;overflow:hidden}.sch-event-target{outline:3px dashed var(--selected);outline-offset:1px}.sch-notify-note{margin:0}.sch-legend{gap:6px 16px}.sch-key{color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.sch-key-hint{flex-basis:100%}.sch-dot{border:2px solid;border-radius:50%;width:10px;height:10px;display:inline-block}.sch-dot-scheduled{background:var(--selected);border-color:var(--selected)}.sch-dot-completed{background:var(--success);border-color:var(--success)}.sch-dot-no_show{background:var(--warning);border-color:var(--warning)}.sch-dot-cancelled{border-color:var(--text-faint);background:0 0}@media (width>=640px){.sch-key-hint{flex-basis:auto;margin-left:auto}}.sch-grid-body{min-height:520px;max-height:calc(100vh - 240px)}.sch-toggle-on{background:var(--selected);border-color:var(--selected);color:var(--on-selected)}@media (width<=860px){.sch-grid-body{min-height:420px;max-height:75vh}}
