:root{
  --navy:#0f153f;--navy2:#171d55;--purple:#6538ff;--purple2:#8a32e8;--blue:#2489ff;--cyan:#24d3e8;--text:#151a3a;--muted:#6e7896;--line:#e8eaf3;--soft:#f6f7fb;--white:#fff;--green:#26c57a;--orange:#ff7b2d;--pink:#d64db8;
  --shadow:0 18px 60px rgba(31,36,87,.10);--radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Cairo","Inter",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}button,input,select,textarea{font:inherit}.shell{width:min(1400px,92%);margin:auto}a{text-decoration:none;color:inherit}.site-header{position:relative;z-index:30;background:#fff}.utility-bar{background:linear-gradient(90deg,#11173f,#0e1338);color:#fff}.utility-inner{min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:20px}.utility-actions,.language-switch{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:700}.utility-actions a,.language-switch a{opacity:.9}.utility-actions a:hover,.language-switch a:hover{opacity:1}.utility-cta{background:linear-gradient(135deg,#6938ff,#8b35ef);padding:8px 20px;border-radius:6px;box-shadow:0 8px 20px rgba(100,56,255,.28)}.language-switch span{width:1px;height:17px;background:rgba(255,255,255,.22)}.language-switch a.active{padding-bottom:4px;border-bottom:2px solid #30b9ff}.main-nav-wrap{border-bottom:1px solid #eef0f6;background:rgba(255,255,255,.96)}.main-nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;direction:ltr}.brand-mark{position:relative;width:47px;height:47px;border-radius:14px;display:grid;place-items:center;color:#663cff;font-weight:900;font-size:31px;line-height:1;background:linear-gradient(145deg,#f4f1ff,#fff);box-shadow:inset 0 0 0 2px #6a3eff}.brand-mark .cap{position:absolute;font-size:14px;top:-8px;left:5px;color:#3982ff}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy b{font-family:Inter,sans-serif;font-size:27px;letter-spacing:-1px}.brand-copy small{margin-top:7px;color:#77809b;font-size:9px;letter-spacing:.2px}.desktop-nav{display:flex;align-items:center;gap:42px;font-size:14px;font-weight:700;color:#424b69}.desktop-nav a{position:relative;padding:28px 0}.desktop-nav a.active,.desktop-nav a:hover{color:#603cff}.desktop-nav a.active:after{content:"";position:absolute;left:20%;right:20%;bottom:0;height:2px;background:#633cff;border-radius:4px}.nav-toggle{display:none;border:0;background:#f1efff;color:#603cff;width:43px;height:43px;border-radius:12px;font-size:22px}.mobile-nav{display:none}.hero-v2{position:relative;overflow:hidden;background:radial-gradient(circle at 20% 35%,rgba(103,61,255,.15),transparent 30%),linear-gradient(90deg,#f9f8ff 0%,#fff 49%,#fff 100%)}.hero-glow{position:absolute;inset:0;background:linear-gradient(120deg,rgba(110,77,255,.07),transparent 42%);pointer-events:none}.hero-grid{position:relative;min-height:465px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:48px;padding:36px 0 30px}.hero-copy{padding-inline:10px}.hero-kicker{color:#673cff;font-weight:800;font-size:15px;display:flex;gap:8px;align-items:center}.hero-copy h1{margin:10px 0 14px;font-size:clamp(44px,5.3vw,72px);line-height:1.14;letter-spacing:-2.5px;font-weight:900}.hero-copy h1 em{font-style:normal;color:#6636ef}.hero-copy>p{max-width:690px;margin:0;color:#59647e;font-size:17px;line-height:2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn-v2{min-height:50px;border-radius:7px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;border:1px solid transparent;cursor:pointer;transition:.2s}.btn-v2:hover{transform:translateY(-2px)}.btn-v2.primary{color:#fff;background:linear-gradient(135deg,#5d39ef,#7e2fe9);box-shadow:0 10px 28px rgba(100,55,244,.23)}.btn-v2.outline{color:#5e39e9;border-color:#6d45f0;background:#fff}.btn-v2.full{width:100%}.play{border:1px solid #6f46f1;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10px}.hero-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}.hero-benefits>div{display:grid;grid-template-columns:42px 1fr;align-items:center;column-gap:10px;border:1px solid #ececf5;background:rgba(255,255,255,.8);padding:13px 14px;border-radius:15px;box-shadow:0 8px 24px rgba(44,49,92,.04)}.hero-benefits b{font-size:14px}.hero-benefits small{grid-column:2;color:#7a829a;font-size:10px}.benefit-icon{grid-row:1/3;width:35px;height:35px;border-radius:10px;display:grid;place-items:center;font-size:18px}.benefit-icon.purple{background:#efeaff;color:#6b38ef}.benefit-icon.blue{background:#e7f5ff;color:#2187ec}.benefit-icon.indigo{background:#edf0ff;color:#4c57e8}.hero-visual{position:relative;height:405px;direction:ltr}.dot-pattern{position:absolute;left:-25px;top:16px;width:120px;height:170px;opacity:.35;background-image:radial-gradient(#9e85ff 1.4px,transparent 1.4px);background-size:14px 14px}.device{position:absolute;left:82px;top:22px;width:500px;height:338px;background:#13183e;border:8px solid #11163a;border-radius:26px;transform:rotate(1.2deg);box-shadow:0 28px 60px rgba(29,31,74,.25);padding:8px;overflow:hidden}.device:after{content:"";position:absolute;inset:0;border-radius:18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);pointer-events:none}.device-top{height:27px;background:#f7f8fc;border-radius:15px 15px 0 0;display:flex;align-items:center;gap:4px;padding:0 9px;font-size:7px;color:#6a7085}.device-top i{width:5px;height:5px;border-radius:50%;background:#dedfeb}.device-top span{margin-left:auto}.dashboard-preview{height:calc(100% - 27px);display:grid;grid-template-columns:56px 1fr;background:#fff;border-radius:0 0 15px 15px;overflow:hidden}.preview-sidebar{background:#fafaff;border-right:1px solid #eeeefa;display:flex;flex-direction:column;align-items:center;gap:21px;padding:15px 0;color:#68718d;font-size:12px}.preview-sidebar span{width:28px;height:28px;border-radius:8px;display:grid;place-items:center}.preview-sidebar .on{background:#efe9ff;color:#6637ed}.mini-logo{font-size:18px;color:#6538f1;font-weight:900}.preview-content{padding:18px 19px;background:linear-gradient(180deg,#fff,#fafaff)}.preview-title{display:flex;justify-content:space-between;align-items:center;font-size:9px}.preview-title small{color:#7b849b}.progress-row{margin-top:10px;background:#fff;border:1px solid #efeff7;border-radius:12px;padding:10px 12px;display:flex;gap:12px;align-items:center}.progress-ring{width:53px;height:53px;border:7px solid #e9e5ff;border-top-color:#623bf0;border-right-color:#623bf0;border-radius:50%;display:grid;place-items:center;font-size:9px}.progress-long{flex:1;font-size:8px}.progress-long span{display:block;height:6px;background:#ececf6;border-radius:10px;margin-top:9px;overflow:hidden}.progress-long i{display:block;height:100%;background:#643df1}.lesson-card{margin-top:10px;position:relative;border:1px solid #ececf5;background:#fff;border-radius:12px;padding:11px 14px;overflow:hidden}.lesson-card small{color:#8890a8;font-size:7px}.lesson-card h3{font:800 16px Inter;margin:2px 0}.lesson-card p{font-size:7px;color:#777f98;margin:0 0 8px}.lesson-card button{border:0;background:#6138ec;color:#fff;border-radius:5px;padding:5px 8px;font:700 7px Cairo}.headphones{position:absolute;right:20px;top:18px;font-size:40px;filter:drop-shadow(0 8px 8px rgba(81,52,207,.18))}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.mini-stats>div{border:1px solid #ececf5;border-radius:9px;padding:8px;text-align:center;background:#fff}.mini-stats b{display:block;font-size:13px}.mini-stats small{font-size:6px;color:#777f98}.floating-headphones{position:absolute;left:0;bottom:5px;font-size:105px;transform:rotate(-10deg);filter:drop-shadow(0 18px 12px rgba(68,54,162,.22));z-index:5}.book-stack{position:absolute;right:38px;bottom:8px;width:120px;height:85px;z-index:4}.book-stack i{position:absolute;right:0;width:115px;height:27px;border-radius:5px 2px 2px 5px;transform:skewY(-2deg);box-shadow:0 6px 10px rgba(35,37,89,.2)}.book-stack i:nth-child(1){bottom:0;background:#16a5b5}.book-stack i:nth-child(2){bottom:25px;background:#6d36c8;right:6px}.book-stack i:nth-child(3){bottom:50px;background:#6c4ee4;right:-2px}.plant{position:absolute;right:120px;bottom:72px;font-size:58px;z-index:2}.levels-ribbon{background:linear-gradient(90deg,#151c5a,#171a66 42%,#432092 100%);color:#fff}.ribbon-inner{min-height:90px;display:flex;align-items:center;gap:28px}.level-intro{display:flex;align-items:center;gap:14px;min-width:180px}.level-intro strong{font:800 58px Inter}.level-intro span{display:flex;flex-direction:column}.level-intro b{font-size:15px}.level-intro small{font-size:10px;opacity:.8}.level-path{flex:1;display:grid;grid-template-columns:repeat(7,1fr);gap:18px;align-items:center}.level-node{position:relative;border:1px solid rgba(117,132,255,.9);border-radius:999px;min-height:51px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(37,44,121,.46);box-shadow:inset 0 0 25px rgba(112,62,255,.15)}.level-node:not(:last-child):after{content:"";position:absolute;left:calc(100% + 2px);top:50%;width:16px;border-top:2px dotted rgba(255,255,255,.45)}html[dir=ltr] .level-node:not(:last-child):after{left:auto;right:calc(100% + 2px)}.level-node.current{border-color:#69e78f;box-shadow:0 0 0 2px rgba(63,229,115,.15),inset 0 0 25px rgba(63,229,115,.12)}.level-node b{font:700 14px Inter}.level-node small{font-size:9px;opacity:.86}.feature-section{padding:25px 0 48px}.section-heading{text-align:center;margin-bottom:18px}.section-heading h2{font-size:24px;margin:0 0 3px}.section-heading p{color:#7b849b;margin:0;font-size:13px}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.feature-card{min-height:132px;border:1px solid #e6e7ef;border-radius:14px;padding:18px;display:flex;align-items:flex-start;gap:14px;background:#fff;box-shadow:0 10px 30px rgba(37,42,82,.04);transition:.2s}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.feature-card h3{font-size:15px;margin:6px 0}.feature-card p{font-size:11px;color:#68728e;margin:0;line-height:1.85}.round-icon{min-width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;box-shadow:0 9px 20px rgba(46,46,100,.15)}.round-icon.violet{background:linear-gradient(135deg,#6c3ff3,#9b38df)}.round-icon.blue2{background:linear-gradient(135deg,#2898f2,#2564df)}.round-icon.green{background:linear-gradient(135deg,#1cc978,#10a659)}.round-icon.orange{background:linear-gradient(135deg,#ff9d35,#ff641f)}.round-icon.pink{background:linear-gradient(135deg,#d66bc2,#bd2996)}.trust-strip{margin-top:27px;border:1px solid #e7e9f2;border-radius:14px;display:grid;grid-template-columns:repeat(4,1fr) 1.6fr;align-items:stretch;overflow:hidden;box-shadow:0 8px 30px rgba(37,42,82,.03)}.trust-strip>div{padding:22px 18px;text-align:center;border-inline-end:1px solid #eceef5}.trust-strip>div span{display:block;font-size:21px}.trust-strip>div b{font:800 24px Inter;color:#5437ec;display:block}.trust-strip>div small{color:#75809a;font-size:10px}.trust-cta{background:linear-gradient(135deg,#17206f,#4f22b9);color:#fff;display:flex;align-items:center;justify-content:center;gap:20px;padding:18px 24px}.trust-cta>span{font-size:40px}.trust-cta div{display:flex;flex-direction:column}.trust-cta b{font-size:15px}.trust-cta small{font-size:10px;opacity:.82}.footer-v2{background:#10153e;color:#dfe2f5}.footer-inner{min-height:90px;display:flex;justify-content:space-between;align-items:center}.footer-inner>div{display:flex;flex-direction:column}.footer-inner b{font:800 22px Inter}.footer-inner span,.footer-inner small{font-size:11px;opacity:.7}
/* Login */
.login-page{background:#f6f7fc;min-height:calc(100vh - 220px);padding:45px 0}.login-grid{display:grid;grid-template-columns:1fr 500px;min-height:580px;background:#fff;border:1px solid #e7e9f3;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.login-showcase{position:relative;background:radial-gradient(circle at 30% 20%,rgba(136,86,255,.55),transparent 35%),linear-gradient(135deg,#121949,#3c2294);color:#fff;padding:55px;display:flex;align-items:center;overflow:hidden}.login-showcase:after{content:"Aa";position:absolute;font:900 240px Inter;opacity:.045;bottom:-40px;right:-20px}.showcase-copy{position:relative;z-index:1;max-width:560px}.showcase-copy h1{font-size:48px;line-height:1.25;margin:15px 0}.showcase-copy p{opacity:.8;line-height:2}.login-points{display:flex;flex-direction:column;gap:12px;margin-top:25px}.login-card{padding:58px 50px}.login-brand{display:flex;align-items:center;gap:10px;font:800 26px Inter;margin-bottom:38px}.eyebrow-v2{color:#6538ef;font-weight:800;font-size:13px}.login-card h2{font-size:32px;margin:5px 0}.login-card>p{color:#77819a;margin:0 0 25px}.field-v2{margin:16px 0}.field-v2 label{display:block;font-size:13px;font-weight:800;margin-bottom:7px}.field-v2 input{width:100%;height:52px;border:1px solid #dfe2ec;border-radius:10px;padding:0 14px;outline:none;background:#fbfbfd}.field-v2 input:focus{border-color:#6841ef;box-shadow:0 0 0 3px rgba(104,65,239,.09)}.alert-v2{padding:12px 14px;border-radius:10px;background:#fff0f2;color:#a42c45;font-size:13px}.back-link{display:block;text-align:center;color:#69728b;font-size:12px;margin-top:18px}
/* App dashboards */
.app-page{background:#f6f7fb;min-height:700px;padding:34px 0 60px}.app-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.app-heading h1{font-size:30px;margin:0}.app-heading p{margin:3px 0 0;color:#7b8499;font-size:13px}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.metric-card{background:#fff;border:1px solid #e7e9f1;border-radius:16px;padding:20px;display:flex;align-items:center;gap:15px;box-shadow:0 6px 22px rgba(39,45,82,.035)}.metric-icon{width:48px;height:48px;border-radius:13px;background:#f0ecff;color:#633af0;display:grid;place-items:center;font-size:21px}.metric-card b{font:800 28px Inter;display:block}.metric-card small{color:#7c859a}.app-panel{background:#fff;border:1px solid #e7e9f1;border-radius:18px;padding:24px;margin-top:18px}.app-panel h2,.app-panel h3{margin-top:0}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.action-card{border:1px solid #e6e8f1;border-radius:14px;padding:17px;background:#fafaff;transition:.2s}.action-card:hover{border-color:#6b44ef;transform:translateY(-2px)}.action-card b{display:block}.action-card small{color:#7a8398;font-size:11px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.field label{display:block;font-weight:800;font-size:12px;margin-bottom:6px}.field input,.field select{width:100%;height:46px;border:1px solid #dfe2eb;border-radius:9px;padding:0 12px;background:#fff}.btn-app{border:0;border-radius:9px;padding:11px 18px;background:#653aef;color:#fff;font-weight:800;cursor:pointer}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th,.data-table td{padding:14px 10px;border-bottom:1px solid #eef0f5;text-align:start}.data-table th{color:#747e95;font-size:11px}.badge{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eaf9f2;color:#168458;font-size:10px;font-weight:800}
@media(max-width:1150px){.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-kicker,.hero-actions{justify-content:center}.hero-copy>p{margin-inline:auto}.hero-visual{max-width:700px;width:100%;margin:auto}.feature-grid{grid-template-columns:repeat(3,1fr)}.trust-strip{grid-template-columns:repeat(2,1fr)}.trust-cta{grid-column:1/-1}.level-path{gap:8px}.desktop-nav{gap:22px}.login-grid{grid-template-columns:1fr 430px}.dashboard-grid,.action-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.desktop-nav{display:none}.nav-toggle{display:block}.mobile-nav{padding:12px 4%;gap:8px;flex-wrap:wrap;border-top:1px solid #eee}.mobile-nav.open{display:flex}.mobile-nav a{padding:8px 12px;background:#f7f5ff;border-radius:8px}.utility-inner{min-height:44px}.hero-grid{padding-top:28px}.hero-benefits{grid-template-columns:1fr}.ribbon-inner{padding:14px 0;align-items:flex-start;flex-direction:column}.level-path{width:100%;grid-template-columns:repeat(4,1fr)}.level-node:not(:last-child):after{display:none}.feature-grid{grid-template-columns:repeat(2,1fr)}.login-grid{grid-template-columns:1fr}.login-showcase{display:none}.dashboard-grid,.action-grid,.form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.shell{width:min(94%,1400px)}.brand-copy b{font-size:22px}.brand-mark{width:41px;height:41px}.utility-actions{gap:9px}.utility-cta{padding:7px 10px}.language-switch{gap:8px;font-size:11px}.main-nav{height:68px}.hero-copy h1{font-size:42px;letter-spacing:-1px}.hero-copy>p{font-size:14px}.hero-actions>*{width:100%}.hero-visual{height:300px}.device{left:42px;top:15px;width:390px;height:268px;transform:scale(.83) rotate(1deg);transform-origin:top left}.floating-headphones{font-size:74px}.book-stack{right:5px;transform:scale(.7)}.plant{display:none}.level-path{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:1fr}.trust-strip{grid-template-columns:1fr}.trust-strip>div{border-bottom:1px solid #eceef5}.login-card{padding:36px 24px}.dashboard-grid,.action-grid,.form-grid{grid-template-columns:1fr}.app-heading{align-items:flex-start;flex-direction:column}}

/* ========== LingoUp V3 — Student Experience ========== */
.student-app,.student-subpage{background:linear-gradient(180deg,#f7f8fd,#fbfbfe);min-height:760px}.student-shell{width:min(1500px,96%);margin:auto;display:grid;grid-template-columns:230px 1fr;gap:28px;padding:30px 0 60px}.student-sidebar{background:#fff;border:1px solid #e8eaf3;border-radius:24px;padding:18px 14px;box-shadow:0 18px 50px rgba(35,39,85,.05);height:fit-content;position:sticky;top:18px}.student-profile-mini{display:flex;align-items:center;gap:11px;padding:8px 8px 18px;border-bottom:1px solid #eef0f5}.student-profile-mini b{display:block;font-size:13px}.student-profile-mini small{display:block;color:#8a92a7;font-size:10px;margin-top:2px}.student-avatar{width:43px;height:43px;border-radius:13px;background:linear-gradient(135deg,#5c3bf0,#8d35e7);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px}.student-menu{display:flex;flex-direction:column;gap:5px;margin:15px 0}.student-menu a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;font-size:12px;font-weight:700;color:#525c77}.student-menu a span{width:25px;height:25px;border-radius:8px;background:#f2f0ff;color:#603bef;display:grid;place-items:center;font:800 10px Inter}.student-menu a:hover,.student-menu a.active{background:#f2efff;color:#5834e6}.student-menu a.active span{color:#fff;background:linear-gradient(135deg,#5f3aef,#8132ec)}.sidebar-level-card{margin-top:18px;border-radius:16px;padding:17px;background:linear-gradient(145deg,#151a54,#5023a4);color:#fff}.sidebar-level-card small{font-size:9px;opacity:.75}.sidebar-level-card strong{font:800 30px Inter;display:block;margin-top:4px}.sidebar-level-card span{display:block;font-size:11px}.mini-progress{height:6px;background:rgba(255,255,255,.14);border-radius:999px;margin:13px 0 7px;overflow:hidden}.mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#54e59e,#45c9ff);border-radius:999px}.sidebar-level-card em{font-style:normal;font-size:9px;opacity:.72}.student-main{min-width:0}.student-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px}.student-topbar h1{font-size:31px;line-height:1.25;margin:3px 0 4px}.student-topbar p{margin:0;color:#7b849c;font-size:12px}.student-top-actions{display:flex;gap:10px}.top-chip{min-width:83px;height:52px;background:#fff;border:1px solid #e6e8f2;border-radius:14px;display:grid;grid-template-columns:26px 1fr;align-items:center;padding:7px 11px;box-shadow:0 8px 24px rgba(32,39,80,.035)}.top-chip>span{grid-row:1/3;font-size:20px}.top-chip b{font:800 15px Inter}.top-chip small{font-size:9px;color:#7f889c}.student-hero-card{position:relative;overflow:hidden;min-height:310px;border-radius:26px;background:linear-gradient(115deg,#171b59 0%,#4d23a8 55%,#7835e6 100%);display:grid;grid-template-columns:1.2fr .8fr;color:#fff;box-shadow:0 24px 55px rgba(59,42,151,.18)}.student-hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 79% 30%,rgba(87,224,255,.18),transparent 24%),radial-gradient(circle at 25% 85%,rgba(255,255,255,.08),transparent 30%)}.student-hero-copy{position:relative;z-index:2;padding:35px 40px}.pill-label{display:inline-flex;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.12);font-size:9px;font-weight:800;letter-spacing:.7px}.student-hero-copy h2{font-size:32px;margin:10px 0 0}.student-hero-copy>p{font-size:12px;opacity:.75;margin:2px 0 19px}.lesson-progress-row{max-width:520px;display:flex;justify-content:space-between;font-size:10px;margin-bottom:6px}.lesson-progress{height:9px;max-width:520px;background:rgba(255,255,255,.16);border-radius:999px;overflow:hidden}.lesson-progress i{height:100%;display:block;background:linear-gradient(90deg,#42dbff,#65e5a4);border-radius:999px}.lesson-meta{display:flex;gap:17px;margin:14px 0 20px;font-size:10px;opacity:.82}.student-primary{border:0;min-height:44px;padding:0 20px;border-radius:10px;background:#fff;color:#5130d9;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 8px 22px rgba(22,18,72,.12)}button.student-primary:disabled{opacity:.72}.student-hero-visual{position:relative;min-height:310px}.learning-orbit{position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%}.orbit-one{width:270px;height:270px;right:44px;top:20px}.orbit-two{width:190px;height:190px;right:84px;top:60px}.hero-book,.hero-headset,.hero-mic,.hero-word{position:absolute;filter:drop-shadow(0 10px 16px rgba(10,12,62,.2))}.hero-book{font-size:80px;right:104px;top:104px;transform:rotate(-7deg)}.hero-headset{font-size:66px;right:205px;top:45px}.hero-mic{font-size:46px;right:48px;bottom:45px}.hero-word{font:900 45px Inter;right:51px;top:45px;transform:rotate(8deg);color:#fff}.floating-score{position:absolute;left:20px;bottom:23px;width:105px;height:74px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:12px;text-align:center}.floating-score b{font:800 24px Inter;display:block}.floating-score small{font-size:9px;opacity:.8}.student-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:16px 0}.student-metric{background:#fff;border:1px solid #e8eaf2;border-radius:17px;padding:14px 16px;display:flex;gap:12px;align-items:center}.sm-icon{width:41px;height:41px;border-radius:12px;display:grid;place-items:center;font-size:16px;font-weight:900}.sm-icon.violet{background:#f0eaff;color:#6338ef}.sm-icon.blue{background:#eaf5ff;color:#2285e7}.sm-icon.green{background:#e9fbf2;color:#1bab6c}.sm-icon.orange{background:#fff0e8;color:#f1702e}.student-metric b{display:block;font:800 21px Inter}.student-metric small{display:block;color:#80899d;font-size:9px}.student-content-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:16px}.student-panel{background:#fff;border:1px solid #e7e9f2;border-radius:20px;padding:22px;box-shadow:0 8px 28px rgba(34,41,80,.03)}.panel-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-title h3{margin:2px 0 0;font-size:19px}.panel-title>a{font-size:10px;color:#653cec;font-weight:800}.skill-line{display:flex;align-items:center;gap:12px;margin:14px 0}.skill-icon{min-width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:10px;font-weight:900}.skill-icon.violet{background:#f0eaff;color:#6038ea}.skill-icon.orange{background:#fff0e5;color:#e96922}.skill-icon.blue{background:#e9f5ff;color:#247dd3}.skill-icon.green{background:#eaf9f0;color:#1b9f65}.skill-icon.pink{background:#fdeafb;color:#c33daf}.skill-icon.indigo{background:#eceeff;color:#4e58cf}.skill-info{flex:1}.skill-info>div:first-child{display:flex;justify-content:space-between;margin-bottom:5px;font-size:10px}.skill-info strong{font:800 11px Inter}.skill-track{height:7px;background:#f0f1f6;border-radius:999px;overflow:hidden}.skill-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#6338ef,#42b4fb)}.daily-panel{text-align:center}.daily-panel .panel-title{text-align:start}.goal-ring{--goal:216deg;width:145px;height:145px;border-radius:50%;margin:6px auto 12px;background:conic-gradient(#6039ed 0 var(--goal),#ececf5 var(--goal) 360deg);display:grid;place-items:center;position:relative}.goal-ring:before{content:"";position:absolute;width:115px;height:115px;border-radius:50%;background:#fff}.goal-ring>div{position:relative;z-index:1}.goal-ring b{font:800 32px Inter}.goal-ring span{font:700 13px Inter;color:#9299ab}.goal-ring small{display:block;color:#9299ab;font-size:9px}.daily-panel>p{font-size:10px;color:#747e96}.week-streak{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:17px 0}.week-streak span{font-size:8px;color:#8b93a8;display:flex;flex-direction:column;gap:5px;align-items:center}.week-streak i{font-style:normal;width:22px;height:22px;border-radius:50%;background:#f0f1f5;display:grid;place-items:center;color:#b1b6c4}.week-streak span.done i{background:#5f3bed;color:#fff}.soft-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid #dcd8ff;background:#f6f3ff;color:#5c38e6;border-radius:10px;padding:9px 14px;font-size:10px;font-weight:800}.recommendation-panel,.lesson-list-panel{margin-top:16px}.recommend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.recommend-card{border:1px solid #e8eaf2;border-radius:15px;padding:15px;display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:10px;transition:.2s}.recommend-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(40,44,90,.06)}.recommend-card>span{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;font-size:20px}.recommend-card.purple>span{background:#efeaff}.recommend-card.blue>span{background:#e9f5ff}.recommend-card.green>span{background:#e8fbef}.recommend-card b{display:block;font-size:11px}.recommend-card small{color:#838ba0;font-size:9px}.recommend-card em{font:800 13px Inter;font-style:normal;color:#5e3ae9}.lesson-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini-lesson{border:1px solid #e8e9f1;border-radius:14px;padding:13px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px}.mini-lesson.current{border-color:#c9c0ff;background:#faf9ff}.mini-lesson>span{width:34px;height:34px;border-radius:10px;background:#f0edff;color:#6039eb;display:grid;place-items:center}.mini-lesson small{font-size:8px;color:#888fa3}.mini-lesson b{display:block;font-size:11px;margin-top:2px}.mini-lesson em{font-style:normal;font-size:8px;color:#838ba1}.student-subpage{padding:38px 0 65px}.subpage-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:23px}.subpage-head h1{font-size:34px;margin:2px 0}.subpage-head p{font-size:12px;color:#7c859b;margin:0}.lesson-library{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.library-card{background:#fff;border:1px solid #e7e9f2;border-radius:20px;padding:24px;position:relative;box-shadow:0 8px 30px rgba(36,42,80,.03)}.lesson-number{position:absolute;inset-inline-end:18px;top:18px;font:900 32px Inter;color:#ece9ff}.library-card>small{color:#6741e9;font-weight:800;font-size:9px}.library-card h3{font-size:19px;margin:12px 0 5px}.library-card p{font-size:10px;color:#7b8499;min-height:47px}.library-card>div{display:flex;gap:14px;font-size:9px;color:#717a91;border-top:1px solid #eef0f4;padding-top:12px}.library-card>a{display:inline-flex;margin-top:16px;color:#5f3be8;font-size:10px;font-weight:800}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.practice-tile{background:#fff;border:1px solid #e8eaf2;border-radius:20px;padding:25px;text-align:center;transition:.2s}.practice-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.practice-big-icon{width:65px;height:65px;border-radius:18px;margin:auto;display:grid;place-items:center;font:900 20px Inter}.practice-big-icon.violet{background:#eee9ff;color:#623aef}.practice-big-icon.orange{background:#fff0e7;color:#f0722f}.practice-big-icon.blue{background:#e9f4ff;color:#2481df}.practice-big-icon.green{background:#e9faef;color:#19a566}.practice-big-icon.pink{background:#fdeafa;color:#c63eaa}.practice-big-icon.indigo{background:#eceeff;color:#4d58d5}.practice-tile h3{margin:14px 0 4px}.practice-tile p{font-size:10px;color:#7c8498;min-height:35px}.practice-tile em{font-style:normal;color:#603ae9;font-size:10px;font-weight:800}.speaking-showcase{background:radial-gradient(circle at 50% 0,rgba(94,61,239,.18),transparent 32%),#fff;border:1px solid #e8e9f3;border-radius:25px;min-height:440px;text-align:center;padding:55px 25px}.ai-orb{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;margin:auto;background:linear-gradient(135deg,#5538ec,#1fa9f1);color:#fff;font:900 30px Inter;box-shadow:0 15px 45px rgba(68,61,218,.25)}.speaking-showcase h2{font-size:30px;margin:18px 0 5px}.speaking-showcase>p{max-width:670px;margin:0 auto 25px;color:#788198;font-size:12px}.scenario-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:28px}.scenario-row span{padding:9px 14px;background:#f7f5ff;border:1px solid #e4e0ff;border-radius:999px;font-size:10px}.word-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.word-card{position:relative;background:#fff;border:1px solid #e8eaf2;border-radius:18px;padding:20px;display:grid;grid-template-columns:54px 1fr 36px;align-items:center;gap:10px}.word-card>span{font-size:34px}.word-card small{color:#8a92a7;font-size:9px}.word-card h3{margin:0;font:800 18px Inter}.word-card button{width:34px;height:34px;border:0;border-radius:10px;background:#f0edff;cursor:pointer}.word-mastery{grid-column:1/-1;height:6px;background:#f0f1f5;border-radius:99px;overflow:hidden}.word-mastery i{display:block;height:100%;background:linear-gradient(90deg,#6338ef,#26c4ea)}.word-card em{grid-column:1/-1;font-style:normal;color:#8c93a5;font-size:8px}.progress-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.progress-summary>div{background:#fff;border:1px solid #e7e9f2;border-radius:18px;padding:22px;text-align:center}.progress-summary strong{font:900 30px Inter;color:#5e3be7;display:block}.progress-summary span{font-size:9px;color:#7c8499}.progress-bars>div{display:grid;grid-template-columns:130px 1fr 45px;align-items:center;gap:12px;margin:17px 0}.progress-bars span{font-size:11px;font-weight:700}.progress-bars>div>div{height:9px;background:#f0f1f5;border-radius:99px;overflow:hidden}.progress-bars i{display:block;height:100%;background:linear-gradient(90deg,#6338ef,#2db7ed);border-radius:99px}.progress-bars b{font:800 11px Inter;text-align:end}
@media(max-width:1100px){.student-shell{grid-template-columns:190px 1fr}.student-hero-card{grid-template-columns:1fr}.student-hero-visual{display:none}.student-content-grid{grid-template-columns:1fr}.recommend-grid,.lesson-strip,.lesson-library,.practice-grid,.word-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.student-shell{display:block;width:min(94%,1500px)}.student-sidebar{position:static;margin-bottom:15px}.student-menu{display:grid;grid-template-columns:repeat(3,1fr)}.sidebar-level-card{display:none}.student-metrics,.progress-summary{grid-template-columns:repeat(2,1fr)}.student-topbar,.subpage-head{align-items:flex-start;flex-direction:column}.student-top-actions{width:100%}.top-chip{flex:1}.recommend-grid,.lesson-strip,.lesson-library,.practice-grid,.word-grid{grid-template-columns:1fr}.student-hero-copy{padding:28px 24px}.student-hero-copy h2{font-size:26px}}
@media(max-width:520px){.student-menu{grid-template-columns:repeat(2,1fr)}.student-metrics,.progress-summary{grid-template-columns:1fr}.student-topbar h1,.subpage-head h1{font-size:27px}.student-content-grid{display:block}.daily-panel{margin-top:16px}.recommend-card{grid-template-columns:40px 1fr}.recommend-card em{display:none}.progress-bars>div{grid-template-columns:90px 1fr 38px}}

/* V4 auth + official logo */
.brand-logo-image{display:flex;align-items:center;direction:ltr}.brand-logo-image img{display:block;width:205px;height:auto;max-height:64px;object-fit:contain}.logo-image-brand{display:block!important;width:210px;margin-bottom:28px!important}.logo-image-brand img{display:block;width:100%;height:auto}.password-label-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px}.password-label-row label{font-size:13px;font-weight:800}.password-label-row a,.auth-bottom a{color:#623bf0;font-weight:800}.field-v2.no-top{margin-top:7px}.auth-bottom{text-align:center;color:#707991;font-size:13px;margin-top:18px}.alert-v2.success{background:#ecfbf2;color:#157348;border:1px solid #bfeccf}.role-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.role-choice label{cursor:pointer;position:relative}.role-choice input{position:absolute;opacity:0}.role-choice span{display:flex;flex-direction:column;border:1px solid #e0e3ef;border-radius:12px;padding:12px 14px;background:#fbfbfd;transition:.2s}.role-choice b{font-size:13px}.role-choice small{font-size:10px;color:#7a8298;margin-top:2px}.role-choice input:checked+span{border-color:#6740ee;background:#f3efff;box-shadow:0 0 0 3px rgba(103,64,238,.08)}.auth-card-scroll{padding-top:36px;padding-bottom:36px}.auth-register-grid{min-height:690px}.compact-auth{min-height:520px}
@media(max-width:900px){.brand-logo-image img{width:170px}.auth-register-grid{min-height:auto}}
@media(max-width:600px){.brand-logo-image img{width:145px}.logo-image-brand{width:180px}.role-choice{grid-template-columns:1fr}}

/* =========================================================
   LingoUp V5 — Premium Auth & Brand Refinement
   ========================================================= */
.brand-logo-image{
  display:flex;align-items:center;direction:ltr;
  width:176px;height:62px;overflow:visible;
}
.brand-logo-image img{
  width:176px!important;height:auto!important;max-height:58px!important;
  object-fit:contain;object-position:left center;filter:none;
}
.login-page{
  min-height:calc(100vh - 171px);
  padding:34px 0 48px;
  background:
    radial-gradient(circle at 12% 10%,rgba(106,61,240,.08),transparent 28%),
    radial-gradient(circle at 90% 90%,rgba(35,139,244,.07),transparent 25%),
    #f7f8fc;
}
.login-grid{
  width:min(1260px,94%);
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.72fr);
  min-height:640px;
  border:1px solid #e7e8f2;
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 28px 80px rgba(26,31,79,.10);
}
.auth-register-grid{min-height:720px}
.login-showcase{
  position:relative;
  padding:68px 64px;
  display:flex;align-items:center;
  color:#fff;
  background:
    radial-gradient(circle at 18% 18%,rgba(133,92,255,.68),transparent 28%),
    radial-gradient(circle at 85% 72%,rgba(77,45,187,.48),transparent 30%),
    linear-gradient(145deg,#111747 0%,#262078 48%,#43209b 100%);
  overflow:hidden;
}
.login-showcase:before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);
  background-size:18px 18px;
  mask-image:linear-gradient(to bottom right,#000,transparent 70%);
  opacity:.45;
}
.login-showcase:after{
  content:"Aa";position:absolute;right:-10px;bottom:-68px;
  font:900 255px/1 Inter,sans-serif;color:#fff;opacity:.055;
}
.showcase-copy{position:relative;z-index:2;max-width:590px}
.showcase-copy .hero-kicker{
  display:inline-flex;padding:8px 13px;border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);backdrop-filter:blur(8px);
  font-size:12px;font-weight:800;color:#d9d2ff;
}
.showcase-copy h1{
  margin:18px 0 16px;font-size:clamp(38px,3.2vw,58px);
  line-height:1.25;letter-spacing:-1.4px;font-weight:900;
}
.showcase-copy p{max-width:520px;font-size:15px;line-height:2;color:#d8dbee;margin:0}
.login-points{margin-top:30px;gap:14px}
.login-points span{
  display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px;color:#f5f5ff
}
.login-card{
  padding:48px 52px 44px;
  display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(180deg,#fff,#fdfdff);
}
.auth-card-scroll{padding:42px 50px;justify-content:center}
.login-brand.logo-image-brand{
  width:188px!important;height:68px!important;margin:0 0 25px!important;
  display:flex!important;align-items:center!important;direction:ltr;
}
.login-brand.logo-image-brand img{
  width:188px!important;height:auto!important;max-height:64px!important;
  object-fit:contain!important;object-position:left center!important;
}
.eyebrow-v2{
  display:inline-flex;align-items:center;width:max-content;
  padding:6px 11px;border-radius:999px;
  background:#f1edff;color:#6637ef;font-size:11px;font-weight:900;
}
.login-card h2{
  margin:10px 0 4px;font-size:34px;line-height:1.25;font-weight:900;letter-spacing:-.6px
}
.login-card>p{margin:0 0 22px;color:#7b8499;font-size:13px}
.role-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 18px}
.role-choice span{
  min-height:72px;justify-content:center;
  border:1px solid #e3e5ef;border-radius:14px;padding:12px 14px;background:#fafbfe;
}
.role-choice b{font-size:14px}
.role-choice small{font-size:10px;line-height:1.5}
.role-choice input:checked+span{
  border-color:#6840ef;background:linear-gradient(180deg,#f7f3ff,#f1edff);
  box-shadow:0 0 0 3px rgba(104,64,239,.08),0 8px 18px rgba(104,64,239,.07)
}
.field-v2{margin:13px 0}
.field-v2 label,.password-label-row label{font-size:12px;font-weight:800;color:#252b48}
.field-v2 input{
  height:54px;border:1px solid #dfe3ed;border-radius:13px;
  padding:0 16px;background:#fbfcff;color:#171c39;transition:.2s;
}
.field-v2 input:hover{border-color:#cfd4e4;background:#fff}
.field-v2 input:focus{
  border-color:#6840ef;background:#fff;
  box-shadow:0 0 0 4px rgba(104,64,239,.08)
}
.password-label-row{margin-top:13px}
.password-label-row a{font-size:11px}
.btn-v2.primary.full{
  min-height:54px;border-radius:12px;margin-top:8px;
  font-size:14px;background:linear-gradient(135deg,#5d37f0,#8730ed);
  box-shadow:0 12px 26px rgba(101,54,240,.22)
}
.auth-bottom{
  margin-top:18px;padding-top:17px;border-top:1px solid #eff0f5;
  font-size:12px
}
.back-link{font-size:11px;margin-top:14px}
.alert-v2{border-radius:12px}
@media(max-width:900px){
  .brand-logo-image,.brand-logo-image img{width:150px!important}
  .login-grid{grid-template-columns:1fr;min-height:auto}
  .login-showcase{display:none}
  .login-card,.auth-card-scroll{padding:38px 34px}
  .auth-register-grid{min-height:auto}
}
@media(max-width:600px){
  .brand-logo-image,.brand-logo-image img{width:136px!important}
  .login-page{padding:18px 0 30px}
  .login-grid{width:94%;border-radius:20px}
  .login-card,.auth-card-scroll{padding:30px 22px}
  .login-brand.logo-image-brand,.login-brand.logo-image-brand img{width:164px!important}
  .login-card h2{font-size:28px}
  .role-choice{grid-template-columns:1fr}
}

/* =========================================================
   LingoUp V6 — Vocabulary Learning Engine
   ========================================================= */
.vocab-app{min-height:calc(100vh - 150px);background:linear-gradient(180deg,#f7f8ff 0,#fff 50%);padding:30px 0 56px;color:#171a35}
.vocab-shell{width:min(1180px,94%);margin:auto}.vocab-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;background:#fff;border:1px solid #e8eaf3;border-radius:18px;padding:14px 18px;box-shadow:0 14px 40px rgba(35,38,86,.07)}
.vocab-back{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#4e5673}.vocab-progress-wrap{max-width:610px;width:100%;justify-self:center}.vocab-progress-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:8px;font-size:11px}.vocab-progress-meta b{font-size:12px}.vocab-progress-meta span{color:#7c8298}.vocab-progress{height:7px;border-radius:999px;background:#edf0f7;overflow:hidden}.vocab-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6438f0,#258cf5,#19c7a2);transition:.35s ease}.vocab-xp{display:flex;align-items:center;gap:6px;background:#f4f1ff;border:1px solid #e5defe;border-radius:12px;padding:9px 12px;color:#6235e9}.vocab-xp b{font-size:15px}.vocab-xp small{font-size:9px;color:#7d75a0}
.vocab-stage{max-width:1000px;margin:42px auto 0}.vocab-stage-head{text-align:center;margin-bottom:24px}.vocab-stage-head .eyebrow-v2{margin:auto}.vocab-stage-head h1{font-size:clamp(30px,4vw,48px);line-height:1.2;margin:12px 0 8px;font-weight:900}.vocab-stage-head p{color:#7b8297;font-size:13px;line-height:1.9;margin:0 auto;max-width:660px}.vocab-panel{background:#fff;border:1px solid #e7e9f2;border-radius:26px;padding:28px;box-shadow:0 26px 70px rgba(31,37,84,.08)}.vocab-panel.hidden{display:none}
.word-card{display:none;grid-template-columns:1fr 1fr;gap:42px;align-items:center;min-height:390px}.word-card.active{display:grid}.word-image{border-radius:24px;overflow:hidden;background:#f7f8fc;border:1px solid #eceef5}.word-image img{display:block;width:100%;height:330px;object-fit:cover}.word-copy{padding:10px}.word-count{display:inline-flex;padding:6px 10px;border-radius:999px;background:#f2efff;color:#6539ec;font-size:10px;font-weight:900}.word-copy h2{font:900 clamp(48px,6vw,76px)/1 Inter,Cairo,sans-serif;letter-spacing:-2px;margin:14px 0 2px;color:#171b3d}.word-copy>strong{display:block;color:#747b92;font-size:17px;margin-bottom:18px}.speak-word{display:inline-flex;align-items:center;gap:8px;border:1px solid #ded9ff;background:#f7f5ff;color:#5d36e9;border-radius:13px;padding:11px 15px;font-weight:800;cursor:pointer}.example-box{margin-top:22px;border:1px solid #e8eaf2;background:#fbfcff;border-radius:15px;padding:15px 52px 15px 16px;position:relative}.example-box small{font-size:9px;color:#8b91a5;font-weight:900}.example-box p{font:700 14px/1.8 Inter,Cairo,sans-serif;margin:4px 0;color:#323953}.example-box button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:10px;background:#eeeaff;cursor:pointer}.vocab-actions{display:flex;justify-content:space-between;gap:12px;margin-top:25px}.primary-vocab,.ghost-vocab{min-height:48px;border-radius:12px;padding:0 22px;border:0;font-weight:900;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none}.primary-vocab{background:linear-gradient(135deg,#6037ef,#8631ed);color:#fff;box-shadow:0 11px 24px rgba(99,54,235,.18)}.ghost-vocab{background:#fff;color:#444c67;border:1px solid #e0e3ec}.ghost-vocab:disabled{opacity:.38;cursor:not-allowed}
.exercise-heading{display:flex;align-items:center;gap:15px;margin-bottom:28px}.exercise-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#f1edff;font-size:25px}.exercise-heading small{font-size:9px;color:#7250ef;font-weight:900}.exercise-heading h2{margin:3px 0 0;font-size:24px}.prompt-word{display:flex;align-items:center;justify-content:center;gap:10px;padding:22px;border-radius:17px;background:linear-gradient(135deg,#171a4e,#41239b);color:#fff;margin-bottom:22px}.prompt-word span{font-size:12px;color:#d9dcf3}.prompt-word strong{font:900 32px Inter,sans-serif}.prompt-word button{border:0;border-radius:10px;width:38px;height:38px;background:rgba(255,255,255,.14);color:#fff;cursor:pointer}.picture-options{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.picture-option{border:1px solid #e5e7ef;border-radius:18px;background:#fff;padding:8px;cursor:pointer;transition:.2s}.picture-option:hover{transform:translateY(-3px);border-color:#9f8cff;box-shadow:0 12px 30px rgba(75,49,190,.10)}.picture-option img{width:100%;height:155px;object-fit:cover;border-radius:12px}.picture-option span{display:block;font:800 12px Inter,sans-serif;color:#343a54;padding:8px}.picture-option.correct{border-color:#34c98b;background:#f0fff8;box-shadow:0 0 0 3px rgba(52,201,139,.12)}.picture-option.wrong{border-color:#fb7185;background:#fff4f5;animation:vocabShake .28s ease}.feedback-line{min-height:45px;margin-top:15px;border-radius:12px;padding:0 14px;display:flex;align-items:center;font-weight:800;font-size:12px}.feedback-line.success{background:#effcf6;color:#16875d}.feedback-line.error{background:#fff1f3;color:#c43a54}
.big-listen{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:10px auto 30px;width:170px;height:170px;border-radius:50%;border:10px solid #f2efff;background:linear-gradient(145deg,#6438f0,#3177f4);color:#fff;box-shadow:0 20px 50px rgba(86,59,222,.2);cursor:pointer}.big-listen span{font-size:42px}.big-listen b{font-size:11px;margin-top:5px}.text-options{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;max-width:640px;margin:auto}.text-options button,.word-chips button{height:58px;border:1px solid #e3e5ee;background:#fff;border-radius:13px;font:800 15px Inter,sans-serif;cursor:pointer}.text-options button:hover,.word-chips button:hover{border-color:#8c72f6;background:#faf8ff}.text-options button.correct{background:#eefcf5;border-color:#2fca86;color:#11784f}.text-options button.wrong{background:#fff1f3;border-color:#fb7185;color:#be3650}
.gap-sentence{display:flex;flex-wrap:wrap;gap:9px;align-items:center;justify-content:center;font:800 clamp(24px,4vw,39px)/1.5 Inter,sans-serif;margin:45px 0}.gap-slot{min-width:120px;text-align:center;border-bottom:3px solid #6d47ef;color:#6d47ef}.word-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.word-chips button{min-width:120px;padding:0 22px}.word-chips button.selected{background:#efeaff;color:#5f38e9;border-color:#8872ef}.drag-hint{text-align:center;color:#8a90a3;font-size:11px;margin:17px 0}.check-gap{margin:5px auto 0}.result-celebration{text-align:center;padding:18px 0}.result-badge{width:100px;height:100px;display:grid;place-items:center;margin:0 auto 16px;border-radius:28px;background:linear-gradient(145deg,#fff7db,#ffe59b);font-size:48px;transform:rotate(-4deg)}.result-celebration h2{font-size:34px;margin:10px 0 7px}.result-celebration>p{color:#7d8498;font-size:13px}.result-score{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;align-content:center;margin:24px auto;background:conic-gradient(#6941ef 0 90%,#ebeaf1 90%);border:10px solid #f7f7fb}.result-score b{font-size:31px}.result-score span{font-size:10px;color:#868ba0}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:620px;margin:auto}.result-stats div{border:1px solid #e7e9f0;border-radius:14px;padding:14px}.result-stats strong{display:block;font-size:18px}.result-stats small{font-size:9px;color:#8b90a3}.result-actions{display:flex;justify-content:center;gap:10px;margin-top:23px}.save-status{display:block;margin-top:13px;color:#8e93a5}
@keyframes vocabShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media(max-width:760px){.vocab-topbar{grid-template-columns:1fr auto}.vocab-progress-wrap{grid-column:1/-1;grid-row:2}.vocab-back span{display:none}.word-card{grid-template-columns:1fr;gap:20px}.word-image img{height:230px}.word-copy h2{font-size:48px}.picture-options{grid-template-columns:repeat(2,1fr)}.picture-option img{height:130px}.vocab-panel{padding:18px}.result-stats{grid-template-columns:1fr}.result-actions{flex-direction:column}.text-options{grid-template-columns:1fr}}

/* =========================================================
   LingoUp V7 — Grammar Learning Engine
   ========================================================= */
.grammar-app{min-height:calc(100vh - 150px);background:linear-gradient(180deg,#f8f8ff 0,#fff 55%);padding:30px 0 58px}.grammar-stage{max-width:900px}.grammar-panel{min-height:430px}.exercise-icon.grammar-orange{background:#fff0e6;color:#ef6c22}.exercise-icon.grammar-blue{background:#eaf4ff;color:#2687ec}.exercise-icon.grammar-violet{background:#f1edff;color:#6638ef}.exercise-icon.grammar-pink{background:#fff0f8;color:#c63b97}.exercise-icon.grammar-green{background:#eafaf3;color:#1fa96d}.grammar-question-card{min-height:155px;border-radius:22px;background:linear-gradient(135deg,#141949,#34208c 55%,#6d32e7);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;margin:12px 0 26px;box-shadow:0 18px 40px rgba(56,40,144,.16)}.grammar-question-card span{font-size:11px;color:#d8dcf3;margin-bottom:10px}.grammar-question-card strong{font:900 clamp(31px,5vw,48px)/1.35 Inter,Cairo,sans-serif;letter-spacing:-1px}.grammar-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:650px;margin:auto}.grammar-choice-grid button{height:68px;border:1px solid #e1e4ee;background:#fff;border-radius:15px;font:900 18px Inter,sans-serif;color:#343950;cursor:pointer;transition:.2s}.grammar-choice-grid button:hover{transform:translateY(-2px);border-color:#8d75f3;background:#faf8ff}.grammar-choice-grid button.correct{border-color:#2fc781;background:#effcf6;color:#11794e}.grammar-choice-grid button.wrong{border-color:#fb7185;background:#fff1f3;color:#bf3851;animation:vocabShake .28s ease}.grammar-input-row{max-width:630px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:12px}.grammar-input-row input{height:58px;border:1px solid #dfe3ec;border-radius:13px;background:#fbfcff;padding:0 18px;font:800 16px Inter,Cairo,sans-serif;outline:none}.grammar-input-row input:focus{border-color:#6a42ef;box-shadow:0 0 0 4px rgba(106,66,239,.08);background:#fff}.grammar-instruction{text-align:center;color:#737b92;font-size:12px;margin:-4px auto 22px;max-width:650px}.sentence-build{min-height:86px;border:2px dashed #d9ddec;background:#fbfcff;border-radius:18px;margin:14px auto 22px;max-width:760px;padding:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center}.sentence-build:empty:after{content:'…';font-size:28px;color:#c4c8d5}.sentence-build .built-word{min-width:90px;height:48px;padding:0 18px;border:1px solid #dcd6ff;border-radius:12px;background:#f1edff;color:#5e39e8;font:800 15px Inter,Cairo,sans-serif;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.grammar-word-bank{display:flex;flex-wrap:wrap;gap:11px;justify-content:center;max-width:760px;margin:auto}.grammar-word-bank button{min-width:110px;height:54px;padding:0 18px;border:1px solid #e1e4ed;background:#fff;border-radius:13px;font:800 15px Inter,Cairo,sans-serif;color:#323950;cursor:pointer;transition:.2s}.grammar-word-bank button:hover{border-color:#8d75f3;background:#faf8ff;transform:translateY(-2px)}.grammar-word-bank button.used{opacity:.25;pointer-events:none;transform:none}.grammar-builder-actions{display:flex;justify-content:center;gap:10px;margin-top:22px}.grammar-builder-actions .primary-vocab:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.grammar-panel .feedback-line{max-width:760px;margin:16px auto 0}.grammar-panel.hidden{display:none}@media(max-width:760px){.grammar-choice-grid{grid-template-columns:1fr}.grammar-input-row{grid-template-columns:1fr}.grammar-input-row .primary-vocab{width:100%}.grammar-panel{min-height:auto}.grammar-question-card{min-height:130px}.grammar-builder-actions{flex-direction:column}.grammar-builder-actions>*{width:100%}}


/* =========================================================
   LingoUp V7.1 — English exercise direction fix
   Arabic UI remains RTL; English learning content stays LTR.
   ========================================================= */
.word-order-zone,
.word-order-answer,
.word-order-bank,
.sentence-builder,
.sentence-dropzone,
.grammar-order-zone,
.grammar-word-bank,
[data-word-order],
[data-sentence-builder] {
    direction: ltr !important;
    unicode-bidi: isolate !important;
    text-align: left;
}

.word-order-zone .word-chip,
.word-order-answer .word-chip,
.word-order-bank .word-chip,
.sentence-builder .word-chip,
.sentence-dropzone .word-chip,
.grammar-order-zone .word-chip,
.grammar-word-bank .word-chip,
[data-word-order] .word-chip,
[data-sentence-builder] .word-chip {
    direction: ltr !important;
    unicode-bidi: isolate !important;
}

/* English fragments inside exercises should never inherit Arabic RTL. */
.exercise-card [lang="en"],
.grammar-card [lang="en"],
.exercise-en,
.english-text,
.en-content {
    direction: ltr !important;
    unicode-bidi: isolate !important;
    text-align: left;
}


/* =========================================================
   LingoUp V7.2 — definitive Grammar sentence order fix
   The actual Grammar builder classes are .sentence-build and
   .grammar-word-bank. Force them to render English LTR even
   while the surrounding Arabic UI stays RTL.
   ========================================================= */
.grammar-panel .sentence-build,
.grammar-panel .grammar-word-bank {
    direction: ltr !important;
    unicode-bidi: isolate !important;
}

.grammar-panel .sentence-build {
    flex-direction: row !important;
}

.grammar-panel .sentence-build .built-word,
.grammar-panel .grammar-word-bank button {
    direction: ltr !important;
    unicode-bidi: isolate !important;
    text-align: center !important;
}

/* ===== LingoUp V8 Listening Engine ===== */
.listening-page{max-width:1120px;margin:0 auto;padding:42px 24px 80px}
.listen-topbar{display:grid;grid-template-columns:1fr 2fr 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #e8e9f5;border-radius:20px;padding:18px 22px;box-shadow:0 14px 35px rgba(28,31,74,.06)}
.listen-back{font-weight:800;color:#4c4f68;text-decoration:none}
.listen-progress-wrap{text-align:center}.listen-progress-wrap strong{font-size:14px}
.listen-progress{height:8px;background:#eceefa;border-radius:99px;margin-top:9px;overflow:hidden}
.listen-progress span{display:block;width:25%;height:100%;background:linear-gradient(90deg,#6b36ff,#26c6b8);border-radius:99px;transition:.3s}
.listen-xp{justify-self:end;background:#f2efff;border:1px solid #dfd7ff;padding:12px 16px;border-radius:14px;color:#6338ef}
.listen-intro{text-align:center;padding:52px 0 28px}
.listen-badge{display:inline-block;background:#f0ecff;color:#6436f3;border-radius:99px;padding:8px 14px;font-weight:900}
.listen-intro h1{font-size:48px;line-height:1.2;margin:18px 0 8px;color:#171a3a}
.listen-intro p{color:#7d8298;font-size:17px}
.listen-card{background:#fff;border:1px solid #e4e6f0;border-radius:28px;min-height:470px;padding:34px 48px;box-shadow:0 20px 55px rgba(34,36,73,.06);position:relative}
.listen-step{position:absolute;top:26px;inset-inline-end:30px;color:#6940f4;font-weight:900}
.listen-task{text-align:center;padding-top:18px}
.listen-task h2{font-size:28px;color:#171a3a;margin:10px 0}.listen-task p{color:#7e8397}
.audio-orb{width:112px;height:112px;margin:28px auto;display:grid;place-items:center;border:0;border-radius:50%;font-size:42px;cursor:pointer;background:linear-gradient(135deg,#6533f5,#9d39f0);color:#fff;box-shadow:0 16px 38px rgba(103,52,244,.28)}
.audio-orb.playing{animation:lingoPulse 1s infinite}@keyframes lingoPulse{50%{transform:scale(1.07);box-shadow:0 18px 50px rgba(103,52,244,.38)}}
.listen-options{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:26px auto;direction:ltr}
.listen-option{min-width:160px;background:#fafaff;border:2px solid #e4e0ff;border-radius:18px;padding:18px;cursor:pointer;font-weight:900;color:#26294d;font-size:18px}
.listen-option.selected{border-color:#6937f5;background:#f0ebff;color:#6030ec}
.listen-picture{font-size:58px;display:block;margin-bottom:8px}
.listen-passage{max-width:720px;margin:22px auto;background:#f8f8fe;border:1px solid #e9e8f5;border-radius:18px;padding:22px;direction:ltr;text-align:left;font-size:18px;line-height:1.8}
.listen-map{max-width:720px;height:220px;margin:25px auto;position:relative;background:linear-gradient(180deg,#f7fbff,#f5f6ff);border:2px dashed #d9dcef;border-radius:24px;direction:ltr}
.map-place{position:absolute;background:#fff;border:1px solid #e3e4ef;border-radius:14px;padding:12px 18px;font-weight:800}
.map-school{left:45px;top:45px}.map-park{right:55px;top:45px}.map-cafe{right:80px;bottom:35px}
.map-person{position:absolute;left:45%;top:44%;font-size:42px;cursor:grab;user-select:none}
.map-place.target{outline:3px solid #6b3af4;background:#f1edff}
.listen-feedback{text-align:center;min-height:36px;margin:18px 0;font-weight:900}
.listen-feedback.ok{color:#16a36b}.listen-feedback.bad{color:#dc426b}
.listen-actions{display:flex;justify-content:center;gap:12px}
.btn-listen-primary,.btn-listen-next{border:0;border-radius:14px;padding:15px 24px;font-weight:900;cursor:pointer}
.btn-listen-primary{background:#6b35f5;color:#fff}.btn-listen-next{background:#171a3a;color:#fff}
@media(max-width:760px){.listen-topbar{grid-template-columns:1fr}.listen-xp{justify-self:start}.listen-intro h1{font-size:36px}.listen-card{padding:30px 18px}.listen-option{min-width:130px}}

/* ===== LingoUp V9 Learning Path Engine ===== */
.learning-path-v9 .shell{max-width:1180px}.learning-flash{margin:0 0 20px;padding:14px 18px;border:1px solid #ddd6ff;background:#f4f1ff;color:#5e38e8;border-radius:14px;font-weight:800}.path-overview{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:linear-gradient(135deg,#171b52,#572bd0);color:#fff;border-radius:22px;padding:22px 26px;margin-bottom:28px}.path-overview small{display:block;opacity:.75}.path-overview strong{font-size:28px}.path-overview-track{height:9px;background:rgba(255,255,255,.15);border-radius:99px;overflow:hidden}.path-overview-track i{display:block;height:100%;background:linear-gradient(90deg,#44dfb5,#66a8ff);border-radius:99px}.path-unit{background:#fff;border:1px solid #e7e8f2;border-radius:24px;padding:24px;margin:22px 0;box-shadow:0 12px 35px rgba(30,32,70,.05)}.path-unit-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.path-unit-head>span{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#eee9ff;color:#6436f2;font-weight:900}.path-unit-head small{color:#7d8296}.path-unit-head h2{margin:2px 0 0}.path-lessons{display:grid;gap:14px}.path-lesson{display:grid;grid-template-columns:54px 1fr 210px;gap:18px;align-items:center;padding:18px;border:1px solid #e8e9f1;border-radius:18px;background:#fcfcff}.path-lesson.completed{background:#f8fffc;border-color:#d8f3e7}.path-lesson.current{border-color:#cfc3ff;box-shadow:0 8px 24px rgba(103,54,244,.08)}.path-lesson.locked{opacity:.58}.path-status-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#f0edff;color:#6335ef;font-weight:900}.completed .path-status-icon{background:#e5f9ef;color:#159d68}.path-lesson-copy small{color:#85899d}.path-lesson-copy h3{margin:4px 0 5px}.path-lesson-copy p{margin:0;color:#767c91}.path-meta{display:flex;gap:14px;margin-top:8px;font-size:12px;color:#6f7488}.path-lesson-action{text-align:end}.path-lesson-action .mini-progress{height:6px;background:#edeef4;border-radius:99px;margin-bottom:6px;overflow:hidden}.path-lesson-action .mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#6d3aff,#35b8f2)}.path-lesson-action b{display:block;margin-bottom:8px}.path-lesson-action a,.path-lesson-action span{display:inline-block;padding:10px 13px;border-radius:10px;text-decoration:none;font-weight:800;font-size:12px}.path-lesson-action a{background:#f0ecff;color:#6031ea}.path-lesson-action a.primary{background:#6535f2;color:#fff}.path-lesson-action span{background:#f2f3f7;color:#8b8fa0}@media(max-width:760px){.path-overview{grid-template-columns:1fr}.path-lesson{grid-template-columns:42px 1fr}.path-lesson-action{grid-column:1/-1;text-align:start}}


/* =========================================================
   LingoUp V10 — Reading Engine
   ========================================================= */
.reading-app{background:linear-gradient(180deg,#f7f8ff 0,#fff 40%);min-height:100vh;padding:34px 0 80px}
.reading-shell{width:min(1180px,94%);margin:auto}
.reading-topbar{display:grid;grid-template-columns:1fr 2fr 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #e7e8f3;border-radius:20px;padding:18px 22px;box-shadow:0 14px 38px rgba(25,29,71,.06)}
.reading-back{font-weight:800;color:#4c5069;text-decoration:none}
.reading-progress-meta{display:flex;justify-content:space-between;font-size:13px;margin-bottom:9px}
.reading-progress{height:8px;background:#eceefa;border-radius:99px;overflow:hidden}
.reading-progress i{display:block;height:100%;background:linear-gradient(90deg,#6a35f5,#2db6f4);border-radius:99px;transition:.25s}
.reading-xp{justify-self:end;background:#f1edff;border:1px solid #ddd5ff;color:#6437ee;padding:12px 15px;border-radius:14px;font-weight:800}
.reading-hero{text-align:center;padding:48px 0 30px}
.reading-hero h1{font-size:46px;line-height:1.2;margin:16px 0 8px;color:#171a3a}
.reading-hero p{color:#777e95;font-size:16px}
.reading-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}
.reading-passage-card,.reading-question-card,.reading-result-card{background:#fff;border:1px solid #e5e6f1;border-radius:26px;box-shadow:0 18px 50px rgba(30,34,77,.06)}
.reading-passage-card{padding:30px;position:sticky;top:20px}
.reading-passage-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #eff0f5;padding-bottom:18px;margin-bottom:20px}
.reading-passage-head small{color:#6d3ef3;font-weight:900}.reading-passage-head h2{font-size:28px;margin:4px 0 0;color:#171a3a}
.reading-audio-btn{border:1px solid #dcd8f5;background:#f5f2ff;color:#6235e8;border-radius:13px;padding:11px 14px;font-weight:900;cursor:pointer}
.reading-audio-btn.playing{box-shadow:0 0 0 5px rgba(101,55,239,.08)}
.reading-text{font-size:17px;line-height:2;color:#2c314f}
.reading-text p{margin:0 0 14px}
.reading-keywords{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.reading-keywords span{background:#f7f7fc;border:1px solid #e8e9f2;border-radius:99px;padding:7px 11px;font-size:12px;color:#60667d}
.reading-question-card{padding:30px;min-height:500px}
.reading-question-step{color:#6738ef;font-size:12px;font-weight:900;margin-bottom:18px}
.reading-task h3{font-size:28px;color:#171a3a;margin:0 0 10px}.reading-task>p{color:#7a8094;margin:0 0 24px}
.reading-options{display:grid;gap:12px}
.reading-option{border:2px solid #e5e4f5;background:#fbfbff;border-radius:15px;padding:16px 18px;text-align:start;font-weight:800;color:#272b4c;cursor:pointer}
.reading-option.selected{border-color:#6940f2;background:#f2eeff;color:#6132e8}
.reading-input{width:100%;height:54px;border:1px solid #dde1ec;border-radius:13px;padding:0 16px;font:inherit;direction:ltr;text-align:left}
.reading-order-bank,.reading-order-answer{direction:ltr;display:flex;gap:10px;flex-wrap:wrap;min-height:72px;border:2px dashed #dfe2ef;border-radius:16px;padding:14px;margin:16px 0}
.reading-word{border:1px solid #d9d1ff;background:#f1edff;color:#6034e7;border-radius:12px;padding:11px 15px;font-weight:900;cursor:pointer}
.reading-order-bank .reading-word.used{opacity:.3;pointer-events:none}
.reading-feedback{min-height:32px;text-align:center;font-weight:900;margin:18px 0}
.reading-feedback.ok{color:#18a36c}.reading-feedback.bad{color:#d84a6a}
.reading-actions{display:flex;justify-content:center;gap:12px}
.reading-primary,.reading-next,.reading-secondary{border:0;border-radius:13px;padding:14px 22px;font-weight:900;cursor:pointer}
.reading-primary{background:linear-gradient(135deg,#6036ef,#8a31ed);color:#fff}
.reading-next{background:#181b3d;color:#fff}
.reading-secondary{background:#f3f4f9;color:#343852;border:1px solid #e2e4ed}
.reading-result-card{padding:44px;text-align:center;margin-top:24px}
.reading-trophy{font-size:70px}.reading-result-card h2{font-size:34px;color:#171a3a;margin:12px 0 6px}.reading-result-card p{color:#777e95}
.reading-result-score{width:132px;height:132px;border-radius:50%;margin:24px auto;display:grid;place-items:center;background:conic-gradient(#6638ef 0 360deg,#ececf5 0);border:9px solid #f0edff}
.reading-result-score b{font-size:28px;color:#171a3a}.reading-result-score span{display:block;font-size:11px;color:#777}
.reading-result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:620px;margin:20px auto}
.reading-result-stats div{background:#fafaff;border:1px solid #e7e8f2;border-radius:15px;padding:16px}
.reading-result-stats strong{display:block;font-size:20px}.reading-result-stats small{color:#7c8297}
.reading-save-status{display:block;min-height:24px;margin:14px 0}
.reading-result-actions{display:flex;justify-content:center;gap:12px}.link-btn{text-decoration:none;display:inline-block}
@media(max-width:900px){.reading-layout{grid-template-columns:1fr}.reading-passage-card{position:relative;top:auto}.reading-topbar{grid-template-columns:1fr}.reading-xp{justify-self:start}}
@media(max-width:600px){.reading-hero h1{font-size:34px}.reading-passage-head{align-items:flex-start;flex-direction:column}.reading-question-card,.reading-passage-card{padding:22px}.reading-result-stats{grid-template-columns:1fr}}


/* =========================================================
   LingoUp V11 — Pronunciation Engine
   ========================================================= */
.pron-app{background:linear-gradient(180deg,#f7f8ff 0,#fff 42%);min-height:100vh;padding:34px 0 80px}
.pron-shell{width:min(1180px,94%);margin:auto}
.pron-topbar{display:grid;grid-template-columns:1fr 2fr 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #e7e8f3;border-radius:20px;padding:18px 22px;box-shadow:0 14px 38px rgba(25,29,71,.06)}
.pron-back{text-decoration:none;font-weight:800;color:#4c5069}
.pron-progress-meta{display:flex;justify-content:space-between;font-size:13px;margin-bottom:9px}
.pron-progress{height:8px;background:#eceefa;border-radius:99px;overflow:hidden}.pron-progress i{display:block;height:100%;background:linear-gradient(90deg,#6a35f5,#2db6f4);border-radius:99px;transition:.25s}
.pron-xp{justify-self:end;background:#f1edff;border:1px solid #ddd5ff;color:#6437ee;padding:12px 15px;border-radius:14px;font-weight:800}
.pron-hero{text-align:center;padding:48px 0 30px}.pron-hero h1{font-size:46px;line-height:1.2;margin:16px 0 8px;color:#171a3a}.pron-hero p{color:#777e95;font-size:16px}
.pron-card,.pron-result-card{background:#fff;border:1px solid #e5e6f1;border-radius:28px;box-shadow:0 18px 50px rgba(30,34,77,.06)}
.pron-card{padding:34px}
.pron-card-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #efeff5;padding-bottom:22px}
.pron-card-head small{color:#6638ef;font-weight:900}.pron-card-head h2{font-size:36px;margin:6px 0 2px;color:#171a3a;direction:ltr}.pron-card-head p{color:#7b8195;margin:0}
.pron-audio-btn{border:1px solid #dcd8f5;background:#f4f1ff;color:#6234e9;border-radius:14px;padding:13px 17px;font-weight:900;cursor:pointer}
.pron-audio-btn.playing{box-shadow:0 0 0 5px rgba(101,55,239,.08)}
.pron-main{display:grid;grid-template-columns:1fr 1.15fr;gap:36px;padding:34px 0 8px;align-items:center}
.pron-meter-wrap{display:flex;flex-direction:column;align-items:center}
.pron-meter{position:relative;width:310px;height:170px;overflow:hidden}
.pron-meter-arc{position:absolute;left:15px;top:15px;width:280px;height:280px;border-radius:50%;background:conic-gradient(from 270deg,#ef5f77 0 16%,#f7a83f 16% 33%,#e8d83f 33% 50%,#5bcf85 50% 67%,#32b7d7 67% 83%,#6638ef 83% 100%);clip-path:inset(0 0 50% 0)}
.pron-meter:after{content:"";position:absolute;left:47px;top:47px;width:216px;height:216px;border-radius:50%;background:#fff}
.pron-needle{position:absolute;left:50%;bottom:10px;width:4px;height:112px;background:#171a3a;border-radius:4px;transform-origin:50% 100%;transform:translateX(-50%) rotate(-90deg);transition:transform .7s cubic-bezier(.2,.8,.2,1);z-index:3}
.pron-center{position:absolute;left:50%;bottom:3px;width:24px;height:24px;background:#171a3a;border-radius:50%;transform:translateX(-50%);z-index:4}
.pron-score{position:absolute;left:50%;bottom:42px;transform:translateX(-50%);font-size:36px;font-weight:900;color:#171a3a;z-index:4}
.pron-level{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);font-size:12px;font-weight:800;color:#747a91;z-index:4}
.pron-scale{width:285px;display:flex;justify-content:space-between;color:#8a90a4;font-size:11px}
.pron-action-panel{text-align:center}
.pron-mic-btn{width:112px;height:112px;border:0;border-radius:50%;background:linear-gradient(135deg,#6533f4,#9a33ed);color:#fff;font-size:42px;cursor:pointer;box-shadow:0 18px 42px rgba(103,53,242,.28);transition:.2s}
.pron-mic-btn:hover{transform:translateY(-2px)}.pron-mic-btn.recording{animation:pronPulse 1s infinite;background:linear-gradient(135deg,#e14a71,#ff7d61)}
@keyframes pronPulse{50%{transform:scale(1.06);box-shadow:0 0 0 14px rgba(225,74,113,.08)}}
.pron-action-panel>strong{display:block;font-size:18px;color:#171a3a;margin-top:16px}.pron-action-panel>p{font-size:13px;color:#7c8296}
.pron-transcript{background:#f8f8fd;border:1px solid #e7e8f1;border-radius:14px;padding:14px 16px;margin:20px 0;text-align:start}
.pron-transcript small{color:#7a8095}.pron-transcript p{direction:ltr;text-align:left;font-weight:800;color:#252a49;margin:6px 0 0}
.pron-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pron-breakdown div{background:#fbfbff;border:1px solid #e7e8f2;border-radius:14px;padding:13px}.pron-breakdown span{display:block;font-size:11px;color:#7a8095}.pron-breakdown b{font-size:18px;color:#171a3a}
.pron-feedback{text-align:center;min-height:34px;font-weight:900;margin:18px 0}.pron-feedback.ok{color:#16a36b}.pron-feedback.mid{color:#db8a22}.pron-feedback.bad{color:#d84a6a}
.pron-actions{display:flex;justify-content:center;gap:12px}
.pron-result-card{text-align:center;padding:46px;margin-top:24px}.pron-trophy{font-size:70px}.pron-result-card h2{font-size:34px;color:#171a3a;margin:12px 0 6px}.pron-result-card p{color:#777e95}
.pron-final-score{width:140px;height:140px;margin:24px auto;border-radius:50%;display:grid;place-items:center;background:#f3efff;border:9px solid #e4dcff}
.pron-final-score b{font-size:30px;color:#171a3a}.pron-final-score span{display:block;font-size:11px;color:#777}
.pron-result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:620px;margin:20px auto}.pron-result-stats div{background:#fafaff;border:1px solid #e7e8f2;border-radius:15px;padding:16px}.pron-result-stats strong{display:block;font-size:20px}.pron-result-stats small{color:#7c8297}
.pron-result-actions{display:flex;justify-content:center;gap:12px;margin-top:18px}
@media(max-width:900px){.pron-main{grid-template-columns:1fr}.pron-topbar{grid-template-columns:1fr}.pron-xp{justify-self:start}}
@media(max-width:600px){.pron-hero h1{font-size:34px}.pron-card{padding:22px}.pron-card-head{align-items:flex-start;flex-direction:column}.pron-meter{transform:scale(.88)}.pron-breakdown,.pron-result-stats{grid-template-columns:1fr}}


/* =========================================================
   LingoUp V12 — Conversation Engine
   ========================================================= */
.conversation-app{min-height:100vh;background:linear-gradient(180deg,#f7f8ff 0,#fff 45%);padding:34px 0 80px}
.conversation-shell{width:min(1180px,94%);margin:auto}
.conversation-topbar{display:grid;grid-template-columns:1fr 2fr 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #e7e8f3;border-radius:20px;padding:18px 22px;box-shadow:0 14px 38px rgba(25,29,71,.06)}
.conversation-back{text-decoration:none;font-weight:800;color:#4c5069}
.conversation-progress-meta{display:flex;justify-content:space-between;font-size:13px;margin-bottom:9px}
.conversation-progress{height:8px;background:#eceefa;border-radius:99px;overflow:hidden}.conversation-progress i{display:block;height:100%;background:linear-gradient(90deg,#6735f3,#28c5b7);border-radius:99px;transition:.3s}
.conversation-xp{justify-self:end;background:#f1edff;border:1px solid #ddd5ff;color:#6437ee;padding:12px 15px;border-radius:14px;font-weight:800}
.conversation-heading{text-align:center;padding:48px 0 30px}.conversation-heading h1{font-size:46px;line-height:1.2;margin:16px 0 8px;color:#171a3a}.conversation-heading p{color:#777e95;font-size:16px}
.conversation-layout{display:grid;grid-template-columns:.72fr 1.5fr;gap:24px;align-items:start}
.conversation-scenario,.conversation-chat-card,.conversation-result{background:#fff;border:1px solid #e5e6f1;border-radius:26px;box-shadow:0 18px 50px rgba(30,34,77,.06)}
.conversation-scenario{padding:30px;position:sticky;top:20px}
.scenario-visual{width:82px;height:82px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(135deg,#eee8ff,#e3f9f5);font-size:40px;margin-bottom:22px}
.conversation-scenario>span{font-size:11px;color:#6739ed;font-weight:900}.conversation-scenario h2{font-size:26px;color:#171a3a;margin:7px 0 9px}.conversation-scenario>p{color:#777e95;line-height:1.8}
.scenario-goals{display:grid;gap:11px;margin:24px 0}.scenario-goals div{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:800;color:#343854}.scenario-goals i{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#eaf9f2;color:#15a66a;font-style:normal}
.conversation-score-mini{padding:18px;background:linear-gradient(135deg,#1b1b62,#5524bc);color:#fff;border-radius:18px}.conversation-score-mini span{display:block;font-size:11px;opacity:.8}.conversation-score-mini b{font-size:28px}
.conversation-chat-card{overflow:hidden}
.conversation-chat-head{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid #efeff5}.tutor-avatar{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#5e36f1,#8d32ed);color:#fff;font-weight:900}.conversation-chat-head b{display:block}.conversation-chat-head small{color:#7b8195}.online-dot{display:inline-block;width:7px;height:7px;background:#25c17d;border-radius:50%;margin-inline-end:5px}.conversation-replay{margin-inline-start:auto;border:1px solid #ddd9f2;background:#f7f4ff;color:#6134e8;padding:10px 12px;border-radius:12px;font-weight:800;cursor:pointer}
.conversation-chat{min-height:285px;max-height:360px;overflow:auto;padding:24px;background:linear-gradient(180deg,#fbfbff,#fff);display:flex;flex-direction:column;gap:14px}
.chat-row{display:flex;gap:10px;align-items:flex-end}.chat-row.user{justify-content:flex-start;flex-direction:row-reverse}.chat-bubble{max-width:78%;padding:13px 16px;border-radius:18px;font-size:14px;line-height:1.65}.chat-row.tutor .chat-bubble{background:#f0ecff;color:#2c2c55;border-bottom-left-radius:5px}.chat-row.user .chat-bubble{background:linear-gradient(135deg,#6037ee,#8731eb);color:#fff;border-bottom-right-radius:5px;direction:ltr;text-align:left}
.chat-mini-avatar{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#e9e4ff;color:#6237e9;font-size:10px;font-weight:900}.chat-row.user .chat-mini-avatar{background:#eaf7f4;color:#149d6a}
.conversation-feedback-panel{margin:0 24px;padding:18px;border:1px solid #e6e7f0;border-radius:18px;background:#fcfcff}
.conversation-turn-score{display:flex;gap:14px;align-items:center}.turn-score-circle{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#f2edff;border:6px solid #ded3ff}.turn-score-circle b{font-size:23px;color:#171a3a}.turn-score-circle small{font-size:10px}.conversation-turn-score strong{font-size:17px}.conversation-turn-score p{margin:4px 0 0;color:#777e95;font-size:12px}
.conversation-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.conversation-metrics div{background:#fff;border:1px solid #e9eaf2;border-radius:12px;padding:10px}.conversation-metrics span{display:block;font-size:10px;color:#81869a}.conversation-metrics b{font-size:16px}
.conversation-better{background:#f6f8ff;border-radius:12px;padding:11px 13px}.conversation-better small{font-size:9px;color:#6a3bef;font-weight:900}.conversation-better p{margin:5px 0 0;font-weight:800;color:#292e4d}
.conversation-input-zone{text-align:center;padding:24px 24px 12px}.conversation-help{min-height:30px;color:#6938ef;font-size:12px;font-weight:800;margin-bottom:8px}.conversation-help span{display:inline-block;background:#f4f1ff;border:1px solid #e0d9ff;border-radius:99px;padding:6px 9px;margin:3px}
.conversation-mic{width:92px;height:92px;border:0;border-radius:50%;font-size:36px;color:#fff;background:linear-gradient(135deg,#6533f4,#9833ec);box-shadow:0 16px 38px rgba(103,53,242,.25);cursor:pointer}.conversation-mic.recording{animation:pronPulse 1s infinite;background:linear-gradient(135deg,#e14a71,#ff7d61)}
.conversation-input-zone>strong{display:block;margin-top:13px;font-size:16px}.conversation-input-zone>p{color:#83889c;font-size:12px}.conversation-transcript{max-width:620px;margin:14px auto 0;background:#f8f8fd;border:1px solid #e7e8f1;border-radius:14px;padding:12px 15px;text-align:left;color:#272c4a;font-weight:800;min-height:48px}
.conversation-actions{display:flex;justify-content:center;gap:12px;padding:8px 24px 25px}
.conversation-result{text-align:center;padding:46px;margin-top:24px}.conversation-result-icon{font-size:70px}.conversation-result h2{font-size:34px;color:#171a3a;margin:12px 0 6px}.conversation-result>p{color:#777e95}
.conversation-final-score{width:140px;height:140px;margin:24px auto;border-radius:50%;display:grid;place-items:center;background:#f3efff;border:9px solid #e4dcff}.conversation-final-score b{font-size:30px;color:#171a3a}.conversation-final-score span{display:block;font-size:11px;color:#777}
.conversation-result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:620px;margin:20px auto}.conversation-result-stats div{background:#fafaff;border:1px solid #e7e8f2;border-radius:15px;padding:16px}.conversation-result-stats strong{display:block;font-size:20px}.conversation-result-stats small{color:#7c8297}
.conversation-result-actions{display:flex;justify-content:center;gap:12px;margin-top:18px}
@media(max-width:900px){.conversation-layout{grid-template-columns:1fr}.conversation-scenario{position:relative;top:auto}.conversation-topbar{grid-template-columns:1fr}.conversation-xp{justify-self:start}}
@media(max-width:600px){.conversation-heading h1{font-size:34px}.conversation-scenario{display:none}.conversation-chat-head,.conversation-input-zone{padding-left:16px;padding-right:16px}.conversation-metrics,.conversation-result-stats{grid-template-columns:1fr}.conversation-feedback-panel{margin:0 14px}}

/* =========================================================
   LingoUp V14 — Teacher Content Studio + Word Builder
   ========================================================= */
.teacher-studio-page{min-height:100vh;background:linear-gradient(180deg,#f7f8ff,#fff 45%);padding:38px 0 80px}.teacher-studio-page .shell{width:min(1220px,94%);margin:auto}.studio-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.studio-heading h1{font-size:38px;margin:8px 0;color:#171a3a}.studio-heading p{color:#787f95;max-width:760px}.studio-back{display:inline-block;color:#6338eb;text-decoration:none;font-weight:800;font-size:12px;margin-bottom:10px}.studio-primary{display:inline-flex;align-items:center;justify-content:center;border:0;text-decoration:none;background:linear-gradient(135deg,#6036ef,#8731ed);color:#fff;padding:14px 20px;border-radius:13px;font-weight:900;box-shadow:0 12px 26px rgba(99,54,239,.18);cursor:pointer}.studio-primary.wide{width:100%;margin-top:10px}.studio-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:34px}.studio-metrics>div{background:#fff;border:1px solid #e6e8f2;border-radius:18px;padding:20px;display:grid;grid-template-columns:auto 1fr;column-gap:13px;box-shadow:0 10px 28px rgba(28,32,76,.04)}.studio-metrics i{grid-row:1/3;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#f1edff;color:#6237eb;font-style:normal;font-weight:900}.studio-metrics b{font-size:24px}.studio-metrics span{font-size:11px;color:#80869b}.studio-section-head span,.form-card-title span,.library-panel-head span{font-size:10px;font-weight:900;color:#6739ec}.studio-section-head h2{font-size:25px;margin:5px 0 16px}.studio-tools-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.studio-tool-card{position:relative;text-decoration:none;color:#242847;background:#fff;border:1px solid #e5e7f0;border-radius:22px;padding:24px;min-height:235px;box-shadow:0 12px 34px rgba(28,32,76,.045);transition:.2s}.studio-tool-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(52,42,128,.09)}.studio-tool-card.featured{background:linear-gradient(145deg,#1a1d61,#5b2ac7);color:#fff}.studio-tool-card.muted{opacity:.78}.studio-tool-card .tool-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#f0ecff;color:#6235ee;font-weight:900;font-size:18px}.studio-tool-card.featured .tool-icon{background:rgba(255,255,255,.13);color:#fff}.studio-tool-card h3{font-size:21px;margin:20px 0 8px}.studio-tool-card p{font-size:12px;line-height:1.8;color:#7e8499}.studio-tool-card.featured p{color:#d7d8ec}.studio-tool-card b{position:absolute;bottom:22px;font-size:11px;color:#6337ef}.studio-tool-card.featured b{color:#fff}.tool-tag{position:absolute;top:22px;inset-inline-end:22px;background:#25c28a;color:#fff;font-size:8px;font-weight:900;padding:5px 7px;border-radius:99px}.tool-tag.soon{background:#ffad46}.studio-workflow{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:26px;background:#fff;border:1px solid #e5e7f0;border-radius:22px;padding:22px}.studio-workflow>div{display:grid;grid-template-columns:auto 1fr;gap:2px 10px}.studio-workflow span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;background:#f0ecff;color:#6337ee;border-radius:50%;font-weight:900}.studio-workflow b{font-size:12px}.studio-workflow small{font-size:9px;color:#858a9c}.studio-workflow em{color:#b3b6c4;font-style:normal}.studio-two-col{display:grid;grid-template-columns:.85fr 1.35fr;gap:22px;align-items:start}.studio-form-card{background:#fff;border:1px solid #e5e7f0;border-radius:24px;padding:26px;box-shadow:0 14px 38px rgba(28,32,76,.045)}.studio-form-card h2{font-size:21px;margin:0 0 20px}.studio-form-card label{display:block;font-size:11px;font-weight:800;color:#343851;margin:12px 0}.studio-form-card input,.studio-form-card textarea,.studio-form-card select{width:100%;margin-top:7px;border:1px solid #dfe2ed;background:#fbfcff;border-radius:12px;padding:12px 13px;font:inherit;box-sizing:border-box}.studio-form-card input[type=file]{padding:10px;background:#fff}.studio-form-card small{color:#858a9e}.studio-alert{padding:13px 16px;border-radius:13px;margin:0 0 18px;font-weight:800;font-size:12px}.studio-alert.ok{background:#eaf9f2;color:#13895d}.studio-alert.bad{background:#fff0f3;color:#c43e60}.form-card-title,.library-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.form-card-title h2,.library-panel-head h2{margin:4px 0 0}.type-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.type-switch input{display:none}.type-switch span{display:block;text-align:center;padding:12px;border:1px solid #e1e3ed;border-radius:12px;background:#fafbfe;cursor:pointer}.type-switch input:checked+span{border-color:#6639ef;background:#f1edff;color:#6134e7}.upload-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.voice-setting{display:grid;grid-template-columns:1fr 130px;gap:12px;align-items:center;background:#f8f8fd;border:1px solid #e8e9f1;border-radius:14px;padding:13px;margin-top:12px}.check-line{display:flex!important;align-items:center;gap:10px;margin:0!important}.check-line input{width:auto!important;margin:0!important}.check-line span b,.check-line span small{display:block}.word-count-pill{background:#fff;border:1px solid #e2e4ee;border-radius:16px;padding:12px 18px;text-align:center}.word-count-pill b{font-size:24px;display:block}.word-count-pill span{font-size:10px;color:#83889b}.library-panel{max-height:760px}.library-panel-head input{width:180px!important;margin:0!important}.word-library{display:grid;gap:10px;margin-top:18px;max-height:650px;overflow:auto;padding-inline-end:4px}.word-library-item{display:grid;grid-template-columns:72px 1fr auto;gap:13px;align-items:center;border:1px solid #e8e9f1;border-radius:16px;padding:11px;background:#fcfcff}.word-media{width:72px;height:64px;border-radius:13px;background:#f1edff;display:grid;place-items:center;overflow:hidden;color:#6136ea;font-weight:900}.word-media img{width:100%;height:100%;object-fit:cover}.word-info small{font-size:8px;color:#6b3dee;font-weight:900}.word-info h3{font-size:17px;margin:2px 0;color:#1d2141;text-align:left}.word-info p{font-size:12px;margin:2px 0;color:#5d6279}.word-info em{display:block;font-size:10px;color:#9296a6;font-style:normal;margin-top:4px;text-align:left}.word-actions{display:flex;gap:6px;align-items:center}.word-actions form{margin:0}.mini-speak,.mini-audio,.mini-archive{width:36px;height:36px;border:0;border-radius:10px;cursor:pointer}.mini-speak,.mini-audio{background:#eee9ff;color:#6035e7}.mini-archive{background:#fff0f2;color:#d34a6a}.media-library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-height:520px;overflow:auto}.media-item{border:1px solid #e7e8f0;border-radius:14px;padding:10px}.media-item img{width:100%;height:110px;object-fit:cover;border-radius:10px}.media-item audio{width:100%;height:35px}.media-audio-icon{height:80px;display:grid;place-items:center;font-size:32px;background:#f3f0ff;border-radius:10px}.media-item b{display:block;font-size:10px;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-item small{font-size:8px;color:#858a9b}.studio-empty{color:#8b90a2;text-align:center;padding:30px}.lesson-list{display:grid;gap:9px}.lesson-list>div{border:1px solid #e8e9f1;border-radius:13px;padding:12px}.lesson-list span{float:inline-end;font-size:8px;background:#f1edff;color:#6034e9;border-radius:99px;padding:4px 7px}.lesson-list b{display:block}.lesson-list small{color:#858a9c;font-size:10px}
@media(max-width:950px){.studio-tools-grid,.studio-metrics{grid-template-columns:repeat(2,1fr)}.studio-two-col{grid-template-columns:1fr}.studio-workflow{overflow:auto}.library-panel{max-height:none}}
@media(max-width:600px){.studio-heading{align-items:flex-start;flex-direction:column}.studio-heading h1{font-size:30px}.studio-tools-grid,.studio-metrics{grid-template-columns:1fr}.upload-pair,.voice-setting{grid-template-columns:1fr}.media-library-grid{grid-template-columns:repeat(2,1fr)}.word-library-item{grid-template-columns:58px 1fr}.word-media{width:58px;height:58px}.word-actions{grid-column:1/-1;justify-content:flex-end}}


/* =========================================================
   LingoUp V15 — Admin & Teacher Portals
   ========================================================= */
.portal-page{min-height:100vh;background:linear-gradient(180deg,#f7f8ff 0,#fff 45%);padding:38px 0 80px}.portal-page .shell{width:min(1240px,94%);margin:auto}
.portal-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.portal-heading h1{font-size:38px;color:#171a3a;margin:7px 0}.portal-heading p{color:#7a8095;max-width:760px}.portal-primary{display:inline-flex;align-items:center;justify-content:center;border:0;text-decoration:none;background:linear-gradient(135deg,#6036ef,#8731ed);color:#fff;padding:13px 19px;border-radius:13px;font-weight:900;cursor:pointer;box-shadow:0 12px 25px rgba(98,53,239,.18)}.portal-primary.wide{width:100%;box-sizing:border-box}
.portal-metrics{display:grid;gap:12px;margin-bottom:24px}.portal-metrics.six{grid-template-columns:repeat(6,1fr)}.portal-metrics.four{grid-template-columns:repeat(4,1fr)}.portal-metrics>div{background:#fff;border:1px solid #e6e8f1;border-radius:18px;padding:18px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;box-shadow:0 10px 26px rgba(31,35,77,.04)}.portal-metrics i{grid-row:1/3;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#f1edff;color:#6237ed;font-style:normal;font-weight:900}.portal-metrics b{font-size:23px;color:#171a3a}.portal-metrics span{font-size:9px;color:#83889b}
.portal-grid-main{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.portal-panel{background:#fff;border:1px solid #e5e7f0;border-radius:22px;padding:24px;box-shadow:0 14px 36px rgba(30,34,76,.045);margin-bottom:18px}.portal-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.portal-panel-head span{font-size:9px;color:#6639ec;font-weight:900}.portal-panel-head h2{font-size:22px;color:#171a3a;margin:4px 0}.portal-panel-head>a{font-size:11px;color:#6137e9;text-decoration:none;font-weight:900}
.portal-list{display:grid;gap:8px}.portal-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;border:1px solid #ececf3;border-radius:14px;padding:10px}.portal-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#eee9ff;color:#6035e8;font-weight:900}.portal-avatar.student{background:#eaf8f4;color:#129965}.portal-avatar.file{font-size:8px}.portal-row b,.portal-row small{display:block}.portal-row b{font-size:12px}.portal-row small{font-size:9px;color:#878b9d}.portal-date{font-size:9px;color:#858a9d}
.portal-status{display:inline-flex;padding:5px 8px;border-radius:99px;font-size:8px;font-weight:900;background:#f0f1f6;color:#676c80}.portal-status.active,.portal-status.parsed,.portal-status.imported{background:#e9f8f1;color:#14885e}.portal-status.pending,.portal-status.ready_for_ai,.portal-status.uploaded{background:#fff5df;color:#ac6d0c}.portal-status.suspended,.portal-status.failed{background:#fff0f2;color:#bd3f60}
.portal-empty{text-align:center;padding:28px;color:#8b90a2;background:#fafbfe;border-radius:14px;border:1px dashed #e1e3ed}
.portal-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.portal-actions.teacher-six{grid-template-columns:repeat(3,1fr)}.portal-actions>a{text-decoration:none;color:#292d4d;border:1px solid #e8e9f1;border-radius:17px;padding:18px;background:#fcfcff;min-height:125px}.portal-actions i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#f0ecff;color:#6237eb;font-style:normal;font-weight:900}.portal-actions b,.portal-actions small{display:block}.portal-actions b{margin-top:12px}.portal-actions small{font-size:9px;color:#858a9e;line-height:1.6;margin-top:4px}
.portal-form label{display:block;font-size:10px;font-weight:800;color:#343851;margin:10px 0}.portal-form input,.portal-form select,.assignment-form select{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #dfe2ed;background:#fbfcff;border-radius:11px;padding:11px 12px;font:inherit}.portal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.inline-actions{display:flex;gap:5px;margin:0}.inline-actions button,.mini-ok,.mini-stop{border:0;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:900;cursor:pointer}.mini-ok{background:#e9f8f1;color:#13885d}.mini-stop{background:#fff0f2;color:#bd3f60}
.table-scroll{overflow:auto}.portal-table{width:100%;border-collapse:collapse;min-width:720px}.portal-table th,.portal-table td{padding:11px;border-bottom:1px solid #eeeef4;text-align:start;font-size:10px}.portal-table th{color:#858a9c;font-size:9px}.portal-table td small{display:block;color:#8b90a1}.score-pill{display:inline-block;background:#eee9ff;color:#6035e8;border-radius:99px;padding:5px 8px;font-weight:900}.student-link{text-decoration:none;color:#222644}
.assignment-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.assignment-form label{font-size:10px;font-weight:800}.assignment-list{display:grid;gap:8px;margin-top:18px}.assignment-list>div{display:grid;grid-template-columns:auto 1fr 1fr auto;gap:12px;align-items:center;border:1px solid #ececf3;border-radius:14px;padding:10px}.assignment-list b,.assignment-list small{display:block}.assignment-list b{font-size:11px}.assignment-list small{font-size:8px;color:#888d9e}.assign-arrow{color:#6338eb;font-weight:900}
.student-analytics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.student-analytics-card{text-decoration:none;color:#262a49;border:1px solid #e7e8f1;border-radius:19px;padding:18px;background:#fcfcff;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center}.student-card-head b,.student-card-head small{display:block}.student-card-head small{font-size:8px;color:#858a9b}.student-ring{--pct:0;width:82px;height:82px;border-radius:50%;background:conic-gradient(#6538ef calc(var(--pct)*1%),#ececf4 0);position:relative;display:grid;place-items:center}.student-ring:before{content:"";position:absolute;inset:8px;background:#fff;border-radius:50%}.student-ring b,.student-ring span{position:relative;z-index:1}.student-ring b{font-size:17px}.student-ring span{font-size:7px;color:#858a9c}.student-mini-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.student-mini-stats span{font-size:8px;color:#858a9b;text-align:center;background:#fff;border:1px solid #ececf3;border-radius:10px;padding:7px}.student-mini-stats b{display:block;color:#2d3150;font-size:12px}.student-analytics-card em{grid-column:1/-1;font-size:8px;color:#9498a7;font-style:normal}
.student-big-score{background:linear-gradient(135deg,#1b1c65,#5826c4);color:#fff;border-radius:18px;padding:15px 24px;text-align:center}.student-big-score b{display:block;font-size:28px}.student-big-score span{font-size:9px;opacity:.8}
.skills-analytics{display:grid;gap:13px}.skills-analytics>div{display:grid;grid-template-columns:120px 1fr 50px;gap:12px;align-items:center;font-size:10px;font-weight:800}.skill-track{height:8px;background:#eceef5;border-radius:99px;overflow:hidden}.skill-track i{display:block;height:100%;background:linear-gradient(90deg,#6137ef,#35b8f0);border-radius:99px}
.import-drop{text-align:center;border:2px dashed #dddff0;border-radius:18px;padding:28px;background:#fafbff}.import-drop>div{width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#6136ef,#8c32ed);color:#fff;display:grid;place-items:center;margin:auto;font-weight:900}.import-drop h2{margin:13px 0 5px}.import-drop p{font-size:10px;color:#878c9e}.import-drop input{margin-top:12px}.import-note{display:block;font-size:9px!important;line-height:1.7;margin-top:12px;color:#8a8fa1!important}
@media(max-width:1050px){.portal-metrics.six{grid-template-columns:repeat(3,1fr)}.portal-actions,.portal-actions.teacher-six,.student-analytics-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.portal-heading{align-items:flex-start;flex-direction:column}.portal-grid-main{grid-template-columns:1fr}.portal-metrics.six,.portal-metrics.four{grid-template-columns:repeat(2,1fr)}.portal-actions,.portal-actions.teacher-six,.student-analytics-grid{grid-template-columns:1fr}.assignment-form{grid-template-columns:1fr}.portal-form-grid{grid-template-columns:1fr}.skills-analytics>div{grid-template-columns:90px 1fr 40px}}


/* =========================================================
   LingoUp V16 — Professional Word Builder + Media Library
   ========================================================= */
.wb-head-actions{display:flex;gap:10px;align-items:center}.studio-secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #dedff0;background:#fff;color:#343852;border-radius:12px;padding:11px 14px;font-weight:900;font-size:10px}.wb-pro-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:start}.wb-editor{position:sticky;top:18px}.wb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.color-field{display:flex;align-items:center;gap:10px;background:#fbfcff;border:1px solid #e1e3ee;border-radius:11px;padding:7px}.color-field input{width:45px!important;height:34px!important;border:0!important;padding:0!important;background:transparent!important}.color-field span{font-size:10px;font-weight:900;color:#5e6278}
.media-picker-block{border:1px solid #e6e8f1;border-radius:14px;padding:13px;margin:11px 0;background:#fcfcff}.media-picker-block>div b,.media-picker-block>div small{display:block}.media-picker-block>div small{font-size:8px;color:#878c9e;margin:3px 0 9px}.media-picker-block input,.media-picker-block select{width:100%;box-sizing:border-box;margin:5px 0;border:1px solid #e1e3ee;border-radius:10px;padding:9px;font:inherit}
.wb-preview{margin-top:15px}.wb-preview>small{font-size:8px;color:#6639ec;font-weight:900}.wb-preview-card{--item-color:#6C3CF0;margin-top:7px;border:1px solid #e5e6ef;border-radius:16px;padding:18px;position:relative;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--item-color) 10%,white),#fff)}.wb-preview-card:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:var(--item-color)}.wb-preview-card .preview-type{font-size:7px;color:var(--item-color);font-weight:900}.wb-preview-card h3{font-size:24px;margin:6px 0;color:#171a3a}.wb-preview-card p{color:#7a8095;margin:0}.wb-preview-card button{position:absolute;inset-inline-end:13px;top:13px;border:0;width:38px;height:38px;border-radius:11px;background:var(--item-color);color:#fff;cursor:pointer}.wb-submit-row{display:flex;gap:8px;align-items:center}.wb-submit-row .wide{flex:1}
.wb-filters{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin-bottom:12px}.wb-filters input,.wb-filters select{border:1px solid #e0e2ec;border-radius:10px;padding:10px;font:inherit;background:#fbfcff}.word-library.pro{max-height:980px;overflow:auto;padding-inline-end:3px}.word-library-item.pro{--item-color:#6C3CF0;border-inline-start:4px solid var(--item-color)}.word-meta{display:flex;gap:5px;flex-wrap:wrap}.word-meta span{font-size:7px;background:#f2efff;color:#6136e9;border-radius:99px;padding:4px 6px;font-weight:900}.word-tags{display:block;color:#7f8497;margin-top:5px}.word-actions{display:flex;gap:4px;align-items:center}.word-actions>a,.word-actions button{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;text-decoration:none;border:1px solid #e4e5ed;background:#fff;cursor:pointer;font-size:11px}.mini-edit{color:#6035ea}.mini-copy{color:#2d7ca8}.mini-archive{color:#b8445f}.media-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.media-stats>div{background:#fff;border:1px solid #e6e8f1;border-radius:16px;padding:15px}.media-stats b{display:block;font-size:22px;color:#171a3a}.media-stats span{font-size:8px;color:#83889b}.media-upload-zone{border:2px dashed #dedff0;border-radius:16px;padding:22px;text-align:center;background:#fbfbff;margin:12px 0}.media-upload-zone span{display:grid;width:50px;height:50px;border-radius:14px;background:#eee9ff;color:#6035e9;place-items:center;margin:auto;font-size:25px}.media-upload-zone b,.media-upload-zone small{display:block}.media-upload-zone b{margin-top:10px}.media-upload-zone small{font-size:8px;color:#8a8fa1;margin:3px 0 9px}.media-library-grid.pro{grid-template-columns:repeat(2,1fr)}.media-item.pro{align-items:stretch}.media-preview{min-height:140px;display:grid;place-items:center;background:#f8f9fd;border-radius:12px;overflow:hidden}.media-preview img{width:100%;height:160px;object-fit:cover}.media-info b,.media-info small,.media-info em{display:block}.media-info{padding-top:9px}.media-info b{font-size:11px}.media-info small,.media-info em{font-size:7px;color:#8a8fa0;margin-top:3px;font-style:normal}.media-manage{margin-top:8px}.media-manage summary{cursor:pointer;font-size:8px;color:#6035e8;font-weight:900}.media-manage form{display:grid;grid-template-columns:1fr 1fr auto;gap:5px;margin-top:7px}.media-manage form input{min-width:0;border:1px solid #e0e2ec;border-radius:8px;padding:7px;font-size:8px}.media-manage form+form{display:block}.media-audio-icon{font-size:35px;padding:15px}
@media(max-width:1050px){.wb-pro-layout{grid-template-columns:1fr}.wb-editor{position:relative;top:auto}.media-library-grid.pro{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.wb-form-grid,.wb-filters,.media-stats{grid-template-columns:1fr}.media-library-grid.pro{grid-template-columns:1fr}.wb-head-actions{align-items:flex-start;flex-direction:column}}
