:root{color-scheme:dark;--bg:#091420;--panel:#101f2e;--line:#233749;--muted:#95a9b9;--green:#20a775;--blue:#4c9ae9;--wine:#782c48;--text:#f1f5f7}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;background:#1a2d3e;color:var(--text);padding:10px 16px}button:hover{filter:brightness(1.2)}button:disabled{opacity:.5;cursor:wait}a{color:var(--blue)}h1{font-size:clamp(28px,3.4vw,42px);letter-spacing:-1.4px;line-height:1.15;margin:10px 0 14px}h2{font-size:20px;letter-spacing:-.5px;margin:0 0 15px}h3{margin:0 0 8px;font-size:16px}p{margin:8px 0 18px;color:var(--muted)}small{color:var(--muted)}.app{display:grid;grid-template-columns:238px 1fr;min-height:100vh}aside{padding:40px 24px;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:white;font-size:24px;font-weight:800;letter-spacing:1px}.brand b{color:#43c495}.brand small{display:block;font-size:9px;letter-spacing:3px;font-weight:500}.mark{display:grid;place-items:center;width:42px;height:44px;background:#13774e;border-radius:12px;font-size:26px;font-style:italic}.sidebar-title{margin:60px 12px 18px;font-size:10px;letter-spacing:2px;color:#6e879a}nav{display:grid;gap:8px}nav a{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--muted);padding:13px 15px;border-radius:10px;font-size:14px}nav a span{width:20px;font-size:19px}nav a.active{background:#12382f;color:#7ee0b5}nav a:hover{background:#152a3a}.aside-bottom{margin-top:auto;color:#b2c3cf;font-size:12px}.aside-bottom small{display:block;font-size:10px;margin-top:10px}.privacy-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:7px}main{max-width:1420px;width:100%;margin:auto;padding:30px 48px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:42px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted)}.profile{border-radius:30px;background:transparent;font-size:12px}.heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.tag{display:inline-block;border:1px solid #28614e;background:#14352c;color:#7ee0b5;border-radius:30px;padding:4px 10px;font-size:10px;letter-spacing:1px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:25px}.card{border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--panel)}.stat{display:flex;align-items:center;justify-content:space-between;gap:16px}.stat strong{font-size:32px;letter-spacing:-1px;display:block}.stat .unit{font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0}.kicker{font-size:10px;letter-spacing:1.7px;color:var(--muted);text-transform:uppercase}.ring{--percent:0;--accent:var(--green);width:82px;height:82px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--percent)*1%),#243849 0);display:grid;place-items:center;flex-shrink:0}.ring:before{content:attr(data-symbol);display:grid;place-items:center;background:var(--panel);width:68px;height:68px;border-radius:50%;color:var(--accent);font-size:24px}.progress{height:5px;background:#263847;border-radius:20px;overflow:hidden;margin-top:18px}.progress span{display:block;background:var(--green);height:100%}.split{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.hero{background:radial-gradient(ellipse at 95% 25%,#6b284588,transparent 65%),linear-gradient(120deg,#291e31,#152336);min-height:245px;position:relative;overflow:hidden}.hero h2{font-size:30px;max-width:360px;margin:15px 0}.hero .tag{background:#782c4833;border-color:#92516a;color:#f0b2c6}.hero:after{content:'↗';position:absolute;right:22px;bottom:6px;font-size:120px;color:#a0587740;pointer-events:none}.primary{background:#168254;border-color:#209769;color:#fff}.blue{background:#214f7b;border-color:#326795}.danger{color:#ffacb7}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.section-head h2{margin:0}.empty{padding:27px 12px;text-align:center;color:var(--muted);font-size:14px}.row{border-bottom:1px solid var(--line);padding:15px 0;display:flex;gap:13px;align-items:center}.row:last-child{border:0}.row-info{flex:1;min-width:0}.row p{margin:3px 0;font-size:12px}.row strong{display:block}.thumb{width:54px;height:54px;object-fit:cover;border-radius:12px;background:#22364a}.badge{width:42px;height:42px;border-radius:12px;background:#183e35;color:#72d9b1;display:grid;place-items:center;font-size:20px}.inline{display:flex;gap:12px;align-items:center}.muted{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:12px;color:#b7c7d3;margin-bottom:15px}input,textarea,select{display:block;width:100%;background:#0b1927;color:white;border:1px solid #33485a;border-radius:9px;padding:10px 12px;margin-top:6px}textarea{min-height:80px;resize:vertical}input[type=checkbox]{display:inline-block;width:20px;height:20px;accent-color:var(--green);vertical-align:middle;margin:0 9px 0 0}input[type=file]{font-size:12px}dialog{width:min(680px,95vw);max-height:90vh;border:1px solid #385267;border-radius:20px;background:#101f2e;color:white;padding:28px}dialog::backdrop{background:#030b14c9;backdrop-filter:blur(5px)}.modal-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:16px}.modal-head button{padding:4px 12px}.error{color:#ffc2cc!important}.success{color:#81dfb4}#notice:not(:empty){padding:12px 18px;background:#19382e;border-radius:10px;margin-bottom:18px}footer{font-size:10px;letter-spacing:1px;color:#607c90;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between}.exercise{border:1px solid var(--line);border-radius:12px;padding:18px;margin:12px 0}.exercise.done{border-color:#247e59;background:#14372a55}.sets{display:grid;grid-template-columns:36px 1fr 1fr 36px;gap:10px;align-items:center;margin:8px 0;font-size:12px}.sets input{margin:0;padding:8px}.exercise .actions{margin-top:12px}.exercise .name{font-weight:650}.exercise button{padding:5px 10px;font-size:12px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.photo-grid img{width:100%;max-height:450px;object-fit:contain;border-radius:12px;background:#07111b}.login{max-width:440px;margin:10vh auto}.login .brand{margin-bottom:30px}.hint{border-left:2px solid var(--blue);padding:8px 15px;background:#17304b55;font-size:12px;color:#bbcede;margin:16px 0}.history-chart{display:flex;align-items:flex-end;gap:8px;height:130px;padding-top:15px}.chart-column{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;font-size:10px}.chart-bar{background:#307db4;width:75%;min-height:2px;border-radius:5px 5px 0 0}.chart-column small{font-size:9px}.token{word-break:break-all;background:#081624;border:1px solid #385267;padding:14px;border-radius:10px;user-select:all}.wide{grid-column:1/-1}@media(min-width:1550px){main{padding:40px 70px}}@media(max-width:1100px){main{padding:24px}.app{grid-template-columns:200px 1fr}aside{padding:30px 16px}.grid{gap:12px}.card{padding:18px}.ring{width:58px;height:58px}.ring:before{width:48px;height:48px;font-size:18px}.stat strong{font-size:27px}.split{grid-template-columns:1fr}}@media(max-width:720px){.app{display:block}aside{position:fixed;z-index:5;bottom:0;top:auto;width:100%;height:auto;padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#0d1c2bf5;border-top:1px solid var(--line);border-right:0}aside .brand,.sidebar-title,.aside-bottom{display:none}nav{display:flex;justify-content:space-around;gap:0}nav a{flex-direction:column;gap:2px;padding:5px 7px;font-size:9px}nav a span{font-size:19px;width:auto}main{padding:20px 18px 95px}header{margin-bottom:28px}.eyebrow{font-size:8px}.grid{grid-template-columns:1fr;gap:12px}.stat{padding:18px 21px}.stat strong{font-size:30px}.ring{width:66px;height:66px}.ring:before{width:56px;height:56px}.heading{align-items:flex-start;flex-direction:column;gap:0}.heading p{margin-bottom:8px}h1{font-size:32px}.hero h2{font-size:28px}footer span{display:none}.form-grid{gap:10px}.photo-grid{gap:8px}.card{border-radius:15px}.row{flex-wrap:wrap}.row .actions{margin-left:auto}.login{margin:5vh auto}.login .brand{display:flex}.actions button{font-size:12px}}
