:root{font-family:Arial,sans-serif;color:#252722;background:#f5f4ef;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer;color:inherit}.app{max-width:1160px;margin:auto;padding:0 40px}.top{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #deded6}.brand{display:flex;align-items:center;gap:12px;font:800 14px Arial;letter-spacing:1.5px;cursor:pointer}.brand small{display:block;font:9px monospace;letter-spacing:.8px;color:#8d8f83;margin-top:3px}.mark,.footer-mark{font:800 30px Arial;color:#527456;letter-spacing:-3px}.local{font:10px monospace;letter-spacing:.7px;color:#70756b;display:flex;align-items:center;gap:8px}.local i,.live{color:#71946d}main{max-width:780px;margin:0 auto;min-height:650px}.tabs{display:flex;gap:28px;border-bottom:1px solid #e0dfd7;margin-bottom:58px}.tabs button{border:0;background:none;padding:18px 2px;color:#85867d;font-size:13px}.tabs button.active{color:#30342d;border-bottom:2px solid #608160}.tabs span{font:10px monospace;background:#e9e8df;border-radius:20px;padding:3px 7px;margin-left:4px}.welcome{max-width:520px;margin:84px auto 100px}.eyebrow{font:10px monospace;letter-spacing:1.4px;color:#82917b}.welcome h1,.session-head h1,.history h1{font:500 clamp(42px,7vw,68px)/1.04 Arial;letter-spacing:-3px;margin:20px 0}.welcome h1 em{color:#6e896b;font-style:normal}.welcome p,.intro{max-width:420px;color:#777b70;line-height:1.75;font-size:15px;margin:24px 0 32px}.primary{border:0;border-radius:4px;padding:16px 21px;background:#476b4b;color:#fff;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:35px;min-width:205px}.primary b{font-size:18px}.quiet{margin-top:74px;color:#a4a497;font:9px monospace;letter-spacing:1.4px}.session-head{display:flex;justify-content:space-between;align-items:flex-end;margin:-2px 0 30px}.session-head h1{font-size:48px;margin:12px 0 0}.live{font-size:11px;vertical-align:top}.timer{font:24px monospace;color:#526d51;text-align:right}.timer small{display:block;font:9px monospace;letter-spacing:1px;color:#919488;margin-top:5px}.summary{display:flex;gap:26px;padding:14px 0;border-block:1px solid #e2e1d9;font-size:12px;color:#74776e}.summary b{color:#34372f}.autosave{margin-left:auto;color:#648263;font:10px monospace}.empty-card{background:#eeeee7;border:1px solid #e6e5dc;padding:34px;text-align:center;margin:28px 0}.empty-icon{font-size:28px;color:#759274}.empty-card h2{font:600 20px Arial;margin:14px 0 8px}.empty-card p{color:#777b70;font-size:13px;line-height:1.6}.secondary{border:1px solid #d4d7cc;background:transparent;padding:12px 16px;border-radius:3px;font-size:12px}.exercise-list{display:grid;gap:16px;margin-top:24px}.exercise{background:#fffefa;border:1px solid #e5e4dc;padding:20px 22px}.exercise.dim{opacity:.55}.exercise-top{display:flex;align-items:center;gap:10px}.index{font:11px monospace;color:#8da085}.exercise-name{flex:1}.exercise-name h2{font:600 18px Arial;margin:0}.exercise-name small{display:block;font:9px monospace;color:#89927e;margin-top:6px}.icon{border:0;background:transparent;font-size:18px;color:#7d8177;padding:4px 7px}.icon:hover,.danger{color:#a56458}.set-head,.set-row{display:grid;grid-template-columns:42px minmax(42px,.8fr) minmax(48px,.8fr) 82px minmax(55px,.8fr) 30px 20px;align-items:center;gap:8px}.set-head{margin:23px 0 7px;padding:0 5px;font:9px monospace;letter-spacing:.6px;color:#999b90}.set-row{padding:6px 4px;border-top:1px solid #eeede6}.set-number{font:11px monospace;color:#8e9388}.set-row input,.set-row select{width:100%;min-width:0;border:1px solid #e4e4dc;background:#fff;border-radius:3px;padding:8px 6px;font:12px monospace;color:#464a41}.set-row input{text-align:center}.set-row.checked .record{border-color:#9bb19a;background:#f4f7f0}.set-row select{font-size:11px}.check{border:0;background:none;color:#82947a;font-size:21px}.tiny{font-size:16px;padding:2px}.add-set{margin-top:10px;border:0;background:none;color:#62805f;font-size:11px}.exercise-actions{border-top:1px solid #eeede6;margin-top:14px;padding-top:10px;display:flex;gap:18px}.exercise-actions button,.text-button{border:0;background:none;color:#7c8076;font-size:11px;padding:4px 0}.wide{width:100%;margin-top:16px}.finish-button{width:100%;margin-top:30px;border:0;background:#476b4b;color:#fff;padding:17px 20px;text-align:left;font-size:13px}.finish-button span{float:right;font-size:18px}.text-button{display:block;margin:14px auto 40px;color:#9b8179}.history h1{font-size:44px}.period{font:10px monospace;letter-spacing:0;color:#999b91}.history .intro{margin-top:0}.history-card{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid #deded6}.history-date{flex:1}.history-date .eyebrow{margin-bottom:6px}.history-date>b{font:14px monospace}.history-date>span{display:block;font:9px monospace;color:#99988e;margin-top:7px}.history-data{display:grid;gap:5px;font-size:12px;min-width:150px}.history-data>span{color:#85877d;font-size:11px}.stars{color:#bd9a53}.small{padding:9px 12px;white-space:nowrap}footer{border-top:1px solid #deded6;display:flex;align-items:center;gap:16px;padding:25px 0;color:#8a8c82;font-size:11px;line-height:1.65}.footer-mark{font-size:24px}.footer-right{margin-left:auto;text-align:right;font:9px/1.8 monospace;letter-spacing:.5px;color:#9b9b90}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#20241f77;display:grid;place-items:center;padding:18px;z-index:5}.dialog{position:relative;width:min(100%,440px);background:#f9f8f2;padding:36px}.dialog h2{font:600 26px Arial;margin:14px 0}.dialog p{font-size:13px;color:#777b70;line-height:1.6}.dialog label{display:block;font-size:12px;color:#65695f;margin:20px 0}.dialog label>input{display:block;width:100%;margin-top:8px;border:1px solid #dcded4;padding:12px;background:#fff}.dialog .primary{width:100%;margin-top:26px}.close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:24px;color:#777}.rating{display:inline-flex;margin-left:10px}.rating button{border:0;background:none;color:#c5c2b7;font-size:18px;padding:0 2px}.rating button.selected{color:#bd9a53}.edit-dialog{max-height:85vh;overflow:auto}.edit-line{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid #e4e3db;font-size:12px}.edit-line span{color:#888;font:10px monospace}@media(max-width:600px){.app{padding:0 18px}.top{height:68px}.brand{font-size:12px}.brand small{font-size:8px}.local{font-size:8px;letter-spacing:0}.tabs{margin-bottom:36px}.welcome{margin:60px 0 75px}.welcome h1{font-size:49px}.session-head h1{font-size:39px}.timer{font-size:20px}.summary{gap:12px;flex-wrap:wrap;font-size:10px}.autosave{margin-left:0;width:100%}.exercise{padding:16px 12px}.exercise-top{gap:5px}.exercise-name h2{font-size:15px}.set-head,.set-row{grid-template-columns:28px minmax(35px,.8fr) minmax(38px,.8fr) 56px minmax(44px,.8fr) 24px 16px;gap:5px}.set-head{font-size:8px;letter-spacing:0}.set-row input,.set-row select{padding:8px 2px;font-size:11px}.set-row select{font-size:10px}.exercise-actions{gap:12px;justify-content:space-between}.exercise-actions button{font-size:10px}.history h1{font-size:36px;letter-spacing:-2px}.period{font-size:8px}.history-card{gap:10px;flex-wrap:wrap}.history-data{min-width:100px}.history-card .small{margin-left:auto}.footer-right{display:none}footer{font-size:10px}}.header-right{display:flex;align-items:center;gap:18px}.xp-badge{font:10px monospace;letter-spacing:.5px;color:#526d51;border:1px solid #d9ded2;padding:8px 10px}.save-error{margin:12px auto 0;max-width:780px;padding:10px 12px;border:1px solid #be7f70;background:#fff5f1;color:#884b3e;font-size:12px}@media(max-width:600px){.header-right{gap:7px;flex-direction:column;align-items:flex-end}.xp-badge{font-size:8px;padding:4px 6px}.local{font-size:7px}}.store-error{margin:70px auto;padding:30px;max-width:620px;background:#fffefa;border:1px solid #d7b0a6}.store-error h1{font:500 clamp(32px,6vw,48px)/1.1 Arial;letter-spacing:-1.5px}.store-error p{color:#6d7168;line-height:1.7}.store-error button{margin:12px 0}.companion{display:block;width:min(180px,48vw);height:150px;object-fit:contain;margin:-24px auto 20px}.template-list{display:grid;gap:8px;margin:28px auto;max-width:420px;text-align:left}.template-list h2{font-size:14px}.template-button{width:100%;text-align:left}.backup{white-space:normal}@media(max-width:600px){.companion{height:120px}.welcome{margin-top:34px}.backup{padding:8px 0}.exercise{overflow:hidden}.dialog{padding:28px 20px}.rating button{min-width:38px;min-height:44px}}
