:root{--cream:#fbfaf6;--paper:#fffefa;--navy:#0d2045;--muted:#627492;--blue:#3f91e6;--blue-dark:#1766c4;--sage:#71927c;--line:#e7e9e9;--shadow:0 8px 28px #253c5910;--serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-icon{flex:none;vertical-align:middle}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6aaefa;outline-offset:3px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;background:linear-gradient(115deg,#4b9ded,#237bd5);color:#fff;border-radius:15px;padding:15px 26px;font-size:18px;font-weight:650;box-shadow:0 10px 22px #2d7fc52a;transition:transform .2s,filter .2s}.primary:hover{transform:translateY(-2px);filter:brightness(1.05)}.outline{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid #3985dd;background:#fff;color:#1f61bd;border-radius:15px;padding:14px 18px;font-size:17px;font-weight:620}.outline:hover{background:#eff7ff}.eyebrow{display:block;letter-spacing:.18em;font-size:12px;font-weight:780}.eyebrow.light{color:#fff}.service-toast{position:fixed;z-index:90;left:50%;bottom:20px;max-width:min(600px,calc(100vw - 28px));transform:translate(-50%,30px);padding:13px 19px;border-radius:12px;background:#132849;color:#fff;box-shadow:0 12px 35px #0004;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center}.service-toast.visible{transform:translate(-50%,0);opacity:1}
/* Authentication and onboarding use the 1672×941 LayerLab coordinate canvas as their desktop reference. */
.auth-layout{display:grid;grid-template-columns:61% 39%;min-height:100dvh}.auth-photo{position:relative;min-height:100dvh;background-size:cover;background-position:center}.auth-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#06162830,transparent 55%)}.auth-photo-copy{position:absolute;top:11%;left:7%;color:#142851}.auth-photo-copy em{display:block;font-family:var(--serif);font-size:33px;line-height:1.1;transform:rotate(-8deg)}.auth-photo-copy p{margin:45px 0;font-family:var(--serif);font-size:18px;line-height:1.45;color:#35415f}.auth-panel{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:100dvh;padding:72px max(8%,55px) 70px;background:#fdfbf6;overflow:hidden}.auth-panel>*{position:relative;z-index:1}.auth-language{position:absolute;right:7%;top:32px;display:flex;align-items:center;gap:12px;color:#9fa8b8;font-size:13px}.auth-language button{border:0;background:transparent;color:#173456;padding:4px}.auth-language button.active{font-weight:800;border-bottom:2px solid #173456}.brand{display:inline-flex;flex-direction:column;gap:7px;white-space:nowrap}.brand-main{font-size:29px;letter-spacing:.025em;font-weight:720}.brand-main em{font-style:normal;color:var(--sage);font-weight:500}.brand small{font-size:9px;letter-spacing:.37em;color:#536684;font-weight:650}.auth-panel>.brand{margin-bottom:74px}.auth-panel h1{margin:0;font-family:var(--serif);font-size:clamp(47px,3.8vw,66px);line-height:1.05;letter-spacing:-.045em;font-weight:500}.auth-lead{margin:20px 0 30px;color:#4c5e76;font-family:var(--serif);font-size:22px;line-height:1.4}.auth-form{display:grid;gap:12px}.auth-form label{display:block}.auth-form input{width:100%;height:56px;padding:0 22px;border:1px solid #cdd5df;border-radius:14px;background:#fff;font-size:17px;color:var(--navy)}.auth-form .large{height:57px;margin-top:7px;width:100%}.auth-divider{display:flex;align-items:center;gap:15px;margin:18px 0;color:#75859a}.auth-divider:before,.auth-divider:after{content:'';height:1px;flex:1;background:#d9dce1}.auth-google{height:55px;border:1px solid #cbd2dc;border-radius:13px;background:#fff;color:#152b53;font-size:16px;font-weight:600}.auth-google:hover{background:#f4f9ff}.auth-register{text-align:center;color:#596a81;margin:17px 0 0;font-size:15px}.auth-register button{border:0;background:none;color:#2e80d8;text-decoration:underline;font-weight:650}.prototype-note{text-align:center;font-size:11px;color:#7d8794;margin:22px 0 0}.auth-mountain{position:absolute;z-index:0!important;right:-22px;bottom:-18px;width:280px;opacity:.22;pointer-events:none}
.onboard{position:relative;display:flex;min-height:100dvh;align-items:center;flex-direction:column;padding:26px 30px 56px;overflow:hidden;text-align:center;background:#fffdfa}.onboard header{display:flex;align-items:center;flex-direction:column;gap:40px;z-index:1}.onboard .brand-main{font-size:30px}.stepper{display:flex;align-items:center;gap:10px}.stepper b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid #c6cbd1;background:#fff;color:#949ba4;font-weight:500}.stepper b:first-child{background:#72977b;border-color:#72977b;color:#fff}.stepper span{height:1px;width:70px;background:#c5cbd1}.onboard h1{position:relative;z-index:1;font-family:var(--serif);font-weight:500;font-size:68px;letter-spacing:-.04em;line-height:1;margin:38px 0 5px}.onboard>p{position:relative;z-index:1;color:#526481;font-family:var(--serif);font-size:29px;margin:0 0 28px}.language-cards{display:grid;grid-template-columns:repeat(3,minmax(0,280px));gap:18px;z-index:1}.language-card{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;height:145px;border:1px solid #ccd2d7;border-radius:13px;background:#fff;color:#11264e}.language-card.active{border:2px solid #668a71;background:#f2f8f0}.language-card strong{font:38px var(--serif)}.language-card small{letter-spacing:.25em;color:#6c7d8a;margin-top:13px}.language-card svg{position:absolute;top:15px;right:15px;color:#5f8368}.onboard h2{display:flex;align-items:center;gap:30px;width:min(100%,1010px);margin:34px 0 25px;font:36px var(--serif);font-weight:500;z-index:1}.onboard h2:before,.onboard h2:after{content:'';height:1px;flex:1;background:#d6dbdf}.goal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,326px));gap:18px;z-index:1}.goal-card{overflow:hidden;padding:0;border:1px solid #d5d7d9;border-radius:12px;background:#fff;color:#152950}.goal-card.active{border:2px solid #6a9675}.goal-card>span{display:block;height:154px;background-size:cover;background-position:center}.goal-card strong{display:block;padding:10px;font:29px var(--serif)}.onboard-next{margin-top:30px;width:450px;max-width:100%;z-index:1}.onboard-mountain{position:absolute;bottom:-34px;width:280px;opacity:.36;pointer-events:none}.onboard-mountain.left{left:-45px}.onboard-mountain.right{right:-45px;transform:scaleX(-1)}
/* Shared product shell */
.app-layout{display:grid;grid-template-columns:265px minmax(0,1fr);min-height:100dvh}.sidebar{position:relative;min-height:100dvh;padding:27px 22px;border-right:1px solid #eeefec;background:#fffdfa;overflow:hidden}.side-brand{display:block;margin:0 12px 80px}.side-brand .brand-main{font-size:27px}.side-brand .brand small{font-size:8px}.sidebar nav{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}.side-link{display:flex;align-items:center;gap:19px;height:52px;border-radius:10px;padding:0 18px;color:#2e4267;font-size:18px;font-weight:500;white-space:nowrap}.side-link:hover,.side-link.active{background:#e8f2ff;color:#0b4eac}.side-link.active{font-weight:700}.side-link svg{width:24px;height:24px}.side-mountain{position:absolute;bottom:0;left:0;width:260px;height:auto;opacity:.85;pointer-events:none}.side-motto{position:absolute;left:162px;bottom:163px;color:#163252;transform:rotate(-15deg);font-family:var(--serif);font-style:italic;font-size:14px;letter-spacing:.08em;line-height:1.1}.side-foot{position:absolute;left:34px;bottom:22px;font-size:8px;letter-spacing:.32em;color:#4c6580;line-height:1.6}.mobile-top{display:none}.main-area{position:relative;min-width:0;padding:26px 31px 30px 47px}.main-top{position:absolute;top:18px;right:32px;z-index:3;display:flex;align-items:center;gap:20px;height:43px}.icon-only{border:0;background:none;color:#0d2854;padding:4px}.top-divider{height:24px;width:1px;background:#d4d8df}.top-profile{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600}.avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#dfeee8;color:#456f58;font-family:var(--serif);font-size:21px}.page-heading h1{font-family:var(--serif);font-weight:500;font-size:clamp(44px,3.6vw,63px);line-height:1.08;letter-spacing:-.05em;margin:0}.page-heading p{font-family:var(--serif);font-size:clamp(22px,2vw,32px);line-height:1.2;color:#61718d;margin:2px 0 0;letter-spacing:-.025em}.dashboard-heading{margin-top:8px;margin-bottom:21px}.dashboard-top{display:grid;grid-template-columns:minmax(0,2.58fr) minmax(315px,1fr);gap:23px}.hero-mission{position:relative;height:406px;overflow:hidden;border-radius:13px;background-size:cover;background-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#081320ae 0%,#07101a5c 35%,transparent 72%),linear-gradient(0deg,#07121d80,transparent 35%)}.hero-content{position:absolute;bottom:28px;left:32px;color:#fff}.hero-content h2{margin:12px 0 8px;font:50px var(--serif);letter-spacing:-.04em}.hero-content p{margin:0 0 19px;font-size:17px;line-height:1.45}.hero-button{padding:15px 30px}.hero-progress{position:absolute;right:29px;bottom:36px;display:flex;align-items:center;gap:12px;color:#fff;font-weight:700}.hero-progress span{width:180px;height:8px;border-radius:8px;background:#ffffff83;overflow:hidden}.hero-progress i{display:block;width:44%;height:100%;border-radius:8px;background:#9eddb6}.dashboard-stats{display:flex;flex-direction:column;gap:16px}.stat-card{display:flex;align-items:center;gap:17px;min-height:105px;padding:18px 19px;border:1px solid #f0f1ef;border-radius:16px;background:#fff;box-shadow:var(--shadow)}.stat-card>span:nth-child(2){display:flex;flex:1;flex-direction:column}.stat-card strong{font:25px var(--serif);letter-spacing:-.025em}.stat-card span span{display:none}.stat-card small{color:#657590;font-size:14px;margin-top:4px}.stat-card>svg{color:#566e8c}.stat-icon{display:grid;place-items:center;width:63px;height:63px;border-radius:50%}.stat-icon.sage{background:#e6f0e6;color:#497954}.stat-icon.blue{background:#e5f1ff;color:#174b9d}.quote{margin:7px 0 0;padding:0 17px;font:italic 18px/1.28 var(--serif);text-align:center;color:#5c7184}.section-head{display:flex;align-items:center;justify-content:space-between;margin:22px 0 16px}.section-head h2{margin:0;font:32px var(--serif);letter-spacing:-.03em}.section-head a{display:inline-flex;gap:6px;align-items:center;color:#1672d2;font-size:14px;font-weight:650}.mission-grid{display:grid;gap:18px}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mission-card{min-width:0;display:flex;flex-direction:column;padding:0;overflow:hidden;border:1px solid #e0e3e6;border-radius:12px;background:#fff;color:#122b54;text-align:left;box-shadow:0 3px 10px #19315108;transition:transform .2s,box-shadow .2s}.mission-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #1b3e6122}.mission-image{display:block;width:100%;height:194px;background-size:cover;background-position:center}.mission-copy{display:flex;flex-direction:column;gap:3px;padding:11px 15px 12px}.mission-copy strong{font:26px var(--serif);letter-spacing:-.035em}.mission-copy>span{color:#5e6e88;font-size:14px;line-height:1.3}.mission-copy small{position:relative;display:flex;align-items:center;gap:9px;margin-top:9px;padding-right:27px;color:#6a7590;font-size:12px}.mission-copy small b{position:absolute;right:0;top:-2px;color:#163767}.status-dot{display:inline-block;width:12px;height:12px;border:1.5px solid #7b9b87;border-radius:50%}.status-dot.done{background:#719b7f}.dashboard-grid .mission-image{height:158px}.dashboard-grid .mission-copy{padding:9px 15px}.dashboard-grid .mission-copy strong{font-size:23px}
.library-heading{margin:0 0 19px}.search-field{display:flex;align-items:center;gap:12px;width:min(850px,100%);height:54px;padding:0 20px;border:1px solid #cbd3df;background:#fff;border-radius:12px;color:#6a7790}.search-field input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#122c54}.filter-row{display:flex;gap:8px;margin:18px 0 19px;overflow-x:auto}.filter-chip{flex:none;border:1px solid #cdd3db;background:#fff;color:#62718b;border-radius:22px;padding:9px 23px;font-size:14px}.filter-chip.active{background:#4094e7;border-color:#4094e7;color:#fff}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.library-grid .mission-image{height:194px}.library-grid .mission-copy{min-height:112px}.empty-state{padding:55px;border:1px dashed #bfcada;border-radius:14px;color:#6a7790;text-align:center}
.detail-hero{position:relative;min-height:420px;margin-top:42px;border-radius:14px;overflow:hidden;background-size:cover;background-position:center}.detail-hero-copy{position:absolute;left:41px;bottom:34px;max-width:65%;color:#fff}.detail-hero h1{font:72px var(--serif);line-height:1.1;letter-spacing:-.05em;margin:13px 0}.detail-hero p{font:27px/1.28 var(--serif);max-width:640px;margin:0 0 30px}.hero-facts{display:flex;gap:28px;font-size:14px}.hero-facts span{display:flex;align-items:center;gap:9px}.detail-panels{display:grid;grid-template-columns:1.05fr 1.05fr .62fr;gap:14px;margin-top:16px}.detail-panels>section{border:1px solid #ebeeed;border-radius:15px;background:#fff;padding:23px 26px;min-height:373px}.detail-panels h2{font:33px var(--serif);margin:0}.detail-panels p{color:#697a94;font-size:16px;line-height:1.4}.detail-goals ol{list-style:none;margin:20px 0 0;padding:0}.detail-goals li{display:flex;align-items:center;gap:18px;padding:17px 2px;border-top:1px solid #dce3e7;font-size:17px}.detail-goals li svg{color:#4e7b60}.detail-path .path-steps{display:flex;justify-content:space-between;gap:5px;margin-top:26px}.path-steps span{display:flex;align-items:center;flex-direction:column;gap:8px;font-size:13px;text-align:center}.path-steps i{display:grid;place-items:center;width:61px;height:61px;border-radius:50%;background:#ebf3ec;color:#487457}.path-steps span:nth-child(even) i{background:#e6f1ff;color:#2f68b2}.detail-path blockquote{margin:30px 0 0;padding:18px;border-radius:12px;background:#fcf6e9;color:#55717c;font:italic 22px/1.3 var(--serif);text-align:center}.detail-actions{display:flex;flex-direction:column;gap:10px}.detail-actions .primary,.detail-actions .outline{width:100%;min-height:62px}.detail-actions p{margin-top:18px;padding:20px;background:#eff6ef;border-radius:13px;color:#416e50}

/* Immersive screens: clean image/video remains behind native, interactive layers. */
.focus-stage{position:relative;min-height:100dvh;overflow:hidden;background:#172332;color:#fff}.focus-bg,.focus-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.focus-video{z-index:1}.focus-vignette{position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(180deg,#071b37a3 0%,transparent 22%,transparent 60%,#061a35a8 100%)}.focus-header{position:absolute;z-index:8;top:28px;left:42px;right:42px;display:flex;align-items:center;justify-content:space-between;gap:20px;text-shadow:0 2px 12px #0008}.focus-brand{display:inline-flex;align-items:center;gap:9px;font-size:20px;letter-spacing:.11em}.focus-star{color:#f0d7a5;font-size:34px;line-height:1}.focus-step{padding:10px 22px;border:1px solid #ffffff8c;border-radius:40px;background:#08254282;font-size:15px;letter-spacing:.12em;font-weight:680}.focus-tools{display:flex;align-items:center;gap:8px}.focus-tools button,.replay-video{border:1px solid #ffffffad;border-radius:22px;background:#112a48ad;color:#fff;padding:9px 17px}.focus-tools button:hover,.replay-video:hover{background:#18517bcc}.replay-video{position:absolute;z-index:5;top:105px;right:45px;display:flex;align-items:center;gap:7px}.focus-bottom{position:absolute;z-index:6;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:30px;width:min(1320px,calc(100% - 80px));min-height:172px;padding:26px 32px;border:1px solid #ffffff8c;border-radius:20px;background:#0b2444e8;box-shadow:0 20px 60px #04101b8c;backdrop-filter:blur(14px)}.focus-bottom.slim{min-height:154px}.focus-bottom small{font-size:12px;letter-spacing:.17em;color:#c2ddf8;font-weight:760}.focus-bottom h1{margin:10px 0 7px;font:42px/1.1 var(--serif);letter-spacing:-.03em}.focus-bottom p{margin:0;color:#deebf5;font-size:16px;line-height:1.4}.focus-bottom-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.focus-bottom .outline.light{border-color:#95c6f4;background:#174572;color:#fff;white-space:nowrap}.cream-button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:53px;border:0;border-radius:12px;background:#f7f0e2;color:#143156;padding:12px 18px;font-size:16px;font-weight:700;white-space:nowrap}.cream-button:hover{background:#fff}.drink-hotspots{position:absolute;z-index:4;inset:0;pointer-events:none}.drink-hotspot{position:absolute;pointer-events:auto;border:0;background:transparent;padding:0;min-width:130px;height:35%;bottom:25%;color:#fff;transition:transform .2s}.drink-hotspot:hover{transform:scale(1.025)}.drink-hotspot.americano{left:15%;width:17%}.drink-hotspot.latte{left:38%;width:18%}.drink-hotspot.tea{left:62%;width:18%}.hotspot-outline{display:block;width:100%;height:100%;border:3px solid #b9eaff;border-radius:34px;box-shadow:0 0 0 4px #178ce26b,0 0 18px #8de7ff;opacity:.8}.drink-hotspot.selected .hotspot-outline{border-color:#fff09a;box-shadow:0 0 0 5px #f7c55c95,0 0 30px #ffeeb4}.hotspot-label{position:absolute;z-index:1;top:-61px;left:50%;transform:translateX(-50%);width:max-content;max-width:210px;padding:8px 16px;border:1px solid #d8f3ff;border-radius:10px;background:#0b305cbf;font-size:16px;font-weight:750;text-shadow:0 1px 4px #000}.hotspot-label small{display:block;margin-top:4px;color:#deedff;font-size:12px;font-weight:500}.cafe-experience .focus-bg,.cafe-experience .focus-video{object-position:center 39%}.hotel-experience .focus-bg,.hotel-experience .focus-video{object-position:center 45%}
.branch-experience .focus-vignette,.drill-experience .focus-vignette,.speaking-experience .focus-vignette{background:#0a1f3b74}.branch-card,.drill-card,.speaking-card{position:relative;z-index:5;margin-inline:auto;color:#152d50;background:#fffdf8ed;backdrop-filter:blur(20px);box-shadow:0 28px 70px #0718279c}.branch-card{width:min(760px,calc(100% - 40px));margin-top:clamp(140px,15vh,180px);padding:33px 42px 25px;border:1px solid #fff;border-radius:20px;text-align:center}.branch-card>small{color:#4483bd;font-weight:800;letter-spacing:.16em}.branch-card h1{font:48px/1.05 var(--serif);letter-spacing:-.035em;margin:14px 0 9px}.branch-card h2{font-size:25px;margin:0;color:#283f61}.branch-card>p{color:#66788d;margin:8px 0 26px}.branch-options{display:grid;gap:11px}.branch-options button{display:flex;align-items:center;gap:16px;width:100%;min-height:96px;padding:15px 18px;border:1px solid #d1dce9;border-radius:14px;background:#fff;text-align:left;color:#133059}.branch-options button.chosen,.branch-options button:hover{border:2px solid #4a9be3;background:#f1f8ff}.branch-options button>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:4px}.branch-options strong{font-size:18px}.branch-options small{font-size:16px;color:#62738c}.choice-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e4f2e6;color:#4d8264}.choice-icon.blue{background:#e6f1ff;color:#3b76c6}.branch-card-footer{display:flex;justify-content:space-around;gap:10px;padding-top:20px}.branch-card-footer button,.speaking-actions button{display:inline-flex;align-items:center;gap:7px;padding:8px 4px;border:0;background:transparent;color:#4773a1;font-size:14px}.branch-card-footer button:hover,.speaking-actions button:hover{text-decoration:underline}.branch-feedback{margin-top:17px;padding:12px;border-radius:10px;background:#eaf5ed;color:#2f6844;font-size:14px}.branch-feedback a{display:inline-flex;gap:4px;align-items:center;color:#136aba;font-weight:750}
.drill-card{width:min(1160px,calc(100% - 60px));margin-top:clamp(110px,11vh,135px);padding:34px 46px 29px;border-radius:22px}.drill-head{display:flex;justify-content:space-between;align-items:center;color:#4783ad;letter-spacing:.15em;font-size:14px;font-weight:750}.drill-card h1{font:62px/1.05 var(--serif);letter-spacing:-.04em;margin:20px 0 9px}.drill-meaning{font:italic 27px var(--serif);color:#405f7f;margin:0 0 28px}.build-area{display:flex;align-items:center;gap:10px;min-height:100px;padding:17px 20px;border:2px dashed #b8d3e8;border-radius:15px;background:#f6fbff;flex-wrap:wrap}.build-placeholder{font-size:17px;color:#7890a9}.built-chip{border:1px solid #6a9dc7;border-radius:11px;background:#fff;color:#133257;padding:11px 15px;font-size:24px}.word-bank{display:flex;gap:14px;justify-content:center;padding:28px 0 10px}.word-tile{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;min-width:190px;min-height:104px;border:1px solid #cbd9e5;border-radius:13px;background:#fff;color:#183654;box-shadow:0 5px 12px #173a4e12}.word-tile:hover{border-color:#4a95dc;transform:translateY(-2px)}.word-tile:disabled{opacity:.35}.word-tile strong{font-size:26px}.word-tile small{color:#74849a;font-size:14px}.drill-result{height:25px;text-align:center;color:#b44e4e;font-size:15px}.drill-result.correct{color:#3d8054}.drill-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 29px}.drill-actions>div{display:flex;gap:9px;flex-wrap:wrap}.drill-actions .outline{padding:11px 16px;font-size:14px}.drill-actions .primary{padding:13px 24px}.drill-track{display:flex;justify-content:space-between;gap:5px;border-top:1px solid #d8e2e8;padding-top:22px}.drill-track span{display:flex;align-items:center;gap:7px;color:#7d8b9e;font-size:14px}.drill-track i{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#e3e8ec;color:#8f9cac}.drill-track .done i{background:#dcefe2;color:#4c8460}.drill-track .current{color:#2976c9;font-weight:750}.drill-track .current i{background:#deefff;color:#2c7bc9}
.speaking-card{width:min(820px,calc(100% - 40px));margin-top:clamp(150px,16vh,190px);padding:39px 55px 25px;border-radius:22px;text-align:center}.speaking-card h1{font:58px/1.1 var(--serif);letter-spacing:-.04em;margin:0 0 12px}.speaking-card>p:first-of-type{font-size:22px;color:#566d8d;margin:0 0 18px}.hint-button{background:none;border:0;color:#347ec9;text-decoration:underline}.speech-hint{display:inline-block;border-radius:10px;background:#eaf4fc;padding:8px 15px;font-size:21px}.mic-button{display:grid;place-items:center;width:128px;height:128px;margin:27px auto 11px;border:9px solid #dbeafa;border-radius:50%;background:#3f94e6;color:#fff;box-shadow:0 10px 24px #3189d466}.mic-button:hover{background:#257bd0}.mic-status{display:block;min-height:25px;font-size:16px;color:#46759b}.recognized{display:flex;align-items:center;justify-content:center;gap:15px;margin:13px auto;padding:12px;border-radius:10px;background:#edf7f1}.recognized small{color:#538665;font-weight:800}.recognized strong{font-size:19px}.typed-speech{display:flex;gap:8px;margin-top:12px}.typed-speech input{flex:1;min-width:0;padding:12px;border:1px solid #b9cddd;border-radius:9px}.typed-speech .primary{padding:10px}.speaking-actions{display:flex;justify-content:center;gap:30px;margin:20px 0 11px;padding-top:15px;border-top:1px solid #dce4ea}.speaking-caveat{font-size:12px!important;line-height:1.4;color:#718399!important;margin:0!important}
.free-experience .focus-vignette{background:linear-gradient(0deg,#04152de0 0%,transparent 52%,#0819366b)}.free-dialogue{position:absolute;z-index:6;left:50%;bottom:27px;transform:translateX(-50%);width:min(1220px,calc(100% - 60px));padding:19px 26px 15px;border:1px solid #85acc4b0;border-radius:18px;background:#0a2445ed;backdrop-filter:blur(14px);box-shadow:0 19px 45px #0716269c}.free-dialogue-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid #ffffff35;color:#d5e9f9;font-size:15px}.free-dialogue-head button{display:flex;align-items:center;gap:6px;border:0;background:none;color:#d7eafa;font-size:14px}.free-lines{display:flex;gap:18px;align-items:flex-start;padding:18px 0}.free-avatar{display:grid;place-items:center;width:62px;height:62px;border:2px solid #83c5f0;border-radius:50%;background:#28618a;color:#fff;font-size:24px}.free-lines>div:nth-child(2){flex:1}.free-lines small{display:block;color:#a8d4f2;margin-bottom:5px}.free-lines strong{font:27px/1.2 var(--serif);font-weight:500}.free-lines strong button{display:inline-flex;border:0;background:transparent;color:#bde8f5;vertical-align:middle}.free-lines p{margin:6px 0 0;color:#d5e5ef;font-size:16px}.free-input{display:flex;align-items:center;gap:6px;height:56px;padding:5px;border:1px solid #7ea4c5;border-radius:12px;background:#fff}.free-input input{flex:1;min-width:0;outline:0;border:0;color:#17345a;font-size:16px}.free-input button{display:grid;place-items:center;width:43px;height:43px;border:0;border-radius:9px;background:#eaf3fb;color:#2679c2}.free-input button:last-child{background:#3a92e2;color:#fff}.free-disclaimer{display:block;margin-top:9px;color:#b7ccdd;font-size:11px}.free-history{max-height:110px;overflow:auto;margin-bottom:9px;padding:3px 14px;background:#ffffff16;border-radius:7px}.free-history p{margin:4px 0;font-size:13px;line-height:1.6}

/* Learning hub, review and account pages. */
.practice-layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:23px;margin-top:31px}.practice-hero{position:relative;min-height:320px;overflow:hidden;border-radius:15px;background-size:cover;background-position:center}.practice-hero>div:last-child{position:absolute;left:38px;bottom:30px;color:#fff}.practice-hero h2{margin:8px 0;font:57px var(--serif);letter-spacing:-.04em}.practice-hero p{font-size:18px;line-height:1.4;margin:0 0 19px}.practice-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:19px}.mode-card{display:flex;align-items:center;gap:16px;min-height:125px;padding:12px 16px 12px 12px;border:1px solid #e0e4e8;border-radius:14px;background:#fff;color:#102b50;text-align:left}.mode-card:hover{border-color:#8abbe7;box-shadow:var(--shadow)}.mode-card>span:first-child{align-self:stretch;min-width:107px;width:107px;border-radius:9px;background-size:cover;background-position:center}.mode-card>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}.mode-card strong{font:25px var(--serif)}.mode-card small{color:#667890;font-size:13px;line-height:1.3}.mode-card i{color:#4279ad;margin-top:3px}.practice-aside .aside-card{border:1px solid #e5e9ea;background:#fff;border-radius:16px;padding:25px 22px}.aside-card h2,.settings-panel h2,.notes-list h2,.skills-card h2,.chart-card h2{margin:0;font:31px var(--serif)}.recent-row{display:flex;align-items:center;gap:11px;width:100%;padding:17px 0;border:0;border-bottom:1px solid #e5e9eb;background:transparent;color:#142d50;text-align:left}.recent-row img{width:66px;height:60px;border-radius:8px;object-fit:cover}.recent-row span{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.recent-row strong{font-size:16px}.recent-row small{font-size:13px;color:#7a8795}.practice-aside blockquote{margin:23px 0;padding:28px 8px;text-align:center;color:#72907c;font:italic 25px/1.2 var(--serif)}
.notes-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.notes-search{display:flex;align-items:center;gap:8px;width:290px;height:44px;padding:0 12px;border:1px solid #d5dae0;border-radius:10px;background:#fff;color:#8290a3}.notes-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:14px}.notes-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;margin-top:30px}.notes-list{padding:22px 13px;border:1px solid #e4e7e9;border-radius:15px;background:#fff;align-self:start}.notes-list h2{font-size:25px;padding:0 8px 17px}.note-list-item{display:flex;align-items:center;gap:11px;width:100%;min-height:83px;padding:8px;border:0;border-radius:10px;background:#fff;color:#143052;text-align:left}.note-list-item:hover,.note-list-item.selected{background:#edf5fb}.note-list-item[hidden]{display:none}.note-list-item img{width:68px;height:61px;border-radius:7px;object-fit:cover}.note-list-item>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.note-list-item strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-list-item small{font-size:11px;color:#78889d}.note-list-item em{font-style:normal;font-size:11px;color:#5c8c70}.note-sheet{overflow:hidden;border:1px solid #e7e7e2;border-radius:16px;background:#fff}.note-banner{height:146px;background-size:cover;background-position:center 48%}.note-inner{padding:23px 33px 27px}.note-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.note-title h2{margin:0;font:41px var(--serif)}.note-title p{margin:5px 0 18px;color:#67778b}.note-badge{border-radius:25px;padding:8px 14px;background:#e6f2e8;color:#4b7a56;font-size:12px;white-space:nowrap}.note-inner h3{margin:9px 0 10px;font:28px var(--serif)}.phrase-row{display:grid;grid-template-columns:1.35fr 1fr 34px auto;align-items:center;gap:14px;min-height:77px;border-top:1px solid #e4e9eb}.phrase-row>span:first-child{display:flex;flex-direction:column;gap:4px}.phrase-row strong{font-size:20px}.phrase-row small{color:#748398;font-size:12px}.phrase-row>span:nth-child(2){font-size:14px;color:#566a83}.phrase-row button:not(.small-pill){border:0;background:none;color:#287ac6}.small-pill{border:1px solid #b9d8ed;background:#f3f9ff;color:#2873ba;border-radius:21px;padding:8px 13px;font-size:12px;white-space:nowrap}.words-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:13px;padding:20px 0;border-top:1px solid #e4e8eb}.words-row strong{margin-right:10px}.words-row>span{padding:7px 11px;border-radius:8px;background:#f2f7f1;font-weight:650}.words-row small{font-weight:400;color:#66806c}.note-bottom{display:flex;align-items:center;gap:25px;margin-top:3px}.note-bottom span{font-size:13px;line-height:1.4;color:#7a8794}
.progress-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0 18px}.progress-stats .stat-card{min-height:140px}.progress-middle{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.chart-card,.skills-card{min-height:310px;padding:24px 27px;border:1px solid #e9eaea;border-radius:16px;background:#fff}.chart-card p,.skills-card>p{margin:6px 0 0;color:#74839a;font-size:14px}.panel-title{display:flex;justify-content:space-between;align-items:start}.panel-title>span{font-size:12px;color:#7a8997}.bar-chart{height:205px;display:grid;grid-template-columns:45px repeat(7,1fr);gap:10px;align-items:end;margin-top:21px}.chart-grid{display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;color:#8392a2;font-size:11px}.bar-col{display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:8px;height:100%}.bar-col span{width:min(55px,75%);min-height:3px;border-radius:6px 6px 0 0;background:#8fb7d9}.bar-col:nth-child(3n) span{background:#83aa91}.bar-col small{color:#778799;font-size:12px}.skills-card>p{margin-bottom:25px}.skill-row{display:grid;grid-template-columns:135px 1fr 38px;align-items:center;gap:12px;margin:17px 0;font-size:14px}.skill-row strong{font-weight:600}.skill-row span{height:9px;border-radius:10px;background:#e8eef1;overflow:hidden}.skill-row i{display:block;height:100%;border-radius:10px;background:#87b69a}.skill-row:nth-child(even) i{background:#8db9e2}.skill-row b{color:#647990;font-weight:600;text-align:right}.journey-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.journey-row .mission-image{height:123px}.journey-row .mission-copy strong{font-size:21px}.journey-row .mission-copy>span{font-size:12px}.suggestion{display:flex;flex-direction:column;align-items:flex-start;padding:17px 18px;border-radius:13px;background:#eaf3ec}.suggestion small{color:#6b917a;font-size:11px;letter-spacing:.1em;font-weight:770}.suggestion h3{font:26px/1.1 var(--serif);margin:10px 0 7px}.suggestion p{margin:0 0 auto;color:#60836e;font-size:12px;line-height:1.35}.suggestion .primary{font-size:13px;padding:10px 13px;border-radius:8px;margin-top:9px}
.profile-card{display:flex;align-items:center;gap:22px;padding:22px 29px;margin-top:27px;min-height:140px;border:1px solid #e8eae9;border-radius:16px;background:#fff}.profile-avatar,.avatar{display:grid;place-items:center;border-radius:50%;background:#b7d4e0;color:#16385b}.profile-avatar{width:86px;height:86px;font:37px var(--serif)}.profile-card>div:nth-child(2){flex:1}.profile-card h2{font:33px var(--serif);margin:0 0 4px}.profile-card p{font-size:14px;color:#75849a;margin:0 0 8px}.profile-card em{color:#668675;font:italic 16px var(--serif)}.profile-card .outline{font-size:14px;padding:11px 16px}.settings-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:19px;margin-top:18px}.settings-side{display:flex;flex-direction:column;gap:18px}.settings-panel{padding:24px 29px 16px;border:1px solid #e8eae9;border-radius:16px;background:#fff}.settings-panel>p{margin:6px 0 15px;color:#7a899b;font-size:14px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:81px;border-top:1px solid #e6eaed}.setting-row>span:first-child{display:flex;align-items:center;gap:14px;color:#65809e}.setting-row>span:first-child>span{display:flex;flex-direction:column;gap:4px}.setting-row strong{color:#193050;font-size:15px}.setting-row small{color:#8390a0;font-size:12px}.setting-row select{padding:8px 13px;border:1px solid #d1dce4;border-radius:9px;background:#fff;color:#244461;min-width:150px}.segmented{display:flex;align-items:center;gap:0;padding:3px;border:1px solid #d7e0e7;border-radius:9px;background:#f6f8f9}.segmented button{border:0;border-radius:7px;background:transparent;padding:8px 11px;color:#638099;font-size:13px;white-space:nowrap}.segmented button.active{background:#438dd5;color:#fff}.toggle{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#64816f;font-size:13px}.toggle span{width:44px;height:25px;border-radius:20px;background:#c4cdd1;padding:3px;transition:background .2s}.toggle span:before{content:'';display:block;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}.toggle.on span{background:#7cad89}.toggle.on span:before{transform:translateX(19px)}.settings-panel.account{padding-bottom:13px}.account button{display:flex;justify-content:space-between;width:100%;padding:15px 0;border:0;border-top:1px solid #e7ebec;background:transparent;text-align:left;color:#27527c}
body[data-text-size=large] .phrase-row strong,body[data-text-size=large] .free-lines strong,body[data-text-size=large] .drill-card h1{font-size:1.15em}body[data-text-size=small] .phrase-row strong,body[data-text-size=small] .free-lines strong{font-size:.9em}
@media(max-width:1250px){.dashboard-top{grid-template-columns:minmax(0,1fr) 250px}.dashboard-stats .stat-card{min-height:90px}.detail-panels{grid-template-columns:1fr 1fr}.detail-actions{grid-column:1/-1;flex-direction:row;align-items:start;min-height:0!important}.detail-actions p{margin:0}.practice-layout{grid-template-columns:minmax(0,1fr) 275px}.mode-card>span:first-child{width:80px;min-width:80px}.settings-grid{grid-template-columns:1fr}.progress-middle{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.auth-layout{grid-template-columns:1fr}.auth-photo{min-height:270px}.auth-photo-copy{top:26px;left:25px}.auth-photo-copy p{display:none}.auth-panel{min-height:0;padding:60px 7%}.auth-panel>.brand{margin-bottom:35px}.onboard h1{font-size:49px}.onboard>p{font-size:23px}.app-layout{display:block}.sidebar{position:fixed;z-index:30;left:0;top:0;bottom:0;width:270px;transform:translateX(-100%);transition:transform .25s}.sidebar.is-open{transform:translateX(0)}.mobile-top{display:flex}.main-area{padding:18px 22px 50px}.main-top{display:none}.dashboard-top{grid-template-columns:1fr}.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr)}.dashboard-stats .quote{display:none}.mission-grid,.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-layout,.notes-layout{grid-template-columns:1fr}.notes-list{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.notes-list h2{grid-column:1/-1}.progress-stats{gap:9px}.progress-stats .stat-card{padding:12px}.progress-middle{grid-template-columns:1fr}.journey-row{grid-template-columns:repeat(2,1fr)}.focus-header{left:20px;right:20px}.focus-bottom{width:calc(100% - 35px);flex-direction:column;align-items:flex-start}.drink-hotspot{bottom:32%;height:25%}.branch-card,.drill-card,.speaking-card{margin-top:120px}.drill-track{flex-wrap:wrap}.settings-grid{grid-template-columns:1fr}}
@media(max-width:620px){.auth-photo{min-height:220px}.auth-panel h1{font-size:45px}.auth-lead{font-size:19px}.onboard{padding:20px 16px 50px}.onboard h1{font-size:42px;margin-top:30px}.onboard>p{font-size:18px}.language-cards{grid-template-columns:repeat(3,1fr);width:100%;gap:7px}.language-card{height:100px}.language-card strong{font-size:15px}.goal-cards{width:100%;gap:7px}.goal-card{min-width:0}.page-heading h1{font-size:42px}.page-heading p{font-size:17px}.main-area{padding:14px 14px 40px}.hero-mission{min-height:390px}.hero-content h2{font-size:38px}.dashboard-stats{grid-template-columns:1fr}.mission-grid,.library-grid{grid-template-columns:1fr}.detail-hero{margin-top:12px;min-height:430px}.detail-hero-copy{max-width:90%;left:23px}.detail-hero h1{font-size:52px}.detail-hero p{font-size:20px}.hero-facts{flex-wrap:wrap;gap:10px}.detail-panels{grid-template-columns:1fr}.detail-actions{grid-column:auto;flex-direction:column}.practice-modes{grid-template-columns:1fr}.notes-heading{display:block}.notes-search{margin-top:15px;width:100%}.notes-list{display:block}.note-inner{padding:17px}.phrase-row{grid-template-columns:1fr 30px;gap:5px;padding:12px 0}.phrase-row>span:nth-child(2){grid-row:2}.phrase-row .small-pill{grid-column:2;grid-row:2;padding:6px 8px;font-size:10px}.progress-stats{grid-template-columns:1fr}.journey-row{grid-template-columns:1fr}.profile-card{padding:15px;gap:9px}.profile-avatar{width:56px;height:56px}.profile-card h2{font-size:25px}.profile-card .outline{font-size:0;padding:8px}.settings-panel{padding:18px}.setting-row{align-items:flex-start;flex-direction:column;padding:12px 0}.focus-header{top:12px;left:11px;right:11px;gap:7px}.focus-brand{font-size:13px}.focus-star{font-size:19px}.focus-step{font-size:10px;padding:7px}.focus-tools{gap:3px}.focus-tools button{font-size:11px;padding:6px}.replay-video{top:62px;right:12px;font-size:11px}.focus-bottom{bottom:10px;width:calc(100% - 20px);min-height:0;padding:17px;gap:12px}.focus-bottom h1{font-size:29px}.focus-bottom p{font-size:13px}.focus-bottom-actions{justify-content:flex-start}.focus-bottom .outline.light,.cream-button{font-size:12px;min-height:40px;padding:7px}.drink-hotspot{bottom:34%;height:24%;min-width:0}.drink-hotspot.americano{left:5%;width:27%}.drink-hotspot.latte{left:36%;width:27%}.drink-hotspot.tea{left:68%;width:27%}.hotspot-label{top:-52px;font-size:10px;padding:6px;max-width:112px;white-space:normal}.hotspot-label small{font-size:8px}.branch-card,.drill-card,.speaking-card{width:calc(100% - 20px);margin-top:74px;padding:18px}.branch-card h1{font-size:31px}.branch-card h2{font-size:18px}.branch-options button{min-height:78px;padding:8px}.branch-options strong{font-size:13px}.branch-options small{font-size:11px}.branch-card-footer{flex-wrap:wrap;padding-top:8px}.drill-card h1,.speaking-card h1{font-size:38px}.drill-meaning{font-size:18px}.word-bank{gap:5px}.word-tile{min-width:0;flex:1;padding:7px}.word-tile strong{font-size:16px}.drill-actions{flex-direction:column;align-items:stretch}.drill-actions>div{justify-content:center}.drill-track{gap:7px}.drill-track span{font-size:10px}.mic-button{width:105px;height:105px}.speaking-actions{gap:7px;flex-wrap:wrap}.free-dialogue{bottom:10px;width:calc(100% - 20px);padding:12px}.free-lines strong{font-size:19px}.free-avatar{width:45px;height:45px}.free-dialogue-head{font-size:11px}.free-dialogue-head button{font-size:10px}}

/* Final coordinate corrections from side-by-side 1672×941 comparison. */
.top-profile .avatar{object-fit:cover;background:#fff}
@media(min-width:901px){.library-heading,.search-field,.filter-row,.library-grid{margin-left:30px}.library-grid{width:calc(100% - 54px)}}
.progress-stats{margin-top:19px;margin-bottom:14px}
.progress-stats .stat-card{min-height:108px}
.bar-chart{height:188px;margin-top:17px}

/* LayerLab 1672×941 alignment pass: keep the photographic layers separate from
   selectable copy, controls, charts, and exercise state. */
@media(min-width:901px){
  .side-brand{margin-bottom:57px}
  .main-area:has(.detail-hero){padding-left:18px;padding-right:22px}
  .main-area:has(.progress-stats){padding-left:39px}
  .main-area:has(.progress-stats) .progress-middle{grid-template-columns:1.25fr 1fr;gap:14px}
  .main-area:has(.progress-stats) .journey-row{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(285px,1.05fr)}
}
.detail-hero{background-position:center 51%}
.detail-hero-copy{left:40px;bottom:27px}
.detail-hero-copy p{max-width:520px}
.detail-panels{grid-template-columns:1.04fr 1.07fr .62fr}
.detail-panels>section{padding:22px 25px;min-height:403px}
.detail-goals ol{margin-top:18px}
.detail-goals li{gap:15px;min-height:91px;padding:11px 0}
.detail-goals li .goal-number{display:grid;place-items:center;flex:none;width:41px;height:41px;border-radius:50%;background:#d9eade;color:#1d6138;font:bold 22px var(--serif)}
.detail-goals li>svg{flex:none;color:#102f60}
.detail-goals li>span:last-child{display:flex;flex-direction:column;gap:4px}
.detail-goals li strong{font:21px var(--serif)}
.detail-goals li small{color:#667b95;font-size:14px}
.detail-path{position:relative}
.detail-path .how-link{position:absolute;right:25px;top:26px;color:#1d77d0;font-size:13px}
.path-steps span{min-width:0}
.path-steps strong{font:19px var(--serif)}
.path-steps small{color:#6b7c96;font-size:12px;line-height:1.25}
.detail-path blockquote{margin-top:30px;min-height:105px;display:grid;place-items:center}
.detail-actions .outline{font-family:var(--serif);font-size:20px}
.detail-actions p{margin-top:14px;min-height:181px;padding:28px 19px;font:17px/1.35 var(--serif)}
.focus-stage.drill-experience .focus-vignette{background:#06172c43}
.drill-card{background:#fffdf9f7}
.drill-card h1,.speaking-card h1{font-family:var(--sans);font-weight:760;letter-spacing:-.045em}
.drill-meaning{font-family:var(--sans);font-style:normal;font-weight:520}
.build-area{border-style:solid;background:#ffffff8d}
.built-chip{font-family:var(--sans);font-weight:780}
.word-tile strong{font-weight:740}
.drill-card .primary{background:#1569be}
.drill-track{position:relative}
.drill-track:before{content:'';position:absolute;left:8%;right:8%;top:39px;height:2px;background:#d7e2e8;z-index:-1}
.drill-track span{flex-direction:column;gap:6px;min-width:80px}
.drill-track i{font-style:normal}
.speaking-experience .focus-bg{filter:blur(3px);transform:scale(1.015)}
.speaking-experience .focus-vignette{background:#071c2f20}
.speaking-card{min-height:650px;margin-top:165px;padding:45px 59px 30px;background:#fffdf8f5}
.speaking-card h1{font-size:53px;margin-bottom:11px}
.speaking-card>p:first-of-type{font-size:29px;font-weight:650;color:#345365;margin-bottom:25px}
.hint-button{min-height:54px;padding:0 32px;border-radius:28px;background:#eaf2f7;color:#225579;text-decoration:none;font-weight:700}
.mic-button{width:190px;height:190px;margin:23px auto 12px;border:25px solid #d9e9fc;background:linear-gradient(135deg,#409ced,#285e9d);box-shadow:0 0 0 21px #eaf3fcad}
.mic-status{font-size:18px;font-weight:600;color:#66869b}
.speaking-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:34px 0 0;padding:0;border:0}
.speaking-actions button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:63px;border:1px solid #bcdbf3;border-radius:12px;background:#eaf6ff;color:#18446c;font-size:16px;font-weight:700}
.speaking-caveat{font-size:10px!important;opacity:.68}
.progress-stats .stat-icon{width:74px;height:74px}
.progress-stats .stat-card{gap:19px}
.progress-stats .stat-card strong{font-size:27px}
.progress-stats .stat-card small{font-size:15px}
.chart-card,.skills-card{min-height:318px;padding:17px 24px}
.bar-chart{height:210px}
.bar-col span{background:#318aea!important}
.skill-row{grid-template-columns:185px 1fr 48px;margin:18px 0}
.skill-row strong{font-weight:550}
.skill-row i{background:#338fec!important}
.suggestion{min-height:263px;padding:22px 25px}
.suggestion h3{font-size:32px}
.suggestion p{font-size:15px}
.suggestion .primary{font-size:15px}
.main-area:has(.progress-stats) .section-head{margin-top:15px;margin-bottom:29px}
.main-area:has(.progress-stats) .section-head:after{content:'Real situations. Real progress.';position:absolute;margin-top:46px;color:#6a7e98;font-size:16px}
@media(max-width:900px){
  .speaking-card{min-height:0;margin-top:120px}
  .main-area:has(.progress-stats) .section-head:after{display:none}
}
@media(max-width:620px){
  .speaking-card{margin-top:76px;padding:24px 18px}
  .speaking-card h1{font-size:37px}
  .speaking-card>p:first-of-type{font-size:18px}
  .mic-button{width:122px;height:122px;border-width:16px;box-shadow:0 0 0 10px #eaf3fcad}
  .speaking-actions{gap:5px;margin-top:18px}
  .speaking-actions button{min-height:45px;padding:5px;font-size:11px}
  .detail-goals li{min-height:75px}
  .detail-actions p{min-height:0}
}
.detail-hero.reference-hero{background-image:url('layerlab/service-pages/mission-detail/extracted/assets/layer-1.png')!important;background-size:cover;background-position:center bottom}
.detail-hero.reference-hero .hero-shade,.detail-hero.reference-hero .detail-hero-copy{opacity:0}
.detail-hero:not(.reference-hero) .detail-hero-copy{bottom:45px}
.detail-actions .outline{font-size:17px;white-space:nowrap}
@media(min-width:901px){
  .journey-row .mission-card{height:240px}
  .journey-row .mission-image{height:121px}
  .journey-row .mission-copy{padding:5px 14px 8px}
  .journey-row .suggestion{height:305px;min-height:0;margin-top:-63px}
}
@media(max-width:620px){.detail-hero.reference-hero{background-image:url('assets/service-hotel-hero-clean.png')!important;background-position:66% center}.detail-hero.reference-hero .hero-shade,.detail-hero.reference-hero .detail-hero-copy{opacity:1}}
/* Immersive reference coordinates: clean scene plates, native hit targets. */
@media(min-width:901px){
  .cafe-experience .focus-bottom{width:min(1250px,calc(100% - 70px));bottom:22px;min-height:109px;padding:16px 32px;gap:15px}
  .cafe-experience .focus-bottom small{display:none}
  .cafe-experience .focus-bottom h1{font:700 32px/1.08 var(--sans);margin:0 0 4px}
  .cafe-experience .focus-bottom p{font-size:17px}
  .cafe-experience .drink-hotspot{bottom:15.5%;height:25%}
  .cafe-experience .drink-hotspot.americano{left:23%;width:12%}
  .cafe-experience .drink-hotspot.latte{left:42.5%;width:17%}
  .cafe-experience .drink-hotspot.tea{left:67%;width:16%}
  .cafe-experience .hotspot-label{top:-50px}
  .cafe-experience .hotspot-outline{border-width:2px}
  .branch-card{width:710px;min-height:548px;margin-top:232px;padding:37px 41px 25px;text-align:left}
  .branch-card>small{color:#68845e}
  .branch-card h1{font:700 42px/1.05 var(--sans);letter-spacing:-.03em;margin:26px 0 12px}
  .branch-card h2{font-size:37px;color:#214f47;letter-spacing:-.04em}
  .branch-card>p{font-size:17px;margin:10px 0 22px}
  .branch-options button{min-height:97px}
  .branch-options button:first-child{background:#f3f8f2;border-color:#d6e4d4}
  .branch-options button:nth-child(2){background:#eff6fd;border-color:#d2e4f3}
  .branch-options strong{font-size:21px}
  .branch-card-footer{padding-top:23px}
  .branch-experience .focus-step{display:none}
  .free-dialogue{left:0;right:0;bottom:0;transform:none;width:100%;min-height:328px;padding:18px 49px 20px;border-radius:24px 24px 0 0}
  .free-dialogue-head{border:0;padding-bottom:18px}
  .free-dialogue-head>span{padding:8px 13px;border-radius:30px;background:#ffffff1c}
  .free-dialogue-head button{padding:7px 14px;border:1px solid #7297b8;border-radius:24px}
  .free-lines{padding:14px 16px 20px;align-items:center;gap:24px}
  .free-lines strong{font:700 30px/1.1 var(--sans)}
  .free-lines p{font-size:22px;font-weight:600;color:#b7c7d8}
  .free-avatar{width:95px;height:95px;border:0;background:#274665 url('layerlab/service-pages/free-conversation/extracted/assets/layer-99.png') center/cover;color:transparent;font-size:0}
  .free-input{height:72px;border-radius:40px;background:#102742}
  .free-input input{background:transparent;color:#fff;padding-left:13px}
  .free-input input::placeholder{color:#a8b7c8}
  .free-input button{width:56px;height:56px;border-radius:50%;background:#23436d;color:#fff}
  .free-input button:last-child{background:#8ac0f5}
  .free-disclaimer{opacity:.65}
  .main-area:has(.practice-layout){padding-left:33px;padding-right:25px}
  .practice-layout{grid-template-columns:minmax(0,1fr) 391px;margin-top:35px}
  .practice-aside{margin-top:-29px}
  .practice-hero{min-height:341px}
  .practice-modes{margin-top:26px}
  .mode-card{min-height:173px;padding:0 14px 0 0}
  .mode-card>span:first-child{width:198px;min-width:198px;border-radius:10px 0 0 10px}
  .mode-card strong{font-size:24px}
  .mode-card small{font-size:16px}
  .mode-card:nth-child(1)>span:first-child{background-image:url('layerlab/service-pages/practice-hub/extracted/assets/layer-84.png')!important}
  .mode-card:nth-child(2)>span:first-child{background-image:url('layerlab/service-pages/practice-hub/extracted/assets/layer-85.png')!important}
  .mode-card:nth-child(3)>span:first-child{background-image:url('layerlab/service-pages/practice-hub/extracted/assets/layer-113.png')!important}
  .mode-card:nth-child(4)>span:first-child{background-image:url('layerlab/service-pages/practice-hub/extracted/assets/layer-114.png')!important}
  .practice-aside .aside-card{min-height:332px}
  .recent-row{min-height:124px}
  .recent-row img{width:106px;height:106px}
  .recent-row strong{font:22px var(--serif)}
  .practice-aside blockquote{margin-top:16px;min-height:137px;padding:20px 12px;border-radius:15px;background:#f2f7f0}
  .main-area:has(.notes-layout){padding-left:22px;padding-right:34px}
  .notes-layout{grid-template-columns:416px minmax(0,1fr);gap:14px;margin-top:24px}
  .notes-list{min-height:749px;padding:15px}
  .notes-list h2{font-size:28px;padding:2px 10px 16px}
  .note-list-item{min-height:141px;gap:15px;border:1px solid #e3e9ee;margin-bottom:8px;padding:8px 12px}
  .note-list-item.selected{border-color:#57a0ed}
  .note-list-item img{width:132px;height:126px}
  .note-list-item strong{font:22px var(--serif)}
  .note-list-item small{font-size:15px}
  .note-list-item em{font-size:13px}
  .note-banner{height:200px;background-size:cover;background-position:center}
  .note-inner{padding:9px 25px 21px}
  .note-title h2{font-size:45px}
  .note-inner h3{font-size:28px}
  .phrase-row{min-height:73px}
  .phrase-row strong{font-size:21px}
  .main-area:has(.profile-card){padding-left:38px;padding-right:29px}
  .profile-card{min-height:197px;margin-top:40px;padding:18px 29px;gap:35px}
  .profile-avatar{width:160px;height:160px;flex:none;background:#dce8ea url('layerlab/service-pages/profile-settings/extracted/assets/layer-21.png') center/cover;color:transparent}
  .profile-card h2{font-size:42px}
  .profile-card p{font-size:20px}
  .profile-card em{font-size:21px}
  .profile-card .outline{font-size:18px;padding:15px 33px}
  .settings-grid{grid-template-columns:1.62fr 1fr}
  .setting-row strong{font-size:17px}
  .setting-row small{font-size:14px}
}
.cafe-experience .focus-bg{content:url('assets/service-cafe-immersive-clean.png')}
.branch-experience .focus-bg{content:url('assets/service-hotel-choice-clean.png')}
.free-experience .focus-bg{content:url('assets/service-hotel-free-clean.png')}
.cafe-experience .focus-video,.branch-experience .focus-video{display:none}
.cafe-experience.show-video .focus-video,.branch-experience.show-video .focus-video{display:block}
.cafe-experience.show-video .drink-hotspots{visibility:hidden}
.cafe-experience.show-video .focus-bottom{opacity:.5;pointer-events:none}
.practice-hero{background-image:url('assets/service-practice-hero-clean.png')!important;background-position:center}
.drill-experience .focus-bg{content:url('assets/service-drill-cafe-clean.png')}
@media(max-width:900px){.detail-panels{grid-template-columns:1fr}.detail-panels>section{min-width:0}.detail-actions{grid-column:auto;flex-direction:column}.detail-actions .outline{white-space:normal}}
@media(min-width:901px){.main-area:has(.detail-hero),.main-area:has(.progress-stats){padding-bottom:20px}}
@media(max-width:620px){
  .detail-path .how-link{position:static;display:inline-flex;align-items:center;gap:4px;margin:8px 0 0}
  .detail-path .path-steps{margin-top:18px}
  .detail-goals li>span:last-child{min-width:0}
  .cafe-experience .focus-bg{content:url('assets/service-cafe-immersive-mobile-clean.png')}
  .cafe-experience .drink-hotspot{bottom:22%;height:19%}
  .cafe-experience .drink-hotspot.americano{left:10%;width:25%}
  .cafe-experience .drink-hotspot.latte{left:37%;width:27%}
  .cafe-experience .drink-hotspot.tea{left:69%;width:24%}
  .cafe-experience .focus-bottom{bottom:0;width:100%;min-height:0;padding:17px 22px;border-radius:19px 19px 0 0}
  .cafe-experience .focus-bottom h1{font-size:25px}
  .cafe-experience .focus-bottom p{font-size:12px}
  .cafe-experience .focus-bottom .cream-button{min-height:35px}
}
@media(min-width:901px){
  .auth-panel{justify-content:flex-start;padding:83px 60px 70px 72px}
  .auth-lead{margin-top:5px}
  .goal-card:nth-child(1)>span{background-image:url('layerlab/service-pages/onboarding/extracted/assets/layer-28.png')!important;background-position:center top}
  .goal-card:nth-child(2)>span{background-image:url('layerlab/service-pages/onboarding/extracted/assets/layer-29.png')!important;background-position:center top}
  .goal-card:nth-child(3)>span{background-image:url('layerlab/service-pages/onboarding/extracted/assets/layer-30.png')!important;background-position:center top}
  .dashboard-heading{margin-bottom:26px}
  .dashboard-stats{margin-top:-24px}
  .dashboard-stats .stat-card{min-height:111px}
  .dashboard-top+.section-head{margin-top:13px}
  .main-area:has(.library-heading){padding-top:40px}
  .app-layout:has(.library-heading) .side-brand{margin-top:22px;margin-bottom:77px}
  .main-area:has(.library-heading) .main-top{display:none}
  .main-area:has(.library-heading):before{content:'Same streets.\A New conversations.';white-space:pre;position:absolute;right:45px;top:55px;font:italic 29px/1.15 var(--serif);transform:rotate(-8deg);text-align:center}
  .main-area:has(.library-heading):after{content:'Korean feels different\A when you’re part of the story.';white-space:pre;position:absolute;right:52px;top:178px;font:16px/1.3 var(--serif);color:#50647e;text-align:center}
  .library-grid .mission-card:first-child{border:2px solid #348eef}
  .library-grid .mission-copy small{margin-top:14px}
  .library-grid .mission-copy small:after{content:var(--progress-text,'0%');position:absolute;right:13px;top:-22px;display:grid;place-items:center;width:46px;height:46px;border:4px solid #dce3e5;border-top-color:#8baa97;border-radius:50%;background:#fff;color:#305378;font-size:11px;font-weight:750}
  .library-grid .mission-card:nth-child(1){--progress-text:'60%'}
  .library-grid .mission-card:nth-child(2){--progress-text:'30%'}
  .library-grid .mission-card:nth-child(3){--progress-text:'20%'}
  .library-grid .mission-card:nth-child(4){--progress-text:'10%'}
  .main-area:has(.library-heading){padding-bottom:10px}
  .dashboard-top+.section-head{margin-top:19px}
  .dashboard-grid .mission-copy small{min-height:34px;margin-top:10px;padding:7px 13px;border-radius:18px;background:#eef4ef;color:#316b42;font-size:13px}
  .dashboard-grid .mission-card:nth-child(2) .mission-copy small{background:#eef3f9;color:#1b68bb}
  .dashboard-grid .mission-card:nth-child(3) .mission-copy small{background:#f2f5f8;color:#586982}
  .main-area:has(.dashboard-top){padding-bottom:20px}
  .drill-card{width:1178px;min-height:748px;margin-top:108px;padding:52px 60px 25px}
  .drill-card h1{margin-bottom:17px}
  .drill-meaning{margin-bottom:22px}
  .build-area{min-height:150px;padding:18px 35px}
  .word-bank{justify-content:flex-start;padding:26px 0 0}
  .word-tile{min-width:200px}
  .drill-result{height:20px}
  .drill-actions{margin:0 0 20px}
}
.speaking-caveat{max-width:680px;margin:12px auto 0!important;color:#526b82!important;font-size:14px!important;line-height:1.45;opacity:1}
