:root{--page: #f4f5f0;--card: #ffffff;--ink: #20241f;--ink-2: #6e7666;--hairline: #e3e7dc;--accent: #536d2f;--accent-strong: #43552c;--accent-soft: #edf4d8;--accent-border: #859f41;--lime: #c8ec49;--lime-ink: #20291a;--machine-red: #c43d42;--warn-bg: #fbf3e4;--warn-ink: #7a5b1e;--note-bg: #eef2e4;--note-ink: #37472b}html,body,#root{margin:0;min-height:100%}body{background:var(--page);color:var(--ink);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}button,input{font:inherit}.page{max-width:640px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--card);border:1px solid var(--hairline);border-radius:14px;padding:20px;margin-bottom:16px}.page-title{font-size:20px;font-weight:700;margin:4px 0 2px}.page-sub{color:var(--ink-2);font-size:13px;margin-bottom:18px}.group-label{color:var(--ink-2);font-size:12px;margin-bottom:2px}.group-heading{font-size:17px;font-weight:700;margin-bottom:8px}.caption{color:var(--ink-2);font-size:12px}.callout{border-radius:10px;padding:10px 12px;font-size:13px;margin:8px 0}.callout.warn{background:var(--warn-bg);color:var(--warn-ink)}.callout.note{background:var(--note-bg);color:var(--note-ink)}.callout-title{font-weight:700;margin-bottom:2px}.client-list{display:flex;flex-direction:column}.client-row{display:flex;flex-direction:column;gap:2px;padding:14px 0;border-bottom:1px solid var(--hairline);text-decoration:none;color:var(--ink);min-height:44px}.client-row:last-child{border-bottom:none}.client-name{font-weight:600;font-size:14px}.client-note{color:var(--ink-2);font-size:12px}.client-program{color:var(--accent);font-weight:600;font-size:12px}.ex-list{display:flex;flex-direction:column}.ex-card{border-bottom:1px solid var(--hairline)}.ex-card:last-child{border-bottom:none}.ex-head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 0;background:none;border:none;cursor:pointer;text-align:start;color:var(--ink);min-height:44px}.ex-thumb{width:48px;height:48px;border-radius:8px;object-fit:cover;flex:none}.ex-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.ex-name{font-weight:600;font-size:14px}.ex-eq{color:var(--ink-2);font-size:12px}.ex-last{color:var(--accent);font-weight:600;font-size:12px}.ex-sets{color:var(--accent);font-weight:600;font-size:14px;flex:none}.ex-body{padding:4px 0 16px;display:flex;flex-direction:column;gap:12px}.set-row{display:grid;grid-template-columns:48px 1fr 1fr;gap:10px;align-items:end}.set-row.single{grid-template-columns:48px 1fr}.set-label{color:var(--ink-2);font-size:12px;padding-bottom:22px}.ex-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:4px}.field-label{color:var(--ink-2);font-size:12px}.field input,.field select{border:1px solid var(--hairline);border-radius:10px;padding:10px 12px;font-size:14px;background:#fff;color:var(--ink);width:100%}.field input:focus,.field select:focus{outline:2px solid var(--accent-border);outline-offset:-1px}.choice-row{display:flex;flex-direction:column;gap:6px}.choice-label{color:var(--ink-2);font-size:12px}.choice-opts{display:flex;gap:8px;flex-wrap:wrap}.choice-btn{border:1px solid var(--hairline);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;cursor:pointer;color:var(--ink);min-height:36px}.choice-btn.on{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-strong);font-weight:700}.btn{border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;min-height:40px}.btn.primary{background:var(--lime);color:var(--lime-ink)}.btn.primary:disabled{opacity:.35;cursor:not-allowed}.btn.secondary{background:var(--accent-soft);color:var(--accent-strong);text-decoration:none;display:inline-flex;align-items:center}.btn.linky{background:none;color:var(--accent);padding:4px 0;min-height:0;font-weight:600}.brand-row{display:flex;align-items:center;gap:10px}.brand-mark{height:36px;width:auto;flex:none}.brand-logo{display:block;width:168px;max-width:60%;height:auto;margin:2px auto 12px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.topbar .who{color:var(--ink-2);font-size:12px}.error{color:#a33;font-size:13px}.ok{color:var(--accent);font-size:13px;font-weight:600}.hr{border:none;border-top:1px solid var(--hairline);margin:16px 0}.spoken-box{border:1px solid var(--hairline);border-radius:10px;padding:12px}.spoken-box summary{cursor:pointer;color:var(--accent);font-weight:600;min-height:32px}.spoken-body{display:flex;flex-direction:column;gap:10px;padding-top:8px}.spoken-body p{margin:0;line-height:1.5}.spoken-body textarea{width:100%;resize:vertical;border:1px solid var(--hairline);border-radius:8px;padding:10px;font:inherit;font-size:16px;background:#fff;color:var(--ink)}.spoken-body textarea:focus{outline:2px solid var(--accent)}.spoken-preview{border-radius:8px;background:var(--accent-soft);padding:12px;display:flex;flex-direction:column;gap:8px}.spoken-body .btn{align-self:flex-start}.timer-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 0 2px}.timer-clock{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-2)}.timer-clock.running{color:var(--accent)}.btn.timer{background:var(--accent-soft);color:var(--accent-strong)}.btn.timer.on{background:var(--warn-bg);color:var(--warn-ink)}.ex-timer{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px dashed var(--hairline);border-radius:10px;padding:10px 12px}.ex-timer-clock{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-2)}.ex-timer-clock.running{color:var(--accent)}.ex-timer-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ex-saved-badge{color:var(--accent-strong);font-weight:700;font-size:13px;background:var(--accent-soft);border-radius:999px;padding:4px 10px;flex:none}.ex-timer-badge{color:var(--accent);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums;background:var(--accent-soft);border-radius:999px;padding:4px 10px;flex:none}.summary-card .insight-list{margin-top:4px}.insight-list{margin:4px 0 8px;padding-inline-start:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5}.day-duration{color:var(--accent);font-size:13px;font-weight:600}.stat-row{display:flex;gap:10px;margin:6px 0 10px}.stat{flex:1;border:1px solid var(--hairline);border-radius:10px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:2px}.stat-num{font-size:22px;font-weight:700;color:var(--accent)}.stat-label{color:var(--ink-2);font-size:11px;text-align:center}.ex-last.down{color:var(--warn-ink)}.chart-wrap{border:1px solid var(--hairline);border-radius:10px;padding:10px}.chart{width:100%;height:auto;display:block}.chart-axis{stroke:var(--hairline);stroke-width:1}.chart-line{stroke:var(--accent);stroke-width:2.5}.chart-dot{fill:var(--accent)}.chart-val{font-size:12px;fill:var(--ink);font-weight:600}.chart-day{font-size:11px;fill:var(--ink-2)}.week-day.today{background:var(--accent-soft);border-radius:10px;padding-inline:10px;margin-inline:-10px}.week-status{font-weight:700;font-size:12px}.week-status.full{color:var(--accent)}.week-status.partial{color:var(--warn-ink)}.week-status.none{color:var(--ink-2)}.next-workout{background:var(--accent-soft);border-radius:10px;padding-inline:12px;margin:4px 0 10px}.ex-thumb-wrap{position:relative;width:48px;height:48px;flex:none}.ex-thumb-wrap .ex-thumb{width:100%;height:100%}.ex-machine-badge{position:absolute;top:-6px;inset-inline-start:-6px;background:var(--machine-red);color:#fff;font-size:11px;font-weight:700;border-radius:6px;padding:2px 6px;box-shadow:0 1px 4px #00000040}.ex-photo{position:relative;height:180px;background:#e8e9e3;border:1px solid var(--hairline);border-radius:14px;overflow:hidden}.ex-photo img{width:100%;height:100%;object-fit:contain}.ex-photo .ex-machine-badge{position:absolute;top:10px;inset-inline-start:10px;font-size:13px;padding:5px 10px}.goal-opts{margin:4px 0 10px}.rec-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--hairline);border-radius:14px;padding:12px 14px;margin:8px 0;background:#fff}.rec-content{white-space:pre-line;font-size:14px;line-height:1.7;color:var(--ink)}.rec-edit{width:100%;box-sizing:border-box;border:1px solid var(--hairline);border-radius:10px;padding:10px;font-size:14px;line-height:1.6;font-family:inherit;direction:rtl;resize:vertical}.account-status-tools{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:12px 0}.account-status{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:9px;font-size:13px;line-height:1.65;font-weight:400;color:#555f4f}.account-status-note{display:block;margin-top:8px;color:#6b7165;font-size:13px}.account-badge{display:inline-block;border:1px solid #d4d9ce;border-radius:12px;padding:2px 9px;font-weight:600;font-size:12px}.account-badge.pending{background:#f7f4e9;color:#685c32;border-color:#e4dbc0}.account-badge.done{background:#edf5df;color:#36551d;border-color:#c8dcae}.client-list .ex-text{min-width:0}.kiosk{max-width:760px;font-size:18px}.kiosk .field input{font-size:22px;padding:14px}.kiosk .btn{min-height:56px;font-size:18px}.kiosk .choice-btn{min-height:52px;font-size:18px;padding:8px 16px}.kbigbtn{width:100%;margin-top:12px;justify-content:center;min-height:64px!important;font-size:20px!important}.kpad{display:flex;flex-direction:column;align-items:center;gap:18px;margin:12px 0}.kdots{display:flex;gap:14px}.kdot{width:22px;height:22px;border-radius:50%;border:2px solid var(--accent);background:#fff}.kdot.on{background:var(--accent)}.kkeys{display:grid;grid-template-columns:repeat(3,96px);gap:12px}.kkey{height:80px;font-size:30px;font-weight:600;border-radius:16px;border:1px solid var(--hairline);background:var(--accent-soft);color:var(--accent-strong);cursor:pointer}.kkey.alt{font-size:18px;background:#fff}.kkey:active{background:var(--lime)}.kkey:disabled{opacity:.4}.kmsg{min-height:28px;text-align:center;color:var(--machine-red);font-weight:600}.kcode,.kdone{text-align:center}.kdone-mark{font-size:72px;color:var(--accent)}.kwho{margin:8px 0;color:var(--ink-2)}.kex{background:var(--card);border:1px solid var(--hairline);border-radius:14px;padding:16px;margin-bottom:14px;display:flex;flex-direction:column;gap:10px}.kex-head{display:flex;gap:12px;align-items:center}.kex-img{width:84px;height:84px;object-fit:cover;border-radius:10px;flex:none}.kset{display:grid;grid-template-columns:56px 1fr 1fr;gap:10px;align-items:end}.kset.single{grid-template-columns:56px 1fr}.kbar{position:sticky;bottom:0;background:linear-gradient(transparent,var(--page) 24%);padding:16px 0 8px}.kerror{font-size:18px;padding:8px 0}.kidle{position:sticky;top:0;z-index:5}.enroll-url{word-break:break-all;font-family:monospace;font-size:13px;margin:8px 0}.kcode-show{font-size:40px;font-weight:700;letter-spacing:8px;text-align:center}.kpad,.kkeys,.kdots{direction:ltr}.kbar{display:flex;gap:12px}.kbar .kbigbtn{margin-top:0;flex:1;min-height:56px!important}
