/* Approved photo layout. Real data and existing commands remain authoritative. */
.approved-home,.approved-profile{--hero-height:clamp(350px,48dvh,520px);max-width:590px!important;margin:auto;min-height:100dvh;position:relative;isolation:isolate;color:#faf6ee;background:#061925}
.approved-home .home-scenery,.approved-profile .home-scenery{height:var(--hero-height);z-index:0;isolation:isolate}
.approved-home .home-scenery>img,.approved-profile .home-scenery>img{position:absolute;inset:0;z-index:0;object-position:center}
.approved-home .home-scenery>.premium-video,.approved-profile .home-scenery>.premium-video{z-index:1;object-position:center;opacity:1}
.approved-home .home-scenery::after,.approved-profile .home-scenery::after{z-index:2;background:linear-gradient(0deg,#061925 0%,#06192518 28%,transparent 65%),linear-gradient(90deg,#0004,transparent 70%)}
.approved-home .topbar,.approved-home .premium-home,.approved-profile .profile-top,.approved-profile .profile-main{position:relative;z-index:1}
.approved-home .topbar{height:94px;min-height:94px;padding:20px 24px 10px}
.approved-home .home-welcome{height:calc(var(--hero-height) - 94px);min-height:0;display:flex;flex-direction:column;justify-content:end;padding:0 24px 26px}
.approved-home .home-welcome h1{font:500 clamp(40px,10.5vw,58px)/1.02 var(--serif);margin:0;text-shadow:0 2px 8px #0008}
.approved-home .home-welcome p:not(.teacher-eyebrow){font:400 clamp(18px,5.2vw,30px)/1.2 var(--serif);white-space:nowrap;margin:7px 0 0;max-width:none}
.approved-home .home-card-stack{gap:16px;padding:0 14px}
.approved-home .premium-home{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
.approved-home .next-lesson{grid-template-columns:46% minmax(0,1fr);gap:8px 6px;padding:30px 13px 16px 8px;min-height:260px;background:#08212c;box-shadow:inset 0 0 0 3px #08212c,0 5px 14px #0005;border-color:#e6c383}
.approved-home .next-lesson:before{content:'';position:absolute;inset:5px;z-index:-1;background:linear-gradient(90deg,transparent 24%,#06192536 47%,#061925a8 100%),url('assets/home/desk.webp') center/cover;border-radius:12px}
.approved-home .lesson-calendar{width:56%;z-index:-1;mask-image:linear-gradient(90deg,#000 55%,transparent);opacity:1}
.approved-home .next-lesson-copy{text-align:center;align-self:center;padding:0;z-index:1}
.approved-home .next-lesson h2{font:600 clamp(24px,6vw,34px)/1.06 var(--serif);margin:2px 0 6px;text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 2px 5px #000}
.approved-home .home-kicker{font:17px/1.15 var(--serif);margin:0;color:#fbefd7}
.approved-home .lesson-time{font:18px/1.2 var(--serif);margin:2px 0;color:#fff4df}
.approved-home .lesson-context{font:15px/1.2 var(--serif);margin:3px 0;color:#fff4df}
.approved-home .home-today-count{position:absolute;right:16px;top:8px;background:none;border:0;border-bottom:1px solid #d9bf7c66;color:#f2dfbb;font:14px var(--serif);padding:2px 3px}
.approved-home .lesson-state{font:16px/1.05 var(--serif);margin:8px 0 4px;background:#07232cbf}
.approved-home .lesson-state.confirmed{color:#c7f7df;border-color:#36ca87;background:#00352ddd;box-shadow:0 0 10px #1bb97a25}
.approved-home .lesson-state.confirmed svg{width:16px;height:16px;color:#45e695;stroke-width:2.5}
.approved-home .next-lesson>.home-gold-button,.approved-home .home-agenda-link{grid-column:2;justify-self:stretch;width:100%;max-width:none;min-width:0;min-height:44px;font:500 clamp(15px,4vw,20px)/1.2 var(--serif);margin:0;gap:3px;padding:9px 4px}
.approved-home .home-agenda-link{border:1px solid #e7c77b;border-radius:9px;background:#041a24dd;text-decoration:none;color:#fbe6af}
.approved-home .home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.approved-home .home-service{position:relative;isolation:isolate;aspect-ratio:.76;min-height:230px;padding:0;border:1px solid #e8c782;border-radius:13px;box-shadow:0 4px 12px #0006;justify-content:end}
.approved-home .home-service:after{inset:3px;border-color:#eac88455;border-radius:10px}
.approved-home .service-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;border-radius:12px}
.approved-home .home-service:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#031c29 0%,#031c29d9 20%,#031c2920 48%,transparent 72%);border-radius:12px}
.approved-home .service-label{padding:16px 10px;gap:8px;align-items:center;min-height:84px}
.approved-home .service-label>span{flex:1;min-width:0;text-align:center}
.approved-home .service-label strong{display:block;font:500 clamp(18px,4.8vw,27px)/1.15 var(--serif);text-shadow:0 1px 4px #000}
.approved-home .service-label small{display:block;font:14px/1.25 var(--serif);margin-top:5px;color:#f8eedc}
.approved-home .service-label>svg{width:24px;height:24px}.approved-home .service-label>svg:last-child{width:12px;margin:0}
.approved-home .service-label .service-badge{display:inline-block;padding:3px 8px;border:1px solid #e4c580;border-radius:18px;font-size:13px}
.approved-home .service-badge.clear{border-color:#3abe86;color:#bfe9d1;background:#06382caa}
.approved-home .bottom-nav,.approved-profile .bottom-nav,.live-app .bottom-nav{width:100%!important;max-width:none!important;left:0!important;right:0!important;transform:none!important;box-sizing:border-box;position:fixed;bottom:0;z-index:30}
.approved-profile{--hero-height:350px;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
.approved-profile svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}
.profile-top{padding:22px 24px 0;display:flex;flex-direction:column;gap:14px;align-items:center}
.profile-back{align-self:start;display:flex;align-items:center;gap:7px;background:none;border:0;color:#fff2d5;font:21px var(--serif);min-height:44px;padding:0}
.profile-back svg{transform:rotate(180deg);width:17px}
.profile-top .brand{display:flex;align-items:center;color:#fff7e8;text-decoration:none}.profile-top .brand img{width:42px;height:65px}
.profile-main{padding:20px 15px 0}.profile-main h1{font:500 36px/1.1 var(--serif);margin:0 12px 14px}
.profile-identity{display:flex;gap:17px;align-items:center;padding:0 12px 20px}.profile-identity>div:last-child{min-width:0;flex:1}
.profile-identity h2{font:500 27px/1.08 var(--serif);margin:0 0 9px;text-wrap:balance;overflow-wrap:anywhere}.profile-identity p{font:13px/1.4 Inter,Arial,sans-serif;margin:0;color:#fff0d8}
.real-portrait{position:relative;flex:0 0 90px;height:98px;border:2px solid #e8c887;border-radius:50%;overflow:hidden;background:#123340;display:grid;place-items:center;font:30px var(--serif)}
.real-portrait img,.teacher-avatar-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}
.profile-menu{padding:6px 17px 14px;border:1px solid #e4c687;border-radius:13px;background:linear-gradient(#062332b8,#041924dd),url('assets/home/leather.webp') center/380px;box-shadow:inset 0 0 0 3px #082636,0 5px 12px #0005}
.profile-menu>button:not(.profile-signout){display:flex;gap:15px;align-items:center;background:none;border:0;border-bottom:1px solid #d9bc7777;color:#fff3db;padding:16px 3px;width:100%;min-height:64px;text-align:left;font:21px/1.15 var(--serif)}
.profile-menu>button>span{flex:1}.profile-menu>button>svg{color:#e8c987}.profile-menu>button>svg:last-child{width:15px}
.profile-menu .profile-signout{display:flex;width:100%;margin-top:15px;padding:13px 16px;min-height:48px;font:600 21px/1.1 var(--serif);gap:12px}.profile-menu .profile-signout>span{flex:0 1 auto}.profile-menu .profile-signout>svg{color:#0c242b;width:26px}
[data-signout-error]{font:13px/1.4 Inter,Arial,sans-serif;color:#ffdbac}.teacher-avatar-image[hidden],.avatar img[hidden]{display:none}
.account-active .bottom-nav{width:100%!important;max-width:none!important;left:0!important;right:0!important;transform:none!important}
@media(max-width:360px){.approved-home .topbar{padding-inline:18px}.approved-home .home-welcome{padding-inline:18px}.approved-home .service-label{gap:5px;padding-inline:7px}.approved-home .service-label>svg{width:19px}.approved-home .service-label strong{font-size:18px}.approved-home .service-label small{font-size:12px}.profile-menu{padding-inline:12px}.profile-menu>button:not(.profile-signout){font-size:19px}.profile-identity h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.approved-home .premium-video,.approved-profile .premium-video{display:none}}

.live-app .avatar{position:relative;overflow:hidden}.avatar>span{display:grid;place-items:center;width:100%;height:100%}

.approved-home .home-service{aspect-ratio:auto;width:100%;height:clamp(230px,61vw,350px);min-width:0;min-height:0}.approved-home .home-agenda-link{white-space:nowrap}.approved-home .next-lesson>.home-gold-button svg,.approved-home .home-agenda-link svg{width:17px;height:17px}

.approved-home .home-service:nth-child(n+3) .service-photo{object-position:90% center}.profile-menu>button:not(.profile-signout){min-height:58px;padding-block:13px}.profile-top .brand img{height:53px;width:35px}.profile-top{gap:10px}.profile-main{padding-top:16px}.profile-identity{padding-bottom:16px}

.concierge-active .bottom-nav{width:100%!important;max-width:none!important;left:0!important;right:0!important;transform:none!important}
