/* Approved client dashboard: ivory paper, forest green and a mountain journey. */
.client-view { background:#faf9f5; color:#11191a; font-family:var(--ui-font); }
.client-layout { --ink:#102a23; --green:#255940; --muted:#647084; --line:#ecece6; grid-template-columns:154px minmax(0,1fr); max-width:1440px; margin:0 auto; }
:is(.client-layout,.client-record-view) h1,:is(.client-layout,.client-record-view) h2,:is(.client-layout,.client-record-view) h3 { color:#0c1417; font-family:var(--ui-font); font-weight:700; }
:is(.client-layout,.client-record-view) h2 { margin:0; }
:is(.client-layout,.client-record-view) button,:is(.client-layout,.client-record-view) .button { font-family:var(--ui-font); font-size:var(--ui-caption); border-radius:7px; }
:is(.client-layout,.client-record-view) button.primary,:is(.client-layout,.client-record-view) .button.primary { background:linear-gradient(100deg,#37694f,#24533f 70%,#32664e); border:1px solid #37634c; color:white; }
:is(.client-layout,.client-record-view) button.primary:hover,:is(.client-layout,.client-record-view) .button.primary:hover { background:#16432e; }
:is(.client-layout,.client-record-view) small,:is(.client-layout,.client-record-view) .muted { color:var(--muted); }
:is(.client-layout,.client-record-view) a { text-underline-offset:3px; }
.client-record-view { --ink:#102a23; --green:#255940; --muted:#647084; --line:#ecece6; color:#11191a; font:var(--ui-body)/1.5 var(--ui-font); min-width:0; }
.hi { width:24px; height:24px; flex:none; display:inline-block; vertical-align:middle; }
.reference-art { display:block; width:100%; height:100%; overflow:hidden; }
.client-main { padding:0 20px 0 1px; margin:0; max-width:none; }
.client-sidebar { background:linear-gradient(110deg,#fdfcf9,#faf9f5); padding:16px 10px 20px 17px; border-color:#e5e5df; height:760px; }
.put-logo { display:flex; flex-direction:column; align-items:flex-start; margin:0 0 23px 16px; color:#0d1615; text-decoration:none; width:max-content; }
.put-logo .logo-peaks { width:67px; height:32px; mix-blend-mode:multiply; }
.put-logo>span { font:bold 34px/.93 var(--ui-font); letter-spacing:-1px; }
.put-logo>small { font-size:var(--ui-caption); line-height:1.12; margin-top:7px; color:#14212d; }
.client-sidebar .nav { gap:8px; }
.client-sidebar .nav a { color:#4b5e70; font-size:var(--ui-caption); gap:14px; padding:9px 12px; min-height:38px; border-radius:6px; }
.client-sidebar .nav a.active { color:white; background:linear-gradient(110deg,#2a624a,#365f4b); }
.client-sidebar .nav .hi { width:21px; height:24px; }
.client-sidebar .nav a.active .hi { fill:#fffff033; }
.sidebar-message { color:#536277; margin:141px 10px 0 12px; font-size:var(--ui-caption); line-height:1.13; }
.quiet-peaks { mix-blend-mode:multiply; }
.sidebar-message .quiet-peaks { width:98px; height:47px; }
.sidebar-message p { margin:7px 0 0; }
.client-header { min-height:80px; display:flex; align-items:center; padding-left:20px; gap:15px; }
.greeting { flex:1; min-width:0; }
.greeting h1 { font-size:27px; line-height:1.08; letter-spacing:-.8px; margin:0 0 3px; }
.greeting p { color:#647084; font-size:var(--ui-caption); line-height:1.2; margin:0; }
.account-tools { display:flex; gap:13px; align-items:center; }
.notification-button { border:0!important; background:none!important; position:relative; padding:4px!important; color:#3d576a!important; }
.unread-dot { position:absolute; width:8px; height:8px; background:#ff9410; right:4px; top:3px; border:1px solid white; border-radius:50%; }
.account-photo { position:relative; }
.photo-trigger { position:relative; border:0!important; padding:0!important; background:none!important; }
.home-avatar { display:inline-flex; align-items:center; justify-content:center; width:49px; height:49px; border-radius:50%; object-fit:cover; flex:none; }
.avatar-empty { background:#e7eae3; color:#597061; border:1px solid #d7dfd3; }
.avatar-empty .hi { width:55%; height:55%; }
.camera-badge { position:absolute; bottom:-1px; right:-3px; width:19px; height:19px; display:grid; place-items:center; border-radius:50%; background:#fffefb; border:1px solid #cbd4c9; }
.camera-badge .hi { width:13px; height:13px; }
.add-photo-label { position:absolute; left:50%; top:100%; transform:translateX(-50%); white-space:nowrap; padding:0!important; border:0!important; background:none!important; font-size:var(--ui-caption)!important; text-decoration:underline; }
.account-menu { border:0!important; background:none!important; padding:0!important; text-align:left; gap:12px!important; color:#121b24!important; }
.account-menu strong { font-weight:400; font-size:var(--ui-caption); }
.account-menu small { display:block; font-size:var(--ui-caption); margin-top:2px; white-space:nowrap; }
.account-menu .hi { width:17px; color:#435c6a; }
.header-clock { padding:17px 10px 17px 21px; border-left:1px solid #ecece5; min-width:157px; text-align:center; }
.header-clock strong { display:block; font-size:var(--ui-caption); white-space:nowrap; }
.header-clock small { display:block; font-size:var(--ui-caption); }
.home-dashboard { width:100%; }
.home-goals { display:grid; grid-template-columns:1fr 1.08fr; gap:6px; margin:0 0 7px; }
.month-goal,.personal-prize { display:flex; position:relative; min-width:0; min-height:141px; padding:15px 17px; gap:23px; background:linear-gradient(120deg,#f3f6f0,#f9faf7); border:7px solid #fffefc; border-radius:13px; box-shadow:0 2px 15px #223a2a04; }
.personal-prize { background:linear-gradient(110deg,#faf7ef,#fbfaf7); gap:17px; padding:7px 8px 7px 11px; align-items:flex-start; }
.goal-symbol,.prize-symbol { display:grid; place-items:center; flex:none; width:51px; height:51px; border-radius:50%; }
.goal-symbol { background:radial-gradient(at 30% 20%,#1d5746,#0c3026); color:white; margin-top:0; }
.goal-symbol .hi { width:36px; height:36px; stroke-width:1.7; }
.prize-symbol { width:65px; height:65px; color:white; background:conic-gradient(from 20deg,#d88d28,#733d06,#b57817,#9c520c,#e8b45b,#d88d28); border:5px solid #ffd790; box-shadow:inset 0 0 0 2px #fff1cf; }
.prize-symbol .hi { width:39px; height:39px; }
.goal-copy { position:relative; z-index:1; min-width:0; flex:1; }
.eyebrow { display:block; font-size:var(--ui-caption); font-weight:700; color:#0b1215; margin:0 0 2px; }
.home-goals h2 { font-size:25px; letter-spacing:-.45px; line-height:1.09; margin:2px 0 6px; overflow-wrap:anywhere; }
.goal-caption { font-size:var(--ui-caption); }
.goal-copy p { margin:2px 0; line-height:1.35; font-size:var(--ui-caption); }
.goal-peaks { position:absolute; width:81px; height:44px; right:13px; top:12px; opacity:.6; mix-blend-mode:multiply; z-index:0; }
.goal-copy h2 { padding-right:0; }
.month-goal:has([data-action=goal]) h2 { font-size:23px; }
.prize-copy { min-width:0; flex:1; padding-top:6px; }
.prize-copy p { font-size:var(--ui-caption); line-height:1.2; margin:5px 0 0; color:#647084; }
.prize-picture { width:116px; height:117px; overflow:hidden; border-radius:9px; flex:none; background-size:cover; background-position:center; }
.prize-details { position:absolute; inset:0; width:100%; height:100%; margin:0; padding:0!important; color:transparent!important; background:transparent!important; font-size:0!important; text-decoration:none; z-index:3; border:0; border-radius:10px; }
.text-button { padding:0; border:0; background:none; text-decoration:underline; color:#215b5d; }
.text-button:hover { background:none; color:#123d28; }
.mountain-journey { position:relative; width:100%; aspect-ratio:848/373; border-radius:10px 10px 8px 8px; background-image:var(--journey-image); background-size:100% 100%; overflow:hidden; isolation:isolate; }
.journey-heading { position:absolute; top:4.3%; left:3.25%; z-index:2; }
.journey-heading h2 { font-size:36px; line-height:1.06; margin:0 0 2px; letter-spacing:-.6px; color:#030d10; }
.journey-heading p { font-size:var(--ui-body); line-height:1.25; margin:0; color:#051c22; }
.journey-heading { padding:8px 12px; margin:-8px -12px; border-radius:10px; background:rgba(255,253,245,.92); max-width:48%; }
.mountain-journey:not(.theme-mountains) .journey-heading { background:rgba(8,35,30,.92); }
.mountain-journey:not(.theme-mountains) .journey-heading h2,
.mountain-journey:not(.theme-mountains) .journey-heading p { color:#fffdf5; }
.month-goal { position:relative; }
.month-goal .edit-goal { display:block; margin-top:8px; }
.prize-picture { object-fit:cover; }
.goal-profile { max-width:850px; }
.medicine-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:22px; align-items:start; }
.medicine-columns > section { min-width:0; }
.medicine-columns h2 { margin-bottom:5px; }
.medicine-card { margin-top:16px; }
.medicine-card h3 { margin:0; overflow-wrap:anywhere; }
.medicine-card .row { flex-wrap:wrap; }
.medicine-card .tools { margin-top:15px; }
.medicine-details { display:grid; grid-template-columns:100px minmax(0,1fr); column-gap:16px; row-gap:9px; margin:18px 0; }
.medicine-details dt { color:#596d64; }
.medicine-details dd { margin:0; overflow-wrap:anywhere; }
.medicine-time-row,.medicine-pause-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto; gap:10px; align-items:end; margin:12px 0; }
.medicine-time-row button,.medicine-pause-row button { margin-bottom:16px; }
.medicine-calendar { display:grid; grid-template-columns:minmax(260px,340px) minmax(0,1fr); gap:26px; margin-top:24px; }
.medicine-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:5px; margin:15px 0; text-align:center; }
.medicine-calendar-day { border:1px solid #e3e8df; padding:7px 0; min-height:43px; display:flex; flex-direction:column; align-items:center; gap:3px; }
.medicine-calendar-day i { width:5px; height:5px; border-radius:50%; background:#3a775f; }
.medicine-calendar-day.selected { background:#285b47; color:white; }
.medicine-calendar-day.selected i { background:white; }
.medicine-calendar-day.today { border:2px solid #bc9451; }
.medicine-agenda .row { align-items:center; flex-wrap:wrap; }
.medicine-agenda p { margin:4px 0; }
.compatibility-panel .textbody { overflow-wrap:anywhere; }
@media(max-width:900px) { .medicine-columns,.medicine-calendar { grid-template-columns:minmax(0,1fr); } }
@media(max-width:760px) { .journey-heading { max-width:85%; } .medicine-time-row,.medicine-pause-row { grid-template-columns:minmax(0,1fr); } .medicine-time-row button,.medicine-pause-row button { margin:0; justify-self:start; } .medicine-details { grid-template-columns:85px minmax(0,1fr); } }
.journey-balances { position:absolute; display:flex; gap:9px; top:2.7%; right:20%; z-index:3; }
.currency-card { display:flex; gap:7px!important; text-align:left; padding:6px 8px!important; background:linear-gradient(120deg,#fff,#fffdf9e8)!important; border:1px solid #fffaf0!important; box-shadow:0 3px 5px #22343c23; color:#111b20!important; border-radius:11px!important; }
.currency-card strong { font-size:var(--ui-caption); display:block; line-height:1.15; white-space:nowrap; }
.currency-card small { font-size:var(--ui-caption); display:block; white-space:nowrap; line-height:1.3; margin-top:3px; }
.currency-card:first-child { width:154px; }
.currency-card:last-child { width:143px; }
.coin-art { width:29px; height:30px; }
.crystal-art { width:29px; height:34px; }
.journey-track { position:absolute; inset:0; width:100%; height:100%; z-index:1; }
.journey-marker { position:absolute; transform:translate(-50%,-50%); width:34px; height:34px; border-radius:50%; background:#fffbee; display:grid; place-items:center; border:2px solid #e8ac33; color:#101416; font-size:19px; font-weight:700; line-height:1; z-index:2; box-shadow:0 1px 2px #05211922; }
.journey-marker.current { background:#fff2ad; border-color:#ffba35; box-shadow:0 0 12px #ffe899bb; }
.journey-marker.finish { color:white; background:linear-gradient(#ffa200,#ff6900); box-shadow:0 0 0 3px #ffa512,0 0 0 5px #fff9bd,0 0 32px 8px #ffda62a6; border:2px solid white; }
.summit-flag { position:absolute; bottom:100%; left:45%; color:#ff8000; font-size:31px; text-shadow:1px 0 #ffe270; }
.journey-person { position:absolute; transform:translate(-50%,-125%); padding:0!important; border:3px solid #ffb529!important; border-radius:50%!important; background:#f9f5e5!important; box-shadow:0 0 0 2px #fff2b6,0 2px 5px #0005; z-index:4; }
.journey-person .home-avatar { width:38px; height:38px; }
.journey-person>span:not(.home-avatar) { position:absolute; bottom:-3px; right:-7px; padding:2px; border-radius:50%; background:white; display:flex; }
.journey-person>span>.hi { width:13px; height:13px; }
.journey-day { position:absolute; bottom:2.7%; right:1.45%; display:flex; align-items:center; gap:10px; background:#fffef8; border-radius:10px; padding:5px 12px; color:#101a20; z-index:3; box-shadow:0 2px 5px #0e302e44; font-size:var(--ui-body); }
.journey-day .hi { color:#194e3a; width:21px; }
.journey-signpost { position:absolute; left:4.1%; bottom:17%; width:86px; display:flex; flex-direction:column; align-items:flex-start; z-index:2; transform:rotate(-2deg); pointer-events:none; }
.journey-signpost:before { content:''; position:absolute; height:150px; width:8px; background:linear-gradient(90deg,#58391f,#be8d4f,#6b492b); top:8px; left:40px; z-index:-1; }
.journey-signpost span { font:condensed var(--ui-caption)/1.45 var(--ui-font); color:#fff9de; text-transform:uppercase; white-space:nowrap; text-align:center; padding:1px 6px; border:1px solid #8d683e; background:linear-gradient(5deg,#75502f,#c28d55 65%,#7e5331); box-shadow:1px 2px 3px #09272155; min-width:77px; }
.journey-signpost b { position:absolute; left:-18px; bottom:-34px; font:19px var(--ui-font); text-transform:uppercase; color:#241b0f; background:linear-gradient(8deg,#b38952,#e1bd8a); padding:2px 6px; transform:rotate(-9deg); box-shadow:2px 2px 3px #0005; }
.today-strip { display:grid; grid-template-columns:1.94fr 1fr; gap:12px; min-height:130px; padding:10px; background:#fffdfa; border:1px solid #eeeee7; border-radius:0 0 13px 13px; box-shadow:0 2px 12px #24312105; }
.today-content h2 { font-size:24px; line-height:1; padding:0 10px; margin:2px 0 2px; }
.today-actions { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.today-action { display:flex; gap:12px; padding:7px 9px; border-radius:10px; border:1px solid #f1f1ed; background:#fff; box-shadow:0 2px 8px #112a2310; }
.today-action>div { flex:1; min-width:0; }
.today-action strong { display:block; font-size:var(--ui-caption); line-height:1.1; }
.today-action small { display:block; font-size:var(--ui-caption); margin:3px 0; line-height:1.12; }
.today-action .primary { width:100%; padding:3px 10px; min-height:29px; font-size:var(--ui-caption); }
.today-action .primary .hi { width:16px; height:16px; }
.sun-symbol { color:#ffb000; align-self:flex-start; margin-top:3px; }
.sun-symbol .hi { width:40px; height:40px; }
.sun-symbol .hi circle { fill:#ffb000; }
.soft-symbol { display:flex; justify-content:center; align-items:center; width:46px; height:46px; border-radius:50%; background:#f0f3ed; color:#164d3b; flex:none; }
.soft-symbol .hi { width:29px; height:29px; }
.today-action .soft-symbol { width:40px; height:40px; }
.home-phrase { padding:9px 14px; margin:0; border-radius:9px; background:linear-gradient(105deg,#f5f5effa 25%,#f8f7f0d9 65%,#f5f5ef00),url('/journey-mountains.png') 65% 35%/cover; overflow:hidden; }
.home-phrase>div { display:flex; gap:12px; align-items:center; height:25px; }
.home-phrase b { color:#154f3b; font:bold 41px var(--ui-font); padding-top:10px; }
.home-phrase strong { font-size:var(--ui-caption); }
.home-phrase p { font-size:var(--ui-body); font-style:italic; line-height:1.38; max-width:85%; margin:8px 0 0; }
.my-day-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:10px 0 12px; padding-left:10px; min-height:59px; }
.my-day-heading h2 { font-size:32px; line-height:1.1; }
.my-day-heading p { font-size:var(--ui-body); color:#647084; margin:1px 0 0; }
.diary-summary { display:flex; align-items:center; gap:12px; width:47.5%; padding:7px 13px; min-height:61px; background:#fffdfa; border:1px solid #ecece5; border-radius:12px; text-decoration:none; box-shadow:0 3px 10px #27352b06; }
.diary-summary strong { display:block; font-size:var(--ui-body); color:#10181b; }
.diary-open { display:flex; align-items:center; gap:7px; margin-left:auto; text-decoration:underline; font-size:var(--ui-caption); }
.diary-open .hi { width:17px; height:17px; }
.day-blocks { display:grid; grid-template-columns:1fr 1.12fr; gap:10px; }
.day-block { background:linear-gradient(120deg,#fff,#fefefd); border:1px solid #e9eae4; border-radius:12px; padding:11px 10px; box-shadow:0 3px 13px #24392905; min-width:0; }
.day-block>header { display:flex; align-items:flex-start; gap:14px; padding:0 5px; margin-bottom:10px; min-height:34px; }
.day-block>header .hi { color:#0b4b3b; width:29px; height:34px; }
.day-block h3 { font-size:22px; line-height:1.1; letter-spacing:-.3px; margin:2px 0 0; }
.day-block>header p { font-size:var(--ui-caption); color:#647084; margin:1px 0 0; line-height:1.2; }
.section-crystal { width:28px; height:36px; }
.header-add { margin-left:auto; border:1px solid #e2e9df!important; background:#f4f7f0!important; width:27px; height:27px; padding:0!important; font-size:22px!important; }
.day-list { display:grid; gap:7px; }
.day-row { min-height:66px; display:flex; align-items:center; gap:14px; padding:2px 8px 2px 3px; border:1px solid #efefea; border-radius:9px; box-shadow:0 2px 9px #20302103; min-width:0; }
.day-thumbnail { flex:none; width:78px; height:62px; object-fit:cover; border-radius:7px; overflow:hidden; }
.fallback-thumb { display:flex; align-items:center; justify-content:center; color:var(--ui-muted); background:#f2f5ee; }
.fallback-thumb .hi { width:31px; height:31px; }
.day-row-text { min-width:0; flex:1; }
.day-row-text>strong { font-size:var(--ui-body); line-height:1.2; display:block; font-weight:700; overflow-wrap:anywhere; }
.day-row-text>small { display:block; font-size:var(--ui-caption); line-height:1.2; margin:3px 0; }
.day-status { display:flex; align-items:center; gap:7px; font-size:var(--ui-caption); margin-top:4px; line-height:1.2; }
.day-status .hi { width:17px; height:17px; }
.day-status.done { color:#167644; }
.day-status.done .hi { border-radius:50%; color:white; background:#32a263; padding:2px; stroke-width:2.3; }
.day-status.pending { color:#6a7484; }
.day-status.pending .hi { color:var(--ui-muted); stroke-width:2.2; }
.day-status.late { color:#956a29; }
.day-status.missed { color:#a43535; }
.day-row-actions { display:flex; flex-direction:column; align-items:flex-end; gap:4px; }
.day-row-actions .primary { padding:7px 16px; min-width:91px; }
.arrow-button { border:0!important; background:none!important; padding:5px!important; color:#375669!important; }
.arrow-button .hi { width:18px; height:18px; }
.medicine-row { padding:7px; height:78px; min-height:78px; display:grid; grid-template-columns:65px minmax(70px,1fr) auto 15px; grid-template-rows:1fr auto; column-gap:12px; row-gap:3px; }
.medicine-row .day-thumbnail { grid-column:1; grid-row:1/3; }
.medicine-info { grid-column:2; grid-row:1/3; align-self:start; padding-top:3px; }
.medicine-info>strong { display:block; font-size:var(--ui-caption); line-height:1.12; }
.medicine-info>small { display:block; font-size:var(--ui-caption); line-height:1.2; margin-top:4px; }
.medicine-status { grid-column:3; grid-row:1; align-self:start; padding-top:3px; }
.medicine-row .why-button { grid-column:3; grid-row:2; align-self:end; justify-self:end; }
.medicine-arrow { grid-column:4; grid-row:1/3; }
.medicine-row .day-thumbnail { width:65px; height:63px; }
.medicine-row .day-row-text>strong { font-size:var(--ui-caption); }
.medicine-row .day-status { font-size:var(--ui-caption); }
.medicine-row .day-row-actions { align-self:stretch; justify-content:space-between; }
.medicine-row .primary { min-width:0; font-size:var(--ui-caption); padding:5px 9px; }
.why-button { font-size:var(--ui-caption)!important; white-space:nowrap; }
.block-link { display:inline-flex; gap:3px; align-items:center; font-size:var(--ui-caption); margin:9px 10px 1px; }
.block-link .hi { width:13px; height:13px; }
.calendar-link { display:flex; justify-content:center; align-items:center; gap:13px; padding:10px 6px; background:#f2f4ee; border-radius:9px; font-size:var(--ui-caption); text-decoration:none; margin:10px 0 0; }
.calendar-link .hi:last-child { width:18px; }
.meal-block,.vitamin-block { min-height:286px; }
.sport-block,.personal-block { min-height:217px; }
.sport-block .day-thumbnail,.personal-block .day-thumbnail { width:65px; height:70px; }
.personal-block .day-row { min-height:65px; }
.personal-block .day-thumbnail { height:61px; }
.personal-block .day-row-text>strong { font-size:var(--ui-caption); }
.add-personal { font-size:var(--ui-caption)!important; margin:8px 5px 0; }
.home-empty { display:flex; min-height:130px; align-items:center; justify-content:center; text-align:center; color:var(--ui-muted); font-size:var(--ui-caption); padding:20px; background:linear-gradient(135deg,#f9faf6,#fff); border:1px solid #f0f1e9; border-radius:9px; }
.sport-block .home-empty,.personal-block .home-empty { min-height:100px; }
.home-contact { display:grid; grid-template-columns:1.02fr 1.06fr .84fr; gap:8px; margin-top:10px; }
.doctor-contact,.sos-contact,.message-doctor { background:#fffdfb; border:1px solid #ecece6!important; box-shadow:0 3px 12px #24392905; border-radius:12px!important; min-height:96px; }
.doctor-contact { display:flex; gap:10px; padding:9px 10px; align-items:center; }
.doctor-avatar { width:70px; height:70px; }
.doctor-contact>div { flex:1; min-width:0; }
.doctor-contact strong { font-size:var(--ui-caption); display:block; line-height:1.2; }
.doctor-contact small { font-size:var(--ui-caption); display:block; margin:2px 0; line-height:1.2; }
.doctor-chat { background:#edf2eb!important; border:0!important; padding:5px 10px!important; width:100%; margin-top:3px; font-size:var(--ui-caption)!important; }
.doctor-chat .hi { width:21px; height:20px; }
.sos-contact { padding:11px 10px; display:flex; flex-direction:column; justify-content:center; }
.sos-button { background:#ffe2e4!important; color:#ae0614!important; padding:12px 8px!important; border:0!important; width:100%; white-space:nowrap; font-size:var(--ui-caption)!important; }
.sos-button .hi { width:22px; height:22px; fill:currentColor; }
.sos-contact small { text-align:center; font-size:var(--ui-caption); margin-top:4px; }
.message-doctor { display:flex; align-items:center; gap:13px!important; text-align:left; padding:15px 12px!important; }
.message-doctor>.hi { color:#435c71; width:25px; height:29px; }
.message-doctor .hi:last-child { width:13px; height:13px; align-self:flex-end; }
.message-doctor strong { display:block; color:#101d30; font-size:var(--ui-caption); font-weight:400; }
.message-doctor small { font-size:var(--ui-caption); display:block; margin-top:4px; line-height:1.3; }
.client-footer { grid-column:1/-1; display:flex; align-items:center; min-height:104px; gap:22px; padding:24px 30px; color:#4d5f73; font-size:var(--ui-caption); }
.put-logo.compact { flex-direction:row; align-items:center; gap:6px; margin:0; }
.put-logo.compact .logo-peaks { width:49px; height:26px; }
.put-logo.compact>span { font-size:24px; letter-spacing:0; }
.footer-links { display:flex; gap:32px; margin-left:auto; align-items:center; }
.footer-links a,.footer-links button { font-size:var(--ui-caption); color:#465c70; text-decoration:none; }
.footer-signature { display:flex; align-items:center; margin-left:25px; }
.footer-signature>span { font:italic var(--ui-body) var(--ui-font); transform:rotate(-10deg); color:var(--ui-muted); margin-right:-18px; }
.footer-signature .quiet-peaks { width:100px; height:51px; }
.profile-photo-editor { text-align:center; }
.profile-photo-editor .home-avatar { width:140px; height:140px; }
.profile-photo-editor .photo-file-label { border:1px dashed #789580; border-radius:12px; padding:20px; margin:18px auto 8px; max-width:420px; cursor:pointer; }
.profile-photo-editor input[type=file] { display:block; font:var(--ui-caption) var(--ui-font); margin-top:12px; }
.profile-photo-editor .text-button { display:block; margin:15px auto; }
.profile-photo-editor>small { display:block; }
.profile-menu-links { display:grid; gap:12px; margin:20px 0; }
.detail-image { max-height:240px; max-width:100%; border-radius:12px; object-fit:cover; }
@media(min-width:1200px) {
  .client-layout { grid-template-columns:180px minmax(0,1fr); }
  .client-sidebar { padding-left:24px; }
  .client-main { padding-right:25px; }
  .home-goals h2 { font-size:28px; }
  .journey-heading h2 { font-size:43px; }
  .journey-heading p { font-size:19px; }
  .journey-balances { right:20%; }
  .currency-card { padding:9px 11px!important; }
  .currency-card strong { font-size:var(--ui-body); }
  .currency-card small { font-size:var(--ui-caption); }
  .currency-card:first-child { width:181px; }
  .currency-card:last-child { width:166px; }
  .journey-signpost { transform:scale(1.1) rotate(-2deg); transform-origin:bottom left; }
}
@media(max-width:1000px) and (min-width:761px) {
  .header-clock { display:none; }
  .client-header { gap:10px; }
  .home-goals { grid-template-columns:1fr 1fr; }
  .month-goal,.personal-prize { gap:10px; padding:12px 8px; }
  .prize-picture { width:80px; height:110px; }
  .home-goals h2 { font-size:22px; }
  .goal-symbol { width:42px; height:42px; }
  .prize-symbol { width:48px; height:48px; }
  .journey-heading h2 { font-size:28px; }
  .journey-heading p { font-size:var(--ui-caption); }
  .journey-balances { right:16%; }
  .currency-card strong { font-size:var(--ui-caption); }
  .currency-card small { font-size:var(--ui-caption); }
  .currency-card { padding:5px!important; gap:3px!important; }
  .currency-card:first-child { width:138px; }
  .currency-card:last-child { width:127px; }
  .currency-card .reference-art { width:23px; height:28px; }
  .today-strip { grid-template-columns:1.7fr 1fr; }
  .today-action { gap:5px; padding:5px; }
  .today-action .soft-symbol,.sun-symbol .hi { width:29px; height:29px; }
  .day-row { gap:8px; }
  .day-row .day-thumbnail { width:51px; height:55px; }
  .day-row-text>strong { font-size:var(--ui-caption); }
  .day-status { font-size:var(--ui-caption); }
  .day-row-actions .primary { min-width:0; padding:5px 7px; font-size:var(--ui-caption); }
  .doctor-avatar { width:45px; height:45px; }
  .doctor-contact { padding:7px; gap:6px; }
  .home-contact { grid-template-columns:1fr 1fr; }
  .message-doctor { grid-column:1/-1; min-height:65px; justify-content:center; }
}
@media(max-width:760px) {
  .client-layout { display:block; }
  .client-main { padding:0 12px; }
  .client-sidebar { padding:18px; width:210px; z-index:25; height:100vh; }
  .sidebar-message { margin-top:70px; }
  .client-header { min-height:89px; padding:9px 0; flex-wrap:wrap; gap:9px; }
  .client-header .menuicon { border:0; background:none; padding:4px; }
  .greeting { order:2; flex-basis:100%; padding-left:3px; }
  .greeting h1 { font-size:25px; }
  .greeting p { font-size:var(--ui-caption); }
  .account-tools { margin-left:auto; gap:11px; }
  .account-menu strong { font-size:var(--ui-caption); }
  .account-menu small { font-size:var(--ui-caption); }
  .home-avatar { width:35px; height:35px; }
  .camera-badge { width:17px; height:17px; }
  .add-photo-label { font-size:var(--ui-caption)!important; }
  .header-clock { display:none; }
  .home-goals { grid-template-columns:1fr; gap:7px; margin:8px 0; }
  .month-goal,.personal-prize { min-height:116px; gap:14px; padding:12px; border-width:5px; }
  .home-goals h2 { font-size:24px; }
  .goal-caption,.goal-copy p { font-size:var(--ui-caption); }
  .goal-symbol { width:46px; height:46px; }
  .prize-symbol { width:51px; height:51px; }
  .prize-picture { height:91px; width:91px; }
  .prize-copy { padding-top:0; }
  .prize-copy p { font-size:var(--ui-caption); }
  .mountain-journey { aspect-ratio:auto; height:320px; background-size:auto 100%; background-position:86% center; }
  .journey-heading { left:13px; top:12px; }
  .journey-heading h2 { font-size:27px; }
  .journey-heading p { font-size:var(--ui-caption); }
  .journey-balances { left:12px; right:auto; top:87px; gap:5px; }
  .currency-card { padding:5px 7px!important; gap:5px!important; border-radius:8px!important; }
  .currency-card strong { font-size:var(--ui-caption); }
  .currency-card small { font-size:var(--ui-caption); }
  .currency-card .reference-art { width:22px; height:27px; }
  .currency-card:first-child { width:137px; }
  .currency-card:last-child { width:128px; }
  .journey-marker { width:26px; height:26px; font-size:var(--ui-caption); border-width:1.5px; }
  .journey-marker.finish { width:30px; height:30px; }
  .journey-track circle { r:4; }
  .journey-person .home-avatar { width:29px; height:29px; }
  .journey-signpost { left:7%; bottom:17%; transform:scale(.65) rotate(-2deg); transform-origin:bottom left; }
  .journey-day { font-size:var(--ui-caption); right:8px; bottom:8px; padding:5px 8px; gap:6px; }
  .journey-day .hi { width:16px; height:16px; }
  .today-strip { grid-template-columns:1fr; gap:9px; }
  .today-actions { gap:7px; }
  .today-action { padding:7px; gap:7px; }
  .today-action .soft-symbol,.sun-symbol .hi { width:26px; height:29px; }
  .today-action .soft-symbol .hi { width:23px; height:23px; }
  .today-action strong { font-size:var(--ui-caption); }
  .today-action small { font-size:var(--ui-caption); min-height:25px; }
  .today-action .primary { font-size:var(--ui-caption); padding:4px; }
  .home-phrase { min-height:102px; }
  .home-phrase p { font-size:var(--ui-body); max-width:80%; }
  .my-day-heading { display:block; padding-left:0; margin:18px 0 12px; }
  .my-day-heading h2 { font-size:30px; }
  .my-day-heading p { font-size:var(--ui-caption); }
  .diary-summary { width:100%; margin-top:9px; }
  .day-blocks { grid-template-columns:1fr; gap:10px; }
  .day-block { min-height:0; padding:13px 10px; }
  .day-block h3 { font-size:22px; }
  .day-row { gap:10px; }
  .day-thumbnail { width:62px; }
  .day-row-text>strong { font-size:var(--ui-caption); }
  .day-status { font-size:var(--ui-caption); }
  .day-row-actions .primary { padding:7px 11px; min-width:0; font-size:var(--ui-caption); }
  .medicine-row { column-gap:7px; grid-template-columns:52px minmax(65px,1fr) auto 12px; }
  .medicine-row .day-thumbnail { width:52px; height:56px; }
  .medicine-row .day-row-actions { max-width:95px; }
  .home-contact { grid-template-columns:1fr; }
  .doctor-contact { justify-content:center; }
  .doctor-contact>div { flex:initial; min-width:210px; }
  .doctor-avatar { width:65px; height:65px; }
  .sos-contact { min-height:83px; }
  .message-doctor { min-height:76px; justify-content:center; }
  .client-footer { padding:26px 16px; gap:12px; flex-wrap:wrap; }
  .client-footer>span { font-size:var(--ui-caption); }
  .footer-links { margin-left:auto; gap:15px; }
  .footer-signature { margin-left:auto; }
  .home-empty { min-height:85px; }
}
