/* Shared repair: approved matrix, legible mobile controls and native viewport. */
@import url('student-loader.css');
:root{--premium-gold:#e7c781;--premium-ink:#061925}
*,*::before,*::after{box-sizing:border-box}
body{overflow-x:hidden}.premium-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;pointer-events:none;z-index:-1}
.paris-hero{isolation:isolate;position:relative;background-image:none!important;overflow:hidden}
.paris-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0009,transparent 90%),linear-gradient(0deg,#061925,transparent 35%);pointer-events:none}
.live-app .paris-hero{min-height:268px;padding:18px 20px 28px}.live-app .paris-topbar{padding:0;margin:0 0 22px}.live-app .brand img,.brand img{filter:grayscale(1) brightness(2.6)!important;width:30px!important;height:49px!important}.live-app .brand>span{font-size:33px!important;color:#fff}.live-app .brand small{font-size:7px!important;letter-spacing:2px}.live-app .brand small:last-child{margin-top:4px}.live-app .page-back{display:flex;align-items:center;gap:6px;width:fit-content!important;min-height:38px!important;padding:0!important;margin:0 0 10px!important;border:0!important;box-shadow:none!important;background:none!important;color:#efd699;font:19px var(--serif)}.page-back svg{width:17px!important;transform:rotate(180deg)}
.live-app h1{font:500 clamp(35px,10vw,49px)/1.02 var(--serif);margin:0 0 8px;overflow-wrap:normal}.live-app .hero-subtitle{font:22px/1.2 var(--serif);margin:0;max-width:90%}.live-app .header-actions .icon-button{width:42px;height:42px}
.live-content{padding:16px 14px 30px;font:18px/1.4 var(--serif)}.live-card{padding:18px}.live-card h2{font:500 28px/1.1 var(--serif)}.live-line{font-size:18px;gap:12px;padding:10px 0;line-height:1.35}.live-line span{font:12px/1.5 Inter,Arial,sans-serif;color:#d2bd90}.live-line strong{font:500 19px/1.25 var(--serif)}.live-note{font:12px/1.5 Inter,Arial,sans-serif}.live-app .extra-primary,.live-app .extra-secondary{font-size:20px;min-height:46px;padding:12px 14px}
.bottom-nav{padding:7px 8px max(9px,env(safe-area-inset-bottom,0px))!important;min-height:76px!important;gap:0!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}.bottom-nav button{min-width:0!important;font:14px/1.25 var(--serif)!important;letter-spacing:0!important;padding:5px 0!important;gap:5px!important;white-space:nowrap}.bottom-nav svg{width:25px!important;height:25px!important}.bottom-nav span{font:inherit!important}.bottom-nav button.active::after{height:4px!important;width:4px!important;border-radius:50%;background:#f6d78f!important;bottom:-3px!important;left:calc(50% - 2px)!important}
.restored-home{position:relative;max-width:590px!important;margin:auto;min-height:100dvh}.restored-home .home-scenery{height:385px}.restored-home .topbar{padding:20px 22px 10px;min-height:88px}.restored-home .brand img{width:31px!important;height:50px!important}.restored-home .home-welcome{padding:24px 22px 14px;min-height:184px}.restored-home .teacher-eyebrow{font:9px/1.4 Inter,Arial,sans-serif;letter-spacing:1.6px;color:#f3d290;margin:0 0 8px}.restored-home .home-welcome h1{font:500 45px/1.03 var(--serif);margin:0}.restored-home .home-welcome p:not(.teacher-eyebrow){font:23px/1.12 var(--serif);margin:10px 0}.restored-home .today-label{font:10px/1.4 Inter,Arial,sans-serif;color:#e6c586}.restored-home .bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,590px);z-index:20}.restored-home svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.restored-home .next-lesson{min-height:250px}.restored-home .lesson-context{font:11px Inter,Arial,sans-serif;margin-top:7px}.restored-home .next-lesson h2{font-size:29px}.restored-home .lesson-time{font-size:20px}.restored-home .day-overview strong{font:35px/1 var(--serif);font-variant-numeric:lining-nums}.restored-home .day-overview{margin:0;min-height:80px}.restored-home .home-wide-card .wide-card-copy{flex:1;min-width:0}.restored-home .card-count{position:static;min-width:32px;width:auto;padding:4px;font:20px var(--serif)}
.lesson-summary{padding:18px!important;border:1px solid #e7c781;border-radius:17px;box-shadow:inset 0 0 0 4px #092e3c;margin-bottom:14px}.lesson-summary header{display:flex;gap:16px;align-items:center;padding:0 0 17px;border-bottom:1px solid #ccb16c99}.student-monogram{display:grid;place-items:center;flex:0 0 62px;height:62px;border:1px solid #efd087;border-radius:50%;font:30px var(--serif);color:#f5d592;background:#08232d;box-shadow:inset 0 0 0 3px #132e38}.lesson-summary h2{font:500 31px/1.05 var(--serif);margin:0 0 7px}.lesson-summary header p{font:16px var(--serif);margin:0;color:#dacbb0}.lesson-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}.lesson-facts .live-line{display:flex;flex-direction:column;gap:5px;padding:14px 0 10px;min-width:0;border:0}.lesson-facts .live-line:nth-child(n+3){border-top:1px solid #ccb16c44}.lesson-summary .live-note{margin:7px 0 0;padding-top:10px;border-top:1px solid #ccb16c44}.continuity-panel{padding:22px 18px;border:1px solid #d5b76e;border-radius:17px;background:linear-gradient(90deg,#061925ed 30%,#06192588),url('assets/home/desk.webp') center/cover;margin:14px 0}.continuity-panel small{font:9px Inter,Arial,sans-serif;letter-spacing:2px;color:#ecc77d}.continuity-panel h2{font:28px/1.05 var(--serif);margin:12px 0}.continuity-panel p{font:18px/1.3 var(--serif);max-width:85%;margin:0}.lesson-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lesson-actions button{font-size:18px!important;text-align:left}.lesson-device-note{display:flex;gap:10px;align-items:center;margin-top:18px}
.pending-cards{display:grid;gap:15px}.pending-card{display:grid!important;grid-template-columns:1fr auto!important;align-content:center!important;gap:9px!important;min-height:190px!important;padding:24px 22px!important;text-align:left;overflow:hidden;background:linear-gradient(90deg,#061925f5 15%,#061925a6 65%,#06192544),var(--pending-art) center/cover!important}.pending-card strong{grid-column:1;grid-row:1;font:500 29px/1.02 var(--serif)!important;max-width:220px}.pending-count{grid-column:2;grid-row:1;position:static!important;border-radius:12px!important;min-width:42px!important;width:auto!important;height:34px!important;padding:5px 9px!important;font:500 20px/1 var(--serif)!important;display:grid;place-items:center}.pending-subtitle{grid-column:1/-1;font:15px/1.3 var(--serif)!important;max-width:80%;overflow-wrap:break-word}.pending-link{grid-column:1/-1;display:flex;align-items:center;gap:9px;font:18px var(--serif)!important;text-decoration:none!important;margin-top:9px!important}
/* Full-image concierge cards requested by the user. */
.concierge-sector{position:relative;isolation:isolate;min-height:245px!important;justify-content:end;padding:6px!important}.concierge-sector-photo{position:absolute!important;inset:5px!important;width:calc(100% - 10px)!important;height:calc(100% - 10px)!important;object-fit:cover;border-radius:12px!important;z-index:-2}.concierge-sector::before{content:'';position:absolute;inset:5px;background:linear-gradient(0deg,#031824 5%,#031824e6 34%,#03182422 86%);z-index:-1;border-radius:12px}.concierge-sector-copy{padding:20px 10px!important;min-height:125px!important}.concierge-sector-copy strong{font:500 23px/1.02 var(--serif)!important;overflow-wrap:normal}.concierge-sector-copy small{font:16px/1.2 var(--serif)!important}.concierge-sector-grid{gap:15px 12px!important}.concierge-unread{font-size:10px!important}.inbox-copy strong{font-size:20px!important;letter-spacing:.5px!important}.inbox-copy small{font-size:15px!important}.concierge-inbox-bar{padding:19px 17px!important}.concierge-active .bottom-nav,.account-active .bottom-nav{z-index:30!important}.account-scenery,.concierge-scenery{isolation:isolate}.account-scenery>.premium-video,.concierge-scenery>.premium-video{z-index:0}.account-scenery::after,.concierge-scenery::after{z-index:1}
.account-back.account-outline,.concierge-back{border:0!important;box-shadow:none!important;border-radius:0!important;background:none!important;padding:5px 0!important;min-height:38px;color:#f1d291;font:19px var(--serif)!important}.account-subpage h1{font-size:37px!important}.account-subpage .account-panel{padding:22px 20px!important}.account-panel h2{font:500 29px/1.08 var(--serif)!important}.account-panel>p{font:16px/1.45 var(--sans)!important}.account-panel .account-hint{font:11px/1.6 var(--sans)!important}.account-status{font:12px/1.4 var(--sans)!important}.quality-report .student-report{font:19px/1.4 var(--serif)!important}.premium-period{width:100%;display:flex;gap:12px;align-items:center;border:1px solid #d2b775;background:#06222e;border-radius:11px;color:#f2d494;padding:14px 15px;margin-top:20px;text-align:left;font:21px var(--serif)}.premium-period>span{flex:1}.period-overlay{position:fixed;inset:0;z-index:200;background:#001019c9;backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.period-dialog{background:linear-gradient(#062330dd,#062330dd),url('assets/home/leather.webp') center/400px;border:1px solid #edca7d;box-shadow:inset 0 0 0 4px #153643;border-radius:18px;padding:24px;width:min(100%,370px);max-height:90dvh;overflow:auto}.period-dialog h2{font:29px var(--serif);margin:6px 0 12px}.period-dialog p{font:13px var(--sans);color:#becbd0}.period-dialog>button:not(.period-close){display:flex;justify-content:space-between;width:100%;border:1px solid #aa945b80;background:#06232c;color:#f2dec1;border-radius:9px;font:21px var(--serif);padding:13px;margin-top:9px}.period-dialog>button[aria-pressed=true]{background:linear-gradient(120deg,#b78d42,#efd697);color:#071c26}.period-close{float:right;border:0;background:none;color:#edd09a;font-size:25px}
#live-dialog{position:fixed!important;inset:0!important;margin:auto!important;max-width:calc(100vw - 28px);max-height:calc(100dvh - 32px);height:fit-content;padding:22px!important;overflow:auto;box-shadow:inset 0 0 0 4px #123544,0 15px 50px #0008}#live-dialog::backdrop{backdrop-filter:blur(7px)}#live-dialog h2{font:31px/1.05 var(--serif)}.calendar-grid button{min-height:37px;font-size:22px}.calendar-month strong{font-size:23px}.calendar-confirm{font-size:22px}
.extras-banner{background:linear-gradient(90deg,#051c29f0,#051c2960),url('assets/home/desk.webp') center/cover;border:1px solid #d8b973;border-radius:17px;padding:25px 20px;margin-bottom:18px}.extras-banner h2{font:32px/1.1 var(--serif);margin:0 0 12px}.extras-banner p{font:18px/1.4 var(--serif);max-width:90%}.extra-form{border:1px solid #b59c61;border-radius:17px;padding:20px}.extra-form label{display:block;font:19px var(--serif);color:#eed494;margin:17px 0 7px}.extra-form input,.extra-form textarea{font:18px var(--serif);width:100%;padding:13px;color:#f4ead3;background:#041c27;border:1px solid #bfa361;border-radius:10px;min-width:0}.extra-form textarea{min-height:100px;resize:vertical}.extra-form .choice-control{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;border:1px solid #bfa361;border-radius:10px;background:#041c27;color:#f4ead3;padding:12px;font:21px var(--serif)}.hour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.hour-grid button{border:1px solid #b3985c;border-radius:9px;padding:12px 3px;background:#092d39;color:#efcf8d;font:22px var(--serif)}.extra-status{font:11px/1.4 var(--sans);color:#e8c989}.extras-empty{padding:25px 20px;text-align:center}.extras-empty h2{font:29px var(--serif)}.extras-empty p{font:17px/1.4 var(--serif)}.extra-error{font:13px/1.5 var(--sans);color:#ffdab0}.extra-form .review-actions{display:grid;gap:10px}.remember-access{display:flex!important;align-items:center;gap:9px;font:11px/1.4 var(--sans)!important;color:#d4cab9!important;margin:10px 0!important}.remember-access[hidden]{display:none!important}.remember-access input{width:17px;height:17px;accent-color:#d9b870}.access-biometry{margin-top:10px!important}#access-loader[hidden]{display:none}#login-view .home-curtain-video{opacity:1}.access-loading{z-index:250!important}
@media(max-width:360px){.bottom-nav button{font-size:12px!important}.bottom-nav svg{width:23px!important;height:23px!important}.restored-home .home-welcome h1{font-size:39px}.restored-home .next-lesson h2{font-size:25px}.restored-home .home-gold-button{font-size:16px}.lesson-summary{padding:15px!important}.lesson-summary h2{font-size:27px}.student-monogram{flex-basis:52px;height:52px;font-size:26px}.concierge-sector-copy strong{font-size:21px!important}.concierge-sector-copy small{font-size:14px!important}.pending-card strong{font-size:26px!important}.live-app .paris-hero{padding-inline:16px}.live-line{grid-template-columns:minmax(85px,.7fr) minmax(0,1fr)}}
.grade-slot{min-width:0;border:0;border-top:1px solid #bba36555;margin:18px 0;padding:12px 0}.grade-slot legend{color:#ddc38b;font:12px var(--sans);padding-right:10px}.grade-slot .lesson-actions{margin-top:9px}.restored-home .next-lesson:has(.home-empty-lesson){min-height:180px}.pending-count{font:500 14px/1 Inter,Arial,sans-serif!important}.access-loading-wordmark{font-family:var(--serif)!important}.hour-grid button:disabled,.calendar-grid button:disabled{opacity:.25;cursor:default}
@media(prefers-reduced-motion:reduce){.premium-video{display:none}}
