:root{--ink:#25273d;--muted:#787b91;--line:#e9e9f1;--bg:#f7f8fc;--purple:#6557d8;--lav:#eeebff;--green:#26856f;--shadow:0 8px 35px #26244f06}*{box-sizing:border-box}body{margin:0;font:14px/1.5 'Segoe UI',system-ui,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid #9e93ff}button{border:0;background:none;color:inherit}a{color:var(--purple)}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px;font-weight:650}h2{font-size:18px;letter-spacing:-.3px}h3{font-size:15px}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}small,.muted{color:var(--muted)}.shell{min-height:100vh;display:grid;grid-template-columns:228px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:white;border-right:1px solid var(--line);padding:32px 18px 20px;display:flex;flex-direction:column;gap:30px}.brand{display:flex;align-items:center;gap:10px;font-size:27px;font-weight:750;letter-spacing:-1.3px;padding:0 12px}.brandmark{width:36px;height:36px;border-radius:11px;background:var(--purple);color:white;display:grid;place-items:center;transform:rotate(-6deg)}.brandmark .icon{width:25px;height:25px}.workspace{margin:0 8px;padding:12px;background:#f8f8fb;border:1px solid var(--line);border-radius:10px;display:flex;gap:9px;align-items:center}.workspace strong{font-size:12px}.workspace small{display:block;font-size:10px}.avatar{border-radius:50%;width:34px;height:34px;background:var(--lav);display:grid;place-items:center;color:var(--purple);font-size:12px;font-weight:700;flex-shrink:0}.navlabel{font-size:10px;letter-spacing:1.7px;color:#9b9eae;font-weight:650;margin:0 15px 10px}.side-nav{display:grid;gap:6px}.navbtn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 15px;border-radius:9px;text-align:left;color:#737589}.navbtn.active{background:var(--lav);color:var(--purple);font-weight:650}.navbtn:hover{background:#f4f2ff}.navcount{margin-left:auto;font-size:11px;background:white;border-radius:5px;padding:1px 6px}.sidebar-bottom{margin-top:auto}.previewnote{background:#f6f5fe;border:1px solid #e9e5ff;padding:15px;border-radius:12px;margin:0 6px 20px;font-size:12px}.previewnote .icon{color:var(--purple);margin-bottom:6px}.previewnote p{color:#818096;font-size:11px;margin-top:5px}.userline{display:flex;align-items:center;gap:10px;padding:0 12px}.userline small{display:block;font-size:10px}.mainwrap{min-width:0}.topbar{height:83px;background:#ffffffcf;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:15px}.breadcrumb{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:12px}.breadcrumb strong{color:#54576c;font-weight:500}.topright{display:flex;gap:16px;align-items:center}.demo-badge{display:inline-flex;gap:6px;align-items:center;padding:5px 9px;background:#fff5df;color:#a0782c;font-size:10px;font-weight:650;border-radius:6px;white-space:nowrap}.demo-badge:before{content:'';background:#dfa64b;width:5px;height:5px;border-radius:50%}.mode-switch{display:flex;background:#f1f1f7;border-radius:8px;padding:4px;gap:4px}.mode-switch button{padding:7px 12px;font-size:11px;display:flex;gap:6px;align-items:center;border-radius:6px}.mode-switch .icon{width:15px;height:15px}.mode-switch button.selected{background:white;box-shadow:0 2px 5px #0000000b;color:var(--purple)}main{max-width:1510px;margin:auto;padding:32px 38px 45px}.pagehead{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--purple);text-transform:uppercase;margin-bottom:8px}.subtitle{color:var(--muted);font-size:13px;margin-top:7px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:white;border:1px solid var(--line);border-radius:8px;font-weight:600;font-size:12px;white-space:nowrap}.btn .icon{width:16px;height:16px}.btn.primary{background:var(--purple);border-color:var(--purple);color:white;box-shadow:0 4px 10px #6557d820}.btn.primary:hover{background:#5445c6}.btn.soft{background:var(--lav);border-color:transparent;color:var(--purple)}.btn.ghost{padding:6px 0;border:0;color:var(--purple);background:transparent}.btn.danger{color:#aa485e}.hero{background:#292444;border-radius:16px;padding:27px 30px;color:white;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;margin-bottom:24px;min-height:156px}.hero h2{font-size:25px;letter-spacing:-.6px;font-weight:600;line-height:1.3}.hero p{color:#bdb8d0;font-size:12px;margin-top:10px;max-width:440px}.hero .eyebrow{color:#b9acf7}.hero-art{width:230px;height:120px;flex-shrink:0;position:relative}.orbit{position:absolute;width:180px;height:180px;left:15px;top:-30px;border:1px solid #ffffff15;border-radius:50%}.orbit:after{content:'';position:absolute;inset:27px;border:1px solid #ffffff15;border-radius:50%}.floating{position:absolute;padding:12px 16px;display:flex;gap:10px;align-items:center;background:#41365f;box-shadow:0 10px 25px #0002;border:1px solid #ffffff12;border-radius:10px;transform:rotate(-7deg);top:0;left:0}.floating:nth-child(3){top:66px;left:60px;transform:rotate(7deg);background:#7764c0}.floating strong{font-size:12px;display:block}.floating small{font-size:10px;color:#d4c9ee}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stat{padding:20px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.stat-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px}.stat-top .stat-icon{display:grid;place-items:center;background:#f4f2fe;color:var(--purple);padding:7px;border-radius:8px}.stat-top .icon{width:17px;height:17px}.stat-value{font-size:28px;font-weight:650;letter-spacing:-1px;margin:9px 0 5px}.stat-foot{font-size:10px;color:var(--muted)}.stat-foot b{color:var(--green);font-weight:600}.twocol{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:22px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:23px;box-shadow:var(--shadow)}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.panelhead small{font-size:11px}.niche-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.niche-card{border:1px solid var(--line);border-radius:12px;padding:19px;text-align:left;position:relative;width:100%;transition:transform .15s,box-shadow .15s;background:white}.niche-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #2527440a}.tile-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:12px;margin-bottom:15px;color:var(--c);background:var(--t)}.niche-card h3{font-size:14px}.niche-card p{font-size:10px;color:var(--muted);margin-top:4px}.niche-card .money{font-size:17px;font-weight:650;margin-top:18px}.niche-card .corner{position:absolute;right:15px;top:22px;color:#b6b6c7}.corner .icon{width:15px}.niche-mini{height:4px;background:var(--t);border-radius:5px;margin-top:12px;overflow:hidden}.niche-mini span{display:block;background:var(--c);height:100%}.barline{display:flex;align-items:center;gap:12px;margin-bottom:20px}.barline>div{flex:1}.barlabel{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px}.track{height:7px;background:#f1f0f7;border-radius:10px;overflow:hidden}.track i{display:block;height:100%;background:var(--purple);border-radius:10px}.insight{padding:12px 14px;border-radius:8px;background:#f6f4ff;color:#77718f;font-size:11px}.insight b{color:var(--purple)}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-weight:500;font-size:10px;letter-spacing:.5px;color:#9a9aab;padding:10px 12px;background:#fafafd;text-transform:uppercase;white-space:nowrap}td{padding:15px 12px;border-bottom:1px solid #f0f0f5;white-space:nowrap}tr:last-child td{border-bottom:0}.namecell{display:flex;gap:10px;align-items:center}.namecell small{display:block;font-size:10px}.pill{display:inline-block;background:var(--t,#ecf7f2);color:var(--c,#26856f);font-size:10px;border-radius:5px;padding:4px 8px;font-weight:600}.sectiongap{margin-top:24px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;flex-wrap:wrap}.search{position:relative;min-width:250px;flex:1;max-width:380px}.search>.icon{position:absolute;left:12px;top:11px;width:17px;color:#9a9aac}.search input{width:100%;padding:10px 13px 10px 38px;background:white;border:1px solid var(--line);border-radius:8px;font-size:12px}.filters{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:8px 13px;font-size:11px;border-radius:7px;border:1px solid var(--line);background:white;color:#7c7e93}.chip.active{background:var(--lav);border-color:#dcd5ff;color:var(--purple);font-weight:600}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-card{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;transition:transform .15s,box-shadow .15s}.product-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #2721490b}.cover{height:175px;background:var(--t);position:relative;display:flex;align-items:center;justify-content:space-between;padding:25px;overflow:hidden;cursor:pointer;color:var(--c)}.cover:after{content:'';position:absolute;width:200px;height:200px;border:25px solid currentColor;opacity:.035;border-radius:50%;right:-40px;top:-50px}.cover-copy{position:relative;z-index:1}.cover-copy small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:1.5px;font-weight:700;color:inherit;opacity:.8;margin-bottom:9px}.cover-copy strong{display:block;font-size:22px;line-height:1.12;font-weight:650;letter-spacing:-.6px;max-width:135px}.book{height:112px;width:79px;background:white;box-shadow:6px 10px 14px #1c2a3b17;border-radius:3px 7px 7px 3px;transform:rotate(10deg);position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;border-left:7px solid #ffffff88;flex-shrink:0}.book .icon{width:32px;height:32px;stroke-width:1.3}.book-line{height:3px;width:36px;background:currentColor;opacity:.25;border-radius:5px}.book-line.short{width:24px}.cover .badge{position:absolute;right:12px;top:10px;z-index:2;font-size:9px;background:white;border-radius:6px;padding:4px 7px;display:flex;align-items:center;gap:4px;color:var(--ink)}.badge .icon{width:11px;height:11px}.product-info{padding:18px}.product-info h3{font-size:15px;margin:10px 0 5px;line-height:1.4;min-height:21px}.product-info p{color:var(--muted);font-size:11px;min-height:32px}.product-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.price{font-size:17px;font-weight:650;letter-spacing:-.4px}.cardactions{display:flex;gap:9px;align-items:center}.square{width:31px;height:31px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center}.square .icon{width:15px;height:15px}.square.faved{color:#ca5b76;background:#fff0f4;border-color:#f7dae4}.square.faved .icon{fill:#ca5b7620}.empty{padding:65px 20px;text-align:center;background:white;border:1px dashed #d5d4e5;border-radius:14px;grid-column:1/-1}.empty .icon{width:36px;height:36px;color:#b3abdf;margin-bottom:14px}.empty p{margin:8px 0 20px;color:var(--muted)}.progress{height:4px;background:#efedf8;border-radius:8px;overflow:hidden;margin:12px 0 0}.progress span{display:block;background:var(--purple);height:100%}.progress-caption{font-size:10px;color:var(--muted);margin-top:6px}.student-shell{min-height:100vh}.student-top{background:white;border-bottom:1px solid var(--line);padding:18px max(25px,calc((100vw - 1200px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.student-top .brand{padding:0}.student-main{max-width:1250px}.student-tabs{display:flex;border-bottom:1px solid var(--line);gap:28px;margin-bottom:26px}.student-tabs button{padding:12px 0;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.student-tabs button.active{border-color:var(--purple);color:var(--purple);font-weight:650}.student-hero{background:#eceafb;color:var(--ink);min-height:212px;padding:34px;margin-top:8px}.student-hero p{color:#77748f}.student-hero h2{font-size:32px;max-width:540px}.student-hero .eyebrow{color:var(--purple)}.student-hero .btn{margin-top:18px}.student-hero .hero-art{height:170px;width:250px}.large-book{position:absolute;right:30px;top:15px;background:#7463cc;height:155px;width:115px;transform:rotate(13deg);color:white;box-shadow:12px 15px 0 #d4cdef;border-left:8px solid #6654bd}.large-book .icon{width:48px;height:48px}.reading-banner{display:flex;gap:20px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:18px 22px;background:white;margin-bottom:27px}.reading-banner .tile-icon{margin:0}.reading-banner .btn{margin-left:auto}.reading-banner small{font-size:10px}.reading-banner h3{font-size:13px;margin:3px 0}.select{border:1px solid var(--line);border-radius:7px;background:white;padding:8px 11px;font-size:11px;color:#66687a;max-width:210px}.student-footer{font-size:11px;color:#9898ab;text-align:center;padding:30px 15px}.desktop-only{display:block}dialog{padding:0;border:0;border-radius:17px;width:min(650px,94vw);max-height:90vh;color:var(--ink);box-shadow:0 20px 100px #14132930}dialog::backdrop{background:#1c18375e;backdrop-filter:blur(4px)}.modal-head{padding:23px 27px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.modal-head h2{font-size:20px}.modal-body{padding:25px 27px}.modal-body p{color:#74788c;font-size:13px;margin:10px 0}.modal-foot{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding:18px 27px;background:#fbfbfd}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px;font-size:12px;font-weight:600}.field.wide{grid-column:1/-1}.field input,.field textarea,.field select{padding:11px;border:1px solid #dbdce7;border-radius:7px;background:white;color:var(--ink);width:100%;font-weight:400}.field textarea{resize:vertical;min-height:75px}.accessrow{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.accessrow input{accent-color:var(--purple);width:17px;height:17px}.accessrow small{display:block}.modulelist{display:grid;gap:9px;margin:20px 0}.module{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);border-radius:9px;padding:13px;width:100%}.module .num{height:30px;width:30px;border-radius:50%;background:var(--lav);color:var(--purple);display:grid;place-items:center;font-size:11px}.module.active{border-color:#a79cec;background:#f9f7ff}.lesson{background:#faf9fe;padding:22px;border-radius:12px;border:1px solid #ece8ff;margin-top:20px}.lesson h3{font-size:18px}.lesson p,.lesson li{font-size:13px;line-height:1.8;color:#656880}.offer-cover{height:185px;border-radius:10px}.offer-list{padding:0;list-style:none;display:grid;gap:11px;margin:20px 0}.offer-list li{display:flex;align-items:center;gap:8px;font-size:12px}.offer-list .icon{color:var(--green);width:16px}.offer-price{font-size:32px;font-weight:700;margin-top:15px;letter-spacing:-1px}.notice{padding:11px 14px;background:#fff6df;color:#947032;border-radius:8px;font-size:11px;margin:17px 0}.offer-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.offer-layout .cover{height:100%;min-height:180px}.detail-list{display:grid;gap:14px}.detail-item{padding:17px;border:1px solid var(--line);border-radius:9px}.detail-item b{font-size:12px}.detail-item p{font-size:11px}.kicker{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}.mobilemenu{display:none}.niche-header{padding:22px;border-radius:12px;background:var(--t);display:flex;gap:15px;align-items:center;margin-bottom:22px}.niche-header .tile-icon{background:#fff9;margin:0}.niche-header h2{color:var(--c);font-size:22px}.niche-header p{font-size:12px;color:#7e7c8c;margin-top:3px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#29243f;color:white;padding:13px 23px;border-radius:10px;box-shadow:0 8px 25px #0002;z-index:30;opacity:0;pointer-events:none;transition:.2s;font-size:13px;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.reset{font-size:10px;color:#9a94af;text-decoration:underline}.labelled{display:flex;gap:9px;align-items:center}.labelled>span{font-size:10px;color:var(--muted)}@media(min-width:1450px){.cover{height:205px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1150px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:28px 10px}.topbar{padding:0 24px}main{padding:26px 24px}.twocol{grid-template-columns:1fr}.hero-art{width:200px}.product-grid{gap:14px}.cover{padding:20px;height:165px}.cover-copy strong{font-size:19px;max-width:105px}.book{width:62px;height:91px}.stats{gap:10px}.stat{padding:15px}.stat-value{font-size:25px}.student-top{padding:16px 24px}.student-top .labelled{display:none}}@media(max-width:820px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:17px 20px;gap:16px;border-bottom:1px solid var(--line);border-right:0}.sidebar .brand{padding:0;font-size:24px}.sidebar .workspace,.sidebar .navlabel,.sidebar-bottom{display:none}.side-nav{display:flex;overflow-x:auto;gap:4px}.navbtn{width:auto;white-space:nowrap;padding:9px 12px;font-size:12px}.navbtn .icon{width:16px}.navcount{display:none}.topbar{height:66px}.breadcrumb{display:none}.topright{width:100%;justify-content:space-between}.hero h2{font-size:23px}.stats{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art{width:180px}.student-top{flex-wrap:wrap}.student-top .topright{width:auto}.student-top .demo-badge{display:none}.student-hero h2{font-size:27px}.student-hero .hero-art{width:140px}.large-book{right:0}.niche-grid{gap:10px}.niche-card{padding:15px}.pagehead{align-items:flex-start}.pagehead .btn{margin-top:4px}}@media(max-width:540px){main{padding:22px 17px}h1{font-size:26px}.pagehead{flex-wrap:wrap;gap:14px}.topbar{padding:0 17px}.mode-switch button{font-size:10px;padding:7px 9px}.hero{padding:23px;min-height:170px}.hero-art{display:none}.hero h2{font-size:24px}.hero p{font-size:11px}.stats{gap:10px}.stat-value{font-size:25px}.stat-top{font-size:10px}.stat-top .stat-icon{padding:5px}.stat-foot{font-size:9px}.niche-grid{grid-template-columns:1fr}.niche-card{padding:15px 18px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:0 14px}.niche-card .tile-icon{grid-row:1/3;margin:0}.niche-card h3{grid-column:2}.niche-card p{grid-column:2}.niche-card .money{grid-column:3;grid-row:1/3;margin:0;font-size:16px}.niche-card .corner,.niche-card .niche-mini,.niche-card>small{display:none}.panel{padding:18px}.panelhead{gap:10px}.panelhead h2{font-size:16px}.product-grid{grid-template-columns:1fr}.cover{height:180px;padding:27px}.cover-copy strong{font-size:25px;max-width:200px}.book{width:78px;height:112px}.student-top{padding:16px 17px;gap:15px}.student-top .brand{font-size:23px}.student-top .brandmark{width:30px;height:30px}.student-top .mode-switch .icon{display:none}.student-tabs{gap:22px}.student-tabs button{font-size:12px}.student-hero{padding:25px;min-height:200px}.student-hero h2{font-size:28px}.reading-banner{padding:15px;gap:10px;flex-wrap:wrap}.reading-banner .btn{margin-left:0}.toolbar .search{max-width:none;min-width:100%}.form-grid,.offer-layout{grid-template-columns:1fr}.modal-head,.modal-body{padding:20px}.modal-foot{padding:15px 20px;flex-wrap:wrap}.modal-foot .btn{flex:1}.student-footer{padding-bottom:35px}.labelled{flex-wrap:wrap}.desktop-only{display:none}}
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top right,#e7e2ff,transparent 65%)}.login-card{width:100%;max-width:460px;background:white;border:1px solid var(--line);border-radius:22px;padding:40px;box-shadow:0 20px 70px #36286012}.login .brand{padding:0;margin-bottom:36px}.login h1{margin:14px 0}.login form{display:grid;gap:18px;margin:28px 0}.login .btn{justify-content:center}.login-error{color:#a32c46}.login small{font-size:11px}.detail-item{overflow-wrap:anywhere}button:disabled{opacity:.55;cursor:wait}.lesson p{overflow-wrap:anywhere}.btn{text-decoration:none}
.mainwrap,.sidebar,main,.panel{min-width:0}.tablewrap{max-width:100%;overflow-x:auto}.student-top>.muted{overflow-wrap:anywhere;min-width:0}@media(max-width:540px){.login-card{padding:27px}.login h1{font-size:28px}.student-top>.muted{font-size:11px;max-width:100%}}

.language-picker{display:flex;align-items:center;gap:8px;font-size:12px;flex-wrap:wrap}.language-picker select{max-width:210px;border:1px solid var(--line);border-radius:7px;padding:8px;background:white;color:var(--ink)}.language-badge{background:#f0eff7;color:#605c75}.student-top .topright{flex-wrap:wrap}

.cover-fallback{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}.cover.has-cover-image{padding:0;background:#f4f4f7}.cover.has-cover-image:after{display:none}.has-cover-image .cover-fallback{display:none}.product-cover-image{width:100%;height:100%;object-fit:contain;display:block}.cover-upload-preview{display:block;max-width:100%;width:100%;height:220px;object-fit:contain;margin-top:16px;background:#f4f4f7}.cover-upload-button{margin-left:16px}

.family-count{margin-bottom:16px}.family-card .cover{cursor:default}.family-languages{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 16px}.family-versions{border-top:1px solid var(--line);margin-top:16px}.family-versions summary{cursor:pointer;padding:14px 0;color:var(--purple);font-size:12px;font-weight:600}.family-versions summary .icon{width:14px;height:14px;vertical-align:middle}.family-version-list{display:grid;gap:12px}.family-version{padding:13px;background:#f8f7fc;border-radius:8px}.family-version>strong{font-size:11px;color:var(--purple)}.family-version h4{margin:5px 0;font-size:12px}.family-version p{min-height:0;font-size:10px}.family-version-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:13px}.family-version-actions .btn{font-size:11px}.family-card .product-info>h3{min-height:0}
.product-type-filters{margin:16px 0 10px}.preview-warning{padding:18px 22px;background:#fff5d9;border:1px solid #e3c56b;border-radius:14px;margin-bottom:24px;color:#584413}.preview-warning p{margin-bottom:0;line-height:1.6}.preview-controls{margin-bottom:28px}.preview-controls select{max-width:100%;white-space:normal}.preview-choices{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.preview-choices .chip{white-space:normal;text-align:left}.student-shell button:disabled{cursor:default;opacity:.6}
/* Customer reading and touch targets, shared with the visual preview. */
.student-shell{font-size:16px}.student-shell .subtitle,.student-shell small,.student-shell .muted,.student-shell .pill,.student-shell .badge,.student-shell .progress-caption,.student-shell .product-info p,.student-shell .student-footer,.student-shell .eyebrow{font-size:14px;line-height:1.5}.student-shell .product-info h3{font-size:19px;line-height:1.35}.student-shell .btn,.student-shell .chip,.student-tabs button,.student-shell .square{font-size:15px;min-height:44px;min-width:44px}.student-shell input,.student-shell select{font-size:16px;min-height:44px}.preview-controls{padding:14px 18px}.preview-controls summary{cursor:pointer;font-size:15px;min-height:44px;display:flex;align-items:center;gap:10px}.preview-controls summary:before{content:'＋'}.preview-controls[open] summary:before{content:'−'}.preview-settings{padding-top:18px}.preview-warning{font-size:14px;padding:12px 16px;margin-bottom:12px}.student-tabs{display:flex;flex-wrap:wrap;gap:8px}.student-tabs button{white-space:normal;line-height:1.35}.student-shell .product-bottom{flex-wrap:wrap;gap:12px}
@media(max-width:600px){.student-main{padding:18px 16px 32px}.student-top{padding:14px 16px;gap:12px;flex-wrap:wrap;height:auto}.student-top .topright{flex-wrap:wrap;gap:10px}.student-top>.muted{max-width:100%;overflow-wrap:anywhere}.student-shell .pagehead{align-items:stretch;flex-direction:column}.student-shell .toolbar{align-items:stretch;flex-direction:column}.student-shell .search,.student-shell .labelled,.student-shell .language-picker{width:100%;min-width:0}.student-shell .search input{min-width:0;width:100%}.student-shell select{max-width:100%;width:100%;min-width:0}.student-shell .language-picker{flex-wrap:wrap}.student-shell .product-grid{grid-template-columns:minmax(0,1fr)}.student-shell .product-info{padding:18px}.student-shell h1{font-size:26px}.student-tabs button{flex:1 1 100px;padding:12px 10px}.student-shell .btn{white-space:normal}.student-shell .preview-controls{padding:10px 14px}.student-shell .brand{font-size:24px}.student-shell .cover .badge{max-width:calc(100% - 24px);white-space:normal}.student-shell .product-info .progress-caption{font-size:14px}}
.student-account{position:relative;margin-left:auto}.student-account summary,.student-filters summary{font-size:15px;min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--purple);font-weight:600}.student-account summary:after,.student-filters summary:after{content:'＋'}.student-account[open] summary:after,.student-filters[open] summary:after{content:'−'}.account-options{position:absolute;right:0;top:100%;z-index:20;background:white;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow);width:min(310px,calc(100vw - 32px));display:grid;gap:16px}.account-options .muted{overflow-wrap:anywhere}.student-filters{margin:8px 0 18px;border-bottom:1px solid var(--line)}.student-filter-fields{display:flex;flex-wrap:wrap;gap:16px;padding:8px 0 18px;align-items:end}.student-greeting{margin-bottom:14px}.student-main>.student-tabs{margin-bottom:4px}@media(max-width:600px){.student-shell .student-greeting{margin-bottom:10px}.student-shell .student-main{padding-top:16px}.student-shell .student-top{min-height:72px}.student-filter-fields{display:grid}.student-shell .student-tabs button{flex:1 1 0;font-size:14px;padding:10px 6px}.student-filters{margin-bottom:14px}.student-shell .student-tabs{gap:4px}}

/* Mobile admin: navigation and account actions remain within the viewport. */
@media(max-width:820px){
 .side-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:4px}
 .side-nav button{min-width:0;white-space:normal;text-align:left;min-height:44px}
 .topbar{height:auto;min-height:66px;flex-wrap:wrap;padding:12px 17px;gap:10px}
 .topright{min-width:0;max-width:100%;flex-wrap:wrap;gap:8px}
 .topright .btn{min-height:44px;white-space:normal}
 .toolbar,.page-head{flex-wrap:wrap;min-width:0}
 .search{min-width:0;max-width:100%}
 .filters{flex-wrap:wrap;min-width:0}
}

.product-card .cover.has-cover-image{height:auto;aspect-ratio:16/9}
.bundle-details{margin:14px 0;padding:14px;background:#f4f2ff;border-radius:10px;line-height:1.5;font-size:14px}.bundle-details ul{padding-left:18px;margin:8px 0}.bundle-details li{margin:6px 0;overflow-wrap:anywhere}.bundle-saving{font-weight:700;color:#216d59}
.modal-body > .cover.has-cover-image{height:auto;min-height:0;aspect-ratio:16/9}

/* Keep dialog actions comfortable to tap on a phone. */
@media(max-width:600px){
 dialog .square{min-width:44px;min-height:44px;flex-shrink:0}
 dialog .btn,dialog .lesson{min-height:44px}
 dialog .modal-footer{flex-wrap:wrap}
}

/* Amplia Studio: one identity across languages and niches. */
.brand-name{line-height:1.05;letter-spacing:-.8px}.brand-name small{display:block;color:var(--muted);font-size:11px;letter-spacing:3px;text-transform:uppercase;margin-top:4px}.brandmark{transform:none;border-radius:50% 50% 50% 12px;background:linear-gradient(135deg,#6557d8,#9586ec)}
.offer-spotlight{display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,#eeeaff,#f4f7ff);border:1px solid #d5cdf5;border-radius:16px;padding:22px;margin:18px 0 24px}.offer-spotlight h2{font-size:21px}.offer-spotlight p{margin-top:6px;color:#605c78}.offer-spotlight .btn{margin-left:auto;flex-shrink:0}.spotlight-icon{display:grid;place-items:center;background:white;color:var(--purple);padding:12px;border-radius:13px}.student-tabs button[data-id="explore"]{color:#5744c2;font-weight:700;background:#eeebff;border-radius:9px 9px 0 0}
.service-intro{max-width:780px;margin:24px 0}.service-intro h1{line-height:1.2;max-width:700px}.service-intro p{margin-top:16px;line-height:1.7}.service-example{display:flex;align-items:center;gap:10px;color:#5e5681;background:#eeebff;padding:14px 18px;border-radius:12px}.service-form{display:grid;gap:20px;max-width:850px}.service-form fieldset{border:0;margin:0;padding:0;min-width:0}.service-form legend{font-weight:650;margin-bottom:12px}.service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-options label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:15px 12px;border-radius:10px;cursor:pointer;min-height:65px}.service-options label:has(input:checked){border-color:var(--purple);background:var(--lav)}.service-options input{accent-color:var(--purple);min-height:0!important;width:16px;height:16px;flex-shrink:0}.service-options .icon{color:var(--purple);width:18px}.service-form textarea{resize:vertical;min-height:130px;font:inherit}.service-form .btn{justify-self:start;min-height:44px}.service-form strong,.service-request-copy{overflow-wrap:anywhere}.service-request-copy{white-space:pre-wrap;margin:14px 0}.student-filters[hidden]{display:none}
@media(max-width:600px){.offer-spotlight{flex-wrap:wrap;padding:18px;gap:12px}.offer-spotlight>div{flex:1;min-width:170px}.offer-spotlight h2{font-size:20px}.offer-spotlight .btn{width:100%;margin:0}.service-options{grid-template-columns:minmax(0,1fr)}.service-form{padding:18px}.service-intro h1{font-size:27px}.student-shell .student-tabs button{flex:1 1 42%}.brand{padding:0;gap:8px}.brand-name{font-size:24px}}

/* Custom services: explicit label and visible invitation on mobile. */
.student-tabs button[data-id="services"]{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:12px 16px;color:#704513;font-weight:750;background:#fff3d7;border:1px solid #e3bc70;border-radius:10px 10px 0 0;line-height:1.3}
.student-tabs button[data-id="services"] .icon{width:19px;height:19px;flex-shrink:0}
.student-tabs button[data-id="services"].active{color:#57320b;background:#ffe7b0;border-bottom:3px solid #a66b1f}
.student-tabs button[data-id="services"]:hover{background:#ffe7b0}
.student-tabs button[data-id="services"]:focus-visible{outline:3px solid #a66b1f;outline-offset:3px}
@media(max-width:600px){.student-tabs button[data-id="services"]{font-size:14px;padding:12px 8px;white-space:normal}.student-tabs button[data-id="services"] .icon{width:17px;height:17px}}

.preview-tools{margin:0 0 16px}.preview-tools>summary{cursor:pointer;color:var(--muted);font-size:12px;min-height:44px;display:flex;align-items:center;gap:8px}.preview-tools>summary::before{content:"+"}.preview-tools[open]>summary::before{content:"−"}.preview-tools .preview-controls{margin-top:12px}

/* Navigation experiment requested by Vitor: three equal choices, active only. */
.student-shell .student-tabs{display:flex;gap:10px;border:0;flex-wrap:nowrap;margin-bottom:22px}
.student-shell .student-tabs button,.student-shell .student-tabs button[data-id="explore"],.student-shell .student-tabs button[data-id="services"]{flex:1;display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;border:1px solid #bfb6e6;border-radius:10px;color:#6553c6;background:transparent;font-weight:650;line-height:1.35;white-space:normal}
.student-shell .student-tabs button.active,.student-shell .student-tabs button[data-id="explore"].active,.student-shell .student-tabs button[data-id="services"].active{color:#fff;background:#6553c6;border-color:#6553c6}
.student-shell .student-tabs button:hover{border-color:#6553c6}
.offer-spotlight{flex-direction:column;text-align:center;gap:16px}.offer-spotlight .btn{margin:0;width:100%;max-width:420px;justify-content:center}.offer-spotlight>div{min-width:0}
.offer-price-stack{display:flex;flex-direction:column;gap:3px}.reference-caption{font-size:11px;color:var(--muted);line-height:1.3}.reference-value{color:#b64550;text-decoration-color:#b64550;font-size:17px;font-weight:600}.offer-price .offer-price-stack .price{font-size:28px}
@media(max-width:600px){.student-shell .student-tabs{flex-direction:column;gap:9px}.student-shell .student-tabs button{flex:auto;width:100%;font-size:15px;min-height:48px}.offer-spotlight .btn{max-width:none}.service-intro h1{font-size:24px}.offer-spotlight h2{font-size:21px}}

/* Avoid focus zoom on small form text; preserve pinch zoom for accessibility. */
button,a{touch-action:manipulation}
@media(max-width:600px){input,select,textarea,.service-form textarea{font-size:16px}}
.auth-email{overflow-wrap:anywhere;margin-top:16px;font-weight:600}.auth-actions{display:grid;gap:8px}.auth-switch{width:100%;margin-top:20px;min-height:44px}.login #email-code{font-size:24px;letter-spacing:.3em;text-align:center;width:100%;min-width:0}.login input{font-size:16px;min-height:44px}.login #code-status{margin-top:10px;font-size:14px}.login .auth-actions button{min-height:44px;white-space:normal}.login .language-picker{margin-top:8px}

.app-sales-totals{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}.app-sales-totals>div{display:flex;flex-direction:column;gap:6px;padding:16px 24px;border:1px solid #e4e2f1;border-radius:12px;min-width:150px}.app-sales-totals strong{font-size:24px;color:#6356d9}.app-sales-totals small,.app-sales-totals span{color:#63708a}.app-sales-panel .panelhead{flex-wrap:wrap;gap:12px}.app-sales-panel .tablewrap{max-width:100%;overflow-x:auto}

.overview-heading{margin-bottom:20px}.overview-sales{border-top:3px solid var(--purple);margin-bottom:16px}.overview-sales-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.overview-sales-heading h2{font-size:23px}.overview-sales-heading .subtitle{margin-top:8px;max-width:600px}.overview-sales-number{display:flex;align-items:center;gap:14px;flex-shrink:0}.overview-sales-number strong{font-size:42px;line-height:1;color:var(--purple)}.overview-sales-number span{max-width:120px;line-height:1.35}.overview-period{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;color:var(--muted)}.overview-period .icon{width:16px}.overview-empty{margin-top:12px;font-size:14px}.overview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.overview-stats .stat-value{font-size:30px}.overview-stats .stat-foot{font-size:13px;line-height:1.5}.overview-support{margin-bottom:24px}.overview-support .subtitle{margin:14px 0 8px}.overview-review-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:12px 0}.overview-review-list span{min-width:0;overflow-wrap:anywhere}.overview-review-list small{display:block;margin-top:3px}.overview-niches{margin-bottom:24px}.niche-summary-grid{align-items:stretch}.niche-card.niche-summary{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:18px;min-height:140px;text-align:left}.niche-summary-title{display:flex;align-items:center;gap:10px;min-height:48px}.niche-summary-title h3{flex:1;margin:0;font-size:15px;line-height:1.35}.niche-summary-title .tile-icon{margin:0;flex-shrink:0;width:40px;height:40px}.niche-summary-title>.icon{width:16px;flex-shrink:0}.niche-summary-count{font-size:13px;color:var(--muted);margin-top:auto}.overview-history summary,.overview-sale-details summary{cursor:pointer;min-height:44px;font-weight:600}.overview-history summary span{font-weight:400;color:var(--muted);margin-left:12px}.overview-history .subtitle{margin:12px 0}.overview-sale-details{margin-top:16px}.first-access{margin-top:22px;padding:16px;border:1px solid var(--line);border-radius:12px}.first-access .btn{width:100%;min-height:44px;white-space:normal}.first-access p{margin-top:10px;font-size:14px;color:var(--muted);line-height:1.5}@media(max-width:700px){.overview-sales-heading{align-items:flex-start;flex-direction:column;gap:16px}.overview-sales-number span{max-width:none}.overview-stats{grid-template-columns:1fr}.overview-stats .stat{display:grid;grid-template-columns:1fr auto;gap:8px 16px}.overview-stats .stat-top{align-self:center;font-size:14px}.overview-stats .stat-icon{display:none}.overview-stats .stat-value{grid-column:2;grid-row:1;margin:0}.overview-stats .stat-foot{grid-column:1/-1}.overview-period{align-items:flex-start;line-height:1.5}.overview-history summary span{display:block;margin:6px 0}.overview-review-list>div{align-items:flex-start}.niche-card.niche-summary{min-height:110px}.niche-summary-title h3{grid-column:auto}.overview-support .panelhead{flex-wrap:wrap}}

.login-help{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);text-align:center}.login-help .btn{width:100%;min-height:44px;white-space:normal;text-decoration:none}.login-help small{display:block;margin-top:8px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
