:root{color-scheme:dark;--bg:#101110;--panel:#171916;--panel2:#1d1f1b;--line:#2c2f28;--ink:#f2f3eb;--muted:#a0a398;--lime:#dcff45;--lime-dim:#2a3318;--amber:#ffc276;--side:225px;--display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;--body:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 var(--body)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer}a{color:var(--lime)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--lime)}button:disabled{opacity:.5;cursor:default}.shell{min-height:100vh;display:grid;grid-template-columns:var(--side) minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;border-right:1px solid var(--line);background:#141512;z-index:5}.sidebar>div{height:100%;display:flex;flex-direction:column;padding:26px 16px 16px;overflow:auto}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 26px;color:var(--ink);text-decoration:none;font:800 37px/.9 var(--display);font-style:italic;letter-spacing:-1px}.brand em{color:var(--lime);font-style:inherit}.brand-symbol{background:var(--lime);color:#171914;border-radius:8px;width:33px;height:33px;display:grid;place-items:center;transform:skew(-7deg)}.brand-symbol svg{width:19px}.role-card{display:flex;align-items:center;gap:10px;background:#1e211b;border:1px solid #30342a;border-radius:9px;padding:9px;margin:0 0 24px}.role-card span:last-child{margin-left:auto;color:var(--muted)}.role-card strong,.role-card small{display:block}.role-card small{color:var(--muted);font-size:11px}.nav-label,.kicker{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.nav-label{padding:0 10px;margin:0 0 7px}.nav-group{margin-bottom:22px}.nav-button{position:relative;display:flex;gap:11px;align-items:center;width:100%;border:0;background:none;color:var(--muted);text-align:left;padding:9px 10px;border-radius:7px;margin:2px 0;font-weight:600}.nav-button:hover{background:#252720;color:var(--ink)}.nav-button.active{color:var(--lime);background:#282e1b}.nav-button.active:before{content:"";position:absolute;left:-16px;top:5px;bottom:5px;width:3px;background:var(--lime);border-radius:0 3px 3px 0}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:12px}.sidebar-foot .nav-button{color:var(--ink)}.avatar{display:inline-grid;place-items:center;width:35px;height:35px;flex:none;border-radius:50%;background:#38432a;color:#e0f5b2;font-weight:800;font-size:11px}.avatar.mauve{background:#493044;color:#ffd5ec}.avatar.blue{background:#293e4e;color:#c4e9ff}.avatar.sand{background:#453526;color:#ffdbab}.avatar.square{border-radius:8px}.svg-icon{width:18px;height:18px;flex:none;vertical-align:middle}.workspace{min-width:0}.topbar{height:66px;display:flex;gap:14px;align-items:center;padding:0 30px;border-bottom:1px solid var(--line);background:#111210}.topbar #breadcrumb{font-size:12px;color:var(--muted)}.topbar #breadcrumb b{color:var(--ink);margin-left:7px;font-weight:600}.topbar #top-actions{margin-left:auto;display:flex;align-items:center;gap:13px}.top-divider{height:26px;width:1px;background:var(--line)}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--ink)}.icon-button:hover{border-color:#737960}.mobile-menu{display:none}main{max-width:1590px;margin:auto;padding:26px 30px 48px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:23px}.page-heading .kicker{color:var(--lime);margin-bottom:3px}.page-heading h1{font:800 clamp(43px,5vw,66px)/.9 var(--display);letter-spacing:-.015em;text-transform:uppercase;margin:0}.page-heading p{color:var(--muted);margin:9px 0 0;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 13px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#21231e;text-decoration:none;font-weight:700;white-space:nowrap;min-height:37px}.btn:hover{border-color:#6d7556;background:#2c3025}.btn.primary{background:var(--lime);color:#151911;border-color:var(--lime)}.btn.primary:hover{background:#ecff9e}.btn.subtle{background:transparent}.btn.small{padding:5px 9px;min-height:30px;font-size:12px}.btn .svg-icon{width:16px;height:16px}.dashboard{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:18px;align-items:start}.stack{display:grid;gap:18px;min-width:0}.panel{border:1px solid var(--line);border-radius:11px;background:var(--panel);min-width:0;overflow:hidden}.panel-pad{padding:17px}.hero{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:246px;padding:21px 24px;isolation:isolate;overflow:hidden;border:1px solid #3c432b;border-radius:11px;background:#212718}.hero:before{content:"";z-index:-2;position:absolute;inset:0;background:url("assets/hero.jpg") center 52%/cover no-repeat}.hero:after{content:"";z-index:-1;position:absolute;inset:0;background:linear-gradient(90deg,#191d13 0%,#1a1f14e8 28%,#171b1160 65%,#12161005 100%)}.hero .kicker{color:var(--lime);display:flex;align-items:center;gap:7px}.hero h2{font:800 clamp(37px,4.5vw,61px)/.91 var(--display);text-transform:uppercase;letter-spacing:-.015em;margin:9px 0}.hero p{color:#c5c9bb;margin:1px 0 15px;max-width:290px;font-size:13px}.hero .btn{align-self:flex-start}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stat{padding:13px 15px}.stat-top{color:var(--muted);font-size:12px;display:flex;gap:6px;align-items:center}.stat-top .svg-icon{color:var(--lime);width:15px;height:15px}.stat strong{display:block;font:700 38px/.95 var(--display);margin:7px 0 4px}.stat small{color:var(--muted);font-size:11px}.stat small em{color:var(--lime);font-style:normal}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:12px}.panel-head h2,.panel-head h3{margin:0;font-size:15px;letter-spacing:-.025em}.panel-head p{margin:1px 0 0;color:var(--muted);font-size:12px}.panel-title{display:flex;gap:10px;align-items:center}.feature-icon{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid #454e28;border-radius:8px;background:var(--lime-dim);color:var(--lime);flex:none}.feature-icon.orange{background:#3c2d22;border-color:#503726;color:#ffbb79}.feature-icon.blue{background:#24313b;border-color:#354857;color:#a9daff}.text-button{display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:3px 0;color:var(--lime);font-size:12px;font-weight:700}.text-button:hover{text-decoration:underline}.text-button .svg-icon{width:14px;height:14px}.badge{display:inline-flex;gap:5px;align-items:center;padding:3px 7px;border-radius:6px;background:#292c23;color:#c7cdb5;font-size:10px;font-weight:800;white-space:nowrap}.badge.lime{background:#2a3618;color:#deff85}.badge.amber{background:#3a2c1d;color:#ffc680}.badge.gray{background:#262823;color:#b8bdb0}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}.coach-intro{border-top:1px solid var(--line);padding-top:13px;color:#d2d6c8;font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:11px 0}.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #373b31;border-radius:6px;background:#23251f;color:#d5d9cb;padding:5px 8px;font-size:11px}.chip:hover,.chip.active{color:var(--lime);border-color:#57633b}.composer{border:1px solid #373b32;border-radius:8px;background:#11130f;padding:9px}.composer textarea{width:100%;resize:vertical;min-height:52px;border:0;background:none;color:var(--ink);padding:0 2px;font-size:13px}.composer textarea:focus{outline:none}.composer:focus-within{border-color:#76824f}.composer-foot{display:flex;align-items:center;gap:6px}.composer-foot .icon-button{width:31px;height:31px;background:#20231b}.composer-foot .btn{margin-left:auto}.composer-foot .svg-icon{width:15px;height:15px}.chat-message{padding:9px 11px;border-radius:8px;background:#24291b;margin:8px 0;color:#e1e5d8;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message.user{background:#242622;color:var(--muted)}.chat{max-height:230px;overflow:auto}.attachment{margin:8px 0;color:var(--lime);font-size:11px;overflow-wrap:anywhere}.row{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--line);min-width:0}.row .row-copy{min-width:0;flex:1}.row strong,.row small{display:block;overflow-wrap:anywhere}.row small{color:var(--muted);margin-top:1px;font-size:11px}.row .avatar{width:32px;height:32px}.row-actions{display:flex;gap:7px;align-items:center}.row .tail{color:var(--muted);margin-left:auto}.roster-header,.roster-row{display:grid;grid-template-columns:minmax(125px,1.5fr) minmax(95px,1fr) minmax(82px,.8fr) 24px;gap:8px;align-items:center}.roster-header{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;padding:0 0 8px}.roster-row{border-top:1px solid var(--line);padding:9px 0;color:var(--muted);font-size:12px}.person{display:flex;gap:8px;align-items:center;color:var(--ink);min-width:0}.person strong{overflow-wrap:anywhere}.person .avatar{width:30px;height:30px}.action-line{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:14px}.item-card{padding:16px;display:flex;flex-direction:column;gap:10px}.item-card .panel-head{margin:0}.item-card h3{font-size:16px;margin:0}.item-card p{margin:0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.item-card .action-line{margin-top:auto}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.filters input,.filters select{flex:1;min-width:150px}.field{display:grid;gap:5px;margin:11px 0;font-size:12px;color:#d8ddcc}.field input,.field select,.field textarea,.filters input,.filters select{border:1px solid #3c4236;border-radius:7px;background:#10120f;color:var(--ink);padding:9px 10px;width:100%;min-width:0}.field textarea{min-height:70px;resize:vertical}.field small,.muted{color:var(--muted)}.field input[type=checkbox]{width:auto;justify-self:start}.split-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.section-gap{margin-top:18px}.empty{padding:17px;color:var(--muted)}.mobile-scrim{display:none}dialog{width:min(510px,calc(100vw - 26px));max-height:calc(100dvh - 28px);border:1px solid #474e37;border-radius:13px;padding:0;background:var(--panel);color:var(--ink);box-shadow:0 22px 100px #000a}dialog::backdrop{background:#000b}dialog form{padding:19px}dialog h2{font:700 34px/.95 var(--display);text-transform:uppercase;margin:0}dialog .panel-head{margin-bottom:10px}dialog .dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.form-error{color:#ffc085;min-height:1em;font-size:12px}#toast{position:fixed;right:18px;bottom:18px;z-index:15;max-width:calc(100% - 36px);padding:10px 15px;border:1px solid #596c33;background:#272f1b;color:#edffb3;border-radius:8px;display:none}#toast.visible{display:block}.log-photo{width:47px;height:40px;object-fit:cover;border-radius:5px}.points{color:var(--lime);font-weight:800}.danger{color:#ffbb9f}.program-row{display:grid;grid-template-columns:minmax(65px,.65fr) minmax(100px,2fr) minmax(64px,1fr);gap:7px;padding:7px 0;border-bottom:1px solid var(--line);font-size:12px}.program-row:last-child{border-bottom:0}.video-player{width:100%;aspect-ratio:16/9;border:0;border-radius:7px;background:#0d0f0b}.video-player iframe{height:100%;width:100%;border:0}.login-note{font-size:11px;color:var(--muted)}.top-role{font-size:12px}.toolbar-action{display:flex;gap:8px;flex-wrap:wrap}.detail{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1150px){:root{--side:191px}main{padding:22px}.topbar{padding-inline:22px}.dashboard{grid-template-columns:minmax(0,1.5fr) minmax(275px,1fr)}.sidebar>div{padding-inline:12px}.nav-button.active:before{left:-12px}.stat{padding:11px}.hero{padding-inline:18px}}
@media(max-width:930px){:root{--side:172px}.dashboard{grid-template-columns:minmax(0,1fr)}.stack.side-stack{grid-template-columns:repeat(auto-fit,minmax(min(285px,100%),1fr));align-items:start}.sidebar>div{padding-top:21px}}
@media(max-width:660px){.shell{display:block}.sidebar{display:none}.shell.menu-open .sidebar{display:block;position:fixed;left:0;top:0;width:231px;box-shadow:0 0 0 100vmax #0009}.mobile-menu{display:inline-grid}.topbar{height:55px;padding:0 13px;gap:8px}.topbar #top-actions{gap:6px}.topbar .avatar,.top-divider{display:none}.top-role{font-size:11px;padding:6px 8px;min-height:32px}.topbar .icon-button{width:32px;height:32px}.topbar #breadcrumb{font-size:11px}.crumb-root{display:none}.topbar #breadcrumb b{margin:0}.page-heading{margin-bottom:17px;align-items:flex-start}.page-heading h1{font-size:clamp(36px,9.2vw,51px)}.page-heading p{font-size:12px}.page-heading .btn{min-height:32px;padding:6px 8px;font-size:11px}.page-heading .btn .svg-icon{width:13px}.dashboard,.stack{gap:12px}main{padding:18px 13px 32px}.hero{min-height:218px;padding:16px}.hero h2{font-size:43px}.hero p{font-size:12px;max-width:190px}.stats{gap:6px}.stat{padding:8px}.stat-top{font-size:10px;gap:4px;line-height:1.2}.stat-top .svg-icon{width:13px}.stat strong{font-size:32px}.stat small{font-size:9px}.panel-pad{padding:13px}.roster-row,.roster-header{grid-template-columns:minmax(105px,1.2fr) minmax(77px,.8fr) minmax(67px,.7fr) 16px;gap:4px}.roster-row .badge{font-size:9px;padding:3px 4px}.roster-row{font-size:11px}.person{gap:5px}.person .avatar{width:24px;height:24px}.row-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,border-color .15s,color .15s}}
.preview-note{color:var(--muted);font-size:10px;margin:4px 0 0 10px}.row .btn{margin:4px 4px 0 0}.stack.side-stack .panel{height:auto}main:focus{outline:none}

.coaching-layout{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(310px,1.8fr) minmax(180px,.8fr);gap:15px;align-items:start}
.trainee-chat-layout{grid-template-columns:minmax(0,1fr) minmax(210px,.42fr);max-width:1100px}
.thread-list{padding:13px 8px}.thread-list h2,.conversation-head h2,.meal-rail h2{margin:0;font-size:15px;letter-spacing:-.02em}.thread-list h2{padding:3px 8px 10px}.thread-button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 6px;border:1px solid transparent;border-radius:8px;background:none;text-align:left;color:var(--ink)}.thread-button:hover,.thread-button.selected{border-color:#454e32;background:#272d1e}.thread-label{min-width:0}.thread-label strong,.thread-label small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-label small{color:var(--muted);font-size:11px}.mobile-threads{display:none}
.conversation-head{display:flex;gap:9px;align-items:center;padding:12px 15px;border-bottom:1px solid var(--line)}.conversation-head p{margin:0;color:var(--muted);font-size:11px}.conversation-head>.badge,.conversation-head>.btn{margin-left:auto}.coaching-timeline{min-height:320px;height:clamp(320px,52vh,545px);overflow:auto;overscroll-behavior:contain;padding:14px;background:#121410;scrollbar-color:#434a35 #121410}
.coaching-event{display:flex;gap:8px;align-items:flex-start;margin-bottom:14px}.coaching-event>.avatar,.coaching-event>.feature-icon{width:29px;height:29px;font-size:10px}.coaching-event>.feature-icon svg{width:15px;height:15px}.event-content{max-width:calc(100% - 40px);min-width:0}.event-meta{display:flex;gap:5px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:10px;margin:0 0 5px}.event-meta strong{color:var(--ink);font-size:11px}.event-bubble{padding:8px 10px;border:1px solid #33372b;border-radius:0 9px 9px 9px;background:#242720;overflow-wrap:anywhere}.event-bubble p{margin:0;white-space:pre-wrap;font-size:13px}.coaching-event.partner .event-bubble{background:#22291a;border-color:#38432a}.coaching-event.outgoing{flex-direction:row-reverse}.coaching-event.outgoing .event-meta{justify-content:flex-end}.coaching-event.outgoing .event-bubble{background:#2b351d;border-color:#45562e;border-radius:9px 0 9px 9px}
.coaching-photo{display:block;text-align:left;max-width:100%;width:215px;padding:0;border:0;border-radius:6px;overflow:hidden;color:var(--ink);background:transparent}.coaching-photo:hover strong{color:var(--lime)}.coaching-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}.coaching-photo strong,.coaching-photo small{display:block;overflow-wrap:anywhere}.coaching-photo span{display:block;padding-top:6px}.coaching-photo small{font-size:10px;color:var(--muted)}.meal-rail{padding:13px}.meal-gallery{display:grid;gap:10px}.coaching-photo.thumb{width:100%;border:1px solid var(--line);padding:5px}.coaching-photo.thumb strong{font-size:11px}.meal-rail .empty{padding:9px 0}.expanded-meal{width:100%;max-height:60vh;object-fit:contain;background:#101110;border-radius:8px}
.coaching-composer{padding:11px 14px 14px;border-top:1px solid var(--line)}.coaching-composer label{display:block;color:var(--muted);font-size:11px;margin:0 0 5px}.coaching-composer textarea{display:block;width:100%;min-height:48px;resize:vertical;border:1px solid #373b32;border-radius:7px;padding:8px;background:#11130f;color:var(--ink);margin:0 0 7px}
@media(max-width:1140px){.coaching-layout:not(.trainee-chat-layout){grid-template-columns:minmax(150px,.58fr) minmax(0,1.42fr)}.coaching-layout:not(.trainee-chat-layout) .meal-rail{grid-column:2}.coaching-layout:not(.trainee-chat-layout) .meal-gallery{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media(max-width:790px){.coaching-layout,.coaching-layout:not(.trainee-chat-layout){grid-template-columns:minmax(0,1fr);gap:10px}.coaching-layout:not(.trainee-chat-layout) .meal-rail{grid-column:auto}.thread-list{display:none}.mobile-threads{display:block}.mobile-threads .field{margin:0}.meal-gallery{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media(max-width:660px){.coaching-timeline{height:clamp(310px,48dvh,485px);min-height:0;padding:10px}.conversation-head,.coaching-composer{padding-inline:10px}.event-meta{gap:4px}.event-meta .badge{font-size:9px}}
.copilot-scope-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:var(--lime);margin-bottom:3px}
.composer .field{margin:5px 0 8px}.composer .field select{padding:5px 7px}
.plan-movement{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;padding:2px 0}
.program-change{background:var(--lime-dim);color:var(--ink);border-radius:6px;padding:8px 10px;font-size:12px}
