:root{color:#17314e;--teal:#087e80;--navy:#071938;--line:#d8e5e2;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);background:#f3f7f6;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:18px}*{box-sizing:border-box;min-width:0}[hidden]{display:none!important}body{margin:0;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button,summary,label[for]{cursor:pointer}button,a,input,select,summary{touch-action:manipulation}button{white-space:normal}a{color:#066c73;overflow-wrap:anywhere}img{max-width:100%;display:block}p{margin:0 0 14px}h1,h2,h3{color:var(--navy);overflow-wrap:anywhere;margin:0 0 14px;line-height:1.2}h1{letter-spacing:-.035em;font-size:32px}h2{font-size:28px}h3{font-size:26px}small,.tiny,.tag,.badge,.kv,.eyebrow{font-size:18px}b,strong{font-weight:750}input[type=checkbox]{width:24px;height:24px;accent-color:var(--teal);flex-shrink:0}:focus-visible{outline-offset:3px;outline:3px solid #c77700}.app{max-width:1120px;min-height:100dvh;margin:auto}header{color:#fff;padding:12px;padding-top:calc(12px + var(--safe-top));background:#063c43;justify-content:space-between;align-items:center;gap:8px;display:flex}header .left,header .right{align-items:center;gap:10px;display:flex}.title{letter-spacing:-.035em;font-size:26px;font-weight:850;line-height:1.2}.title small{color:#9edfd0;letter-spacing:0;margin-top:4px;font-size:18px;font-weight:500;display:block}.iconBtn{color:#fff;background:#fff2;border:0;border-radius:50%;min-width:48px;min-height:48px;font-size:30px}.skipLink{z-index:300;background:#fff;padding:12px;position:absolute;top:-100px}.skipLink:focus{top:0}main{padding:20px 12px calc(250px + var(--safe-bottom))}.screen{display:none}.screen.active{display:block}.card,.setting,.panel,.metric,.week{border:1px solid var(--line);background:#fff;border-radius:20px;margin:0 0 18px;padding:18px}.card{box-shadow:0 8px 24px #073c4310}.setting{margin-top:18px}.panel,.metric{background:#eaf7f3}.sub{color:#066c73;font-size:20px}.tiny,.privacyNote,.sectionHead p,.empty{color:#4b6463}.privacyNote{margin-top:24px}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.sectionHead{margin-bottom:22px}.eyebrow{color:#16746e;margin-bottom:12px}.heroV7{color:#fff;background:linear-gradient(135deg,#063c43,#0b736b);border-radius:22px;margin:20px 0;padding:22px 18px}.heroV7 h1{color:#fff}.heroV7 p{color:#e0f4ed}.heroV7 .btn{color:#063c43;background:#b8f2d5}.profileContext{background:#e1f1eb;border-radius:14px;padding:14px}.hero,.pose{border:1px solid var(--line);background:#edf4f4;border-radius:16px;margin:18px 0;overflow:hidden}.hero img,.pose img{aspect-ratio:1.65;object-fit:contain;width:100%}.grid2,.grid3,.grid4,.dashboard,.routine,.libraryGrid,.formGrid,.statGrid,.profileList,.summaryList,.history,.monthPlan{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.dashboard .card,.statGrid .metric{margin:0}.dashboard{margin-bottom:18px}.metric b{color:var(--navy);font-size:30px;display:block}.metric small{display:block}.btn,.chip{background:var(--teal);color:#fff;min-height:52px;box-shadow:none;text-align:center;border:0;border-radius:14px;padding:12px 18px;font-size:18px;font-weight:750;line-height:1.4}.btn.secondary{border:2px solid var(--teal);color:#066c73;background:#fff}.btn.ghost{color:#066c73;background:#eaf3f2}.btn.full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.chips{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.chip{border:1px solid var(--teal);color:#17314e;background:#fff}.chip.active{background:var(--teal);color:#fff}.chip.locked{opacity:.7}.input,.select{background:#fff;border:1px solid #b9ceca;border-radius:12px;width:100%;min-height:54px;padding:12px;font-size:18px;display:block}.formGrid label{gap:8px;display:grid}.formGrid{margin:18px 0}.toolbar{grid-template-columns:minmax(0,1fr);gap:12px;margin:18px 0;display:grid}.toolbar .btn{width:100%}.icon{color:#066c73;background:#eaf7f3;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.warning{background:#fff4dc;border:1px solid #e0b45c;border-radius:14px;align-items:flex-start;gap:10px;margin:18px 0;padding:14px;display:flex}.warning div{overflow-wrap:anywhere}.empty{border:1px dashed #b8cbc5;border-radius:14px;padding:18px}.profileItem{border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:stretch;gap:14px;padding:16px;display:flex}.profileItem.active{border:2px solid var(--teal)}.profileItem .row{flex-wrap:wrap}.profileItem button{flex:1}.personalCard summary,.audioSettings summary{min-height:52px;font-weight:750}.personalCard small{display:block}.personalCard h3{margin-top:24px}.personalCard .btn{margin-top:14px}.audioSettings{margin-bottom:24px}.audioSettings label{gap:10px;display:grid}.audioSettings p{margin-top:14px}.backupCard>.row{display:grid}.backupCard>.btn{width:100%;margin-top:14px}input[type=file]{width:100%;margin:16px 0}.dailyProposal .btn{width:100%;margin-top:12px}.dailyProposal .select{margin:18px 0}.quickTraining summary{color:#066c73;font-size:26px;font-weight:800}.quickTraining[open]{gap:14px;display:grid}.quickTraining{scroll-margin-top:16px}.exerciseCard,.item{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.exerciseCard{flex-direction:column;display:flex}.exerciseCard img,.item img{aspect-ratio:1.65;object-fit:contain;background:#f4f5ee;width:100%}.exerciseCard .text{flex-direction:column;flex:1;gap:12px;padding:18px;display:flex}.exerciseCard h3{margin:0}.exerciseCard button{margin-top:auto}.badge{background:#edf2f1;border-radius:8px;align-self:flex-start;padding:6px 10px}.badge.enabled{color:#145b42;background:#dcf4e6}.badge.pending{color:#785525;background:#fff0d7}.item .txt{padding:16px;font-weight:700}.tag{color:#066c73;font-weight:500}.hist,.sumItem{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;border-radius:12px;padding:16px}.scheduleRow{border-bottom:1px solid var(--line);gap:12px;padding:18px 0;display:grid}.dayChoices{flex-wrap:wrap;gap:12px;margin:18px 0;display:flex}.dayChoices label{align-items:center;gap:6px;min-height:48px;display:flex}.calendarGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin:22px 0;display:grid}.weekLabel{text-align:center;padding:8px 0}.calendarDay{border:1px solid var(--line);text-align:center;background:#fff;border-radius:8px;min-height:52px;padding:8px 0;font-size:18px;position:relative}.calendarDay b{font-weight:650}.calendarDay.today{border:2px solid var(--teal)}.calendarDay[aria-pressed=true]{color:#fff;background:#063c43}.calendarDay.hasEntry:after{content:"";background:#10ad9a;border-radius:50%;width:6px;height:6px;margin:3px auto 0;display:block}.calendarDay.hasEntry{padding-bottom:3px}.calendarBlank{min-height:52px}.days{gap:12px;display:grid}.day{border:1px solid var(--line);border-radius:12px;padding:12px}.mainNav{z-index:85;width:min(100%,1120px);padding:6px 8px calc(6px + var(--safe-bottom));border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.mainNav button{color:#496363;background:0 0;border:0;border-radius:10px;min-height:48px;padding:8px 2px;font-size:18px;font-weight:700}.mainNav button[aria-current=page]{color:#006a64;background:#dff4ec}.musicDock{bottom:calc(116px + var(--safe-bottom));z-index:80;color:#fff;background:#083842;border-radius:16px;grid-template-columns:48px 90px minmax(0,1fr);align-items:center;gap:4px 10px;width:min(100% - 16px,620px);padding:8px 12px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.musicDock button{color:#fff;background:#0bada5;border:0;border-radius:50%;grid-area:1/1;width:48px;min-height:48px;font-size:24px}.musicDock>div{grid-area:1/2;line-height:1.25}.musicDock input[type=range]{accent-color:#84f0dc;grid-area:1/3;width:100%;height:48px;margin:0}.musicDock label{align-items:center;gap:8px;min-height:48px;font-size:18px;display:flex}.voice-option{grid-area:2/1/auto/3}.rep-option{white-space:nowrap;grid-area:2/3}body[data-area=home] .musicDock label,body[data-area=library] .musicDock label,body[data-area=calendar] .musicDock label,body[data-area=progress] .musicDock label{display:none}.session-mode main{padding-bottom:calc(240px + var(--safe-bottom))}.session-mode .app{max-width:760px}.session-mode .mainNav,.session-mode .privacyNote{display:none}.session-mode .musicDock{bottom:var(--safe-bottom)}.session-mode .controls{bottom:calc(126px + var(--safe-bottom));z-index:90;border:1px solid var(--line);background:#f3f7f6;border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:min(100% - 16px,620px);padding:8px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.controls .btn{padding:12px 4px}.controls #endSessionBtn{grid-column:auto}.session-mode .pose img{aspect-ratio:1.25;object-fit:contain}.progressText{text-align:center;color:#066c73;margin-bottom:16px;font-weight:750}.dots{display:none}.phaseRow{justify-content:space-between;align-items:center;gap:10px;display:flex}.phase{color:var(--navy);font-size:22px;font-weight:750}.timerCard{background:#eaf7f6;border:1px solid #bddedc;border-radius:16px;grid-template-columns:44px minmax(0,1fr);align-items:center;margin:16px 0;padding:18px 12px;display:grid}.timer{text-align:center;font-variant-numeric:tabular-nums;color:#066c73;font-size:64px;font-weight:850;line-height:1.05}.timer small{color:#4b6463;margin-top:8px;font-size:18px;font-weight:600;line-height:1.4;display:block}.instructions{align-items:flex-start;font-size:20px}.instructions .icon{display:none}.controls{gap:12px;display:grid}.toast{z-index:200;top:calc(8px + var(--safe-top));color:#fff;background:#083842;border-radius:14px;width:min(100% - 16px,620px);padding:6px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #07193840}.toast button{color:inherit;font:inherit;background:0 0;border:0;min-height:48px;padding:10px}.toast-body{text-align:left;flex:1}.toast-close{flex:0 0 48px;font-size:28px!important}dialog{color:#17314e;border:0;border-radius:18px;width:calc(100% - 16px);max-width:700px;max-height:92dvh;padding:18px;font-size:18px;overflow:auto}dialog::backdrop{background:#041c2c99}dialog>button{z-index:1;position:sticky;top:0}dialog img{object-fit:contain;width:100%;max-height:360px;margin:18px 0}dialog table{border-collapse:collapse;width:100%;margin:18px 0}dialog th,dialog td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 4px}dialog caption{text-align:left;font-weight:750}dialog ul{padding-left:24px}@media (width>=700px){main{padding:28px 24px 240px}.dashboard,.libraryGrid,.routine,.grid2,.formGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3,.grid4,.statGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.mainNav{grid-template-columns:repeat(6,minmax(0,1fr))}.musicDock{bottom:calc(68px + var(--safe-bottom))}.toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.calendarGrid{gap:8px}.calendarDay{min-height:64px}.profileItem{flex-direction:row;justify-content:space-between;align-items:center}h1{font-size:34px}.heroV7{padding:28px}.session-mode .controls{bottom:calc(126px + var(--safe-bottom));grid-template-columns:repeat(3,minmax(0,1fr))}.controls #endSessionBtn{grid-column:auto}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
