/* KI-100K UI v10 — Performance Dark */
:root{
  --v10-bg:#07131a;--v10-bg2:#0a1b23;--v10-card:#0d222b;--v10-card2:#102a34;
  --v10-line:#25414b;--v10-text:#f2f8f7;--v10-muted:#91a9b0;--v10-green:#38efaf;
  --v10-green2:#16c98d;--v10-blue:#4dc9ff;--v10-yellow:#ffcb57;--v10-red:#ff647c;
  --v10-shadow:0 14px 34px rgba(0,0,0,.28)
}
html,body{background:radial-gradient(circle at 50% -10%,#12313c 0,#07131a 42%,#050e13 100%) fixed!important;color:var(--v10-text)!important}
body{min-height:100vh}
#app{min-height:100vh}
.dashboard,.screen,.exact-home{max-width:560px!important;padding-left:14px!important;padding-right:14px!important;padding-bottom:112px!important}
.boot{color:var(--v10-text)!important;background:var(--v10-bg)!important}
.card,.hero,.item,.chart-card,.v9-card,.selected-training-card,.work-calendar-card{
  background:linear-gradient(155deg,rgba(16,42,52,.98),rgba(9,27,35,.98))!important;
  border-color:var(--v10-line)!important;box-shadow:var(--v10-shadow)!important;color:var(--v10-text)!important
}
.section-title h2,.chart-head b,.selected-training-head h3,.item .main,.detail-grid b,.v9-card-head h3,
.settings-exact h2,.settings-exact b{color:var(--v10-text)!important}
.tiny,.meta,.chart-head span,.caption,.v9-meta,.v9-note,.v9-empty,.selected-training-detail,.selected-training-purpose,
.item .meta,.detail-grid span,.setting .tiny{color:var(--v10-muted)!important}
.page-kicker,.eyebrow{color:var(--v10-green)!important}
.ghost,.today-btn,.text-btn,.secondary,.linkbtn{
  background:#102a34!important;color:#cfe5e8!important;border-color:#2a4954!important
}
.ghost:active,.today-btn:active{transform:scale(.98)}
input,textarea,select,.datepick,.search,.stats-datepick{
  background:#091b23!important;color:var(--v10-text)!important;border-color:#29454f!important
}
input[type=date]{color-scheme:dark}
.green{color:var(--v10-green)!important}.blue{color:var(--v10-blue)!important}
.badge,.train-pill,.sleep-badge,.v9-pill-ok{background:rgba(56,239,175,.12)!important;color:var(--v10-green)!important;border-color:rgba(56,239,175,.28)!important}
.v9-pill-mute{background:#17313b!important;color:#b4c8cd!important}.v9-pill-warn{background:#4a3818!important;color:#ffd571!important}

/* nav */
.bottom-nav{
  width:min(560px,calc(100% - 12px))!important;grid-template-columns:repeat(4,1fr)!important;
  background:rgba(5,16,22,.94)!important;border:1px solid #233a44!important;
  box-shadow:0 -10px 30px rgba(0,0,0,.42)!important;border-radius:22px 22px 8px 8px!important;
  backdrop-filter:blur(22px)!important;padding:5px!important
}
.bottom-nav button{color:#789098!important;min-height:56px!important;font-size:9px!important}
.bottom-nav button b{font-size:18px!important}
.bottom-nav button.active{background:rgba(56,239,175,.12)!important;color:var(--v10-green)!important}
.bottom-nav button.active b{filter:drop-shadow(0 0 8px rgba(56,239,175,.35))}

/* home */
.v10-home{max-width:560px;margin:auto;padding:0 14px 112px}
.v10-hero{
  margin:0 -14px 12px;padding:22px 18px 20px;min-height:245px;position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(3,14,20,.12),rgba(3,14,20,.92)),url('/alpine.svg') center/cover no-repeat;
  border-bottom:1px solid #233c46
}
.v10-brand{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:2}
.v10-brand-left{display:flex;align-items:center;gap:10px}.v10-logo{font-size:31px;color:var(--v10-green);filter:drop-shadow(13px 2px 0 #0c9070)}
.v10-brand b{font-size:21px;letter-spacing:.02em}.v10-brand small{display:block;color:#9db2b8;font-size:8px;letter-spacing:.22em;margin-top:4px}
.v10-date{position:relative;z-index:2;margin-top:38px;color:#d0dde0;font-size:14px;font-weight:800}
.v10-slogan{position:relative;z-index:2;font-size:34px;line-height:1.03;font-weight:950;margin-top:7px;letter-spacing:-.04em}
.v10-slogan span{color:var(--v10-green)}
.v10-hero-actions{position:absolute;top:20px;right:18px;display:flex;gap:8px}.v10-icon-btn{width:38px;height:38px;border-radius:13px;border:1px solid #2a4650;background:rgba(4,16,22,.65);color:#d8e5e7;font-size:16px}
.v10-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v10-card{background:linear-gradient(155deg,#102a34,#091c24);border:1px solid var(--v10-line);border-radius:20px;padding:15px;box-shadow:var(--v10-shadow)}
.v10-card h3{margin:0 0 10px;font-size:13px;color:#dce8ea}.v10-session{margin-top:-46px;position:relative;z-index:4;padding:16px 16px 14px}
.v10-session-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.v10-kicker{font-size:10px;color:var(--v10-green);font-weight:900;letter-spacing:.08em}
.v10-session-title{font-size:26px;font-weight:950;margin:7px 0 5px;letter-spacing:-.03em}.v10-session-sub{font-size:11px;color:var(--v10-muted);line-height:1.45}
.v10-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:13px}.v10-metric{background:#0a1c24;border:1px solid #213b45;border-radius:14px;padding:10px 7px;min-width:0}
.v10-metric span{display:block;color:#7f99a1;font-size:8px;margin-bottom:4px}.v10-metric b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v10-readiness{display:flex;align-items:center;gap:12px}.v10-ring{width:72px;height:72px;border-radius:50%;background:conic-gradient(var(--v10-green) var(--pct,0%),#18323c 0);display:grid;place-items:center;position:relative;flex:0 0 auto}
.v10-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:#0b2028}.v10-ring b{position:relative;font-size:19px}.v10-readiness-text b{display:block;font-size:16px}.v10-readiness-text span{display:block;color:var(--v10-muted);font-size:10px;margin-top:4px;line-height:1.35}
.v10-work-main{font-size:22px;font-weight:950;color:var(--v10-blue)}.v10-work-sub{font-size:10px;color:var(--v10-muted);margin-top:6px;line-height:1.45}
.v10-race{margin-top:10px;background:linear-gradient(120deg,#0d2a30,#16323b 52%,#0b2028);position:relative;overflow:hidden}.v10-race:after{content:"▲";position:absolute;right:-2px;bottom:-24px;font-size:108px;color:rgba(56,239,175,.07)}
.v10-race-row{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;position:relative;z-index:1}.v10-race-title{font-size:16px;font-weight:900}.v10-race-date{color:var(--v10-green);font-size:11px;margin-top:5px}.v10-race-d{font-size:32px;font-weight:950;color:var(--v10-green)}
.v10-week{margin-top:10px}.v10-week-head{display:flex;justify-content:space-between;align-items:center}.v10-week-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.v10-week-stats div{background:#091c24;border:1px solid #203b44;border-radius:14px;padding:10px}
.v10-week-stats span{display:block;color:#7f99a1;font-size:8px}.v10-week-stats b{display:block;margin-top:4px;font-size:15px}
.v10-bars{height:70px;display:flex;align-items:flex-end;gap:6px;margin-top:12px;border-bottom:1px solid #203842;padding-bottom:14px}.v10-bar{flex:1;position:relative;background:linear-gradient(180deg,var(--v10-green),#0d8f6a);border-radius:5px 5px 1px 1px;min-height:2px}
.v10-bar i{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);font-style:normal;font-size:8px;color:#6f8992}
.v10-next{margin-top:10px}.v10-next-row{display:flex;justify-content:space-between;gap:12px}.v10-next-title{font-weight:900}.v10-next-date{color:var(--v10-green);font-size:11px;margin-top:5px}.v10-next-hr{font-size:10px;color:#9eb2b8;margin-top:5px}

/* training header */
.v10-training-top{margin:0 0 12px}.v10-training-hero{background:linear-gradient(135deg,#0b2a30,#0f4139);border:1px solid #236053;border-radius:22px;padding:17px;box-shadow:var(--v10-shadow)}
.v10-training-date{display:flex;align-items:center;justify-content:space-between;gap:10px}.v10-training-date input{max-width:150px;height:38px;border-radius:11px;padding:6px 9px}
.v10-training-hero h1{margin:13px 0 5px;font-size:29px;letter-spacing:-.04em}.v10-training-phase{font-size:10px;color:#9bb4b5}
.v10-training-tabs{display:flex;gap:18px;border-bottom:1px solid #24444b;margin-top:16px}.v10-training-tabs span{padding:9px 1px 10px;color:#819aa1;font-size:11px}.v10-training-tabs .on{color:var(--v10-green);font-weight:900;border-bottom:2px solid var(--v10-green)}
.v10-plan-card{margin-top:10px}.v10-plan-card h3{font-size:13px;margin:0 0 8px}.v10-plan-text{color:#c9d8db;font-size:11px;line-height:1.6;white-space:pre-wrap}
.v10-segments{display:flex;flex-direction:column;gap:0;margin-top:10px}.v10-segment{display:grid;grid-template-columns:20px 1fr auto;gap:10px;padding:13px 0;border-top:1px solid #203b44}
.v10-segment:first-child{border-top:0}.v10-node{width:12px;height:12px;border:3px solid var(--v10-green);border-radius:50%;margin-top:3px}.v10-segment b{font-size:12px}.v10-segment small{display:block;color:#91a7ae;font-size:9px;margin-top:4px;line-height:1.5}.v10-segment strong{font-size:12px;color:#d8e5e7}
.v10-success{border-color:#1d7c5b!important;background:linear-gradient(150deg,#0b2d26,#0d242a)!important}.v10-success .v10-plan-text{color:#c7eadc}

/* calendar */
.v10-calendar-screen{max-width:560px;margin:auto;padding:14px 14px 112px}.v10-topbar{display:flex;align-items:center;justify-content:space-between;margin:4px 0 12px}.v10-topbar h1{font-size:21px;margin:0}
.v10-cal-nav{display:flex;gap:7px}.v10-cal-nav button{width:34px;height:34px;border-radius:11px;border:1px solid #27434d;background:#0e2530;color:#cfe0e3}
.v10-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;background:#0b2028;border:1px solid #24404a;border-radius:22px;padding:10px}
.v10-dow{font-size:9px;color:#6f8991;text-align:center;padding:5px 0}.v10-day{min-height:66px;border:1px solid transparent;background:#0a1b23;color:#d2dee1;border-radius:12px;padding:6px 3px;position:relative;text-align:left}
.v10-day.other{opacity:.35}.v10-day.on{border-color:var(--v10-green);box-shadow:0 0 0 1px rgba(56,239,175,.2);background:#0d2b2c}.v10-day-num{font-size:10px;font-weight:800}
.v10-shift{display:block;margin-top:5px;padding:3px 2px;border-radius:5px;text-align:center;font-size:7px;font-weight:900;background:#193944;color:#a9c6ce;white-space:nowrap;overflow:hidden}
.v10-shift.s1{background:#122f48;color:#65c5ff}.v10-shift.s2{background:#123d31;color:#63e1a9}.v10-shift.s3{background:#46331c;color:#ffc76d}.v10-shift.night{background:#31264b;color:#c7a8ff}.v10-shift.off{background:#3b2530;color:#ff9db2}
.v10-plan-dot{position:absolute;right:5px;bottom:5px;width:7px;height:7px;border-radius:50%;background:var(--v10-green)}.v10-plan-dot.quality{background:var(--v10-yellow);box-shadow:0 0 8px rgba(255,203,87,.45)}
.v10-cal-detail{margin-top:10px}.v10-cal-detail h2{margin:0 0 6px;font-size:20px}.v10-cal-detail p{margin:5px 0;color:#9bb0b6;font-size:10px;line-height:1.5}

/* inherited charts/record dark polish */
.stats-grid .card{background:#0d222b!important}.stats-grid .value{color:var(--v10-green)!important}
.chart-card{background:#0b2028!important}.mini-chart{border-bottom-color:#27424b!important}.bar.distance{background:linear-gradient(180deg,#42d8ff,#168eea)!important}.bar.ascent{background:linear-gradient(180deg,#4bf5b7,#0aa76f)!important}
.chart-picked{background:#0d2a28!important;border-color:#24594d!important;color:#d6e8e4!important}.chart-picked b{color:var(--v10-green)!important}
.v9-gate{background:linear-gradient(150deg,#0b2028,#07161d)!important;border:1px solid #2a4650!important;box-shadow:var(--v10-shadow)!important}.v9-checks{border-color:#29434c!important}
.v9-day{background:#0b2028!important;color:#d8e5e7!important;border-color:#27424b!important}.v9-day span{color:#819ba3!important}.v9-day.on{background:#0c6d50!important;border-color:#21c991!important}
.v9-card{background:#0b2028!important}.v9-chk select{background:#071820!important;color:#fff!important;border-color:#2a4650!important}
.v9-save{background:linear-gradient(90deg,#1fd89b,#3bf1b2)!important;color:#042018!important}
.record-detail,.sleep-detail{background:#091c24!important;border-color:#25414b!important}.item{background:#0c222b!important}.record-date,.sleep-date{color:#a8d8ea!important}
.work-day{background:#0a1c24!important;border-color:#243f48!important;color:#d6e2e5!important}.work-day.selected{background:#0c322d!important;border-color:#28c98f!important;box-shadow:0 0 0 2px rgba(40,201,143,.25)!important}
.work-label,.work-session,.work-hr,.work-session-metrics{color:#9fb3b8!important}.work-week{color:#7e969e!important}.shift-buttons button{border-color:#28454f!important}
.setting{border-bottom-color:#213942!important}.notice{background:#0b2424!important;border-color:#275b4d!important;color:#a9c8bf!important}
.selected-training-purpose{background:#0d2c29!important;color:#b9d9cf!important}.selected-training-detail{background:#091b23!important;color:#a9bcc1!important}
.masthead,.home-date-strip,.hero,.quick-row,.motivation-card{display:none!important}

@media(max-width:390px){
 .v10-slogan{font-size:31px}.v10-metrics{gap:5px}.v10-metric{padding:9px 5px}.v10-grid2{gap:8px}.v10-week-stats{gap:6px}
 .v10-day{min-height:62px}.bottom-nav button{font-size:8px!important}
}


/* v10 fixes — recovery reference-date + actual activity readability */
.v9-big{color:var(--v10-text)!important}
.v9-big small{color:var(--v10-muted)!important}
.v9-tiles div{
  background:#091c24!important;
  border:1px solid #203b44!important;
  color:var(--v10-text)!important
}
.v9-tiles span{color:var(--v10-muted)!important}
.v9-tiles b{color:var(--v10-text)!important;font-weight:850!important}
.v9-tr{color:var(--v10-text)!important;border-color:#29434c!important}
.v9-th{color:var(--v10-muted)!important}
.v9-spark text{fill:#b8cbd0!important}
.v9-axis{color:var(--v10-muted)!important}
.v9-chip{
  background:#102a34!important;
  border-color:#294954!important;
  color:#c8d8dc!important
}
.v9-chip.on{
  background:linear-gradient(135deg,#0ea874,#13c98d)!important;
  color:#fff!important;
  border-color:#22dea1!important
}


/* v10 selected actual workout metric cards: dark readable text on white */
.settings-exact .selected-training-metrics>div{
  background:#ffffff!important;
  border-color:#d9e0e4!important;
  color:#111820!important;
}
.settings-exact .selected-training-metrics span{
  color:#38434c!important;
  font-weight:750!important;
}
.settings-exact .selected-training-metrics b{
  color:#101418!important;
  font-weight:900!important;
}
