*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;min-height:100vh;margin:0}body{-webkit-text-size-adjust:100%;background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;overflow-x:hidden}img,svg,canvas{max-width:100%}@media (width<=700px){button,.ant-btn,.ant-picker,.ant-input,.ant-input-number,.ant-select-selector{min-height:42px}.ant-modal,.ant-drawer-content-wrapper{max-width:100vw}}.admin-layout{min-height:100vh}.admin-sider{border-right:1px solid #f0f0f0}.admin-brand{letter-spacing:.08em;white-space:nowrap;border-bottom:1px solid #f0f0f0;height:56px;padding:16px 20px;font-weight:600}.admin-brand span{color:#7aa81d}.admin-menu{height:calc(100vh - 56px);overflow-y:auto;border-inline-end:0!important}.admin-header{background:#fff;border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.admin-title{margin:0!important}.admin-content{background:#f3f5f4;min-width:0;padding:24px}@media (width<=991px){.admin-header{z-index:20;height:56px;padding:0 12px 0 6px;position:sticky;top:0}.admin-header .ant-btn{min-width:40px;min-height:40px}.admin-title{font-size:16px!important}.admin-content{padding:12px}.admin-mobile-drawer .admin-brand{height:64px;padding-top:20px}.admin-mobile-drawer .admin-menu{height:calc(100dvh - 64px);padding-bottom:max(20px, env(safe-area-inset-bottom))}}:root{--coach-ink:#101820;--coach-muted:#68717c;--coach-line:#e4e8ec;--coach-lime:#b7f34a;--coach-paper:#fbfcfa}.coach-dashboard{max-width:1180px;color:var(--coach-ink);margin:0 auto}.coach-hero{color:#fff;background:radial-gradient(circle at 78% 10%,#b7f34a29,#0000 28%),linear-gradient(135deg,#101820,#182832 68%,#21343a);border-radius:24px;justify-content:space-between;align-items:center;gap:40px;min-height:360px;padding:48px 54px;display:flex;overflow:hidden;box-shadow:0 24px 60px #1018202e}.coach-eyebrow{letter-spacing:.16em;color:#c8d1d6;font-size:12px;font-weight:700}.coach-live-dot{background:var(--coach-lime);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block;box-shadow:0 0 0 5px #b7f34a1f}.coach-hero h1{letter-spacing:-.04em;color:#fff!important;margin:24px 0 18px!important;font-size:48px!important;line-height:1.08!important}.coach-hero h1 em{color:var(--coach-lime);font-style:normal}.coach-hero p,.coach-hero-copy .ant-typography{max-width:480px;font-size:16px;color:#aebbc2!important}.coach-primary{margin-top:16px;font-weight:700;background:var(--coach-lime)!important;color:#101820!important;box-shadow:none!important;border:0!important}.coach-score{text-align:center;min-width:230px}.coach-score .ant-progress-text{color:#fff!important}.coach-score strong,.coach-score .ant-progress-text strong{font-size:44px;line-height:1;display:block;color:#fff!important}.coach-score small,.coach-score .ant-progress-text small{letter-spacing:.14em;margin-top:8px;font-size:10px;display:block;color:#91a0a8!important}.coach-permission{color:#cfdbdf;margin-top:22px;font-size:13px;font-weight:600}.coach-section{border:1px solid var(--coach-line);background:#fff;border-radius:20px;margin-top:24px;padding:30px}.coach-section-title{justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.coach-section-title span{color:#87919a;letter-spacing:.18em;font-size:10px;font-weight:800}.coach-section-title h3{margin:3px 0 0!important}.coach-section-title .ant-tag{color:#33401e;background:#eef2e8;border:0;border-radius:20px;padding:5px 12px}.coach-step-grid{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.coach-step{border:1px solid var(--coach-line);background:var(--coach-paper);text-align:left;cursor:pointer;min-height:145px;color:var(--coach-ink);border-radius:14px;padding:18px;transition:all .2s;position:relative}.coach-step:hover,.coach-step.is-active{border-color:#9cad79;transform:translateY(-3px);box-shadow:0 12px 26px #1e2b1e14}.coach-step.is-done{background:#f0f7e7;border-color:#d7e8bd}.coach-step-number{background:#e9edef;border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:25px;font-size:11px;font-weight:800;display:grid}.coach-step.is-done .coach-step-number{background:var(--coach-lime)}.coach-step strong,.coach-step small{display:block}.coach-step strong{font-size:15px}.coach-step small{color:var(--coach-muted);margin-top:5px;font-size:11px;line-height:1.5}.coach-step-arrow{color:#a0a8af;position:absolute;top:22px;right:16px}.coach-metrics{margin-top:8px}.coach-metrics .ant-card{border:1px solid var(--coach-line);box-shadow:none;border-radius:16px;position:relative;overflow:hidden}.coach-metrics span{color:var(--coach-muted);font-size:12px;display:block}.coach-metrics strong{letter-spacing:-.03em;margin-top:10px;font-size:29px;display:block}.coach-metrics small{color:#8a949b;margin-left:4px;font-size:12px}.coach-metrics i{background:#cbd2d7;border-radius:50%;width:7px;height:7px;position:absolute;top:18px;right:18px}.coach-metrics i.lime{background:var(--coach-lime)}.coach-metrics .anticon{color:#aab3b8;position:absolute;top:18px;right:18px}.coach-metrics .negative{color:#d14343}.challenge-section{margin-bottom:36px}.challenge-section .ant-progress{margin-bottom:22px}.checkin-grid{grid-template-columns:repeat(10,1fr);gap:9px;display:grid}.checkin-day{aspect-ratio:1;border:1px solid var(--coach-line);cursor:pointer;min-height:58px;font:inherit;color:inherit;background:#f7f8f7;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.checkin-day span{font-weight:800}.checkin-day small{color:#929ba1;margin-top:3px;font-size:9px}.checkin-day.is-done{background:var(--coach-lime);border-color:var(--coach-lime)}.checkin-day.is-today{outline:2px solid var(--coach-ink);outline-offset:2px;animation:2s infinite coachPulse}.challenge-phases{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;display:grid}.challenge-phases div{background:#f6f8f6;border-radius:12px;padding:18px}.challenge-phases b,.challenge-phases strong,.challenge-phases span{display:block}.challenge-phases b{color:#8a949b;letter-spacing:.12em;font-size:10px}.challenge-phases strong{margin:7px 0 4px}.challenge-phases span{letter-spacing:0;font-size:11px;line-height:1.5}@keyframes coachPulse{50%{box-shadow:0 0 0 5px #10182014}}@media (width<=900px){.coach-hero{padding:34px}.coach-hero h1{font-size:38px!important}.coach-step-grid{grid-template-columns:1fr 1fr}.checkin-grid{grid-template-columns:repeat(6,1fr)}}@media (width<=600px){.coach-hero{padding:28px 24px;display:block}.coach-score{margin:34px auto 0}.coach-section{padding:20px}.coach-section-title{display:block}.coach-step-grid{grid-template-columns:1fr}.coach-step{min-height:100px}.coach-step-number{margin-bottom:12px}.checkin-grid{grid-template-columns:repeat(5,1fr)}.challenge-phases{grid-template-columns:1fr}.coach-hero h1{font-size:34px!important}}.history-hero{border-radius:16px;margin-bottom:16px}.history-hero span{color:var(--coach-muted);font-size:12px;display:block}.history-hero strong{margin-top:6px;font-size:28px;display:block}.history-hero small{color:#8a949b;margin-left:4px;font-size:12px}.history-block{margin-top:16px}.history-block-head{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.history-block-head>span{background:var(--coach-lime);border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.history-detail .ant-card{border-radius:14px}.history-detail-actions{margin-bottom:16px}.journal-shell{width:100%;max-width:1120px}.journal-shell-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.journal-date-picker{flex:none}@media (width<=600px){.coach-dashboard{width:100%}.coach-hero{border-radius:18px;min-height:0;padding:24px 20px}.coach-hero h1{margin:18px 0 12px!important;font-size:30px!important}.coach-hero p,.coach-hero-copy .ant-typography{font-size:14px}.coach-primary{width:100%;min-height:44px}.coach-score{min-width:0;margin-top:28px}.coach-section{border-radius:16px;margin-top:14px;padding:16px}.coach-section-title{margin-bottom:16px}.coach-section-title .ant-typography{margin-top:6px;display:block}.coach-step-grid{gap:8px}.coach-step{align-items:center;gap:12px;min-height:88px;padding:14px 48px 14px 14px;display:flex}.coach-step-number{flex:0 0 32px;margin:0}.coach-step-arrow{top:50%;transform:translateY(-50%)}.coach-metrics .ant-card-body{padding:14px}.coach-metrics strong{white-space:nowrap;margin-top:6px;font-size:22px}.checkin-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.checkin-day{border-radius:10px;min-height:48px}.challenge-phases{gap:8px;margin-top:16px}.journal-shell-header{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.journal-shell-header h3{font-size:22px!important}.journal-date-picker{width:100%}.history-detail-actions{width:100%;margin-bottom:14px;display:flex}.history-detail-actions .ant-space-item:last-child{flex-basis:100%;order:-1}.history-detail-actions h3{font-size:20px!important;line-height:1.3!important}.history-hero .ant-card-body{padding:16px}.history-hero .ant-space{grid-template-columns:1fr 1fr;width:100%;display:grid;gap:16px!important}.history-hero .ant-space-item:last-child{grid-column:1/-1}.history-hero strong{font-size:23px}.history-block{margin-top:14px}.history-block-head>span{flex:0 0 32px;width:32px;height:32px}.history-block-head h4{font-size:17px!important}.history-detail .ant-card-body{padding:16px}.history-detail .ant-typography{overflow-wrap:anywhere}}.guided-card.ant-card{border:1px solid #e2e7e4;border-radius:18px;box-shadow:0 10px 30px #1828200a}.guided-card .ant-card-body{padding:28px}.guided-card .ant-form-item-label label{color:#1c2923;font-weight:650}.guided-card textarea.ant-input,.guided-card input.ant-input,.guided-card .ant-input-number,.guided-card .ant-select-selector{background:#fbfcfb!important;border-color:#dce2de!important;border-radius:10px!important}.guided-card textarea.ant-input:focus,.guided-card input.ant-input:focus{background:#fff!important;border-color:#91bd49!important;box-shadow:0 0 0 3px #9edb3821!important}.guided-card .ant-tabs-nav{margin-bottom:24px}.guided-card .ant-tabs-tab{padding:10px 16px!important}.guided-card .ant-tabs-tab-active{background:#f1f7e8;border-radius:10px}.form-progress{background:#f6f8f6;border-radius:12px;margin-bottom:22px;padding:14px 18px}.form-progress>div{justify-content:space-between;display:flex}.form-progress .ant-progress{margin-top:7px}.draft-hint{color:#7b8780;margin-left:14px;font-size:12px}.field-prompt{color:#78847d;gap:8px;margin:-12px 0 18px;font-size:12px;display:flex}.field-prompt .anticon{color:#9ccb47;margin-top:2px}.quick-tags{margin:-8px 0 18px}.quick-tags .ant-tag{cursor:pointer;background:#f4f6f4;border-color:#e1e6e2;border-radius:16px;padding:4px 10px}.risk-preview{color:#fff;background:#111d18;border-radius:12px;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;padding:16px;display:grid}.risk-preview span{color:#9aa9a1;font-size:11px;display:block}.risk-preview strong{color:#c1f269;margin-top:3px;font-size:22px;display:block}.discipline-checks{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.discipline-check{background:#f7f8f7;border-radius:12px;padding:14px}.discipline-check label{margin-bottom:8px;font-size:12px;font-weight:650;display:block}@media (width<=700px){.discipline-checks{grid-template-columns:1fr 1fr}.risk-preview{grid-template-columns:1fr}.guided-card.ant-card{border-radius:14px}.guided-card .ant-card-body{padding:16px}.guided-card .ant-tabs-nav{margin-bottom:18px}.guided-card .ant-tabs-nav-wrap{scrollbar-width:none;overflow-x:auto}.guided-card .ant-tabs-nav-wrap::-webkit-scrollbar{display:none}.guided-card .ant-tabs-tab{white-space:nowrap;padding:9px 11px!important}.guided-card .ant-space{flex-wrap:wrap;width:100%;display:flex}.guided-card .ant-space>.ant-space-item:first-child{flex:100%}.guided-card .ant-space>.ant-space-item:first-child>.ant-btn{width:100%}.draft-hint{text-align:center;width:100%;margin:0;display:block}.form-progress{margin-bottom:16px;padding:12px 14px}.discipline-checks{gap:8px}.discipline-check{min-width:0;padding:12px 10px}.discipline-check .ant-segmented-item-label{padding-inline:6px}.risk-preview{gap:8px;padding:14px}.risk-preview strong{font-size:19px}.quick-tags{flex-wrap:wrap;gap:6px;display:flex}.quick-tags .ant-tag{margin:0}.guided-card .ant-input-number[style*="width: 220px"]{width:100%!important}}
