/* NexTreino / PACE — original light editorial design, version 3 */
:root{
  color-scheme:light;
  --bg:#F4F3F0;--paper:#FFFFFF;--ink:#192333;--muted:#808793;--line:#E5E6E4;
  --mint:#C5E8D5;--violet:#D9D9FF;--orange:#F27057;--aqua:#7190F6;
  --nav:#FFF;--shadow:0 14px 40px rgba(30,40,65,.055);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--bg);scroll-behavior:smooth;font-family:system-ui,-apple-system,'Segoe UI',sans-serif}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-size:14px}
button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7B84F9;outline-offset:3px}
svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.app{width:100%;max-width:620px;margin:auto;padding:0 21px calc(148px + env(safe-area-inset-bottom))}
.row,.flex,.topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.topline{padding:22px 0 24px;margin:0 0 11px;position:relative}
.topline:after{content:'';position:absolute;bottom:5px;left:0;right:0;height:1px;background:var(--line)}
.brand{display:flex;align-items:center;gap:10px}
.brandmark{height:42px;width:42px;display:grid;place-items:center;background:#1E273C;color:#fff;border-radius:16px;box-shadow:inset -8px -7px 0 #374965}
.brandmark svg{width:27px;height:27px;stroke-width:2.7;transform:rotate(-10deg)}
.brandname{font-size:19px;letter-spacing:-.9px;line-height:.99;font-weight:900;color:#1E2738}
.brandname span{display:block;font-size:16px;font-weight:500;letter-spacing:-.5px;color:#6C7484;margin-top:3px}
.subbrand{font-size:9px;letter-spacing:1.8px;color:#8B93A0;margin-top:8px;font-weight:750;text-transform:uppercase}
.headright{display:flex;align-items:center;gap:10px}.topstamp{display:none}
.avatar{height:42px;width:42px;border:1px solid #DFE3E4;background:#fff;display:grid;place-items:center;border-radius:50%;color:#3C4964;box-shadow:0 5px 12px #18243B09}
.avatar svg{width:19px;height:19px}
.page{display:none;animation:arrive .26s ease-out}.page.active{display:block}
@keyframes arrive{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.masthead{display:flex;align-items:center;gap:8px;justify-content:space-between;margin:14px 0 3px}
.mastnum{display:none}.eyebrow{font-size:10px;line-height:1.5;font-weight:850;text-transform:uppercase;letter-spacing:1.7px;color:#7F899D}
.welcome{margin:7px 0 10px;font-size:clamp(32px,8.7vw,45px);font-weight:850;line-height:1.10;letter-spacing:-1.9px;color:#202A40}
.welcome br{display:none}.welcome em{font-style:normal;color:#6978E2}
.intro{font-size:13px;line-height:1.6;color:#747B87;margin:0 0 22px;max-width:460px}
/* Dark, crafted feature surface, with a motion-curve visual etched into its background */
.hero{border-radius:29px;min-height:281px;background:radial-gradient(ellipse at 80% 0%,#4C5783 0%,transparent 48%),linear-gradient(140deg,#1C2438 0%,#273454 100%);position:relative;color:#fff;padding:24px 23px 20px;overflow:hidden;isolation:isolate;box-shadow:0 22px 35px #19243E26}
.hero>*:not(.hero-art){position:relative;z-index:2}
.hero-art{position:absolute;z-index:0;right:-105px;top:-106px;height:390px;width:390px;opacity:.75;pointer-events:none}
.herotop{display:flex;align-items:center;justify-content:space-between;gap:9px}
.hero .eyebrow{color:#BFC7DE;font-weight:750;letter-spacing:1.2px;font-size:10px}
.datepill{font-size:10px;letter-spacing:.75px;font-weight:770;color:#E5E9FA;border:1px solid #ffffff3b;border-radius:99px;padding:6px 12px;white-space:nowrap;text-transform:uppercase;background:#ffffff13}
.heroinside{display:flex;align-items:center;justify-content:space-between;gap:3px;padding:31px 0 27px}
.herovalue{font-size:clamp(67px,18vw,105px);font-weight:850;line-height:.86;letter-spacing:-6px;font-variant-numeric:tabular-nums;white-space:nowrap}
.herounit{font-size:15px;letter-spacing:0;color:#CFD6EB;font-weight:700;vertical-align:baseline;margin-left:3px}
.herotext{margin-top:16px;max-width:183px;font-size:11.5px;line-height:1.55;color:#D6DDED}
.ring{width:114px;height:114px;flex:0 0 114px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--orange) var(--progress,0%),#ffffff24 0);box-shadow:0 0 0 5px #ffffff08;position:relative}
.ring:before{content:'';position:absolute;inset:11px;background:#283450;border-radius:50%;box-shadow:inset 0 7px 19px #070D2433}
.ringcenter{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}
.ringnum{font-size:28px;line-height:1;font-weight:850;letter-spacing:-1px;color:#fff}.ringsub{font-size:9px;font-weight:650;color:#C2CAE0;margin-top:6px;text-transform:lowercase}
.herofoot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #E4E9FF31;padding-top:14px;gap:8px}
.herofoot>div{min-width:0}.herofoot>div+div{text-align:right}.herofoot .small{font-size:9px;letter-spacing:.7px;font-weight:750;text-transform:uppercase;color:#B9C3DB;margin-bottom:5px}
.herofoot strong{font-size:15px;letter-spacing:-.3px;font-weight:780;color:#fff}
/* Embedded synchronization status, minimal and clear */
.syncbox{display:flex;gap:12px;align-items:center;margin:16px 0 27px;background:#FFFFFF;border:1px solid #E9EBE9;padding:13px 14px;border-radius:17px;box-shadow:0 7px 25px #19243A0B}
.syncicon{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:11px;background:#EAF5F0;color:#347D65}
.syncicon svg{width:18px;height:18px}.syncinfo{min-width:0;flex:1}.synctitle{font-size:12px;font-weight:800;letter-spacing:-.1px;color:#27313C}
.syncdetail{font-size:10px;color:#89909D;line-height:1.45;overflow-wrap:anywhere;margin-top:3px}
.syncbutton{flex:0 0 auto;padding:9px 12px;min-height:34px;color:#3D53C9;background:#EEF0FF;border:0;border-radius:11px;font-size:10px;font-weight:850}
/* Asymmetric scores; no repetitive three-card dashboard */
.stats{display:grid;grid-template-columns:1.03fr .97fr;grid-template-rows:repeat(2,85px);gap:10px;margin:0 0 31px}
.stat{position:relative;border-radius:19px;background:#fff;padding:13px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 3px 10px #16203706;overflow:hidden}
.stat:first-child{grid-row:1/3;background:#DADCF9;display:block;padding:20px 18px}
.stat:first-child:after{content:'';position:absolute;width:150px;height:150px;right:-82px;bottom:-77px;border:19px solid #FFFFFF75;border-radius:50%}
.staticon{display:flex;align-items:center;justify-content:center;flex:0 0 35px;width:35px;height:35px;border-radius:12px;background:#F4F5FF;color:#656ED6}
.stat:first-child .staticon{background:#F7F7FFB7;color:#646AD7;margin-bottom:13px}
.staticon svg{width:19px;height:19px}.staticon.orange{background:#FFF0E8;color:#E58567}
.statvalue{font-size:26px;line-height:1;font-weight:850;color:#273144;letter-spacing:-1px;font-variant-numeric:tabular-nums;white-space:nowrap}
.stat:first-child .statvalue{font-size:48px;letter-spacing:-2px}.statvalue small{font-size:11px;font-weight:750;letter-spacing:0;color:#7078A4;margin-left:3px}
.statlabel{color:#8C93A1;text-transform:none;font-size:10px;line-height:1.4;letter-spacing:0;margin-top:4px;font-weight:700}
.stat:first-child .statlabel{font-size:11px;margin-top:7px;color:#727BAD;max-width:107px}
/* Workout categories as tactile, clickable shortcuts */
.quicksection{margin:6px 0 28px}.quickhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.quickhead b{font-size:16px;letter-spacing:-.4px;color:#263044}.quickhead span{font-size:10px;color:#9AA2AD}
.quickgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.quick{padding:15px 12px 13px;text-align:left;background:white;border:1px solid #EAEAE9;min-height:106px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:12px;border-radius:19px;color:#27313E;font-size:11px;font-weight:800;transition:transform .15s ease,box-shadow .15s ease}
.quick:active{transform:scale(.96)}.quick svg{width:24px;height:24px;stroke-width:2.2}.quick .quick-ico{display:grid;place-items:center;width:38px;height:38px;background:#EAE9FF;border-radius:13px;color:#6970D6}
.quick:nth-child(2) .quick-ico{background:#E7F4EC;color:#54876B}.quick:nth-child(3) .quick-ico{background:#FFF0E8;color:#E38565}
/* Editorial section labels, soft data chart with no grid clutter */
.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:32px 0 14px}
.sectionhead .eyebrow{font-size:9px;letter-spacing:1.35px;color:#8D95A6;margin-bottom:5px}
.sectionhead h2{font-size:21px;line-height:1.15;letter-spacing:-.7px;font-weight:850;color:#263247;margin:0}
.sectionhead .mini{font-size:10px;color:#919AA6;font-weight:750;white-space:nowrap}
.linkbtn{border:0;background:none;color:#6170D5;font-size:11px;font-weight:850;padding:8px 0;white-space:nowrap}
.panel{border-radius:19px;background:#fff;border:1px solid #EBECE9;padding:17px;box-shadow:var(--shadow)}
.trendchart{height:180px;padding:17px 8px 0;display:flex;align-items:end;justify-content:space-between;gap:7px;background:repeating-linear-gradient(to top,#F2F3F6 0 1px,transparent 1px 42px);border-radius:12px}
.chartcol{height:100%;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:end;gap:5px;min-width:0}
.chartnum{font-size:10px;font-weight:800;color:#4F5D80;min-height:14px}
.charttrack{height:100%;flex:1;display:flex;align-items:end;justify-content:center;width:100%;max-width:31px}
.bar{width:100%;border-radius:11px 11px 4px 4px;min-height:3px;background:#A7AFF7;transition:height .3s ease}
.chartcol.today .bar{background:linear-gradient(#FD9C77,#E96D61)}.chartcol span:last-child{font-size:10px;font-weight:700;color:#8E96A4;margin:4px 0 0}
.chartcol.today span:last-child{color:#DE775F}.chartfoot{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding:0 4px;color:#939BA9;font-size:10px;font-weight:650}.chartfoot strong{color:#2F3A60!important;font-size:11px}
/* date picking timeline and clean workout records */
.weekdaychips{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0 0 12px}
.daychip{min-width:0;border:0;background:transparent;padding:7px 0 8px;display:flex;flex-direction:column;align-items:center;gap:8px;color:#8B95A3;font-size:10px;font-weight:800;border-radius:15px}
.daychip b{display:grid;place-items:center;font-size:14px;line-height:1;font-weight:850;width:37px;height:37px;background:#fff;border:1px solid #E9EAE8;border-radius:50%;color:#354056}
.daychip.active{color:#EF735E}.daychip.active b{background:#F27057;border-color:#F27057;color:white;box-shadow:0 6px 14px #EC735642}
.daydot{width:4px;height:4px;background:transparent;border-radius:50%;margin-top:0}.daydot.completed{background:#737DEA}
.daychip.active .daydot{background:#F27057}
#todayList,#historyList{padding:3px 14px}
.activity{display:flex;align-items:center;gap:11px;padding:17px 0;border-bottom:1px solid #EEF0EF}.activity:last-child{border-bottom:0}
.acticon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;color:#6973E2;background:#EDEEFF}
.acticon.bicicleta,.acticon.caminhada,.acticon.corrida{color:#4B977C;background:#E6F6ED}.acticon.musculacao{color:#DF815B;background:#FFF0E8}.acticon.descanso{background:#EEF1F3;color:#8491A2}.acticon.outro,.acticon.circuito{background:#FFEDE0;color:#D5804C}
.acticon svg{width:21px;height:21px}.actbody{min-width:0;flex:1}.acttitle{font-size:13px;font-weight:850;line-height:1.35;letter-spacing:-.25px}.actmeta{font-size:10px;line-height:1.5;color:#929AA4;margin-top:5px}
.actright{text-align:right;flex:0 0 auto}.acttime{font-size:17px;font-weight:850;color:#252F43;white-space:nowrap}.actright .light{font-size:9px;color:#959DAB}
.iconbtn{border:1px solid #E5E8E9;color:#6975C8;background:#FAFAFE;border-radius:11px;display:inline-grid;place-items:center;padding:8px}.iconbtn svg{width:16px;height:16px}
.sourcetag{display:inline-block;border-radius:5px;font-size:8px;margin-left:6px;padding:3px 5px;color:#5969CF;background:#EEF0FF;font-weight:850;vertical-align:1px}
.sourcetag.manual{color:#77868D;background:#F0F3F3}
.empty{text-align:center;padding:24px 6px 30px}.empty .empticon{width:48px;height:48px;border-radius:16px;background:#EFF1FF;color:#6A73DA;display:grid;place-items:center;margin:0 auto 12px}.empty strong{font-size:15px;font-weight:850;display:block}.empty p{font-size:11px;color:#939CAA;max-width:275px;margin:7px auto 16px;line-height:1.7}
.primary{display:inline-flex;gap:8px;align-items:center;justify-content:center;background:#253353;border:0;color:white;border-radius:14px;font-size:12px;font-weight:800;min-height:46px;padding:13px 17px;letter-spacing:0;box-shadow:0 8px 18px #1827471C}.primary svg{width:18px;height:18px}.secondary{background:#ECEEFF;color:#4D5AC4;box-shadow:none}.full{width:100%}
.hintbox{background:#EEF0FF;color:#657294;border-radius:18px;padding:15px;margin-top:20px;font-size:11px;line-height:1.7}.hintbox b{color:#4653A4}
.stepcard{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#DDE9F4;border:0;padding:22px 22px;border-radius:21px;box-shadow:none}
.stepnum{font-size:36px;line-height:1;font-weight:860;letter-spacing:-1.2px;color:#29405C}.stepnum small{display:block;margin-top:6px;font-size:10px;color:#687C91;font-weight:800;letter-spacing:1px;text-transform:uppercase}
#stepsIcon{color:#6888A1!important}#stepsIcon svg{width:40px;height:40px}
/* History / goal / settings hierarchy */
.filterrow{display:flex;gap:8px;padding:3px 0 18px;overflow:auto;scrollbar-width:none}.filterrow::-webkit-scrollbar{display:none}
.filter{background:white;color:#89919E;border:1px solid #E7E9E9;white-space:nowrap;border-radius:100px;padding:11px 15px;font-size:11px;font-weight:800}
.filter.active{background:#242F49;color:#fff;border-color:#242F49}
.workdate{padding:17px 0 5px;font-size:12px;font-weight:850;color:#4D5D8A;text-transform:capitalize}
.largegoal{padding:24px 21px;margin-bottom:13px;border-radius:23px;background:#fff;border:1px solid #ECEDE9;box-shadow:var(--shadow);position:relative;overflow:hidden}
.largegoal:nth-of-type(3){background:#EAEAFF}.largegoal .eyebrow{color:#7D89AA;font-size:10px}
.goalvalue{margin-top:12px;font-size:37px;line-height:1.1;font-weight:850;letter-spacing:-1.3px;color:#243148}
.goalvalue .muted{color:#8993A6!important}.pill{display:inline-block;background:#EEF0FF;border-radius:50px;color:#5A66D0;padding:7px 10px;font-size:11px;font-weight:800;white-space:nowrap}
.progress{margin:20px 0 10px;height:10px;border-radius:100px;background:#EDF0F3;overflow:hidden}
.progress>div{height:100%;background:linear-gradient(90deg,#8593EE,#5668D4);border-radius:100px;transition:width .25s ease}
.goalline{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#8A94A1;font-weight:700}
#metas>.panel,#config>.panel{padding:21px 19px;margin-top:14px}
#metas>.panel h2,#config>.panel h2{font-size:18px!important;font-weight:850}
.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:11px;color:#627083;font-weight:750}
.field input,.field select,.field textarea{min-width:0;width:100%;border-radius:12px;border:1px solid #E3E6EA;background:#F7F8FA;color:#23304A;padding:13px 12px;font-size:13px;outline:none}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#7385E2}.field textarea{resize:vertical;min-height:90px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:17px}.formgrid .all{grid-column:1/-1}
.settingsitem{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #EDF0EF;padding:17px 0}.settingsitem:last-child{border-bottom:0}
.settingsitem strong{font-size:12px;font-weight:850}.settingsitem p{font-size:11px;line-height:1.6;color:#8F98A5;margin:5px 0 0}
.note{color:#8B94A0;font-size:11px;line-height:1.65}.muted{color:var(--muted)}
.brandblock{background:#252F49;color:#fff;border-radius:22px;padding:20px;margin:20px 0;box-shadow:0 16px 28px #25364A20}
.brandblock .brandmark{background:#6172D4}.brandblock .note{color:#B9C4DA}.brandblock .pill{background:#FFFFFF24;color:#fff}
.privacy{font-size:11px;color:#8B97A6;line-height:1.8}.privacy strong{display:block;color:#2C3B51;font-size:13px;margin-bottom:5px}
/* Float dock & separate primary capture action, soft-glass style */
.bottomnav{position:fixed;z-index:20;bottom:calc(15px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 30px);max-width:574px;min-height:71px;padding:5px;display:grid;grid-template-columns:repeat(4,1fr);border-radius:24px;border:1px solid #E9EBEA;background:#FFFFFFF2;box-shadow:0 11px 34px #1F294330;backdrop-filter:blur(17px)}
.navbtn{border:0;background:none;border-radius:19px;color:#8D95A2;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;font-size:10px;font-weight:800;min-width:0;min-height:60px}
.navbtn svg{width:20px;height:20px}.navbtn.active{background:#EDEFFF;color:#5F6CCE}.navbtn.active:before{display:none}
.floating{position:fixed;z-index:23;right:max(22px,calc((100vw - 620px)/2 + 22px));bottom:calc(100px + env(safe-area-inset-bottom));height:54px;width:54px;min-width:54px;display:grid;place-items:center;border-radius:19px;border:0;background:#F27057;color:white;box-shadow:0 11px 26px #F2705760;transform:rotate(-3deg)}
.floating svg{width:26px;height:26px;stroke-width:2.6;transform:rotate(3deg)}.floating:after{display:none}
/* Lifted editor sheet */
.modalshade{position:fixed;inset:0;z-index:50;display:none;align-items:flex-end;justify-content:center;background:#12192B91;backdrop-filter:blur(5px)}.modalshade.open{display:flex}
.modal{background:#fff;width:100%;max-width:620px;max-height:92vh;overflow:auto;border-radius:28px 28px 0 0;padding:25px 23px calc(27px + env(safe-area-inset-bottom));box-shadow:0 -10px 60px #19243945}
.modaltop{display:flex;align-items:center;justify-content:space-between}.modaltop h2{font-size:26px;font-weight:850;letter-spacing:-1px;margin:0}.modalclose{border:0;background:#F1F2F5;color:#44506C;height:39px;width:39px;border-radius:50%;font-size:24px}
.modaldetails{margin:11px 0 0;color:#7E8898;font-size:12px;line-height:1.6}
.modalfoot{display:flex;gap:10px;margin-top:22px}.modalfoot .primary{flex:1}.danger{background:#FFF1EE!important;color:#BA4C3B!important;border-color:#F9D1C8!important;box-shadow:none!important}
.toast{position:fixed;z-index:80;left:50%;bottom:calc(115px + env(safe-area-inset-bottom));transform:translate(-50%,20px);background:#1E293F;color:#fff;border-radius:13px;padding:12px 16px;max-width:min(370px,90vw);min-width:200px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center;font-size:11px;box-shadow:0 15px 30px #0003}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:700px){body{background:#EAEAF0}.app{padding-top:15px}.bottomnav{bottom:22px}.floating{bottom:110px}.modalshade{align-items:center}.modal{border-radius:26px;max-height:87vh}}
@media(max-width:355px){.app{padding-inline:15px}.hero{padding:21px 17px}.herovalue{font-size:60px}.herounit{font-size:11px}.ring{width:96px;height:96px;flex-basis:96px}.ringnum{font-size:24px}.stats{gap:8px}.stat{padding:10px}.stat:first-child{padding:16px 12px}.stat:first-child .statvalue{font-size:40px}.quick{padding:13px 9px}.daychip b{width:33px;height:33px}.activity{gap:8px}.sourcetag{display:block;margin:4px 0 0;width:max-content}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Score typography needs a firm internal grid at narrow mobile widths. */
.stat:not(:first-child){display:block;padding:12px 12px 11px}
.stat:not(:first-child) .staticon{position:absolute;top:10px;right:11px;width:26px;height:26px;border-radius:9px}
.stat:not(:first-child) .staticon svg{width:15px;height:15px}
.stat:not(:first-child) .statvalue{display:block;font-size:27px;line-height:1.02;letter-spacing:-.9px;margin-top:4px;max-width:100%;overflow:hidden;text-overflow:clip;padding-right:20px}
.stat:not(:first-child) .statlabel{font-size:10px;line-height:1.3;margin-top:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stat:not(:first-child) .statvalue small{font-size:9px;margin-left:3px}
@media(max-width:355px){.stat:not(:first-child) .statvalue{font-size:23px}}

/* PACE 3.2 — ambient appearance system, responsive motion, readable durations */
:root{--accent:#838CF6;--field:#F7F8FA;--card:#FFFFFF;--card-border:#E7E9EE;--text-soft:#747E90}
html{transition:background-color .26s ease;color-scheme:light}
body,.app,.panel,.syncbox,.stat,.quick,.bottomnav,.modal,.field input,.field select,.field textarea,.largegoal,.brandblock,.appearance-card{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}
html[data-theme="dark"]{color-scheme:dark;--bg:#10141E;--paper:#1B2231;--ink:#E8EEFC;--muted:#9DA9C1;--line:#313B51;--nav:#1A2131;--shadow:0 15px 38px #00000036;--accent:#9DA5FF;--field:#222B3B;--card:#1B2332;--card-border:#344057;--text-soft:#9EACC1}
html[data-theme="dark"],html[data-theme="dark"] body{background:var(--bg);color:var(--ink)}
html[data-theme="dark"] .topline:after{background:#2B3447}
html[data-theme="dark"] .brandmark{background:#6879CD;box-shadow:inset -8px -7px 0 #4556A3;color:#fff}
html[data-theme="dark"] .brandname,html[data-theme="dark"] .welcome,html[data-theme="dark"] .quickhead b,html[data-theme="dark"] .sectionhead h2{color:#EDF2FF}
html[data-theme="dark"] .brandname span,html[data-theme="dark"] .subbrand{color:#A5B2CC}
html[data-theme="dark"] .eyebrow{color:#95A4C0}
html[data-theme="dark"] .welcome em{color:#A1A9FF}
html[data-theme="dark"] .intro{color:#9AA8C0}
html[data-theme="dark"] .avatar{background:#1C2536;border-color:#354055;color:#D1DBF7;box-shadow:0 5px 16px #00000021}
html[data-theme="dark"] .hero{background:radial-gradient(ellipse at 75% 0%,#3A477B 0%,transparent 60%),linear-gradient(145deg,#202A41 0%,#29385C 100%);border:1px solid #55638A55;box-shadow:0 25px 42px #04091570}
html[data-theme="dark"] .syncbox{background:#1C2637;border:1px solid #344056;box-shadow:0 11px 28px #00000029}
html[data-theme="dark"] .syncicon{background:#25463F;color:#91DBC1}
html[data-theme="dark"] .synctitle{color:#E4ECFD}
html[data-theme="dark"] .syncdetail{color:#9BA9BF}
html[data-theme="dark"] .syncbutton{background:#303B68;color:#C4CAFF}
html[data-theme="dark"] .stat{background:#20293A;box-shadow:0 7px 20px #060A162B}
html[data-theme="dark"] .stat:first-child{background:linear-gradient(145deg,#383F78,#2C386C)}
html[data-theme="dark"] .stat:first-child:after{border-color:#FFFFFF1A}
html[data-theme="dark"] .statvalue{color:#ECF2FF}
html[data-theme="dark"] .statlabel,html[data-theme="dark"] .stat:first-child .statlabel{color:#B1BFE5}
html[data-theme="dark"] .statvalue small{color:#ADB9E8}
html[data-theme="dark"] .staticon{background:#343F66;color:#ABB4FF}
html[data-theme="dark"] .staticon.orange{background:#4D3834;color:#FFAA89}
html[data-theme="dark"] .quick{background:#1D2737;border:1px solid #323E56;color:#E5ECFC;box-shadow:0 7px 20px #060C1C29}
html[data-theme="dark"] .quick .quick-ico{background:#343C67;color:#BDC4FF}
html[data-theme="dark"] .quick:nth-child(2) .quick-ico{background:#254E48;color:#A6E9D4}
html[data-theme="dark"] .quick:nth-child(3) .quick-ico{background:#503B38;color:#FFAA98}
html[data-theme="dark"] .quickhead span,html[data-theme="dark"] .sectionhead .mini{color:#96A4C0}
html[data-theme="dark"] .panel,html[data-theme="dark"] .largegoal{background:#1B2433;border:1px solid #303C51;box-shadow:0 13px 32px #03081640}
html[data-theme="dark"] .largegoal:nth-of-type(3){background:#272F4E}
html[data-theme="dark"] .largegoal .eyebrow{color:#A1ADD0}
html[data-theme="dark"] .goalvalue{color:#F1F5FF}
html[data-theme="dark"] .goalvalue .muted{color:#A5B5D0!important}
html[data-theme="dark"] .goalline{color:#9DAAC1}
html[data-theme="dark"] .pill{background:#31395E;color:#C0C8FF}
html[data-theme="dark"] .progress{background:#313D53}
html[data-theme="dark"] .trendchart{background:repeating-linear-gradient(to top,#313B50 0 1px,transparent 1px 42px)}
html[data-theme="dark"] .bar{background:linear-gradient(#A7B0FF,#6E7EE3)}
html[data-theme="dark"] .chartnum{color:#C1CEF1}
html[data-theme="dark"] .chartcol span:last-child{color:#A1AEC4}
html[data-theme="dark"] .chartfoot{border-color:#303C53;color:#A0ADC6}
html[data-theme="dark"] .chartfoot strong{color:#ADBAFF!important}
html[data-theme="dark"] .workdate{color:#AAB8E5}
html[data-theme="dark"] .filter{background:#222D3D;border:1px solid #3A475D;color:#B4C1D8}
html[data-theme="dark"] .filter.active{background:#A1A7FF;color:#151D2E;border-color:#A1A7FF}
html[data-theme="dark"] .activity{border-color:#2F3B50}
html[data-theme="dark"] .acttitle,html[data-theme="dark"] .acttime{color:#EFF4FF}
html[data-theme="dark"] .actmeta{color:#B2BFD4}
html[data-theme="dark"] .acticon{background:#374057;color:#C7CFFF}
html[data-theme="dark"] .acticon.corda{background:#3A3C5D;color:#C4C5FF}
html[data-theme="dark"] .acticon.bicicleta{background:#2B5046;color:#A8E1CA}
html[data-theme="dark"] .acticon.descanso{background:#463B55;color:#D5BCEB}
html[data-theme="dark"] .sourcetag{background:#353E6C;color:#B8C6FF}
html[data-theme="dark"] .sourcetag.manual{background:#364355;color:#C4D1E3}
html[data-theme="dark"] .empty .empticon{background:#343D63;color:#B9C6FF}
html[data-theme="dark"] .empty p{color:#9DAFC8}
html[data-theme="dark"] .primary{background:#8995F8;color:#10162A;box-shadow:0 9px 21px #04081844}
html[data-theme="dark"] .primary.secondary{background:#333F68;color:#CDD5FF}
html[data-theme="dark"] .hintbox{background:#282F49;color:#BBC7E3}
html[data-theme="dark"] .hintbox b{color:#DAE0FF}
html[data-theme="dark"] .stepcard{background:#243748;border-color:#314B60}
html[data-theme="dark"] .stepnum{color:#E8F3FF}
html[data-theme="dark"] .stepnum small{color:#ACC1D5}
html[data-theme="dark"] #stepsIcon{color:#9CBFD6!important}
html[data-theme="dark"] .daychip{background:#212B3B;border-color:#384358;color:#B5C0D4}
html[data-theme="dark"] .daychip.active{background:#3D4879;border-color:#727CD3;color:#EDF1FF}
html[data-theme="dark"] .daychip.active b{background:#A1A7FF;color:#131B30}
html[data-theme="dark"] .daychip b{color:#DFE7FC}
html[data-theme="dark"] .field label{color:#B2BFD6}
html[data-theme="dark"] .field input,html[data-theme="dark"] .field select,html[data-theme="dark"] .field textarea{background:#232C3E;border-color:#3A4760;color:#EEF2FE}
html[data-theme="dark"] .field input:disabled{opacity:.76;background:#202837;color:#9DAAC1}
html[data-theme="dark"] .field input:focus,html[data-theme="dark"] .field select:focus,html[data-theme="dark"] .field textarea:focus{border-color:#9FA8FF;box-shadow:0 0 0 3px #9FA8FF29}
html[data-theme="dark"] .settingsitem{border-color:#313E51}
html[data-theme="dark"] .settingsitem p,html[data-theme="dark"] .note{color:#A5B0C6}
html[data-theme="dark"] .privacy{color:#B1BED5}
html[data-theme="dark"] .privacy strong{color:#EFF3FF}
html[data-theme="dark"] .brandblock{background:linear-gradient(125deg,#303B60,#232D48);border:1px solid #455377}
html[data-theme="dark"] .bottomnav{background:#1D2637F0;border:1px solid #3C465E;box-shadow:0 14px 34px #0509129C}
html[data-theme="dark"] .navbtn{color:#ACB8CD}
html[data-theme="dark"] .navbtn.active{background:#343E68;color:#C6CCFF}
html[data-theme="dark"] .floating{box-shadow:0 13px 27px #BD4F4690}
html[data-theme="dark"] .iconbtn{background:#283448;border-color:#3B4860;color:#C9D4EE}
html[data-theme="dark"] .modal{background:#1A2230;color:#F2F5FF;border-top:1px solid #4B5770}
html[data-theme="dark"] .modalclose{background:#2D394A;color:#DAE2F4}
html[data-theme="dark"] .modaldetails{color:#B1BED4}
html[data-theme="dark"] .toast{background:#D7DDFF;color:#1A2339;box-shadow:0 12px 35px #0008}
html[data-theme="dark"] .duration-readable{color:#B9C6F0}
@media(min-width:700px){html[data-theme="dark"] body{background:#0C111A}}

/* More expressive, non-generic dialogs and microinteractions */
.page.active{animation:pacePageIn .4s cubic-bezier(.2,.85,.2,1)}
@keyframes pacePageIn{from{opacity:0;transform:translateY(13px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.quick,.navbtn,.filter,.daychip,.syncbutton,.floating,.iconbtn,.primary,.theme-option,.avatar{transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .24s,color .24s,border-color .24s,box-shadow .2s}
.quick:active,.navbtn:active,.filter:active,.daychip:active,.syncbutton:active,.floating:active,.iconbtn:active,.primary:active,.theme-option:active{transform:scale(.96)}
.floating:active{transform:rotate(-3deg) scale(.93)}
.dialog-open{overflow:hidden;touch-action:pan-y}
.modalshade{display:flex;visibility:hidden;opacity:0;pointer-events:none;backdrop-filter:blur(0);transition:opacity .3s ease,visibility .3s ease,backdrop-filter .3s ease;overscroll-behavior:contain}
.modalshade.open{visibility:visible;opacity:1;pointer-events:auto;backdrop-filter:blur(10px)}
.modal{transform:translateY(110%) scale(.98);opacity:.86;transition:transform .42s cubic-bezier(.2,.85,.22,1),opacity .28s ease;overscroll-behavior:contain;position:relative;box-shadow:0 -14px 56px #00000048}
.modalshade.open .modal{transform:translateY(0) scale(1);opacity:1}
.sheet-grip{height:5px;width:43px;background:#ABB3C366;border-radius:99px;margin:-10px auto 17px}
.modaltop h2{font-size:clamp(20px,6vw,25px);line-height:1.15;max-width:calc(100% - 54px)}
.modaltop{gap:15px}
.modalfoot .primary{min-height:49px;font-size:13px}
.duration-readable{font-size:10px;color:#6572B3;font-weight:750;min-height:13px;margin-top:-3px}
.herovalue{font-size:clamp(34px,12.5vw,84px);letter-spacing:-3.4px;line-height:1;max-width:100%;white-space:normal;text-wrap:balance}
.herounit{font-size:.22em;letter-spacing:0}
.stat:first-child .statvalue{font-size:clamp(27px,8vw,42px);letter-spacing:-1.8px;line-height:1.1;overflow-wrap:anywhere}
.goalvalue{font-size:clamp(21px,6.2vw,32px);letter-spacing:-1px;overflow-wrap:anywhere;line-height:1.25}
.acttime{white-space:normal;max-width:95px;text-align:right;line-height:1.15}
.chartnum{font-size:clamp(8px,2.4vw,10px);white-space:normal;overflow-wrap:anywhere;text-align:center;line-height:1.1;min-height:20px;letter-spacing:-.2px}
.chartcol{gap:3px}

/* Theme selector is its own composed surface, rather than a plain setting row. */
.appearance-card{background:linear-gradient(135deg,#F5F6FF,#EEF2F7);border:1px solid #E4E8F5;border-radius:23px;padding:17px;margin:9px 0 20px;box-shadow:var(--shadow)}
.appearance-card__top{display:flex;align-items:center;gap:11px}
.appearance-emblem{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;background:#DEE4FA;color:#5365B9;border-radius:14px}
.appearance-card__top strong{font-size:14px;letter-spacing:-.15px}
.appearance-card__top p{font-size:11px;line-height:1.45;color:#7F8A9E;margin:4px 0 0}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:17px}
.theme-option{background:#FFFFFFAD;color:#26334F;border:1px solid #E3E8F5;border-radius:16px;min-height:130px;padding:10px 7px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;box-shadow:0 3px 9px #101F3412}
.theme-option.selected{border:2px solid #6D7DEB;background:#FFFFFF;box-shadow:0 0 0 3px #8F9FFF20;padding:9px 6px}
.theme-option strong{font-size:11px}.theme-option small{font-size:9px;color:#8290A8;white-space:nowrap}
.theme-preview{height:59px;width:100%;max-width:100px;display:flex;flex-direction:column;gap:5px;align-items:flex-start;justify-content:end;padding:10px;border-radius:10px;overflow:hidden}
.theme-preview span{height:6px;border-radius:20px;display:block;width:78%;background:#8190CA}
.theme-preview span:nth-child(2){width:53%}.theme-preview span:nth-child(3){width:92%;height:12px;border-radius:5px}
.theme-preview.night{background:#1D263B}.theme-preview.night span{background:#7885E9}
.theme-preview.day{background:#EDEEF4}.theme-preview.day span{background:#B5BCDE}
.theme-preview.auto{background:linear-gradient(110deg,#1D263B 0 50%,#EDEEF4 50%)}
.theme-preview.auto span{background:linear-gradient(90deg,#7885E9 0 53%,#B5BCDE 53%)}
html[data-theme="dark"] .appearance-card{background:linear-gradient(145deg,#27324B,#1D293A);border:1px solid #3C4963}
html[data-theme="dark"] .appearance-emblem{background:#3C456A;color:#C1CBFF}
html[data-theme="dark"] .appearance-card__top p{color:#B1BED6}
html[data-theme="dark"] .theme-option{background:#222F42;color:#E2EAFB;border-color:#46536C}
html[data-theme="dark"] .theme-option.selected{background:#333F59;border-color:#B1B7FF;box-shadow:0 0 0 3px #A6A9F523}
html[data-theme="dark"] .theme-option small{color:#ABB9D0}

/* Confirmation windows use brand styling rather than browser-native popups. */
.confirmshade{position:fixed;inset:0;display:flex;z-index:90;visibility:hidden;opacity:0;pointer-events:none;align-items:center;justify-content:center;padding:24px;background:#0F1627B0;backdrop-filter:blur(0);transition:opacity .24s ease,visibility .24s ease,backdrop-filter .24s ease}
.confirmshade.open{visibility:visible;opacity:1;pointer-events:auto;backdrop-filter:blur(9px)}
.confirm-card{width:100%;max-width:380px;background:var(--paper);border:1px solid var(--card-border);color:var(--ink);box-shadow:0 28px 65px #0006;padding:25px 23px 22px;border-radius:26px;transform:translateY(16px) scale(.95);transition:transform .35s cubic-bezier(.2,.85,.18,1)}
.confirmshade.open .confirm-card{transform:translateY(0) scale(1)}
.confirm-ico{height:49px;width:49px;display:grid;place-items:center;border-radius:15px;background:#E5E9FF;color:#6371D7;margin-bottom:17px}
.confirm-ico svg{height:24px;width:24px}
.confirm-card h2{margin:0;font-size:21px;letter-spacing:-.6px}
.confirm-card p{font-size:12px;line-height:1.7;color:var(--text-soft);margin:9px 0 22px}
.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.confirm-actions button{border:0;border-radius:13px;padding:13px 8px;font-weight:800;font-size:12px;min-height:45px}
.confirm-cancel{background:#EDF0F8;color:#58667C}.confirm-accept{background:#283552;color:white}.confirm-accept.destructive{background:#DA5E5A;color:white}
html[data-theme="dark"] .confirm-ico{background:#39476A;color:#BDCAFF}
html[data-theme="dark"] .confirm-cancel{background:#333E53;color:#E2E8FC}
html[data-theme="dark"] .confirm-accept{background:#939BF5;color:#192036}
html[data-theme="dark"] .confirm-accept.destructive{background:#E37C6F;color:#201514}
@media(min-width:700px){.modal{transform:translateY(24px) scale(.93)}.modalshade.open .modal{transform:translateY(0) scale(1)}}
@media(max-width:355px){.theme-options{gap:5px}.theme-option{min-height:119px;padding:9px 3px}.theme-option strong{font-size:10px}.theme-option small{font-size:8px}.modal{padding-inline:17px}.herovalue{font-size:clamp(31px,10.5vw,60px)}}
@media(prefers-reduced-motion:reduce){.modalshade,.modal,.confirmshade,.confirm-card,.page.active{transition:none!important;animation:none!important;filter:none!important}}

/* NexTreino 3.3: marca esportiva exclusiva, legível em fundos claro e escuro. */
.brandmark{overflow:hidden;border-radius:12px;padding:0;background:#0B1424!important;box-shadow:0 5px 15px rgba(0,0,0,.15)!important}
.brandmark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:12px}

/* v3.4: espaço seguro para relógio/câmera e barra de navegação do Android.
   A WebView Android também recebe recuo nativo de WindowInsets. */
html { scroll-padding-top:calc(20px + env(safe-area-inset-top)); scroll-padding-bottom:calc(160px + env(safe-area-inset-bottom)); }
.app { padding-bottom:calc(205px + env(safe-area-inset-bottom)); }
.topline { padding-top:calc(26px + env(safe-area-inset-top)); padding-bottom:27px; }
.bottomnav { bottom:calc(20px + env(safe-area-inset-bottom)); }
.floating { bottom:calc(115px + env(safe-area-inset-bottom)); }
.toast { bottom:calc(128px + env(safe-area-inset-bottom)); }
.modal { max-height:calc(94dvh - env(safe-area-inset-top)); padding-bottom:calc(34px + env(safe-area-inset-bottom)); }
html[data-theme="dark"] body { background:#10141E; }
@media (max-width:355px) { .topline {padding-top:calc(23px + env(safe-area-inset-top));} }

/* NexTreino PACE 3.5 — ajuste fino na barra inferior após teste real no Samsung.
   O Android já aplica os Insets nas bordas do WebView. Este ajuste é apenas CSS:
   aproxima o dock da navegação do Android sem cobrir os botões do sistema. */
@media (max-width: 699px) {
  .bottomnav { bottom: calc(4px + env(safe-area-inset-bottom, 0px)); }
  .floating { bottom: calc(97px + env(safe-area-inset-bottom, 0px)); }
  .toast { bottom: calc(101px + env(safe-area-inset-bottom, 0px)); }
  .app { padding-bottom: calc(175px + env(safe-area-inset-bottom, 0px)); }
  html { scroll-padding-bottom: calc(130px + env(safe-area-inset-bottom, 0px)); }
}


/* PACE 3.6 — engenharia visual completa; dock fixo, tipografia e controles próprios. */
:root{--pace-lavender:#9CA6FF;--pace-coral:#F27C67;--pace-forest:#70C5B1;--pace-line:#E1E5EE}
html[data-theme="dark"]{--bg:#0D121C;--paper:#192333;--ink:#EDF2FE;--muted:#ADBBD2;--line:#2C394F;--card-border:#34445B;--pace-line:#324158}
html[data-theme="light"]{--bg:#F5F6F9;--paper:#fff;--ink:#1E2C40;--muted:#717E91;--line:#E0E5ED;--card-border:#DDE4F0}
body{background:var(--bg)}
.app{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px));}
html{scroll-padding-bottom:110px}
.topline{padding-top:calc(19px + env(safe-area-inset-top));padding-bottom:24px;margin-bottom:17px}
.brandname{letter-spacing:-.7px}
.masthead{margin-top:12px}
.welcome{font-size:clamp(28px,7.2vw,37px);letter-spacing:-1.45px;line-height:1.12;margin:10px 0 8px;font-weight:830;text-wrap:balance}
.intro{font-size:12px;line-height:1.6;margin-bottom:21px}
.eyebrow{font-size:9px;letter-spacing:1.55px}
.hero{border-radius:25px;min-height:266px;padding:22px 21px 18px;box-shadow:0 14px 29px #00000016}
.heroinside{padding:27px 0 23px;gap:6px}
.herovalue{font-size:clamp(34px,12.5vw,67px);letter-spacing:-2.4px}
.ring{width:103px;height:103px;flex-basis:103px}
.ringnum{font-size:25px}.ring:before{inset:10px}
.herofoot strong{font-size:13px}
.syncbox{border-radius:18px;margin:15px 0 23px;padding:13px 13px}
.stats{gap:9px;margin-bottom:25px}.stat{border-radius:17px}.stat:first-child{padding:18px 14px}
.stat:first-child .statvalue{font-size:clamp(25px,7vw,38px)}
.sectionhead{margin-top:26px}.sectionhead h2{font-size:19px}
.panel{border-radius:19px}
/* Dock: strictly attached to viewport bottom. WebView already reserves the system bar. */
@media(max-width:699px){
  .bottomnav{position:fixed;bottom:0!important;left:0!important;right:0;width:100%!important;max-width:none;transform:none!important;display:grid;grid-template-columns:1fr 1fr 66px 1fr 1fr;align-items:center;min-height:69px;padding:7px max(10px,env(safe-area-inset-left,0px)) 5px max(10px,env(safe-area-inset-right,0px));border-radius:21px 21px 0 0;border-left:0;border-right:0;border-bottom:0;box-shadow:0 -9px 35px #0208163B;gap:2px;overflow:visible}
  .navbtn{height:57px;min-height:57px;border-radius:13px;gap:5px;font-size:10px}
  .navbtn svg{height:21px;width:21px}
  .floating{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;margin:0 auto;width:52px;height:52px;min-width:52px;border-radius:17px;box-shadow:0 6px 15px #F2705747;z-index:1;align-self:center}
  .floating svg{width:28px;height:28px}
  .toast{bottom:79px!important}
  .app{padding-bottom:110px!important}
}
html[data-theme="dark"] .bottomnav{background:#192436;border-top:1px solid #354357;box-shadow:0 -7px 28px #03091275}
html[data-theme="dark"] .navbtn.active{color:#C6D0FF;background:#364375}
html[data-theme="light"] .navbtn.active{background:#E4E8FF;color:#5969CB}
html[data-theme="dark"] .floating{background:#F27B66;color:#111A28}
/* History: summary strip, filter tabs, individual day surfaces */
.history-overview{display:grid;grid-template-columns:1fr 1.2fr 1fr;margin:8px 0 24px;padding:17px 13px;border-radius:20px;background:linear-gradient(122deg,#263557,#344573);color:#fff;border:1px solid #7B90D032;box-shadow:0 13px 30px #070F2119}
.hist-total{padding:1px 10px;min-width:0;display:flex;flex-direction:column;gap:9px}.hist-total+.hist-total{border-left:1px solid #ffffff2c}
.hist-total span{font-size:9px;color:#BFC7E4;letter-spacing:1.1px;font-weight:800;white-space:nowrap}
.hist-total strong{font-size:clamp(17px,4.8vw,26px);letter-spacing:-.7px;overflow-wrap:anywhere;font-weight:840;font-variant-numeric:tabular-nums}
.filterhead{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:800;margin:4px 0 12px;color:var(--ink)}
.filterhead span:last-child{font-size:10px;color:var(--muted);font-weight:650}
.filterrow{margin-inline:-21px;padding:0 21px 15px;gap:8px;scroll-snap-type:x proximity}
.filter{padding:11px 16px;font-size:12px;font-weight:700;border-radius:13px;scroll-snap-align:start}
html[data-theme="dark"] .filter{background:#1C283B;border:1px solid #35435C;color:#B5C4DD}
html[data-theme="dark"] .filter.active{background:#A7AEFF;border-color:#A7AEFF;color:#101A2D}
.history-timeline{display:flex;flex-direction:column;gap:18px}
.histday{min-width:0}
.histdate{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.histdate-mark{display:grid;place-items:center;background:#DADEF9;border-radius:13px;width:43px;height:43px;color:#4054AD;font-weight:850;font-size:19px;font-variant-numeric:tabular-nums}
.histdate-caption{display:flex;flex-direction:column;gap:2px;min-width:0}.histdate-caption strong{text-transform:capitalize;font-weight:780;font-size:12px;color:var(--ink)}
.histdate-caption small{font-size:10px;color:var(--muted)}.histdate-line{height:1px;background:var(--line);flex:1}
html[data-theme="dark"] .histdate-mark{color:#C6CDFF;background:#333E62}
.histday-body{border-radius:20px;border:1px solid var(--card-border);padding:3px 14px;background:var(--paper);box-shadow:0 8px 25px #060C2210}
.activity{gap:11px;padding:18px 0;align-items:flex-start;border-bottom:1px solid var(--line)}
.acticon{flex-basis:40px;width:40px;height:40px;border-radius:13px;margin-top:2px}
.acttitle{font-size:13px;line-height:1.35;font-weight:800;letter-spacing:-.25px}
.actmeta{font-size:10.5px;line-height:1.58;margin-top:6px;color:var(--muted);overflow-wrap:anywhere}
.actnotes{font-size:11px;color:var(--muted);margin:7px 0 0;line-height:1.5}
.actsource{margin-top:9px}.sourcetag{margin:0;border-radius:8px;padding:4px 7px;font-size:9px;line-height:1;font-weight:770;letter-spacing:.3px}
.actright{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:63px;max-width:95px}
.acttime{font-size:17px;line-height:1.25;color:var(--ink);font-weight:820;white-space:nowrap;text-align:right}
.actright .iconbtn{margin-top:0!important;border-radius:11px;min-width:37px;min-height:35px;padding:8px}
.duplicate-warning{font-size:10px;color:#E9AA79;margin-top:8px}
#todayList{padding:2px 15px}
#historyList{padding:0;box-shadow:none;background:none;border:0}
html[data-theme="dark"] .activity{border-color:#344159}
html[data-theme="dark"] .acttitle,html[data-theme="dark"] .acttime{color:#EEF3FF}
html[data-theme="dark"] .actmeta,html[data-theme="dark"] .actnotes{color:#A9B8CF}
/* Forms: no ugly native Android category popup. */
.sr-only-select{position:absolute!important;width:1px!important;height:1px!important;left:-9999px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.type-trigger{width:100%;padding:11px 12px;min-height:67px;display:flex;align-items:center;gap:12px;border-radius:15px;background:#F2F4F9;border:1px solid #DDE3ED;color:var(--ink);text-align:left}
.selected-activity-icon{width:43px;height:43px;flex:0 0 43px;border-radius:13px;display:grid;place-items:center;background:#E0E4FF;color:#5969CD}.selected-activity-icon svg{width:23px;height:23px}
.selected-activity-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.selected-activity-text strong{font-weight:800;font-size:13px}.selected-activity-text small{font-size:10px;color:var(--muted)}
.type-chevron{font-size:27px;font-weight:300;color:#7584A0;margin-right:5px;line-height:1}
html[data-theme="dark"] .type-trigger{background:#253247;border:1px solid #455571;color:#EAF0FD}
html[data-theme="dark"] .selected-activity-icon{background:#3A4979;color:#C3CEFF}
.type-picker-shade{position:fixed;inset:0;z-index:75;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;opacity:0;pointer-events:none;background:#070E1CB8;backdrop-filter:blur(0);transition:opacity .24s,visibility .24s,backdrop-filter .24s}
.type-picker-shade.open{visibility:visible;opacity:1;pointer-events:auto;backdrop-filter:blur(9px)}
.type-picker-panel{background:var(--paper);color:var(--ink);width:100%;max-width:620px;max-height:min(88dvh,800px);overflow-y:auto;overscroll-behavior:contain;padding:20px 19px 24px;border-radius:26px 26px 0 0;box-shadow:0 -15px 55px #0007;transform:translateY(105%);transition:transform .32s cubic-bezier(.2,.85,.25,1);border-top:1px solid var(--card-border)}
.type-picker-shade.open .type-picker-panel{transform:translateY(0)}
.picker-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}
.picker-top h2{font-size:23px;letter-spacing:-.75px;margin:7px 0 4px}.picker-top p{font-size:12px;color:var(--muted);margin:0}
.picker-kicker{font-size:10px;font-weight:800;letter-spacing:1.6px;color:var(--pace-lavender)}
.picker-close{border:0;width:40px;height:40px;min-width:40px;border-radius:13px;background:#E8ECF4;color:#344259;font-size:24px}
html[data-theme="dark"] .picker-close{background:#303E54;color:#DDE5F4}
.type-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.type-choice{min-width:0;position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;border:1px solid var(--card-border);border-radius:17px;background:#F7F8FC;padding:13px;min-height:126px;color:var(--ink)}
.choice-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#6979D3;background:#E5E9FF}.choice-icon svg{height:20px;width:20px}
.choice-caption{display:flex;flex-direction:column;gap:4px;min-width:0}.choice-caption strong{font-size:12px;line-height:1.25}.choice-caption small{font-size:10px;line-height:1.3;color:var(--muted)}
.choice-mark{position:absolute;right:11px;top:11px;display:none;color:#5B68CB}.choice-mark svg{width:16px;height:16px}
.type-choice.is-selected{border-color:#8994FF;box-shadow:inset 0 0 0 1px #8994FF;background:#E8EAFF}
.type-choice.is-selected .choice-mark{display:block}
html[data-theme="dark"] .type-choice{background:#222E43;border-color:#39475D;color:#EFF4FF}
html[data-theme="dark"] .type-choice.is-selected{background:#343F69;border-color:#A6AFFF}
html[data-theme="dark"] .choice-icon{background:#3C4875;color:#C6CCFF}
html[data-theme="dark"] .choice-mark{color:#E0E4FF}
/* Goal day selector behaves like a true compact segmented control */
.days-goal-choices{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:9px}
.days-goal-choices button{min-height:40px;border:1px solid var(--card-border);border-radius:10px;background:#F0F2F8;color:#6D7B92;font-size:13px;font-weight:800}
.days-goal-choices button.active{background:#7383DC;color:#fff;border-color:#7383DC;box-shadow:0 4px 11px #727FCA43}
html[data-theme="dark"] .days-goal-choices button{background:#253149;border-color:#40506A;color:#B2C1D8}
html[data-theme="dark"] .days-goal-choices button.active{background:#8794F0;border-color:#8794F0;color:#101A30}
.modal{padding:24px 20px calc(28px + env(safe-area-inset-bottom,0px));max-height:90dvh}
.modalfoot{position:sticky;bottom:0;background:var(--paper);padding-top:12px;padding-bottom:3px;margin-top:16px}
.modaldetails{font-size:12px;line-height:1.5}
.field label{font-size:11px;font-weight:780}
.field input,.field textarea{font-size:14px;min-height:46px;border-radius:12px}
.field textarea{min-height:78px}
html[data-theme="dark"] .modalfoot{background:#1A2230}
.settingsitem strong{font-size:13px}.settingsitem p{font-size:11px}
.appearance-card{border-radius:20px}
@media(min-width:700px){.bottomnav{bottom:20px}.floating{position:relative;bottom:auto;right:auto;transform:none;margin:auto;height:54px;width:54px}.bottomnav{grid-template-columns:repeat(5,1fr)}.bottomnav .navbtn{min-height:60px}}
@media(max-width:359px){.app{padding-inline:15px}.filterrow{margin-inline:-15px;padding-inline:15px}.bottomnav{grid-template-columns:1fr 1fr 56px 1fr 1fr}.navbtn{font-size:9px}.history-overview{padding:13px 7px}.hist-total{padding-inline:6px}.hist-total span{font-size:8px}.hist-total strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.type-picker-panel,.type-picker-shade{transition:none!important}}
