:root{--bg:#0b0d0b;--panel:#131611;--panel2:#1a1d18;--text:#f2f0e8;--muted:#90958a;--line:#34382f;--accent:#ed854b;--green:#8fc182;--red:#f18a79;--heading:'Barlow Condensed','Arial Narrow',sans-serif;--body:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:radial-gradient(circle at 10% 10%,#ed854b0d,transparent 27%),var(--bg);color:var(--text);font-family:var(--body)}button,input,textarea{font:inherit}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:#fff;color:#111;padding:10px}.skip-link:focus{top:16px}.portal-header{height:92px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff14}.brand{display:flex;flex-direction:column;color:#fff;font:800 39px/.78 var(--heading);text-decoration:none}.brand span{margin-top:7px;color:var(--accent);font:700 7px/1 var(--body);letter-spacing:2.3px}.header-actions{display:flex;align-items:center;gap:22px}.header-actions a,.header-actions button{border:0;background:none;color:#c8cbc2;font-size:8px;font-weight:800;letter-spacing:1.4px;text-decoration:none;cursor:pointer}.header-actions button{color:var(--accent)}main{min-height:calc(100svh - 92px)}.auth-layout{min-height:calc(100svh - 92px);display:grid;grid-template-columns:1.05fr .95fr}.auth-story{padding:9vh 8%;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(90deg,#080a09ec,#080a0994),url('/media/coach-portrait-07.jpg') center 18%/cover}.eyebrow,.section-number,.card-label{margin:0 0 17px;color:var(--accent);font-size:8px;font-weight:800;letter-spacing:1.8px}.auth-story h1,.dashboard h1{margin:0;font:700 clamp(70px,8vw,120px)/.84 var(--heading);letter-spacing:-.03em}.auth-story h1 em,.dashboard h1 em,.auth-card h2 em{color:var(--accent);font-style:normal}.auth-story>p:not(.eyebrow){max-width:500px;margin:28px 0;color:#b8bbb1;font-size:12px;line-height:1.8}.trust-list{display:flex;flex-wrap:wrap;gap:8px}.trust-list span{padding:9px 12px;border:1px solid #ffffff25;background:#0b0d0b70;font-size:7px;font-weight:800;letter-spacing:1px}.auth-card{width:min(560px,86%);margin:auto;padding:48px;background:var(--panel);border:1px solid var(--line);box-shadow:0 35px 100px #0008}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:40px;border-bottom:1px solid var(--line)}.auth-tabs button{padding:14px 8px;border:0;border-bottom:2px solid transparent;background:none;color:#71766c;font-size:8px;font-weight:800;letter-spacing:1.2px;cursor:pointer}.auth-tabs button.active{border-color:var(--accent);color:var(--text)}.auth-card h2{margin:0 0 30px;font:700 58px/.88 var(--heading)}.auth-form{display:grid;gap:18px}.auth-form label{display:grid;gap:8px;color:#c9cbc4;font-size:8px;font-weight:800;letter-spacing:1.2px}.auth-form input,.message-form textarea,.grant-form input,.grant-form select{width:100%;border:1px solid var(--line);outline:0;background:#0b0d0b;color:var(--text);padding:16px}.auth-form input:focus,.message-form textarea:focus,.grant-form input:focus,.grant-form select:focus{border-color:var(--accent)}.auth-form small{color:#73786e;font-size:8px;font-weight:500;letter-spacing:0}.primary-button{min-height:56px;margin-top:8px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--accent);background:var(--accent);color:#17130f;font-size:9px;font-weight:800;letter-spacing:1.3px;text-decoration:none;cursor:pointer}.primary-button:disabled{opacity:.5;cursor:wait}.primary-button b{font-size:22px}.form-status{min-height:20px;margin:16px 0 0;color:var(--red);font-size:10px;line-height:1.6}.form-status.success{color:var(--green)}.dashboard{width:min(1440px,90%);margin:auto;padding:70px 0 100px}.dashboard-top{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:52px}.dashboard h1{font-size:clamp(64px,7vw,104px)}.coach-link{padding:15px 18px;border:1px solid var(--accent);color:var(--accent);font-size:8px;font-weight:800;letter-spacing:1.2px;text-decoration:none}.dashboard-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:18px}.membership-card,.chat-card,.history-card{border:1px solid var(--line);background:var(--panel);box-shadow:0 28px 80px #0003}.membership-card{padding:34px;display:flex;flex-direction:column}.membership-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:43px}.membership-head span{font-size:8px;font-weight:800;letter-spacing:1.3px}.membership-head i{width:9px;height:9px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 5px #ffffff0b}.membership-card.active .membership-head span{color:var(--green)}.membership-card.active .membership-head i{background:var(--green)}.membership-card.expired .membership-head span{color:var(--red)}.membership-card.expired .membership-head i{background:var(--red)}.countdown{display:grid;grid-template-columns:auto auto auto auto auto auto;align-items:end;gap:8px;margin:4px 0 34px}.countdown strong{font:700 clamp(44px,5vw,72px)/.8 var(--heading)}.countdown span{padding-bottom:5px;color:var(--muted);font-size:7px;font-weight:800;letter-spacing:1px}.membership-card h2,.chat-card h2,.history-card h2{margin:0;font:700 42px/.9 var(--heading)}.membership-card>p:not(.card-label){color:var(--muted);font-size:10px;line-height:1.7}.membership-card .primary-button{margin-top:auto}.chat-card{min-height:590px;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.chat-head{padding:27px 30px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.chat-head .card-label{margin-bottom:8px}.online-dot{align-self:start;padding:8px 10px;border:1px solid #52634b;color:var(--green);font-size:7px;font-weight:800;letter-spacing:1px}.messages{min-height:340px;max-height:470px;padding:25px 28px;display:flex;flex-direction:column;gap:11px;overflow:auto}.message{max-width:78%;padding:13px 15px;border:1px solid var(--line);background:#0d0f0c}.message.member{align-self:flex-end;border-color:#8b563a;background:#2a1b13}.message p{margin:0;white-space:pre-wrap;font-size:10px;line-height:1.65}.message time{display:block;margin-top:7px;color:#6f746a;font-size:7px}.message-form{display:grid;grid-template-columns:1fr 54px;border-top:1px solid var(--line)}.message-form textarea{resize:none;border:0;min-height:70px}.message-form button{border:0;background:var(--accent);color:#15110e;font-size:26px;cursor:pointer}.chat-locked{margin:auto;padding:35px;text-align:center}.chat-locked strong{font:700 32px/1 var(--heading)}.chat-locked p{max-width:360px;color:var(--muted);font-size:10px;line-height:1.7}.chat-locked a{color:var(--accent);font-size:8px;font-weight:800;text-decoration:none}.history-card{margin-top:18px;padding:30px}.history-list{display:grid;gap:8px;margin-top:22px}.history-row{padding:15px 17px;display:grid;grid-template-columns:1fr auto auto;gap:22px;align-items:center;border:1px solid var(--line);background:#0d0f0c}.history-row strong{font-size:10px}.history-row span{color:var(--muted);font-size:8px}.history-row b{color:var(--green);font-size:8px;letter-spacing:1px}.history-row b.expired{color:#7d8178}@media(max-width:960px){.auth-layout{grid-template-columns:1fr}.auth-story{min-height:450px}.auth-card{margin:60px auto}.dashboard-grid{grid-template-columns:1fr}.membership-card{min-height:460px}}@media(max-width:620px){.portal-header{height:72px;padding:0 20px}.brand{font-size:30px}.header-actions a{display:none}main{min-height:calc(100svh - 72px)}.auth-layout{min-height:auto}.auth-story{min-height:340px;padding:55px 22px}.auth-story h1{font-size:60px}.auth-card{width:calc(100% - 32px);margin:28px auto;padding:26px 20px}.auth-card h2{font-size:48px}.dashboard{width:calc(100% - 32px);padding-top:38px}.dashboard-top{align-items:flex-start;gap:20px;flex-direction:column}.dashboard h1{font-size:59px}.membership-card{padding:24px}.countdown{gap:5px}.countdown strong{font-size:45px}.chat-head,.messages{padding-left:20px;padding-right:20px}.history-row{grid-template-columns:1fr}.history-row span,.history-row b{text-align:left}}
