/* Illustrated study system — content-led cards, notebook reading and game arena. */
:root{--study-ink:#242435;--study-paper:#fffdf9}
.view-home,.view-revise,.view-play,.view-train{background:#f8f7f3!important;background-image:none!important}
body:before{display:none}.subject-illustration{display:block;object-fit:contain;pointer-events:none;flex:none}
.text-action{border:0;background:none;padding:8px 0;min-height:40px;color:#a34e11;font-weight:750;font-size:14px}
.illustrated-dashboard{gap:26px!important}.illustrated-dashboard .dashboard-welcome{grid-template-columns:minmax(0,1fr) 100px;background:linear-gradient(125deg,#f77021,#ff9940);border:0;box-shadow:0 5px 0 #e36a22;overflow:visible;min-height:180px;padding:24px 20px;border-radius:26px;position:relative;isolation:isolate}
.illustrated-dashboard .dashboard-welcome h1{font-weight:850;letter-spacing:-1px;color:#fff;font-size:clamp(28px,6.5vw,38px)}.illustrated-dashboard .dashboard-welcome p{color:#fff;font-size:15px}.illustrated-dashboard .dashboard-welcome .dashboard-date{color:#522300;font-size:12px;font-weight:700}.candidate-pill{display:inline-flex;background:#ffffff;color:#9c4413;font-size:11px;font-weight:800;letter-spacing:.7px;border-radius:30px;padding:5px 10px;margin-top:14px}
.illustrated-dashboard .dashboard-welcome .welcome-art{display:block;width:122px;height:148px;max-width:none;justify-self:center;transform:rotate(-9deg);filter:drop-shadow(0 8px 4px #73391620)}
.illustrated-dashboard .dashboard-stats{border:0;box-shadow:none;background:transparent;padding:0;gap:8px;border-radius:0}.illustrated-dashboard .dashboard-stats>span{border:0;border-radius:18px;background:#fff1db;padding:12px 3px;box-shadow:0 3px 0 #e9daca}.illustrated-dashboard .dashboard-stats>span:nth-child(2){background:#e2edff;box-shadow:0 3px 0 #c8d9f2}.illustrated-dashboard .dashboard-stats>span:nth-child(3){background:#d8f5e8;box-shadow:0 3px 0 #bbdfce}.illustrated-dashboard .dashboard-stats strong{font-size:17px}.illustrated-dashboard .dashboard-stats small{color:#465254;line-height:1.4}
.illustrated-dashboard .dashboard-daily{background-color:#fff7d8;background-image:linear-gradient(#eac4681c 1px,transparent 1px),linear-gradient(90deg,#eac4681c 1px,transparent 1px);background-size:22px 22px;border:1px solid #efdaa0;box-shadow:0 5px 0 #eedaa4;border-radius:24px;padding:20px}.illustrated-dashboard .daily-main{gap:10px}.illustrated-dashboard .daily-art{width:96px;height:112px}.illustrated-dashboard .daily-main h2{font-size:23px;color:#292b35}.illustrated-dashboard .daily-main p{font-size:14px}.illustrated-dashboard .dashboard-daily>button{border-radius:16px;background:#243c36;font-weight:750;font-size:16px;min-height:50px}
.illustrated-dashboard .dashboard-shortcuts{gap:14px}.illustrated-dashboard .dashboard-shortcuts>a,.illustrated-dashboard .dashboard-shortcuts>button{border-radius:22px;min-height:150px;padding:18px;box-shadow:none}.illustrated-dashboard .dashboard-shortcuts>:nth-child(1){--shortcut-bg:#ffdfb9;--shortcut-edge:#edb67c}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){--shortcut-bg:#bcebd7;--shortcut-edge:#8bccb3}.illustrated-dashboard .dashboard-shortcuts>:nth-child(3){--shortcut-bg:#b9ddff;--shortcut-edge:#8dbee9}.illustrated-dashboard .dashboard-shortcuts>:nth-child(4){--shortcut-bg:#e8ccff;--shortcut-edge:#c7a4e5}.dashboard-shortcuts strong{font-size:18px!important}.dashboard-shortcuts small{font-size:13px}
.revision-subject-list{display:grid;grid-template-columns:minmax(0,1fr);gap:19px;padding:4px 0 8px}.revision-subject-card{position:relative;display:flex;align-items:center;justify-content:space-between;text-align:left;isolation:isolate;min-height:124px;padding:20px;border:0;background:#fff;border-radius:24px;color:#242a35;box-shadow:0 6px 0 color-mix(in srgb,var(--subject-tint),#b0aa9e 20%);overflow:visible;width:100%;min-width:0;gap:8px}.revision-subject-copy{min-width:0;position:relative;z-index:1}.revision-subject-copy strong{display:block;font-size:21px;line-height:1.25;font-weight:800}.revision-subject-copy small{display:block;font-size:13px;margin-top:5px;color:#576164}.subject-completion{display:inline-block;background:var(--subject-tint);color:var(--subject-color);border-radius:20px;padding:4px 9px;margin-top:9px;font-size:11px;font-weight:700}.revision-subject-card .subject-illustration{width:124px;height:132px;margin-block:-26px -18px;margin-right:-12px;filter:drop-shadow(0 6px 3px #28233712)}
.studio-header{border-radius:26px;padding:26px 22px;background:#198f80;color:#fff;margin:0 0 26px;box-shadow:0 6px 0 #13796b}.studio-header .eyebrow{color:#d4fff2}.studio-header h1{font-size:34px;color:#fff}.studio-header p{font-size:16px;margin-bottom:18px}.studio-actions{display:flex;gap:8px;flex-wrap:wrap}.studio-actions button{background:white;border:0;border-radius:14px;color:#136459;font-size:14px;font-weight:750;min-height:44px;padding:10px 14px}.revision-studio{max-width:900px;margin:auto}.home-subjects{background:#ecefe8;margin-inline:-6px;border-radius:28px;padding:20px 14px 14px}.home-subjects .dashboard-section-heading{padding-inline:3px}
.dashboard-topic .topic-visual{height:150px;background:var(--subject-tint);overflow:visible}.dashboard-topic .topic-visual img{width:158px;height:158px;transform:rotate(-7deg);margin-bottom:-10px}.dashboard-topic span{color:var(--subject-color)}.dashboard-topic h3{font-size:20px;line-height:1.3}.dashboard-topic{box-shadow:0 5px 0 #dedfd7}
.subject-tile{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:94px auto;justify-items:center;align-content:center;height:152px;background:color-mix(in srgb,var(--tile-color),white 86%);color:#23303d;box-shadow:0 5px 0 color-mix(in srgb,var(--tile-color),white 60%);gap:5px;padding:12px 8px;border-radius:22px}.subject-tile .tile-picture{width:108px;height:108px;grid-row:1}.subject-tile strong{color:#24313b!important;font-size:15px!important}.tile-check{z-index:2;background:#fff;color:transparent;border:1px solid #c4ccd2;width:23px;height:23px}.subject-tile:has(input:checked){border-color:var(--tile-color);outline:0}.subject-tile:has(input:checked) .tile-check{background:var(--tile-color);color:white;border-color:var(--tile-color)}
.notebook-reader.fiche-reader{padding:0!important;margin:18px auto!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none;max-width:760px}.notebook-reader>header{margin:0!important;padding:24px 22px!important;border-radius:25px!important;background-color:var(--subject-tint)!important;background-image:linear-gradient(#ffffff66 1px,transparent 1px),linear-gradient(90deg,#ffffff66 1px,transparent 1px)!important;background-size:21px 21px!important;min-height:170px;box-shadow:0 5px 0 color-mix(in srgb,var(--subject-color),white 73%)}.notebook-reader .fiche-art{float:right;width:110px;height:116px;margin:-7px -8px 10px 12px}.notebook-reader>header h1{font-size:27px!important;line-height:1.2!important;color:#232d3a;letter-spacing:-.7px}.notebook-reader>header .eyebrow{font-size:12px;color:var(--subject-color)!important;letter-spacing:.8px}.notebook-reader>header .lead{font-size:15px;color:#364657}.notebook-level{font-size:12px;color:#465461}.notebook-reader .fiche-tabs{margin:22px 0;display:grid;grid-template-columns:1fr 1fr;padding:5px;border-radius:17px;background:#e9eae5}.notebook-reader .fiche-tabs button{min-height:46px;color:#566064;background:transparent;border:0;border-radius:13px;font-size:15px;font-weight:750}.notebook-reader .fiche-tabs button.active{background:#fff;color:var(--subject-color);box-shadow:0 2px 5px #1926380f}.notebook-reader .fiche-content{display:grid;gap:22px}.notebook-reader .fiche-content>section{padding:24px 20px!important;background:white!important;border:0!important;border-radius:24px!important;box-shadow:0 5px 0 #e5e3db;margin:0!important;min-width:0}.notebook-reader .fiche-content>section .section-index{display:inline-block;background:var(--subject-tint);padding:5px 10px;border-radius:9px;font-size:12px;letter-spacing:.6px;font-weight:800;color:var(--subject-color)!important;margin:0 0 10px}.notebook-reader .fiche-content h2{font-size:24px;margin:3px 0 20px}.notebook-reader .course-paragraph{padding:0 0 17px;margin:0 0 17px;border-bottom:1px solid #e9ece7}.notebook-reader .course-paragraph:last-child{padding-bottom:0;margin-bottom:0;border:0}.notebook-reader .course-paragraph h3{font-size:18px;margin:0 0 9px;line-height:1.35;color:#27323a}.notebook-reader .course-paragraph p{margin:0;font-size:16px;line-height:1.7}.notebook-reader .fiche-content dd,.notebook-reader .fiche-content li{font-size:16px;line-height:1.65}.notebook-reader mark{background:var(--subject-tint);color:#253037;padding:2px 5px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.notebook-reader .fiche-content>.fiche-example{border-left:5px solid #36a7d8!important}.notebook-reader .fiche-content>.fiche-errors{border-left:5px solid #ec6e73!important}.notebook-reader .fiche-content>.fiche-tip{border-left:5px solid #37b584!important}.notebook-reader .fiche-source{font-size:14px;line-height:1.5}.notebook-reader .fiche-content>button{margin-top:0}.notebook-reader .fiche-content>.fine{margin:0}
.lesson-card{border:0!important;background:#fff!important;box-shadow:0 5px 0 var(--subject-tint)!important;border-radius:24px!important}.lesson-card .lesson-thumb{width:76px;height:76px;margin-top:-10px}.lesson-card .lesson-status{background:var(--subject-tint);color:var(--subject-color)}.lesson-card .read-link{color:var(--subject-color)}
body.in-session{background:#ebe1ff!important}.in-session .shell{padding-top:max(20px,env(safe-area-inset-top))}.session-top{margin:0 auto 20px;max-width:790px}.session-top .progress-track{height:8px;background:#d2c4ea}.session-top .progress-fill{background:#8e4edf}.session-top .close-session{background:white;border:0;border-radius:50%;min-width:44px;min-height:44px;display:grid;place-items:center}.question-orb{display:grid;place-items:center;width:88px;height:88px;background:conic-gradient(#ffce32 var(--question-progress),#8856c6 0);border-radius:50%;padding:7px;margin:0 auto 15px;box-shadow:0 4px 0 #7040aa}.question-orb>span{width:100%;height:100%;background:#9758dc;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;color:white}.question-orb small{font-size:11px}.question-orb strong{font-size:23px;line-height:1.15}.illustrated-question{background:transparent!important}.illustrated-question .question-head{gap:8px;margin-bottom:12px}.illustrated-question .question-head .badge{background:white;color:#343345;border:0;font-size:12px}.illustrated-question .timer{font-size:12px;color:#60516d}.illustrated-question h2{background:white;border-radius:24px;padding:24px 20px;margin:0 0 22px;box-shadow:0 5px 0 #cbb9e2;font-size:clamp(20px,5vw,27px)!important;line-height:1.4}.illustrated-question .choice{background:white!important;border:2px solid transparent;border-radius:21px;box-shadow:0 5px 0 #cbb9e2!important;min-height:70px;gap:14px;padding:17px;color:#282d3c;font-size:16px}.illustrated-question .choices{gap:17px}.illustrated-question .choice b{background:#f0e8fa;border:0;border-radius:12px;color:#735093;font-size:14px;min-width:32px;width:32px;height:32px;display:grid;place-items:center}.illustrated-question .choice.selected{border-color:#8d49ce;background:#f9f2ff!important}.illustrated-question .choice.correct{background:#dbf6e7!important;border-color:#22966a;opacity:1}.illustrated-question .choice.wrong{background:#ffe1e4!important;border-color:#d94b69;opacity:1}.illustrated-question .choice:disabled{opacity:1}.illustrated-question .answer-surface{border-radius:23px;border:0;box-shadow:0 5px 0 #cbb9e2}.illustrated-question .question-actions{border-top:0!important}.illustrated-question .jokers{margin-top:22px}
.notebook-reader .study-test,.notebook-reader .study-result{background:#f3e9ff;border-radius:24px;padding:22px 18px}.notebook-reader .study-test h2{font-size:22px}.notebook-reader .test-definition{background:white;padding:20px;border-radius:20px;box-shadow:0 4px 0 #d9c4ed}.notebook-reader .study-choices button{background:#fff;border:2px solid transparent;box-shadow:0 4px 0 #d9c4ed;border-radius:17px;padding:16px;min-height:56px;color:#282e39}.notebook-reader .study-choices button.selected{border-color:#9054c7;background:#faf2ff}.notebook-reader .study-choices button:disabled{opacity:1}
.view-play .illustrated-intro{padding:26px;background:#f1ddff;border-radius:27px;margin-bottom:24px}.view-play .illustrated-intro .section-art{display:none}.view-play .illustrated-intro h1{color:#45265b}.game-feature.challenge-feature{background:#7d39bf!important;color:#fff;border:0;box-shadow:0 6px 0 #5d2b90}.game-feature.challenge-feature h2,.game-feature.challenge-feature p{color:#fff!important}.game-feature.express-feature{background:#ffda54!important;color:#49381f;border:0;box-shadow:0 6px 0 #dfb939}.game-feature.express-feature h2,.game-feature.express-feature p{color:#49381f!important}.game-feature .game-feature-icon{width:64px;height:64px;border-radius:20px;background:white!important;color:#803dad!important;box-shadow:0 5px 0 #0002}.game-feature .game-feature-icon svg{width:35px;height:35px}.game-feature .game-count{background:white;color:#573862;border:0}.game-feature .primary{background:white!important;color:#503267!important;-webkit-text-fill-color:#503267!important;border:0!important;box-shadow:0 5px 0 #0002!important}.game-feature.express-feature .primary{color:#614917!important;-webkit-text-fill-color:#614917!important}
@media(min-width:600px){.revision-subject-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.illustrated-dashboard .dashboard-welcome{grid-template-columns:minmax(0,1fr) 160px}.illustrated-dashboard .dashboard-welcome .welcome-art{width:174px;height:174px}.illustrated-dashboard .daily-art{width:140px;height:140px}.notebook-reader .fiche-art{width:145px;height:145px}.notebook-reader>header{padding:30px!important}.notebook-reader>header h1{font-size:34px!important}}
@media(max-width:359px){.illustrated-dashboard .dashboard-welcome{grid-template-columns:minmax(0,1fr) 72px;padding:20px 16px}.illustrated-dashboard .dashboard-welcome .welcome-art{width:92px;height:110px}.illustrated-dashboard .daily-art{width:72px;height:92px}.revision-subject-card{padding:17px;min-height:112px}.revision-subject-copy strong{font-size:19px}.revision-subject-card .subject-illustration{width:108px;height:118px}.notebook-reader .fiche-art{width:85px;height:95px}.notebook-reader>header h1{font-size:24px!important}.dashboard-shortcuts strong{font-size:16px!important}.illustrated-dashboard .dashboard-shortcuts>a,.illustrated-dashboard .dashboard-shortcuts>button{padding:15px}}

/* Pearl glass: quiet surfaces, cool ambient light and precise type. */
:root{
 --nav-height:calc(48px + 2.5rem);
 --ink:#252c3c;
 --muted:#687184;
 --glass-accent:#4d5d94;
 --surface-shadow:0 10px 30px #253c6410,0 2px 5px #26374d05,inset 0 1px 0 #fff;
 --glass-panel:linear-gradient(135deg,#ffffffed,#ffffffe0 45%,#f8fbffd9);
}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:400;color:var(--ink)}
body.view-home,body.view-revise,body.view-play,body.view-train,body.view-progress{
 background:radial-gradient(ellipse 80% 440px at 100% 0,#cfdcf4aa,transparent 80%),radial-gradient(ellipse 90% 560px at 0 200px,#e2ddf27a,transparent 80%),linear-gradient(160deg,#f5f6f9,#edf2f7 55%,#f5f7fb)!important;
 background-attachment:scroll!important;
}
.brand{letter-spacing:-1px;font-weight:680}.brand-light{font-weight:400}.topbar .monogram{background:linear-gradient(140deg,#fea960,#ee7e3a);border:1px solid #ffffff75;box-shadow:0 4px 12px #cb89581a,inset 0 1px 0 #ffffff9c;border-radius:14px}.topbar .avatar{background:linear-gradient(145deg,#ffffffea,#edf1f8a6);color:#657084;border:1px solid #ffffffd9;box-shadow:var(--surface-shadow)}
.illustrated-dashboard{gap:26px!important}
.illustrated-dashboard .dashboard-welcome{
 display:block;min-height:0;padding:25px 23px 27px;border-radius:30px;overflow:hidden;
 background:linear-gradient(120deg,#ffffffd9,#ffffff65),radial-gradient(ellipse at 100% 0,#c8ddffb3,transparent 68%),radial-gradient(ellipse at 65% 110%,#e2d8ffac,transparent 70%);
 border:1px solid #fffffff2;box-shadow:0 16px 36px #526d9812,inset 0 1px 0 #fff,inset 0 -1px 0 #aebcdb24;
}
.illustrated-dashboard .dashboard-welcome::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#ffffff30 8%,#ffffff9c 9%,#ffffff00 34%,#ffffff00 75%,#ffffff75 100%);border-radius:inherit}
.welcome-topline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.illustrated-dashboard .dashboard-welcome .dashboard-date{color:#697487;font-size:.75rem;font-weight:500;letter-spacing:.1px}
.candidate-pill{background:linear-gradient(145deg,#ffffffdf,#ffffff90);border:1px solid #fffffff2;color:#677089;font-size:.75rem;font-weight:600;letter-spacing:.1px;padding:5px 10px;margin:0;border-radius:20px;box-shadow:0 2px 8px #60709209;white-space:nowrap}
.illustrated-dashboard .dashboard-welcome h1{font-size:clamp(1.75rem,7.5vw,2.375rem);line-height:1.17;font-weight:690;letter-spacing:-1.2px;color:#2b3149;margin:23px 0 9px;text-shadow:none}
.illustrated-dashboard .dashboard-welcome p{font-size:1rem;color:#667088;line-height:1.5;font-weight:400}
.illustrated-dashboard .dashboard-stats{gap:9px}
.illustrated-dashboard .dashboard-stats>span,.illustrated-dashboard .dashboard-stats>span:nth-child(2),.illustrated-dashboard .dashboard-stats>span:nth-child(3){background:var(--glass-panel);border:1px solid #fff;border-radius:22px;padding:17px 4px 15px;box-shadow:var(--surface-shadow);row-gap:7px}
.illustrated-dashboard .dashboard-stats strong{font-size:1.0625rem;font-weight:650;letter-spacing:-.4px;color:#323d53}.illustrated-dashboard .dashboard-stats small{font-size:.75rem;color:#6a7484}.illustrated-dashboard .dashboard-stats svg{color:#d99260;stroke-width:1.7}.illustrated-dashboard .dashboard-stats>span:nth-child(2) svg{color:#8e83c8}.illustrated-dashboard .dashboard-stats>span:nth-child(3) svg{color:#5d9e94}
.dashboard-section-heading h2{font-size:1.25rem;letter-spacing:-.55px;font-weight:650;color:#303b50}.dashboard-section-heading a,.text-action{color:var(--glass-accent);font-size:.875rem;font-weight:550}.dashboard-section-heading>p{font-size:.75rem;font-weight:650;letter-spacing:1px}.dashboard-section-heading{gap:12px;margin-bottom:16px}
.illustrated-dashboard .dashboard-daily{background:radial-gradient(ellipse at 100% 0,#d9e5ffa6,transparent 68%),linear-gradient(135deg,#ffffffed,#eef2ffd9 70%,#e9eafbb3);border:1px solid #fff;border-radius:28px;box-shadow:var(--surface-shadow);padding:23px 21px}
.dashboard-daily .dashboard-section-heading>p{color:#707b96}.dashboard-daily .dashboard-section-heading>span{background:#ffffffac;border:1px solid #fff;border-radius:12px;color:#67748b;font-size:.75rem;padding:5px 10px}.daily-subject{color:#697892;font-size:.875rem;font-weight:500}.daily-main h2{color:#303c56;font-weight:650;letter-spacing:-.6px}.daily-main p{color:#687389;font-size:1rem}.illustrated-dashboard .daily-art{filter:drop-shadow(0 8px 8px #324e6b10)}
.illustrated-dashboard .dashboard-daily>button{background:linear-gradient(140deg,#5d6da4,#43598d);border:1px solid #667cad;box-shadow:0 6px 14px #526b9d1c,inset 0 1px 0 #ffffff42;border-radius:17px;min-height:50px;font-size:1rem;font-weight:600;color:#fff}
.illustrated-dashboard .dashboard-shortcuts>a,.illustrated-dashboard .dashboard-shortcuts>button{padding:21px 18px;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--shortcut-bg),transparent 42%),transparent 75%),var(--glass-panel);border:1px solid #fff;border-radius:26px;box-shadow:var(--surface-shadow);gap:6px}
.dashboard-shortcuts>a>span,.dashboard-shortcuts>button>span{background:linear-gradient(135deg,color-mix(in srgb,var(--shortcut),white 28%),var(--shortcut));border:1px solid #ffffffaa;box-shadow:0 5px 11px color-mix(in srgb,var(--shortcut),transparent 87%),inset 0 1px 0 #ffffff90,inset 0 -1px 0 #ffffff38;border-radius:16px;width:44px;height:44px;margin-bottom:11px}.dashboard-shortcuts strong{font-size:1rem;font-weight:650}.dashboard-shortcuts small{font-size:.875rem;line-height:1.45;color:#6b7687}.dashboard-shortcuts svg{stroke-width:1.7}
.home-subjects{padding:0;margin:0;border:0;border-radius:0;background:none}.home-subjects .dashboard-section-heading{padding:0}.revision-subject-list{gap:17px}.revision-subject-card{background:linear-gradient(115deg,#fffffff2 30%,#ffffffd6 65%,color-mix(in srgb,var(--subject-tint),white 25%));border:1px solid #fff;border-radius:26px;box-shadow:var(--surface-shadow);padding:22px;min-height:132px}.revision-subject-copy strong{font-weight:650;font-size:1.25rem;letter-spacing:-.45px;color:#354053}.revision-subject-copy small{font-size:.875rem;color:#6b7888}.subject-completion{background:#ffffffb5;color:var(--subject-color);font-size:.75rem;font-weight:550;border:1px solid color-mix(in srgb,var(--subject-color),transparent 88%);border-radius:10px}.revision-subject-card .subject-illustration{width:116px;height:120px;filter:drop-shadow(0 6px 7px #3049640c)}
.dashboard-topic{border:1px solid #fff;border-radius:26px;box-shadow:var(--surface-shadow)}.dashboard-topic .topic-visual{background:linear-gradient(140deg,#f9fbfe,color-mix(in srgb,var(--subject-tint),white 45%));height:145px}.dashboard-topic .topic-visual img{transform:none;width:148px;height:148px}.dashboard-topic>div:last-child{background:linear-gradient(150deg,#fff,#f6f9ff);padding:20px}.dashboard-topic h3{font-size:1.1875rem;font-weight:650;color:#354053}.dashboard-topic p{font-size:.875rem;color:#6b7687}.dashboard-topic span{font-size:.75rem;letter-spacing:.5px;font-weight:650}.dashboard-carousel{scrollbar-color:#cbd4e5 #edf1f6;gap:16px;padding-bottom:14px}
.dashboard-week,.dashboard-resume{background:var(--glass-panel);border:1px solid #fff;border-radius:26px;box-shadow:var(--surface-shadow)}.dashboard-resume{color:#52678e}.dashboard-week>p{font-size:.875rem;color:#6b7687}.week-day b{box-shadow:none!important}.week-day.done b{background:linear-gradient(140deg,#b5c9ee,#768fbe);color:#fff}.week-day.today b{border-color:#8499c3}
.studio-header{background:radial-gradient(ellipse at 100% 0,#d0e9efa6,transparent 70%),linear-gradient(135deg,#ffffffee,#e5edf7);border:1px solid #fff;box-shadow:var(--surface-shadow);border-radius:28px;color:#435269}.studio-header .eyebrow{color:#687d91;font-size:.75rem}.studio-header h1{color:#303d52;font-size:2rem;font-weight:650}.studio-header p{color:#69778a;font-size:1rem}.studio-actions button{background:linear-gradient(145deg,#fff,#ffffffa8);color:#52688a;border:1px solid #fff;border-radius:16px;box-shadow:0 3px 8px #5976940a;font-size:.875rem;font-weight:600}
.subject-tile{background:linear-gradient(145deg,#fffffffa,color-mix(in srgb,var(--tile-color),white 87%));box-shadow:var(--surface-shadow);border:2px solid #fff;border-radius:24px}.subject-tile:has(input:checked){box-shadow:0 0 0 1px var(--tile-color),0 5px 12px color-mix(in srgb,var(--tile-color),transparent 90%)}
.notebook-reader>header{background-image:linear-gradient(#ffffff66 1px,transparent 1px),linear-gradient(90deg,#ffffff66 1px,transparent 1px),linear-gradient(135deg,#ffffffea,color-mix(in srgb,var(--subject-tint),white 38%))!important;background-size:22px 22px,22px 22px,100% 100%!important;border:1px solid #fff;box-shadow:var(--surface-shadow)}.notebook-reader>header h1{font-weight:650}.notebook-reader .fiche-content>section{background:linear-gradient(150deg,#fff,#fcfdff)!important;border:1px solid #fff!important;box-shadow:var(--surface-shadow)}.notebook-reader .fiche-tabs{background:linear-gradient(140deg,#e3e9f0,#edf0f6);border:1px solid #e0e5ed;border-radius:18px}.notebook-reader .fiche-tabs button.active{background:linear-gradient(145deg,#fff,#ffffffde);box-shadow:0 3px 8px #23314512,inset 0 1px 0 #fff}.notebook-reader .fiche-tabs button{font-weight:600;font-size:.9375rem}.lesson-card{background:var(--glass-panel)!important;box-shadow:var(--surface-shadow)!important;border:1px solid #fff!important}
body.in-session{background:radial-gradient(ellipse at 90% 0,#e0dafa8c,transparent 60%),linear-gradient(150deg,#f3f3fa,#edf3fc)!important}.question-orb{box-shadow:0 7px 18px #6c71952b;border:1px solid #fff8;background:conic-gradient(#afc2ed var(--question-progress),#e0dbef 0)}.question-orb>span{background:linear-gradient(145deg,#8c8cbe,#6676a5)}.illustrated-question h2{background:var(--glass-panel);border:1px solid #fff;box-shadow:var(--surface-shadow);font-weight:650}.illustrated-question .choice{background:var(--glass-panel)!important;box-shadow:var(--surface-shadow)!important;border:1px solid #fff}.illustrated-question .choice.selected{background:linear-gradient(135deg,#fff,#e4eaff)!important;border:2px solid #7c8dc4}.illustrated-question .choice.correct{background:linear-gradient(135deg,#f4fff9,#d4f3e3)!important;border:2px solid #22966a}.illustrated-question .choice.wrong{background:linear-gradient(135deg,#fff7f7,#ffe0e7)!important;border:2px solid #d94b69}.illustrated-question .answer-surface{box-shadow:var(--surface-shadow)}
.game-feature.challenge-feature{background:radial-gradient(ellipse at 100% 0,#c89ce87a,transparent 70%),linear-gradient(145deg,#8e76bc,#695a98)!important;box-shadow:var(--surface-shadow);border:1px solid #ffffff90}.game-feature.express-feature{background:radial-gradient(ellipse at 100% 0,#fff6b6b0,transparent 70%),linear-gradient(145deg,#fce7ae,#f3dcb0)!important;box-shadow:var(--surface-shadow);border:1px solid #fff}.game-feature h2{font-weight:650}.game-feature .game-feature-icon{box-shadow:0 5px 12px #3b42640d,inset 0 1px 0 #fff;background:linear-gradient(145deg,#fff,#ffffffde)!important}.game-feature .primary{box-shadow:0 4px 12px #30335412!important;background:linear-gradient(145deg,#fff,#f6f6fc)!important;font-weight:600!important}

/* Four equal touch targets: centered icons, visible labels, edge-attached glass. */
.app-nav{--nav-edge:max(8px,env(safe-area-inset-left,0px),env(safe-area-inset-right,0px));grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;isolation:isolate;min-height:calc(var(--nav-height) + env(safe-area-inset-bottom,0px))!important;padding:7px var(--nav-edge) calc(9px + env(safe-area-inset-bottom,0px))!important;background:linear-gradient(165deg,#ffffffed,#e9eefbee)!important;border-top:1px solid #ffffffed!important;box-shadow:0 -1px 0 #c3cbe35c,0 -8px 25px #4a648a08!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.app-nav::before{content:none}
.app-nav a{position:relative;display:flex;flex-direction:column!important;justify-content:center!important;align-items:center!important;align-self:stretch;gap:5px!important;min-height:68px!important;min-width:0;width:100%;max-width:none!important;padding:3px 2px!important;border-radius:18px!important;color:#59667b!important;background:transparent!important;box-shadow:none!important;white-space:normal!important;text-decoration:none}
.app-nav a .nav-symbol{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px;flex:none!important;margin:0!important;padding:0!important;border:1px solid transparent;border-radius:15px!important;background:transparent!important;color:inherit!important;box-shadow:none!important;outline:0!important;transition:background .2s,box-shadow .2s}
.app-nav .nav-symbol svg{display:block!important;width:26px!important;height:26px!important;stroke:currentColor!important;stroke-width:1.8;fill:none!important;opacity:1;visibility:visible;transform:none!important;margin:0!important;padding:0!important}
.app-nav a.active{background:transparent!important;color:#405eae!important;box-shadow:none!important}
.app-nav a.active .nav-symbol{color:#fff!important;background:radial-gradient(ellipse at 100% 0,#c791dbb0,transparent 65%),linear-gradient(145deg,#6285e5,#6c62bc)!important;border:1px solid #ffffffb0;box-shadow:0 4px 10px #6264b12e,inset 0 1px 0 #ffffffb5,inset 0 -1px 0 #5652984a!important;outline:0!important}
.app-nav a>span.nav-label{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.8125rem!important;line-height:1.3!important;font-weight:550;letter-spacing:-.2px;margin:0!important;padding:0;max-width:100%;text-align:center;overflow-wrap:normal;white-space:normal}
.app-nav a.active>span.nav-label{font-weight:700}.app-nav a:focus-visible{outline:2px solid #6c83b1;outline-offset:-3px}
@media(min-width:600px){.app-nav a>span.nav-label{font-size:.875rem!important}.app-nav{padding-inline:max(var(--nav-edge),calc((100% - 760px)/2))!important}}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .app-nav{background:linear-gradient(165deg,#ffffffab,#e8effabb)!important;backdrop-filter:blur(20px) saturate(125%)!important;-webkit-backdrop-filter:blur(20px) saturate(125%)!important}
 body .illustrated-dashboard .dashboard-welcome{backdrop-filter:blur(12px) saturate(115%)!important;-webkit-backdrop-filter:blur(12px) saturate(115%)!important}
}
@media(prefers-reduced-transparency:reduce){.app-nav{background:#f5f7fb!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body .illustrated-dashboard .dashboard-welcome{background:linear-gradient(135deg,#fff,#edf2fd)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(prefers-reduced-motion:reduce){.app-nav::before,.app-nav a{transition:none!important}}
@media(min-width:600px){.illustrated-dashboard .dashboard-welcome{padding:30px 32px 32px}.illustrated-dashboard .dashboard-welcome h1{margin-top:26px}.illustrated-dashboard .dashboard-stats>span{padding-block:19px}.revision-subject-card{padding:24px}}
@media(max-width:359px){.illustrated-dashboard .dashboard-welcome{padding:22px 18px 24px}.illustrated-dashboard .dashboard-welcome h1{letter-spacing:-.9px}.welcome-topline{gap:7px}.revision-subject-card{padding:18px}.revision-subject-card .subject-illustration{width:98px;height:110px}}

/* Training and account layout, with matching pearl materials. */
.view-play .illustrated-intro{background:linear-gradient(135deg,#ffffffd9,#e7edf9ce);border:1px solid #fff;box-shadow:var(--surface-shadow)}
.training-written{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:16px 4px;padding:24px 20px;margin-bottom:24px;border:1px solid #fff;border-radius:28px;background:radial-gradient(ellipse at 100% 0,#c6e8e477,transparent 65%),linear-gradient(145deg,#ffffffed,#e4eef5);box-shadow:var(--surface-shadow);color:#234d48}
.training-written h2{font-size:28px;margin:10px 0}.training-written p{font-size:16px;line-height:1.5;margin:0 0 14px;color:#355b55}.training-written .game-label{font-size:.75rem;letter-spacing:.7px}.training-formats{font-size:12px;font-weight:700;line-height:1.5;display:block}.training-written-art{width:112px;height:150px;align-self:center;justify-self:center;max-width:none}.training-written>.primary{grid-column:1/-1;background:linear-gradient(135deg,#237e70,#18594f);border:0;box-shadow:0 6px 14px #195d4d1c;color:#fff;-webkit-text-fill-color:#fff;display:flex;justify-content:space-between;align-items:center;padding:15px 18px;min-height:50px;border-radius:17px}
.account-page{display:grid;gap:18px;max-width:940px;margin:0 auto}.account-hero{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:16px;padding:25px 20px;border-radius:28px;background:radial-gradient(ellipse at 100% 0,#c6daf9a6,transparent 70%),linear-gradient(135deg,#ffffffe6,#eae7f5a6 60%,#eef3f9);border:1px solid #fff;box-shadow:var(--surface-shadow)}
.account-avatar{display:grid;place-items:center;width:64px;height:64px;border-radius:22px;background:linear-gradient(140deg,#b8c9e9,#7f96be);color:#fff;font-size:29px;font-weight:800;box-shadow:0 8px 16px #586f9220,inset 0 1px 0 #ffffff90}.account-hero h1{font-size:clamp(27px,6vw,38px);line-height:1.15;letter-spacing:-.8px;margin:4px 0 5px;overflow-wrap:anywhere}.account-hero .eyebrow{font-size:.75rem;letter-spacing:1px;margin:0;color:#6d7a91}.account-hero p{font-size:14px;margin:0;color:#68758a}.account-level{grid-column:2;justify-self:start;padding:6px 12px;border-radius:20px;background:#fff9;font-size:12px;font-weight:650;color:#576987;border:1px solid #fff}
.account-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.account-stats>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:17px 5px;min-width:0;gap:5px;border-radius:21px;background:linear-gradient(145deg,#fff,#f0f3f9);border:1px solid #fff;box-shadow:var(--surface-shadow)}.account-stats>div:nth-child(2){background:linear-gradient(145deg,#fff,#edf2fc)}.account-stats>div:nth-child(3){background:linear-gradient(145deg,#fff,#edf5f4)}.account-stats strong{font-size:24px;color:#263744;line-height:1.2;overflow-wrap:anywhere;max-width:100%}.account-stats span{font-size:.75rem;text-align:center;line-height:1.3;color:#59636a}
.account-stat-link{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px;border:1px solid #fff;border-radius:23px;background:linear-gradient(120deg,#ffffffe8,#eaf0fbda 70%,#ece9f8da);box-shadow:var(--surface-shadow);text-align:left;color:#3b3864;min-height:84px}.account-stat-link strong{display:block;font-size:18px}.account-stat-link small{display:block;font-size:12px;line-height:1.5;margin-top:5px;color:#5e607b}.account-stat-link>span:last-child{font-size:25px;flex:none}
.account-columns{display:grid;gap:18px;align-items:start}.account-card{background:linear-gradient(150deg,#fff,#fafcfe);border:1px solid #fff;border-radius:27px;box-shadow:var(--surface-shadow);padding:24px 20px;min-width:0}.account-card .eyebrow{font-size:.75rem;letter-spacing:1.5px;color:#6c7a93;margin:0 0 8px}.account-card h2{font-size:25px;letter-spacing:-.6px;margin:0 0 10px}.account-card>p:not(.eyebrow){font-size:1rem;line-height:1.6;color:#626c76;margin:0 0 18px}.account-card form{display:grid;gap:10px;margin-top:22px}.account-card label{font-size:.875rem;font-weight:700;color:#39464d}.account-card input{font-family:inherit;width:100%;min-width:0;font-size:16px;min-height:52px;padding:12px 14px;border:1px solid #d9dfe5;border-radius:15px;background:#f4f6f9;color:#263541;box-shadow:inset 0 1px 3px #27334805}.account-card input:focus{outline:2px solid #7b93be;outline-offset:2px}.account-card form button{margin-top:5px;background:linear-gradient(135deg,#6179ac,#496293);color:#fff;border:0;border-radius:16px;box-shadow:0 5px 12px #677eab20;min-height:50px;font-size:14px}.account-card .secondary{min-height:50px;border:1px solid #dfe4eb;background:linear-gradient(145deg,#fff,#edf1f6);box-shadow:0 3px 6px #263b4e06;color:#354857;border-radius:16px;font-size:14px}
.account-storage{display:inline-block;font-size:.75rem;font-weight:700;background:#e6f5ed;color:#28624d;padding:6px 10px;border-radius:20px;margin:0 0 13px}.account-data-list{margin:0 0 20px}.account-data-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #e9edf0;padding:12px 0;font-size:.875rem}.account-data-list dt{color:#626c76}.account-data-list dd{margin:0;font-weight:650;text-align:right;color:#344454}.account-card .account-note,.account-note{font-size:.75rem!important;line-height:1.5!important;color:#626c76;margin:10px 0 0!important}.account-save-status{text-align:center;padding:0 15px}.account-reset{display:block;width:100%;background:none;border:0;border-top:1px solid #ece7e4;margin-top:20px;padding:18px 3px 0;color:#ac3b30;font-family:inherit;font-size:.875rem;font-weight:650;min-height:48px}.account-danger{background:#b83630;color:#fff;border:0;border-radius:16px;padding:14px;margin:10px 0 16px;min-height:50px;font-size:15px;font-weight:700}
@media(min-width:650px){.account-columns{grid-template-columns:1fr 1fr}.account-hero{grid-template-columns:76px minmax(0,1fr) auto;padding:30px}.account-avatar{width:76px;height:76px;font-size:34px;border-radius:26px}.account-level{grid-column:3}.training-written{grid-template-columns:minmax(0,1fr) 180px;padding:30px}.training-written-art{width:165px;height:170px}.training-written>.primary{grid-column:1;max-width:360px}.training-written-art{grid-row:1/3;grid-column:2}.account-stats span{font-size:.875rem}}
@media(max-width:359px){.account-hero{padding:22px 16px;gap:13px;grid-template-columns:54px minmax(0,1fr)}.account-avatar{width:54px;height:54px;border-radius:18px}.account-card{padding:22px 16px}.training-written{padding:22px 16px;grid-template-columns:minmax(0,1fr) 72px}.training-written-art{width:88px;height:110px}.training-written h2{font-size:25px}}

/* Consistent typographic weight across the quieter surfaces. */
.account-card h2,.training-written h2,.view-play .illustrated-intro h1,.account-hero h1{font-weight:650;letter-spacing:-.6px}
.account-stat-link strong{font-weight:650}.account-stats strong{font-weight:650}.account-hero h1{color:#303d52}
.training-written p{color:#617587}.training-written>.primary{background:linear-gradient(135deg,#5d8491,#416670);box-shadow:0 5px 12px #41667018}
.account-card,.account-stat-link,.account-hero{box-shadow:var(--surface-shadow)}
.view-progress .card,.view-train .training-card{background:var(--glass-panel)!important;border:1px solid #fff;box-shadow:var(--surface-shadow)}
.view-progress .eyebrow{color:#66799a}.view-progress h1{color:#303d52;font-weight:650}

/* Luminous colour planes and moving specular highlights. */
body.view-home,body.view-revise,body.view-play,body.view-train,body.view-progress{background:#fff!important;color:#212438}
:root{--glass-panel:#fff;--surface-shadow:0 12px 30px #35477910,0 2px 6px #253c5c08,inset 0 1px 0 #fff}
.illustrated-dashboard .dashboard-welcome{isolation:isolate;position:relative;overflow:hidden;min-height:190px;background:linear-gradient(120deg,#8941d0 0%,#9451df 43%,#b27ff0 64%,#95c9ee 100%);border:1px solid #ffffffb5;box-shadow:0 15px 30px #994dd32b,inset 0 1px 0 #ffffffbd,inset 0 -1px 0 #d7c0ff}
.illustrated-dashboard .dashboard-welcome>div{position:relative;z-index:2}
.illustrated-dashboard .dashboard-welcome::before{content:'';position:absolute;inset:-35%;z-index:0;border-radius:0;background:radial-gradient(ellipse at 10% 80%,#ff89c7c9,transparent 43%),radial-gradient(ellipse at 94% 14%,#c3edffba,transparent 44%);animation:colour-drift 12s ease-in-out infinite alternate;pointer-events:none}
.illustrated-dashboard .dashboard-welcome::after{content:'';position:absolute;inset:-45% -30% -45% 62%;z-index:1;transform:rotate(37deg);background:linear-gradient(90deg,#ffffffc2 0,#ffffff60 1px,#d9eaff44 3px,#90c4f399 75%);border-left:1px solid #ffffffa6;box-shadow:-18px 0 40px #f1b3ff26;pointer-events:none;animation:glass-plane 10s ease-in-out infinite alternate}
.illustrated-dashboard .dashboard-welcome h1{color:#fff;text-shadow:0 2px 16px #51308040;font-weight:700}.illustrated-dashboard .dashboard-welcome p,.illustrated-dashboard .dashboard-welcome .dashboard-date{color:#fff}.candidate-pill{background:#ffffffe8;border-color:#fff;color:#6a4695;box-shadow:0 3px 10px #603d9420}
.illustrated-dashboard .dashboard-stats>span,.illustrated-dashboard .dashboard-stats>span:nth-child(2),.illustrated-dashboard .dashboard-stats>span:nth-child(3){background:#fff;border:1px solid #edf0f7;box-shadow:0 7px 20px #34416e0d}
.illustrated-dashboard .dashboard-daily{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 100% 0,#bd93ff73,transparent 66%),linear-gradient(125deg,#3a5dd0,#6f49d0 72%,#8655cf);border:1px solid #a39bf9;box-shadow:0 14px 28px #565bc52e,inset 0 1px 0 #ffffff99;color:#fff}
.illustrated-dashboard .dashboard-daily::after{content:'';position:absolute;inset:-60% -100%;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 43%,#ffffff00 46%,#ffffff38 50%,#ffffff00 54%,transparent 57%);animation:light-sweep 9s ease-in-out infinite}
.illustrated-dashboard .dashboard-daily .dashboard-section-heading>p,.illustrated-dashboard .dashboard-daily .daily-subject,.illustrated-dashboard .dashboard-daily .daily-main h2,.illustrated-dashboard .dashboard-daily .daily-main p{color:#fff}.illustrated-dashboard .dashboard-daily .dashboard-section-heading>span{background:#ffffffe6;color:#484084;border:1px solid #fff}
.illustrated-dashboard .dashboard-daily>button{background:linear-gradient(140deg,#fff,#f3eeff);color:#574192;border:1px solid #fff;box-shadow:0 7px 17px #2f245d2b,inset 0 1px 0 #fff;font-weight:650}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(1){background:radial-gradient(ellipse at 100% 0,#ffd0dba8,transparent 65%),linear-gradient(135deg,#ffc5e0,#d5adfb 52%,#a6cafa);border-color:#fff;box-shadow:0 10px 24px #b26cd326,inset 0 1px 0 #fff;color:#45315e}.illustrated-dashboard .dashboard-shortcuts>:nth-child(1)>span{background:linear-gradient(135deg,#d874c6,#9163d8);box-shadow:0 5px 12px #9b64bf29,inset 0 1px 0 #ffffffa8}.illustrated-dashboard .dashboard-shortcuts>:nth-child(1)>small{color:#594267}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){background:linear-gradient(135deg,#b8f4dc,#91e0df 58%,#afd5ff);border-color:#fff;box-shadow:0 10px 24px #56bca223,inset 0 1px 0 #fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)>small{color:#315c61}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(3),.illustrated-dashboard .dashboard-shortcuts>:nth-child(4),.revision-subject-card,.dashboard-week,.account-card,.account-stats>div,.account-stats>div:nth-child(2),.account-stats>div:nth-child(3){background:#fff;border-color:#eaeef6}
.revision-subject-card .subject-illustration{width:132px;height:136px;filter:drop-shadow(0 8px 5px #30395318);transform:none;opacity:1}.subject-tile .tile-picture{width:112px;height:112px;filter:none;opacity:1}.dashboard-topic .topic-visual{background:linear-gradient(135deg,color-mix(in srgb,var(--subject-color),white 55%),var(--subject-tint));border-bottom:1px solid #fff}.dashboard-topic>div:last-child{background:#fff}
.account-stat-link{background:linear-gradient(120deg,#526dca,#8557c7);border-color:#ffffffb0;box-shadow:0 10px 25px #6a5bb52e,inset 0 1px 0 #ffffffc7;color:#fff}.account-stat-link small{color:#fff}
.view-play .illustrated-intro{background:linear-gradient(120deg,#f6c0df,#d2acfa 50%,#a6d3f3);border-color:#fff;box-shadow:0 10px 24px #9b78c322,inset 0 1px 0 #fff}

/* Transparent dock material; bright edges make its thickness visible. */
.app-nav{background:linear-gradient(120deg,#ffffffd4,#eff3ffcc)!important;border-top:1px solid #fff!important;box-shadow:0 -1px 0 #b7c1d680,0 -10px 30px #41527712,inset 0 1px 1px #fff!important;overflow:hidden}
.app-nav::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(112deg,transparent 12%,#ffffff0d 23%,#ffffffa8 35%,#ffffff00 49%,transparent 65%);background-size:240% 100%;animation:dock-reflection 10s ease-in-out infinite}
.app-nav a{color:#4e5a72!important}.app-nav a>span.nav-label{position:relative;z-index:1;text-shadow:0 1px 6px #fff}
.app-nav a .nav-symbol{background:linear-gradient(145deg,#ffffff8a,#ffffff1c)!important;border:1px solid #ffffff99;box-shadow:inset 0 1px 0 #fff,0 2px 6px #4c668017!important}
.app-nav a.active .nav-symbol{background:radial-gradient(ellipse at 100% 0,#e89cffba,transparent 70%),linear-gradient(135deg,#498ef5,#7852d1)!important;border:1px solid #ffffffdb;box-shadow:0 5px 14px #7561c63d,inset 0 2px 1px #ffffffb3,inset 0 -2px 2px #633bb947!important;position:relative;overflow:hidden}
.app-nav a.active .nav-symbol::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#ffffff6b,transparent 48%);border-radius:inherit}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.app-nav{background:linear-gradient(120deg,#ffffff75,#dbe5f84d)!important;backdrop-filter:blur(22px) saturate(170%)!important;-webkit-backdrop-filter:blur(22px) saturate(170%)!important}}
@keyframes colour-drift{from{transform:translate3d(-5%,0,0) scale(1)}to{transform:translate3d(6%,4%,0) scale(1.08)}}
@keyframes glass-plane{from{transform:translateX(-9px) rotate(37deg)}to{transform:translateX(14px) rotate(37deg)}}
@keyframes light-sweep{0%,15%{transform:translate3d(-30%,0,0);opacity:0}35%,55%{opacity:.85}75%,100%{transform:translate3d(30%,0,0);opacity:0}}
@keyframes dock-reflection{0%,15%{background-position:120% 0;opacity:.2}50%{opacity:.75}85%,100%{background-position:-80% 0;opacity:.2}}
body.effects-paused .dashboard-welcome::before,body.effects-paused .dashboard-welcome::after,body.effects-paused .dashboard-daily::after,body.effects-paused .app-nav::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.illustrated-dashboard .dashboard-welcome::before,.illustrated-dashboard .dashboard-welcome::after,.illustrated-dashboard .dashboard-daily::after,.app-nav::after{animation:none!important}}
@media(prefers-reduced-transparency:reduce){.app-nav{background:#f4f7ff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-nav::after{display:none}body .illustrated-dashboard .dashboard-welcome{background:linear-gradient(120deg,#8645cc,#9762df 60%,#9cc9ef)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(max-width:359px){.revision-subject-card .subject-illustration{width:110px;height:122px}}

/* Aqua rounded prism, paper study card and compact glass navigation. */
.illustrated-dashboard .dashboard-welcome{background:linear-gradient(120deg,#087e99 0%,#159daf 40%,#39c6bc 72%,#91efda 100%);box-shadow:0 14px 30px #159eae24,inset 0 1px 1px #ffffffd9;border-radius:30px}
.illustrated-dashboard .dashboard-welcome::before{background:radial-gradient(ellipse at 12% 85%,#6deedaa6,transparent 48%),radial-gradient(ellipse at 88% 14%,#aeefffdd,transparent 45%);border-radius:50%}
.illustrated-dashboard .dashboard-welcome::after{inset:-35% -12% -25% 58%;border-radius:46%;border:1px solid #ffffffa8;background:linear-gradient(135deg,#ffffff70,#c5fff529 38%,#b5eaff75 72%,#ffffffa1);box-shadow:inset 5px 3px 12px #ffffff73,inset -8px -5px 20px #229cb32b,-14px 4px 28px #d7fff326;animation:rounded-prism 12s ease-in-out infinite alternate}
.illustrated-dashboard .dashboard-welcome h1{text-shadow:0 2px 14px #07556240}.candidate-pill{color:#16677a;background:#ffffffeb}
@keyframes rounded-prism{from{transform:translate3d(-5px,0,0) rotate(28deg)}to{transform:translate3d(12px,7px,0) rotate(35deg)}}
.illustrated-dashboard .dashboard-daily{background-color:#fff;background-image:linear-gradient(90deg,transparent 27px,#efa4bf66 27px,#efa4bf66 28px,transparent 28px),repeating-linear-gradient(0deg,transparent 0,transparent 23px,#86b5e329 23px,#86b5e329 24px),repeating-linear-gradient(90deg,transparent 0,transparent 23px,#86b5e321 23px,#86b5e321 24px);border:1px solid #e2e9f2;box-shadow:0 12px 28px #45678a12,inset 0 2px 0 #fff;color:#27364b}
.illustrated-dashboard .dashboard-daily::after{content:none;animation:none}
.illustrated-dashboard .dashboard-daily .dashboard-section-heading>p{color:#677899}.illustrated-dashboard .dashboard-daily .daily-subject{color:#4d6985}.illustrated-dashboard .dashboard-daily .daily-main h2{color:#23364c}.illustrated-dashboard .dashboard-daily .daily-main p{color:#52667b}.illustrated-dashboard .dashboard-daily .dashboard-section-heading>span{background:#f1f4ffeb;color:#58678a;border:1px solid #e3e8f5}
.illustrated-dashboard .dashboard-daily>button{background:linear-gradient(115deg,#fbe3f1,#e8ddff 58%,#e1eaff);color:#57416f;border:1px solid #fff;box-shadow:0 5px 12px #8264a219,inset 0 1px 0 #fff}
:root{--nav-height:88px}
body .app-nav{position:fixed!important;left:max(12px,env(safe-area-inset-left,0px))!important;right:max(12px,env(safe-area-inset-right,0px))!important;bottom:max(10px,env(safe-area-inset-bottom,0px))!important;width:auto!important;max-width:520px!important;margin:0 auto!important;min-height:68px!important;height:auto!important;padding:5px!important;gap:3px!important;border:1px solid #ffffffdb!important;border-radius:38px!important;background:linear-gradient(135deg,#ffffffdc,#eaf1f8d9)!important;box-shadow:0 8px 28px #35436522,inset 0 1px 1px #fff,0 0 0 .5px #9aa9bd38!important}
.app-nav a{min-height:56px!important;padding:5px 2px!important;gap:2px!important;border-radius:30px!important;transition:background .2s,color .2s; color:#374254!important}
.app-nav a .nav-symbol,.app-nav a.active .nav-symbol{width:26px!important;height:26px!important;min-width:26px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.app-nav .nav-symbol svg{width:24px!important;height:24px!important}.app-nav a.active .nav-symbol::after{content:none}
.app-nav a.active{background:linear-gradient(125deg,#fbd7ebba,#e2c9ffb8 65%,#e5dcffb8)!important;color:#66457e!important;box-shadow:inset 0 1px 1px #ffffffd9,0 2px 6px #8f6bb20d!important}
.app-nav a>span.nav-label{font-size:.6875rem!important;line-height:1.25!important;letter-spacing:-.15px;font-weight:600;text-shadow:none;white-space:nowrap}.app-nav a.active>span.nav-label{font-weight:700}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body .app-nav{background:linear-gradient(130deg,#ffffff96,#edf5ff52)!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important}}
@media(min-width:600px){.app-nav a>span.nav-label{font-size:.8125rem!important}}
@media(prefers-reduced-transparency:reduce){body .app-nav{background:#f7f9ff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body .illustrated-dashboard .dashboard-welcome{background:linear-gradient(120deg,#087e99,#159daf 50%,#56d9c6)!important}}
@media(prefers-reduced-motion:reduce){.illustrated-dashboard .dashboard-welcome::after{animation:none!important}}

/* Distinct pastel families, with colour-only selection in the glass dock. */
.illustrated-dashboard .dashboard-shortcuts>:nth-child(1){background:radial-gradient(ellipse at 90% 0,#fff7ddcc,transparent 65%),linear-gradient(135deg,#ffe6cc,#ffd0ac 60%,#ffc6b3);color:#513c32;box-shadow:0 10px 24px #d69a6420,inset 0 1px 0 #fff}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(1)>span{background:linear-gradient(145deg,#ffbb78,#ed9659);box-shadow:0 5px 12px #d98b5130,inset 0 1px 0 #fff9}.illustrated-dashboard .dashboard-shortcuts>:nth-child(1)>small{color:#735544}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){background:radial-gradient(ellipse at 95% 0,#edfff5c9,transparent 60%),linear-gradient(135deg,#c6f7e4,#a4e5d8 60%,#b8e9ee);color:#254c48}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)>span{background:linear-gradient(145deg,#68cfb9,#299d94);box-shadow:0 5px 12px #339e8830,inset 0 1px 0 #fff9}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(3){background:radial-gradient(ellipse at 95% 0,#f5fcff,transparent 65%),linear-gradient(135deg,#dfF3ff,#bfdfff 70%,#ccecff);color:#294961;box-shadow:0 10px 24px #6da9d21c,inset 0 1px 0 #fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(3)>span{background:linear-gradient(145deg,#7bcdf5,#459edc);box-shadow:0 5px 12px #488ec32b,inset 0 1px 0 #fff9}.illustrated-dashboard .dashboard-shortcuts>:nth-child(3)>small{color:#49657d}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(4){background:radial-gradient(ellipse at 95% 0,#fff3eec9,transparent 60%),linear-gradient(135deg,#ffe4e8,#ffc9d4 65%,#ffc1bc);color:#643b49;box-shadow:0 10px 24px #ce84981c,inset 0 1px 0 #fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(4)>span{background:linear-gradient(145deg,#f792a8,#df607c);box-shadow:0 5px 12px #d45c7a2b,inset 0 1px 0 #fff9}.illustrated-dashboard .dashboard-shortcuts>:nth-child(4)>small{color:#80515f}
.illustrated-dashboard .dashboard-daily>button{background:linear-gradient(115deg,#e3f6ff,#c9e8ff 60%,#dcf4f4);color:#325875;box-shadow:0 5px 12px #6b9ac519,inset 0 1px 0 #fff}.illustrated-dashboard .dashboard-daily .dashboard-section-heading>span{background:#edf8ffdd;color:#496980;border-color:#dcecf5}
body .app-nav{background:linear-gradient(135deg,#ffffffe0,#f2f7fadb)!important;box-shadow:0 8px 24px #3543651c,inset 0 1px 1px #fff,0 0 0 .5px #9aa9bd33!important}
.app-nav a,.app-nav a.active{background:transparent!important;box-shadow:none!important;color:#374254!important}
.app-nav a.active>span.nav-label{color:#374254!important;font-weight:600!important}
.app-nav a.active .nav-symbol{color:#178d9d!important;background:transparent!important;border:0!important;box-shadow:none!important}
.app-nav a[data-nav=revise].active .nav-symbol{color:#268f77!important}.app-nav a[data-nav=play].active .nav-symbol{color:#d6753d!important}.app-nav a[data-nav=progress].active .nav-symbol{color:#cd5a77!important}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body .app-nav{background:linear-gradient(135deg,#ffffff52,#e9f3ff26)!important;backdrop-filter:blur(22px) saturate(175%)!important;-webkit-backdrop-filter:blur(22px) saturate(175%)!important}}
@media(prefers-reduced-transparency:reduce){body .app-nav{background:#f7f9ff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* Gentle light and scroll motion, with no continuous JavaScript animation. */
.illustrated-dashboard .dashboard-welcome .header-glint{position:absolute;inset:-60% -90%;z-index:1;pointer-events:none;background:linear-gradient(110deg,transparent 43%,#fff0 46%,#ffffff66 50%,#fff0 54%,transparent 57%);animation:header-glint 11s ease-in-out infinite}
@keyframes header-glint{0%,20%{transform:translate3d(-35%,0,0);opacity:0}35%,48%{opacity:.65}65%,100%{transform:translate3d(35%,0,0);opacity:0}}
.illustrated-dashboard .dashboard-shortcuts>a,.illustrated-dashboard .dashboard-shortcuts>button{position:relative;overflow:hidden;isolation:isolate}
.illustrated-dashboard .dashboard-shortcuts>a::after,.illustrated-dashboard .dashboard-shortcuts>button::after{content:'';position:absolute;width:150px;height:150px;right:-65px;top:-65px;border-radius:50%;background:radial-gradient(circle,#ffffff80,transparent 70%);pointer-events:none;z-index:-1}
.reveal-pending{opacity:0;transform:translate3d(0,12px,0)}.reveal-visible{opacity:1;transform:translate3d(0,0,0);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.65,.3,1)}
.dashboard-carousel .dashboard-topic{transition:box-shadow .25s,scale .25s}.dashboard-carousel .dashboard-topic:active{scale:.98}.dashboard-shortcuts>a:active,.dashboard-shortcuts>button:active{scale:.98;transition:scale .15s}
body.effects-paused .header-glint{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.illustrated-dashboard .dashboard-welcome .header-glint{animation:none;display:none}.reveal-pending,.reveal-visible{opacity:1;transform:none;transition:none}.dashboard-carousel .dashboard-topic,.dashboard-shortcuts>a,.dashboard-shortcuts>button{transition:none!important;scale:1!important}}

/* A morphing glass contour, rather than a travelling strip of light. */
.illustrated-dashboard .dashboard-welcome .header-glint{display:none}
.illustrated-dashboard .dashboard-welcome::after{inset:-30% -13% -25% 57%;background:linear-gradient(140deg,#ffffff38,#caffef10 48%,#b6f3ff47);border:1px solid #ffffff70;box-shadow:inset 4px 2px 4px #ffffffba,inset -3px -2px 7px #a3f9ffb0,0 0 18px #c8fff52e;animation:liquid-contour 14s ease-in-out infinite alternate;will-change:transform,border-radius}
@keyframes liquid-contour{0%{border-radius:42% 58% 62% 38% / 46% 38% 62% 54%;transform:translate3d(-5px,-4px,0) rotate(20deg);box-shadow:inset 4px 2px 4px #ffffffce,inset -2px -3px 8px #bbffff70,0 0 18px #c8fff52e}50%{border-radius:58% 42% 38% 62% / 38% 58% 42% 62%;transform:translate3d(8px,8px,0) rotate(31deg);box-shadow:inset 1px 5px 5px #ffffffc9,inset -4px -1px 8px #b8ffff99,0 0 22px #c8fff53d}100%{border-radius:38% 62% 54% 46% / 60% 44% 56% 40%;transform:translate3d(-8px,3px,0) rotate(24deg);box-shadow:inset -3px 3px 4px #ffffffdb,inset 3px -3px 8px #bbffff8c,0 0 18px #c8fff530}}
/* Selection affects only the icon, with a stronger stroke and coloured glow. */
.app-nav a.active .nav-symbol{color:#007aef!important;filter:drop-shadow(0 0 5px #168cff70);transform:scale(1.13)!important}
.app-nav a.active .nav-symbol svg{stroke-width:2.7!important;fill:currentColor!important;fill-opacity:.12}
.app-nav a[data-nav=revise].active .nav-symbol{color:#008969!important;filter:drop-shadow(0 0 5px #13bc8b70)}.app-nav a[data-nav=play].active .nav-symbol{color:#e46b20!important;filter:drop-shadow(0 0 5px #ff9c4875)}.app-nav a[data-nav=progress].active .nav-symbol{color:#dc3866!important;filter:drop-shadow(0 0 5px #ed598375)}
/* Training precedes the daily reading card in the home flow. */
.illustrated-dashboard .dashboard-welcome{order:0}.illustrated-dashboard .dashboard-stats{order:1}.illustrated-dashboard .dashboard-resume{order:2}.illustrated-dashboard .home-activities{order:3}.illustrated-dashboard .dashboard-daily{order:4}.illustrated-dashboard .home-subjects{order:5}.illustrated-dashboard>section[aria-labelledby=home-themes]{order:6}.illustrated-dashboard .dashboard-week{order:7}
.illustrated-dashboard .dashboard-shortcuts>:first-child{grid-column:1/-1;grid-template-columns:52px minmax(0,1fr);column-gap:14px;align-items:center;padding:22px;background:radial-gradient(ellipse at 100% 0,#fff5d8bb,transparent 65%),linear-gradient(115deg,#ffe1bf,#ffbd94);border:1px solid #fff;box-shadow:0 12px 25px #e69a5330,inset 0 1px 0 #fff}
.illustrated-dashboard .dashboard-shortcuts>:first-child>span{grid-row:1/3;margin:0;width:48px;height:48px}.illustrated-dashboard .dashboard-shortcuts>:first-child>strong{font-size:1.3rem}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){grid-column:1/-1;grid-template-columns:36px 1fr;column-gap:10px;padding:13px 18px;order:4}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)>span{grid-row:1/3;width:32px;height:32px;margin:0}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)>strong{font-size:1rem}
/* Original subject artwork rises above the paper surface. */
.revision-subject-list{gap:38px;padding-top:34px;padding-inline:4px}.revision-subject-card{overflow:visible;min-height:132px;padding:24px 142px 24px 20px;box-shadow:0 9px 26px color-mix(in srgb,var(--subject-color),transparent 88%),0 2px 6px #35477908;border:1px solid #edf0f5}
.revision-subject-card::before{content:'';position:absolute;inset:-12px -8px -16px 45%;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--subject-tint),transparent 20%),transparent 70%);filter:blur(12px);z-index:-1;pointer-events:none}
.revision-subject-card .subject-illustration{position:absolute;right:3px;top:-30px;width:140px;height:156px;margin:0;transform:rotate(-7deg);filter:drop-shadow(0 12px 7px #253d5726);z-index:2;pointer-events:none}.revision-subject-card:nth-child(even) .subject-illustration{transform:rotate(6deg)}
@media(max-width:359px){.revision-subject-card{padding:20px 112px 20px 16px}.revision-subject-card .subject-illustration{width:115px;height:138px;top:-25px;right:0}.revision-subject-copy strong{font-size:1.05rem}}
/* Shared materials across revision, training, questions, account and results. */
.studio-header,.view-play .illustrated-intro,.account-hero{background:radial-gradient(ellipse at 95% 0,#ffffffb8,transparent 65%),linear-gradient(120deg,#d2f6e8,#bde9ee 60%,#cceaff)!important;border:1px solid #fff;border-radius:28px;box-shadow:0 12px 28px #428ba01a,inset 0 1px 0 #fff}
.training-written{background:radial-gradient(ellipse at 95% 0,#fff5df,transparent 65%),linear-gradient(125deg,#ffe4ca,#ffc8a4)!important;color:#584131}.training-written p{color:#705745}.training-written>.primary{background:linear-gradient(120deg,#e99756,#d78040);color:#fff}
.game-feature.challenge-feature{background:linear-gradient(135deg,#ffe0e7,#f7afbf)!important;color:#62364a}.game-feature.challenge-feature h2,.game-feature.challenge-feature p{color:#62364a!important}.game-feature.express-feature{background:linear-gradient(135deg,#def4ff,#acd9fc)!important;color:#294d6b}.game-feature.express-feature h2,.game-feature.express-feature p{color:#294d6b!important}
.notebook-reader>header{background-image:linear-gradient(#83b6db20 1px,transparent 1px),linear-gradient(90deg,#83b6db20 1px,transparent 1px),linear-gradient(125deg,#fff,#effaf9)!important;background-size:24px 24px,24px 24px,100% 100%!important}.notebook-reader .fiche-content>section,.lesson-card,.view-progress .card,.view-train .training-card{background:#fff!important;border:1px solid #e7eef4!important;border-radius:26px;box-shadow:0 10px 26px #355d7d10!important}.notebook-reader .fiche-tabs{background:#edf5f7}.notebook-reader .fiche-tabs button.active{color:#147e83}
.account-avatar{background:linear-gradient(140deg,#6bbddf,#3a9cb2)}.account-stat-link{background:linear-gradient(120deg,#d1f3eb,#c1e8fa);color:#285569;box-shadow:0 10px 25px #4d9bb41a}.account-stat-link small{color:#41687b}.account-stats>div:nth-child(1){background:linear-gradient(140deg,#fff,#fff0df)}.account-stats>div:nth-child(2){background:linear-gradient(140deg,#fff,#e7f6ff)}.account-stats>div:nth-child(3){background:linear-gradient(140deg,#fff,#e4f8ee)}.account-card form button{background:linear-gradient(135deg,#299aaa,#207e99)}
body.in-session{background:radial-gradient(ellipse at 90% 0,#bce9ef88,transparent 60%),#f7fcff!important}.question-orb{background:conic-gradient(#53b6cf var(--question-progress),#dcecf3 0)}.question-orb>span{background:linear-gradient(145deg,#459cba,#247c9e)}.illustrated-question .choice.selected{background:linear-gradient(135deg,#fff,#def3ff)!important;border-color:#409bc7}.illustrated-question h2,.illustrated-question .answer-surface{border-radius:26px;box-shadow:0 10px 26px #355d7d10}
@media(prefers-reduced-motion:reduce){.illustrated-dashboard .dashboard-welcome::after{animation:none!important;will-change:auto}}

/* One shared glass header, with live countdown and compact progress. */
.illustrated-dashboard .dashboard-welcome{display:block;padding:24px 20px}.illustrated-dashboard .dashboard-welcome h1{margin-top:22px}.illustrated-dashboard .dashboard-welcome>div>p{font-size:1rem;line-height:1.5;max-width:29ch}
.exam-countdown{display:flex;flex-direction:column;gap:5px;margin:19px 0;color:#fff}.exam-countdown strong{font-size:1.05rem;font-weight:650}.exam-countdown span{font-size:.75rem;color:#fff;opacity:.9}
.illustrated-dashboard .dashboard-welcome .dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:22px 0 0;text-decoration:none}
.illustrated-dashboard .dashboard-welcome .dashboard-stats>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 4px;min-width:0;min-height:92px;background:linear-gradient(135deg,#ffffff33,#ffffff13);border:1px solid #ffffff70;border-radius:19px;box-shadow:inset 0 1px 0 #ffffff8c,0 5px 14px #08647612;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;color:#fff}
.illustrated-dashboard .dashboard-welcome .dashboard-stats strong{color:#fff;font-size:1.15rem;line-height:1.2}.illustrated-dashboard .dashboard-welcome .dashboard-stats small{color:#fff;font-size:.625rem;line-height:1.3;text-align:center}.illustrated-dashboard .dashboard-welcome .dashboard-stats svg{width:18px;height:18px;color:#fff}
/* Equal square actions in variations of the aqua glass palette. */
.illustrated-dashboard .dashboard-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n){grid-column:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;aspect-ratio:1;min-height:0;padding:18px;gap:7px;align-items:start;align-content:start;order:0;background:radial-gradient(ellipse at 100% 0,#ffffff70,transparent 65%),linear-gradient(135deg,#1898ad,#65d6ca);color:#fff;border:1px solid #ffffffa6;box-shadow:0 9px 22px #168b9c22,inset 0 1px 1px #ffffffb5}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){order:4;background:radial-gradient(ellipse at 100% 0,#ffffff80,transparent 65%),linear-gradient(135deg,#168f84,#76d7b5)}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(3){background:radial-gradient(ellipse at 100% 0,#ffffff80,transparent 65%),linear-gradient(135deg,#318cbf,#88cfeb)}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(4){background:radial-gradient(ellipse at 100% 0,#ffffff80,transparent 65%),linear-gradient(135deg,#367aab,#7ababf)}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>span{grid-row:auto;width:38px;height:38px;margin:0 0 3px;background:linear-gradient(140deg,#ffffff52,#ffffff19);border:1px solid #ffffff82;box-shadow:inset 0 1px 0 #ffffff9e;color:#fff;border-radius:13px}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>strong{font-size:1.05rem;line-height:1.2;color:#fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>small{font-size:.75rem;line-height:1.4;color:#fff}
/* Smooth selection bubble, without a heavy outline on the symbol. */
.app-nav a.active .nav-symbol,.app-nav a[data-nav].active .nav-symbol{transform:none!important;filter:none!important;color:#0583bd!important}.app-nav a.active .nav-symbol svg{stroke-width:1.9!important;fill:none!important;fill-opacity:0}
.app-nav a.active{background:linear-gradient(135deg,#ffffff90,#caedf552)!important;box-shadow:inset 0 1px 1px #ffffffdb,inset 0 -1px 0 #ffffff70,0 3px 8px #3d819516!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}
@media(max-width:359px){.illustrated-dashboard .dashboard-shortcuts>:nth-child(n){padding:13px;gap:5px}.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>strong{font-size:.95rem}.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>small{font-size:.6875rem}.illustrated-dashboard .dashboard-welcome{padding:22px 16px}}
@media(min-width:600px){.illustrated-dashboard .dashboard-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-transparency:reduce){.app-nav a.active{background:#e1f1f8!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.illustrated-dashboard .dashboard-welcome .dashboard-stats>span{background:#258f9f;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* Preserve each action's colour, using the header's rounded prism material. */
.illustrated-dashboard .dashboard-shortcuts>:nth-child(1){background:radial-gradient(ellipse at 8% 90%,#ffbf9890,transparent 65%),linear-gradient(125deg,#ffcf9c,#ffddb7 55%,#fff0d3);color:#63412d;box-shadow:0 10px 24px #d69a6426,inset 0 1px 1px #ffffffd9}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(2){background:radial-gradient(ellipse at 8% 90%,#81d9d38c,transparent 65%),linear-gradient(125deg,#a5e8cf,#bcefe4 55%,#dbf9f2);color:#245e57;box-shadow:0 10px 24px #339e8822,inset 0 1px 1px #ffffffd9}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(3){background:radial-gradient(ellipse at 8% 90%,#95caff90,transparent 65%),linear-gradient(125deg,#b1dcfc,#c4e9ff 55%,#e5f7ff);color:#315774;box-shadow:0 10px 24px #488ec322,inset 0 1px 1px #ffffffd9}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(4){background:radial-gradient(ellipse at 8% 90%,#ffa5b990,transparent 65%),linear-gradient(125deg,#ffc3ce,#ffdadb 55%,#ffece4);color:#75404e;box-shadow:0 10px 24px #d45c7a22,inset 0 1px 1px #ffffffd9}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>strong,.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>small{color:inherit;position:relative;z-index:2}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(1)>span{background:linear-gradient(145deg,#ffb975,#e99353);color:#fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)>span{background:linear-gradient(145deg,#64cdb4,#2e9e92);color:#fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(3)>span{background:linear-gradient(145deg,#73c7ef,#4096d5);color:#fff}.illustrated-dashboard .dashboard-shortcuts>:nth-child(4)>span{background:linear-gradient(145deg,#f78da4,#db617b);color:#fff}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)::after{inset:-20% -44% -20% 52%;width:auto;height:auto;z-index:0;border-radius:44% 56% 62% 38% / 54% 42% 58% 46%;transform:rotate(26deg);background:linear-gradient(140deg,#ffffff80,#ffffff16 45%,#ffffff48);border:1px solid #ffffff94;box-shadow:inset 2px 2px 5px #ffffffae,inset -2px -1px 8px #ffffff40;pointer-events:none}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)>span{position:relative;z-index:2}

/* Compact greeting and rectangular glass statistics. */
.illustrated-dashboard .dashboard-welcome{min-height:0;padding:20px}.illustrated-dashboard .welcome-topline{justify-content:flex-end}.illustrated-dashboard .candidate-pill{font-size:.75rem;padding:7px 12px}.illustrated-dashboard .dashboard-welcome h1{margin:15px 0 18px;font-size:clamp(1.65rem,6.8vw,2.5rem)}
.illustrated-dashboard .dashboard-welcome .dashboard-stats{margin-top:0;gap:7px}.illustrated-dashboard .dashboard-welcome .dashboard-stats>span{display:grid;grid-template-columns:auto auto;justify-content:center;align-content:center;gap:3px 5px;min-height:58px;padding:8px 4px;border-radius:14px;border-color:#ffffff59}.illustrated-dashboard .dashboard-welcome .dashboard-stats small{grid-column:1/-1;font-size:.6rem}.illustrated-dashboard .dashboard-welcome .dashboard-stats strong{font-size:1rem}.illustrated-dashboard .dashboard-welcome .dashboard-stats svg{width:15px;height:15px;color:#fff!important}
/* Soft moving light on action cards, without a defined bubble shape. */
.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)::after{inset:-15%;width:auto;height:auto;border:0;border-radius:0;transform:none;box-shadow:none;background:radial-gradient(ellipse at 25% 35%,#ffffff85,transparent 48%),radial-gradient(ellipse at 85% 80%,#ffffff38,transparent 45%);animation:action-light 9s ease-in-out infinite alternate;opacity:.7}
.illustrated-dashboard .dashboard-shortcuts>:nth-child(2)::after{animation-delay:-4s}.illustrated-dashboard .dashboard-shortcuts>:nth-child(3)::after{animation-delay:-2s}.illustrated-dashboard .dashboard-shortcuts>:nth-child(4)::after{animation-delay:-6s}
@keyframes action-light{from{transform:translate3d(-4%,-3%,0);opacity:.45}to{transform:translate3d(5%,4%,0);opacity:.85}}
.illustrated-dashboard .dashboard-resume{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:21px;background:radial-gradient(ellipse at 100% 0,#ffffff99,transparent 65%),linear-gradient(120deg,#ffe1b9,#ffd0b0);border:1px solid #fff;border-radius:24px;color:#694226;box-shadow:0 10px 24px #d5986530,inset 0 1px 0 #fff}
.dashboard-resume .resume-message{font-size:.8125rem;font-weight:550;color:#81573b}.dashboard-resume .resume-title{display:flex;gap:9px;align-items:center}.dashboard-resume .resume-title strong{font-size:1.0625rem;line-height:1.3}.dashboard-resume .resume-title b{margin-left:auto;font-size:1.35rem}.dashboard-resume>small{color:#81573b;font-size:.75rem}
body.effects-paused .dashboard-shortcuts>:nth-child(n)::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.illustrated-dashboard .dashboard-shortcuts>:nth-child(n)::after{animation:none!important}}

/* Greeting and countdown share the same row. */
.greeting-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 20px}.illustrated-dashboard .greeting-row h1{font-size:clamp(1.05rem,4.9vw,2rem);margin:0!important;min-width:0;overflow-wrap:anywhere;line-height:1.2;letter-spacing:-.6px}.illustrated-dashboard .greeting-row .candidate-pill{flex:none;font-size:clamp(1.2rem,5.5vw,2rem);font-weight:800;padding:8px 12px;font-variant-numeric:tabular-nums;letter-spacing:-1px;background:#ffffffdf;box-shadow:0 5px 16px #07596724,inset 0 1px 0 #fff}
/* A perforated training ticket, distinct from the notebook and glass cards. */
.illustrated-dashboard .dashboard-resume{position:relative;overflow:hidden;background:repeating-linear-gradient(120deg,#fff9ed 0,#fff9ed 5px,#fff6e6 5px,#fff6e6 6px);border:1px solid #e9d9bc;border-left:5px solid #e99b49;border-radius:10px 22px 22px 10px;padding:20px 21px;box-shadow:0 8px 0 -4px #f0e3cb,0 14px 24px #82634414}.dashboard-resume .resume-message{font-size:.8125rem;color:#966635}.dashboard-resume .resume-title{padding-bottom:13px;border-bottom:1px dashed #cdb88f}.dashboard-resume .resume-title strong{color:#543f2b}.dashboard-resume .resume-title b{background:#f6d7a6;border:1px solid #fff;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex:none}.dashboard-resume .resume-track{display:block!important;height:5px;border-radius:6px;background:#ecdfc9;overflow:hidden}.resume-track i{display:block;height:100%;background:linear-gradient(90deg,#e9ab58,#da843c);border-radius:inherit}
/* Each destination retains its own colour in the glass dock. */
.app-nav a[data-nav=home]{--page-accent:#0784bb;--page-glass:#bcecff66}.app-nav a[data-nav=revise]{--page-accent:#168773;--page-glass:#b8f0d966}.app-nav a[data-nav=play]{--page-accent:#c76b2c;--page-glass:#ffe0b766}.app-nav a[data-nav=progress]{--page-accent:#c85276;--page-glass:#ffd0df66}
.app-nav a[data-nav] .nav-symbol,.app-nav a[data-nav].active .nav-symbol{color:var(--page-accent)!important}.app-nav a[data-nav].active{background:linear-gradient(135deg,#ffffff90,var(--page-glass))!important}.app-nav a[data-nav].active>span.nav-label{color:var(--page-accent)!important}
.studio-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px}.studio-level-label{font-size:.8125rem;font-weight:600;color:#375f68}.studio-actions select{font:inherit;font-size:16px;width:100%;min-width:0;min-height:48px;padding:11px 14px;border:1px solid #fff;border-radius:15px;background:#ffffffc9;color:#254d58;box-shadow:inset 0 1px 0 #fff}.studio-actions select:focus-visible{outline:2px solid #168773;outline-offset:2px}

/* Small translucent countdown and an illustrated white resume card. */
.illustrated-dashboard .greeting-row .candidate-pill{font-size:1rem;font-weight:650;letter-spacing:-.3px;padding:8px 11px;background:#ffffff26;color:#fff;border:1px solid #ffffff70;border-radius:16px;box-shadow:inset 0 1px 1px #ffffffa8,inset 0 -1px 0 #ffffff26,0 4px 12px #08667514;backdrop-filter:blur(14px) saturate(155%)!important;-webkit-backdrop-filter:blur(14px) saturate(155%)!important}
.illustrated-dashboard .dashboard-resume{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:8px 12px;background:#fff!important;border:1px solid #e1e9ee;border-left:4px solid #42aaae;border-radius:23px;padding:20px;box-shadow:0 10px 26px #315c7612,0 3px 0 -1px #e6f2f1;color:#274955}
.dashboard-resume .resume-illustration{grid-column:2;grid-row:1/4;align-self:center;justify-self:center;width:88px;height:100px;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(0 7px 5px #24465820)}
.dashboard-resume .resume-message{grid-column:1;color:#57868c;font-size:.75rem}.dashboard-resume .resume-title{grid-column:1;display:flex;align-items:center;gap:8px;border:0;padding:0}.dashboard-resume .resume-title>svg{display:none}.dashboard-resume .resume-title strong{font-size:1.05rem;line-height:1.3;color:#274955}.dashboard-resume .resume-title b{display:none}.dashboard-resume>small{grid-column:1;color:#697d86;font-size:.75rem}.dashboard-resume .resume-track{grid-column:1/-1;background:#e6f0f0;margin-top:5px;height:5px}.dashboard-resume .resume-track i{background:#42aaae}
@media(prefers-reduced-transparency:reduce){.illustrated-dashboard .greeting-row .candidate-pill{background:#187e90;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
/* Revision: shared glass controls and editorial reading surfaces */
.revision-selectors{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;margin:20px 0}.revision-selectors label{display:grid;gap:8px;min-width:0;font-size:.875rem;font-weight:650;color:#416376}.revision-selectors select,.revision-toolbar select{width:100%;min-width:0;min-height:52px;border:1px solid #ffffffcf!important;border-radius:17px!important;background:linear-gradient(120deg,#ffffffed,#ffffff70)!important;box-shadow:0 5px 18px #28485e08,inset 0 1px 0 #fff;color:#203d4c!important;padding:12px 30px 12px 12px!important;font-size:1rem;backdrop-filter:blur(16px)}.revision-selectors select:focus-visible,.revision-toolbar select:focus-visible{outline:3px solid #219888;outline-offset:3px}.studio-header .revision-selectors{margin-bottom:0}.library-header{position:relative;isolation:isolate;overflow:hidden;padding-right:100px!important;background:radial-gradient(ellipse at 95% 0,var(--subject-tint),transparent 70%),linear-gradient(130deg,#e9fbf5,#eff7ff)!important}.library-header h1{font-size:clamp(1.8rem,6vw,2.8rem)!important;letter-spacing:-.045em}.library-header p{font-size:.95rem!important}.library-art{position:absolute!important;right:-8px;bottom:8px;width:115px!important;height:125px!important;transform:rotate(-9deg);filter:drop-shadow(0 10px 12px #283a4b18)}.revision-toolbar{display:block!important;margin:12px 0!important}.revision-toolbar label{font-size:.875rem!important}.revision-toolbar select{background:#f5fafc!important;border:1px solid #e4edf2!important}main:has(.library-header) .chips{gap:8px!important;padding:8px 0 12px!important}main:has(.library-header) .chips .chip{min-height:44px!important;border-radius:16px!important;background:#f7fafc!important;box-shadow:none!important;border:1px solid #e8edf3!important;font-size:.9rem!important;padding:10px 14px!important;color:#536575!important}main:has(.library-header) .chips .chip.active{background:linear-gradient(120deg,#d1f5e8,#d5effc)!important;border-color:#bfe5dc!important;color:#177d70!important;box-shadow:inset 0 1px 0 #fff!important}.revision-path{font-size:.85rem!important;color:#6b7c88!important;margin:12px 0!important}.curriculum-note{padding:16px!important;background:#f6fafb!important;border:1px solid #e4edf1!important;border-radius:20px!important;margin:16px 0 28px!important}.curriculum-note summary{font-size:.9rem;font-weight:600;color:#4e6573;cursor:pointer}.curriculum-note p{font-size:.9rem!important;line-height:1.6!important}.curriculum-note .row{margin-top:15px}.chapter-group>h2{font-size:1.2rem!important;margin:25px 0 16px!important}.lesson-card{position:relative;padding:22px!important;border-radius:26px!important;background:radial-gradient(ellipse at top right,var(--subject-tint),transparent 65%),#fff!important;border:1px solid #e7edf3!important;box-shadow:0 12px 30px #324e6908!important;text-align:left!important}.lesson-card .row{min-height:45px;padding-right:72px}.lesson-card .lesson-thumb{position:absolute!important;right:14px;top:-10px;width:78px!important;height:88px!important;transform:rotate(-7deg)}.lesson-card h3{font-size:1.14rem!important;line-height:1.4!important;margin:12px 0!important;max-width:95%}.lesson-card p{font-size:.9rem!important;line-height:1.6!important}.lesson-card .read-link{display:inline-block;margin-top:12px!important;font-size:.9rem!important;color:var(--subject-color)!important}.topic-grid{gap:24px!important}.lesson-level{font-size:.8rem!important}.lesson-status{background:#ffffffb8!important;color:var(--subject-color)!important;border:1px solid #fff;border-radius:12px!important}
.notebook-reader{max-width:850px;margin-inline:auto}.notebook-reader>header{position:relative!important;padding:26px 22px!important;border-radius:28px!important;border:1px solid #e7edf2!important;background:linear-gradient(90deg,transparent 29px,#f4cfda80 30px,transparent 31px),repeating-linear-gradient(0deg,transparent 0 25px,#c7dcea55 26px,transparent 27px),#fff!important;box-shadow:0 15px 40px #34496308!important}.notebook-reader>header h1{font-size:clamp(1.65rem,6vw,2.5rem)!important;line-height:1.2!important;padding-right:45px!important;letter-spacing:-.035em!important}.notebook-reader>header .eyebrow{font-size:.75rem!important;color:var(--subject-color)!important;max-width:75%}.notebook-reader .fiche-art{position:absolute!important;right:0;top:-20px;width:85px!important;height:95px!important;transform:rotate(-8deg)}.notebook-reader .lead{font-size:.95rem!important;color:#657787!important}.notebook-level{font-size:.8rem!important}.notebook-reader .fiche-tabs{display:flex!important;padding:5px!important;margin:20px 0!important;border-radius:19px!important;background:#eef4f7b3!important;border:1px solid #fff!important;backdrop-filter:blur(18px);gap:5px}.notebook-reader .fiche-tabs button{flex:1;min-height:45px;border:0!important;background:transparent!important;border-radius:14px!important;font-size:.95rem!important;box-shadow:none!important;color:#657787!important}.notebook-reader .fiche-tabs button.active{background:#fff!important;color:var(--subject-color)!important;box-shadow:0 4px 14px #32465d0c!important}.fiche-outline{display:grid;gap:8px;margin-bottom:25px;padding:18px;background:linear-gradient(130deg,#e9faf5,#edf7ff);border-radius:22px;border:1px solid #fff}.fiche-outline>strong{font-size:.85rem;color:#4d6b79;margin-bottom:4px}.fiche-outline button{display:flex;align-items:center;gap:10px;text-align:left;background:#ffffffb0;border:1px solid #fff;border-radius:13px;padding:10px;font-size:.9rem;line-height:1.4;color:#304c5e;box-shadow:none}.fiche-outline button span{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:9px;color:var(--subject-color);background:#fff;font-size:.8rem;font-weight:700}.notebook-reader .fiche-content>section{padding:22px!important;margin:0 0 22px!important;border-radius:25px!important;border:1px solid #e8edf3!important;box-shadow:0 12px 32px #2e47590a!important;background:#fff!important}.notebook-reader .fiche-content>section.course-section{padding:0!important;border:0!important;box-shadow:none!important}.fiche-content h2{font-size:1.35rem!important;line-height:1.3!important;letter-spacing:-.025em!important;margin:6px 0 20px!important}.fiche-content .section-index{font-size:.72rem!important;font-weight:750!important;letter-spacing:.1em!important;color:var(--subject-color)!important}.notebook-reader .course-paragraph{position:relative;padding:22px!important;border:1px solid #e5edf3!important;border-radius:24px;margin:0 0 18px!important;background:#fff;box-shadow:0 8px 28px #233d5007;scroll-margin-top:20px}.course-paragraph .notion-number{display:inline-grid;place-items:center;width:33px;height:33px;border-radius:12px;background:var(--subject-tint);color:var(--subject-color);font-size:.8rem;font-weight:750}.course-paragraph h3{font-size:1.15rem!important;line-height:1.35!important;margin:13px 0!important}.notebook-reader .course-paragraph p{font-size:1rem!important;line-height:1.7!important;margin:0!important}.notion-essential{padding:14px 16px!important;border-radius:15px;background:linear-gradient(115deg,var(--subject-tint),#ffffff);color:#243f50!important;font-weight:550}.notion-details{display:grid;gap:12px;margin-top:17px}.notebook-reader .key-term{color:var(--subject-color);font-weight:700;background:linear-gradient(transparent 60%,var(--subject-tint) 60%);padding-bottom:1px}.lexicon-section dl{display:grid;gap:10px!important}.lexicon-section dl>div{padding:13px!important;background:#f4f9fc;border-radius:15px;border:0!important}.lexicon-section dt{font-size:.95rem!important;margin-bottom:5px}.lexicon-section mark{background:transparent!important;color:var(--subject-color)!important;font-weight:750}.lexicon-section dd{margin:0!important;font-size:.95rem!important;line-height:1.6!important}.notebook-reader .fiche-content>.fiche-example{background:linear-gradient(135deg,#e4f8f0,#f2fbff)!important;border-color:#d8eee8!important}.worked-example{padding:14px 0}.worked-example+ .worked-example{border-top:1px solid #c5e2dd}.worked-example>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:750;color:#248778}.worked-example p{font-size:1rem!important;line-height:1.7!important}.notebook-reader .fiche-content>.fiche-errors{background:linear-gradient(130deg,#fff0ec,#fff8f2)!important;border-color:#f4dfd8!important}.fiche-errors li{padding:10px 0;font-size:1rem;line-height:1.65}.notebook-reader .fiche-content>.fiche-tip{background:linear-gradient(130deg,#e9f4ff,#f7faff)!important;border-color:#dceaf9!important}.fiche-tip p,.recall-section p{font-size:1rem!important;line-height:1.7!important}.recall-section details{padding:14px;background:#f1faf6;border-radius:14px}.recall-section summary{font-size:.95rem;color:#167e6f}.notebook-reader .primary{min-height:54px;border:1px solid #fff!important;border-radius:18px!important;background:linear-gradient(120deg,#c6f3e2,#bde7fc)!important;color:#14576b!important;box-shadow:0 8px 22px #49a5a51a!important;font-size:1rem!important}.notebook-reader .fine{font-size:.8rem!important;line-height:1.6!important}.fiche-source{padding:18px;border:1px solid #e5edf2;border-radius:18px;font-size:.9rem;color:#627683}.fiche-source summary{font-size:.9rem}.notebook-reader .study-test,.notebook-reader .study-result{padding:22px;background:#fff;border:1px solid #e3ecf2;border-radius:24px}.notebook-reader .study-choices button{border-radius:17px!important;box-shadow:none!important;border:1px solid #dce7ec!important;background:#f8fcfd!important}.notebook-reader .study-choices button.selected{background:#ddf6ed!important;border-color:#2c9b83!important}
@media(max-width:380px){.revision-selectors{grid-template-columns:1fr;gap:12px}.notebook-reader .course-paragraph,.notebook-reader .fiche-content>section{padding:18px!important}}
.account-entry{max-width:640px;margin-inline:auto}.account-entry-hero{position:relative;overflow:hidden;padding:30px 24px;border-radius:30px;background:radial-gradient(ellipse at 95% 5%,#b4efdf,transparent 65%),linear-gradient(130deg,#e1f9f0,#dff0ff);border:1px solid #fff;box-shadow:0 16px 40px #309b9412}.account-entry-hero img{border-radius:20px;box-shadow:0 10px 24px #118b9830;margin-bottom:16px}.account-entry-hero h1{font-size:clamp(1.8rem,7vw,2.8rem);line-height:1.13;letter-spacing:-.045em;margin:10px 0 14px}.account-entry-hero p{color:#436879;font-size:1rem}.account-auth-card{background:#fff;border:1px solid #e7edf3;border-radius:27px;padding:24px;margin:22px 0;box-shadow:0 12px 35px #33475d08}.account-auth-card h2{font-size:1.3rem;margin:0 0 20px}.account-auth-card .primary{background:linear-gradient(110deg,#bdf0dd,#c1e9ff)!important;color:#125b69!important;box-shadow:0 8px 20px #5fb6ab1a!important;border:1px solid #fff!important;border-radius:17px!important;min-height:52px}.account-auth-card .secondary{border-radius:17px!important;min-height:52px;margin-top:12px;background:#f7fafc!important;border:1px solid #e2ebf1!important;box-shadow:none!important;color:#37586c!important}.account-device-link{display:flex;gap:14px;align-items:center;width:100%;text-align:left;border:1px solid #e4edf3;border-radius:22px;padding:20px;background:linear-gradient(120deg,#f1faff,#f0faf6);color:#2e5966}.account-device-link>span:first-child{color:#1d9c89}.account-device-link strong{font-size:.95rem}.account-device-link small{display:block;font-size:.8rem;color:#6c7c88;margin-top:5px;line-height:1.5}.account-auth-tabs{display:flex;gap:6px;padding:5px;background:#f0f5f8;border-radius:17px;margin:20px 0}.account-auth-tabs button{flex:1;border:0;border-radius:12px;background:transparent;padding:12px 6px;font-size:.875rem;color:#6b7e8b}.account-auth-tabs button[aria-pressed=true]{background:white;color:#178876;box-shadow:0 3px 10px #294d5710}.auth-pending{font-size:.875rem;line-height:1.6;color:#536b7b;padding:14px;border-radius:15px;background:#eef7fc}.account-auth-card fieldset{border:0;padding:0;margin:20px 0 0;display:grid;gap:16px;min-width:0}.account-auth-card label{display:grid;gap:8px;font-size:.875rem;font-weight:600;color:#4d6170}.account-auth-card input{min-width:0;width:100%;box-sizing:border-box;border:1px solid #e0e9ef;border-radius:14px;padding:14px;font-size:1rem;background:#fafcfd}.account-auth-card fieldset:disabled{opacity:.6}.account-auth-card .account-note{text-align:center;margin-bottom:0}
/* One subject, notion tags, then a concise list of sheets. */
.subject-library .library-header{display:grid!important;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:12px;overflow:visible!important;padding:24px!important;min-height:150px!important}.subject-library .library-header>div{min-width:0}.subject-library .library-header h1{font-size:clamp(1.55rem,5.8vw,2.5rem)!important;overflow-wrap:anywhere;margin:10px 0!important}.subject-library .library-header .library-art{position:static!important;width:92px!important;height:106px!important;max-width:100%!important;object-fit:contain!important;transform:rotate(-5deg)!important;margin:0!important}.subject-library .library-header .eyebrow{font-size:.72rem!important;letter-spacing:.1em!important}.subject-library .library-header p{margin:8px 0 0!important}.library-level-filter{margin:16px 0 20px;border:1px solid #e3edf2;border-radius:17px;background:#f7fbfc;padding:14px 16px}.library-level-filter summary{cursor:pointer;font-size:.9rem;font-weight:600;color:#4c6a79;min-height:22px}.revision-selectors{grid-template-columns:1fr!important}.revision-selectors select{background:#ffffffd9!important;box-shadow:0 3px 15px #24496006!important;border:1px solid #dce9ef!important;padding-right:36px!important;white-space:normal;font-weight:550!important}.cycle-explainer{font-size:.8rem!important;line-height:1.55!important;color:#577382!important;margin:12px 0 0!important}.cycle-explainer span{display:block;margin-top:3px;font-weight:500}.notion-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}.notion-tags button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:10px 13px;border:1px solid #e1eaf0;background:#fff;border-radius:15px;color:#526879;font-size:.85rem;line-height:1.35;box-shadow:0 3px 10px #2a425404;text-align:left}.notion-tags button span{font-size:.75rem;opacity:.75}.notion-tags button[aria-pressed=true]{background:linear-gradient(120deg,var(--subject-tint),#fff);border-color:var(--subject-color);color:var(--subject-color);font-weight:650;box-shadow:inset 0 1px 0 #fff}.notion-tags button:focus-visible,.revision-sheet:focus-visible{outline:3px solid var(--subject-color);outline-offset:3px}.library-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:0 0 15px}.library-results-heading h2{font-size:1.2rem;line-height:1.3;margin:0;color:#283e4b}.library-results-heading>span{font-size:.8rem;color:#6f8290;flex:none}.revision-sheet-list{display:grid;gap:14px}.revision-sheet{display:flex;flex-direction:column;gap:15px;width:100%;padding:20px;border:1px solid #e3ebf1;border-radius:23px;background:radial-gradient(ellipse at 100% 0,var(--subject-tint),transparent 75%),#fff;text-align:left;box-shadow:0 7px 22px #3a526608;color:#273f50;transition:transform .18s,box-shadow .18s}.revision-sheet:active{transform:scale(.985)}.sheet-meta,.sheet-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.78rem;line-height:1.4;color:#6b7e8b}.sheet-meta>span:first-child{color:var(--subject-color);font-weight:650}.sheet-meta>span:last-child{white-space:nowrap}.revision-sheet>strong{font-size:1.06rem;line-height:1.45;font-weight:650}.sheet-bottom{padding-top:12px;border-top:1px solid #dfe9ee85}.sheet-open{font-weight:650;color:var(--subject-color);flex:none;font-size:.8rem}.subject-library .coverage-details{margin-top:28px;font-size:.85rem;color:#607784}.subject-library .coverage-details summary{font-size:.85rem}.notebook-reader>header{display:grid!important;grid-template-columns:minmax(0,1fr) 80px;column-gap:12px;overflow:visible!important}.notebook-reader>header .fiche-art{position:static!important;grid-column:2;grid-row:1/5;align-self:center;width:80px!important;height:100px!important;object-fit:contain!important;transform:rotate(-5deg)!important;margin:0!important}.notebook-reader>header>*:not(.fiche-art){grid-column:1}.notebook-reader>header h1{padding-right:0!important;font-size:clamp(1.45rem,5.4vw,2.4rem)!important}.notebook-reader>header .eyebrow{max-width:100%!important}.notebook-reader>header .lead{font-size:.8rem!important}.revision-subject-card{overflow:visible!important}.revision-subject-card .subject-illustration{object-fit:contain!important;right:12px!important}.revision-subject-list{overflow:visible!important;padding-right:4px!important;padding-left:4px!important}
@media(min-width:700px){.revision-selectors{grid-template-columns:1.3fr 1fr!important}.revision-sheet-list{grid-template-columns:repeat(2,minmax(0,1fr))}.subject-library .library-header{grid-template-columns:minmax(0,1fr) 125px}.subject-library .library-header .library-art{width:120px!important;height:130px!important}}
@media(prefers-reduced-motion:reduce){.revision-sheet{transition:none}}

/* V34: readable revision surfaces and consistent subject hierarchy. */
#main .illustrated-dashboard .greeting-row .candidate-pill{font-weight:850!important;letter-spacing:-.03em}
#main>.link{display:inline-flex;align-items:center;min-height:44px;margin:0 0 14px;padding:8px 2px;font-size:.92rem;color:#426579!important;font-weight:650;box-shadow:none!important}
#main .notion-tags{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:5px 2px 14px;gap:8px;scrollbar-width:thin;scroll-snap-type:x proximity}
#main .notion-tags button{flex:0 0 auto;white-space:nowrap;padding:11px 14px;border-radius:18px;background:#f2f7f9;color:#385360;box-shadow:none;scroll-snap-align:start}
#main .notion-tags button[aria-pressed=true]{background:var(--subject-color);color:white;border-color:transparent}
#main .notion-tags button span{color:inherit;opacity:.85}
#main .library-level-filter{margin:16px 0 12px;padding:14px 18px;background:#edf7f6;border-radius:22px;color:#285f5a}
#main .revision-selectors select{background:#fff;color:#233b47;font-weight:650;border:1px solid #a9c9c8;border-radius:16px;min-height:48px;padding:12px}
#main .revision-sheet{padding:20px;text-align:left;border:1px solid color-mix(in srgb,var(--subject-color) 18%,white);background:linear-gradient(130deg,color-mix(in srgb,var(--subject-tint) 65%,white),#fff 78%);box-shadow:0 8px 24px #24495508;border-radius:26px}
#main .sheet-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
#main .theme-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--subject-color);color:white;box-shadow:0 5px 14px color-mix(in srgb,var(--subject-color) 20%,transparent)}
#main .theme-icon svg{width:25px;height:25px}
#main .theme-badge{padding:7px 12px;border-radius:999px;background:#ffffffb8;color:var(--subject-color);font-size:.8rem;font-weight:750;max-width:75%}
#main .revision-sheet>strong{font-weight:750;font-size:1.12rem;line-height:1.4;display:block}
#main .sheet-bottom{margin-top:19px;padding-top:15px;border-color:#ffffffb0;gap:12px;font-size:.8rem}
#main .sheet-open{font-weight:750;color:var(--subject-color)}
#main .notebook-reader>header{background:radial-gradient(ellipse at 90% 0%,var(--subject-tint),transparent 75%),linear-gradient(120deg,#f6fafb,#fff);padding:24px;border-radius:28px;border:1px solid #e0e9ed;gap:12px}
#main .notebook-reader>header h1{font-weight:800;line-height:1.15;letter-spacing:-.04em}
#main .notebook-reader>header .lead{font-weight:700;color:var(--subject-color);margin:0}
#main .notebook-reader .fiche-art{object-fit:contain;overflow:visible}
#main .notebook-reader .fiche-tabs{margin:20px 0;background:#e8f0f2;padding:5px;border-radius:20px}
#main .notebook-reader .fiche-tabs button{color:#385360;font-weight:700}
#main .notebook-reader .fiche-tabs .active{background:var(--subject-color);color:#fff;box-shadow:0 4px 12px #203b4818}
#main .notebook-reader .fiche-content{display:grid;gap:24px}
#main .notebook-reader .fiche-content>section{margin:0;padding:22px;border-radius:26px}
#main .notebook-reader .course-section{padding:0!important;background:transparent;border:0;box-shadow:none}
#main .notebook-reader .fiche-outline{padding:18px;margin:0;background:#eef6f7;border-radius:22px}
#main .notebook-reader .fiche-outline button{padding:12px;color:#304f5c;font-weight:600}
#main .notebook-reader .course-paragraph{padding:22px;margin:16px 0 0;background:linear-gradient(145deg,#fff,var(--subject-tint));border:1px solid #e0e8ed;border-radius:24px}
#main .notebook-reader h2,#main .notebook-reader h3{font-weight:800;letter-spacing:-.025em;color:#213744}
#main .notebook-reader .notion-essential{background:#ffffffba;border-left:3px solid var(--subject-color);font-weight:650;padding:16px;line-height:1.65;color:#263f4c;border-radius:4px 16px 16px 4px}
#main .notebook-reader .key-term{font-weight:800;color:var(--subject-color);background:linear-gradient(transparent 64%,var(--subject-tint) 64%)}
#main .notebook-reader .notion-details p{margin:14px 0;line-height:1.7}
#main .notebook-reader .lexicon-section{background:#f1f6fa}
#main .notebook-reader .lexicon-section dl>div{background:#fff;padding:16px;border-radius:16px;border-left:3px solid var(--subject-color)}
#main .notebook-reader .lexicon-section dt{margin-bottom:7px;font-weight:800}
#main .notebook-reader .lexicon-section dd{margin:0;line-height:1.6}
#main .notebook-reader .worked-example{padding:18px!important;background:#ffffffb5;border:1px solid #c4dfd7;border-radius:18px}
#main .notebook-reader .worked-example p{margin:12px 0 0;line-height:1.7}
#main .notebook-reader .fiche-errors{background:#fff0e7}
#main .notebook-reader .fiche-tip{background:#e8f1ff}
#main .notebook-reader .section-index{font-weight:800;padding:7px 11px;letter-spacing:.08em;margin:0 0 16px;font-size:.72rem}
#main .notebook-reader .primary{background:linear-gradient(115deg,#126f69,#146e95)!important;color:#fff!important;font-weight:800!important;box-shadow:0 8px 20px #146e9526!important;border:0!important;min-height:52px;padding:16px!important;border-radius:18px!important}
#main .notebook-reader .recall-section summary{background:#d7eee7;color:#155a50;padding:15px;border-radius:14px;font-weight:750}
#main .notebook-reader .fine{margin:0;line-height:1.6;color:#465f6b}
#main .oral-guide{background:#edf7f8;border-radius:24px;padding:22px;margin:24px 0;line-height:1.6}
#main .oral-guide>div{display:flex;gap:10px}
#main .oral-guide button{display:flex;align-items:center;gap:8px;padding:12px;background:#176b72;color:#fff;border-radius:16px;font-weight:700}
#main .oral-guide svg{width:23px;height:23px}

/* V35: prepare the competition, not a school-year catalogue. */
#main .exam-switch{display:flex;gap:8px;margin-top:24px;padding:5px;background:#ffffff70;border:1px solid #fff;border-radius:22px;backdrop-filter:blur(16px)}
#main .exam-switch button{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;min-height:48px;border:0;border-radius:17px;background:transparent;color:#325967;font-weight:750;font-size:1rem;padding:12px}
#main .exam-switch button[aria-pressed=true]{background:#167b78;color:#fff;box-shadow:0 4px 14px #14747325}
#main .exam-switch svg{width:22px;height:22px}
#main .exam-subject-group{margin-top:32px}
#main .exam-subject-group>h2{font-size:1.4rem;font-weight:800;margin:0 0 8px}
#main .exam-subject-group>p{font-size:.95rem;line-height:1.6;color:#506a76;margin:0 0 28px}
#main .exam-domain{margin-top:30px}
#main .domain-label{font-size:.85rem;font-weight:750;color:#365c68;line-height:1.5;margin:0 0 30px;padding-left:12px;border-left:3px solid #76cabb}
#main .exam-subject-group .revision-subject-list{margin-top:32px}
#main .crpe-programme,#main .crpe-subject-guide{padding:18px 20px;margin:22px 0;border-radius:23px;background:#edf7f8;border:1px solid #d3e6e8;color:#314f5c;line-height:1.65}
#main .crpe-subject-guide summary,#main .crpe-programme summary{font-size:1rem;font-weight:750;color:#215f66;cursor:pointer}
#main .crpe-subject-guide h2{font-size:1.2rem}
#main .crpe-subject-guide li{margin:9px 0}
#main .crpe-programme a,#main .crpe-subject-guide a{color:#14677c;text-decoration:underline;text-underline-offset:3px;font-weight:650}
#main .crpe-subject-guide .fine{font-size:.85rem;color:#4b6370}
/* V36 — lecture active, méthode et exercices originaux. */
#main .notebook-reader .reader-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}
#main .notebook-reader .reader-shortcuts button{width:auto;min-height:44px;padding:10px 16px;background:var(--subject-color);color:#fff;border:0;border-radius:22px;font-weight:750}
#main .notebook-reader .deep-method{background:linear-gradient(125deg,var(--subject-tint),#f1f9ff);border:1px solid #ffffff;border-radius:26px;padding:24px;box-shadow:0 12px 30px #24496009}
#main .notebook-reader .deep-method ol,#main .notebook-reader .deep-worked ol{counter-reset:method;list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}
#main .notebook-reader .deep-method li,#main .notebook-reader .deep-worked li{counter-increment:method;position:relative;padding:12px 14px 12px 52px;background:#ffffffb8;border-radius:16px;line-height:1.65;color:#263f4c}
#main .notebook-reader .deep-method li:before,#main .notebook-reader .deep-worked li:before{content:counter(method);position:absolute;left:13px;top:14px;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;background:var(--subject-tint);color:var(--subject-color);font-weight:850;font-size:.82rem}
#main .notebook-reader .deep-prompt{font-weight:750;font-size:1.08rem;line-height:1.6;margin:12px 0 20px;color:#203944}
#main .notebook-reader .extra-example{margin-top:20px}
#main .notebook-reader .extra-example summary{cursor:pointer;font-weight:700;padding:14px 0;color:#235b51}
#main .notebook-reader .deep-practice{padding:24px;border-radius:26px;background:linear-gradient(140deg,#fff1df,#fff8f1 65%,#ffe8e8);border:1px solid #f0ddce;box-shadow:0 12px 30px #c3803510}
#main .notebook-reader .practice-hint{color:#655143;line-height:1.65;margin:10px 0 20px}
#main .notebook-reader .practice-card{padding:20px;border-radius:20px;background:#ffffffd9;border:1px solid #fff;margin-top:16px}
#main .notebook-reader .practice-card h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.07em;color:#93511f;margin:0 0 12px}
#main .notebook-reader .practice-card>p{font-weight:650;line-height:1.7;margin:0 0 18px}
#main .notebook-reader .practice-card summary{padding:14px 16px;min-height:48px;cursor:pointer;background:#235f57;color:#fff;border-radius:14px;font-weight:750}
#main .notebook-reader .practice-answer{margin-top:18px;overflow-wrap:anywhere}
#main .notebook-reader .practice-answer p{line-height:1.7}
#main .notebook-reader [id^="fiche-"],#main .notebook-reader [id^="notion-"]{scroll-margin-top:24px}
@media(max-width:440px){#main .notebook-reader .deep-method,#main .notebook-reader .deep-practice{padding:20px}#main .notebook-reader .practice-card{padding:16px}}
/* Chapters first, then focused lessons. Scientific visuals retain readable labels. */
#main .chapter-intro{color:#536775;margin:-8px 0 22px;font-size:16px}
#main .chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#main .chapter-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:15px;padding:24px;border:1px solid color-mix(in srgb,var(--subject-color,#15887c) 20%,white);border-radius:26px;background:linear-gradient(130deg,#fff,var(--subject-tint,#edf9f5));color:#203b4b;box-shadow:0 8px 22px #24425308;min-width:0}
#main .chapter-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #24425314}
#main .chapter-top{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:750;letter-spacing:.09em;color:var(--subject-color,#147e75)}
#main .chapter-card strong{font-size:21px;line-height:1.3}
#main .chapter-preview{font-size:14px;line-height:1.5;color:#526675}
#main .chapter-bottom{display:flex;justify-content:space-between;width:100%;margin-top:auto;padding-top:12px;border-top:1px solid #31475415;color:var(--subject-color,#147e75);font-weight:700}
#main .chapter-back{margin:24px 0 4px;padding:12px 17px;border:1px solid #a6ccc8;border-radius:15px;background:#eff8f6;color:#176c66;font-weight:700}
#main .notebook-reader .teaching-figure{margin:22px 0 28px;padding:20px;border:1px solid #b7d8da;border-radius:22px;background:#f0f9f8;color:#178478;overflow:hidden}
#main .teaching-figure svg{display:block;width:100%;max-width:430px;height:auto;margin:0 auto 14px}
#main .notebook-reader .teaching-figure figcaption{font-size:14px;line-height:1.6;color:#385360}
#main .teaching-table .table-scroll{overflow-x:auto;margin:14px -4px;padding:4px}
#main .teaching-table table{border-collapse:collapse;width:100%;font-size:14px;text-align:left;line-height:1.45}
#main .teaching-table th,#main .teaching-table td{padding:12px;border:1px solid #bed9d8;vertical-align:top;color:#234451}
#main .teaching-table thead th{background:#d5eeea;font-weight:750}
#main .teaching-table tbody th{background:#e5f3ef;font-weight:700}
#main .teaching-table tbody td{background:#fff}
#main .chapter-card:focus-visible,#main .chapter-back:focus-visible{outline:3px solid #168e80;outline-offset:4px}
@media(max-width:600px){#main .chapter-grid{grid-template-columns:1fr;gap:14px}#main .chapter-card{padding:22px}#main .notebook-reader .teaching-figure{padding:12px}#main .teaching-table th,#main .teaching-table td{padding:9px;font-size:13px}}

/* v41: a quiet reading surface and short, predictable revision navigation. */
#main .lesson-reader{max-width:780px;margin:0 auto;background:transparent;box-shadow:none;border:0;padding:0}
#main .lesson-reader>header{position:static;background:none;border:0;box-shadow:none;border-radius:0;padding:12px 0 22px;margin:0;min-height:0}
#main .lesson-reader>header:before,#main .lesson-reader>header:after{display:none}
#main .lesson-reader h1{font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.2;margin:0;max-width:none}
#main .lesson-reader h2{font-size:1.25rem;line-height:1.4;margin:0 0 12px}
#main .lesson-reader p,#main .lesson-reader li{font-size:1.05rem;line-height:1.8}
#main .lesson-reader p{margin:12px 0}
#main .lesson-reader .fiche-content{padding:0;display:block}
#main .lesson-reader .course-section{padding:0;margin:0;background:none;border:0;box-shadow:none}
#main .lesson-reader .course-paragraph{padding:0;margin:24px 0 30px;background:none;border:0;box-shadow:none;border-radius:0}
#main .lesson-reader .course-paragraph p{font-weight:400;background:none;border:0;padding:0}
#main .lesson-reader .teaching-figure{margin:24px 0 30px;padding:16px;max-width:100%;box-sizing:border-box;overflow:visible}
#main .lesson-reader .teaching-figure svg{max-width:100%;height:auto}
#main .lesson-reader .fiche-example{padding:20px;margin:30px 0;background:#f0f8fb;border:0;border-left:4px solid #237fa8;border-radius:8px;box-shadow:none}
#main .lesson-reader .deep-worked{padding:0;margin:0;background:none;border:0;box-shadow:none}
#main .lesson-reader .deep-worked ol{padding-left:24px;display:block}
#main .lesson-reader .deep-worked li{display:list-item;padding:0 0 14px 4px;margin:0;background:none;border:0;box-shadow:none}
#main .lesson-reader .deep-worked li:before{display:none}
#main .lesson-reader .fiche-errors{margin:24px 0;padding:18px;background:#fff8ed;border:0;border-radius:8px;box-shadow:none}
#main .lesson-reader .fiche-errors ul{padding-left:22px;margin:0}
#main .lesson-reader .deep-practice{margin:32px 0;padding:0;background:none;border:0;box-shadow:none}
#main .lesson-reader .practice-card{margin:22px 0;padding:22px 0 0;background:none;border:0;border-top:1px solid #d8e3e7;border-radius:0;box-shadow:none}
#main .lesson-reader .practice-card h3{font-size:1.05rem;letter-spacing:0;text-transform:none;margin:0}
#main .lesson-reader .practice-answer{padding:10px 16px;border:0;background:#f2f8f6}
#main .lesson-reader .practice-card summary{padding:14px 18px;min-height:48px;background:#22665d;color:white;border-radius:10px;font-size:1rem}
#main .lesson-reader .lexicon-section,#main .lesson-reader .fiche-source{margin:24px 0;padding:16px;background:none;border:1px solid #d8e3e7;box-shadow:none;border-radius:10px}
#main .compact-library-header{padding:12px 0 20px;background:none;border:0;box-shadow:none}
#main .compact-library-header h1{font-size:clamp(1.7rem,5vw,2.3rem);margin:0}
#main .compact-library-header p{margin:8px 0;color:#526570}
#main .compact-library .chapter-card{display:grid;grid-template-columns:42px 1fr;gap:5px 14px;align-items:center;padding:20px;min-height:0;border-radius:18px}
#main .compact-library .chapter-card>.theme-icon{grid-row:span 2;width:40px;height:40px}
#main .compact-library .chapter-card strong{font-size:1.15rem;margin:0}
#main .compact-library .chapter-bottom{font-size:.95rem;margin:0;padding:0;border:0}
#main .compact-library .chapter-grid{gap:14px;margin-bottom:28px}
#main .compact-library .revision-sheet{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:18px;min-height:0;border-radius:14px}
#main .compact-library .revision-sheet strong{font-size:1.05rem;margin:0}
#main .compact-library .sheet-open{font-size:.85rem}
.lesson-list-number{color:#637780;font-size:.9rem}
.math-reading-cards{display:grid;gap:12px;margin:16px 0}
.math-reading-card{background:white;padding:12px;border-radius:8px}
.math-reading-card p{display:flex;justify-content:space-between;gap:16px;margin:6px 0!important;overflow-wrap:anywhere}
.math-reading-card p span:first-child{color:#526570;flex:1}
.math-reading-card p strong{flex:1;text-align:right}
@media(max-width:480px){#main .compact-library .revision-sheet{grid-template-columns:22px 1fr}.compact-library .sheet-open{grid-column:2}#main .lesson-reader p,#main .lesson-reader li{font-size:1rem}#main .lesson-reader .teaching-figure{padding:12px}}

#main .lesson-reader .deep-method{margin:28px 0;padding:18px;background:#f0f8fb;border:0;border-radius:8px;box-shadow:none}
#main .lesson-reader .deep-method ol{padding-left:24px}
#main .lesson-reader .deep-method li{display:list-item;padding:0 0 10px;margin:0;background:none;border:0}
#main .lesson-reader .deep-method li:before{display:none}
#main .documented-source li{font-size:1rem}
@media(max-width:600px){
 #main .documented-reader .table-scroll{overflow:visible}
 #main .documented-reader table{display:block;width:100%;min-width:0}
 #main .documented-reader thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 #main .documented-reader tbody{display:block}
 #main .documented-reader tr{display:block;margin:14px 0;border:1px solid #cadfe1;border-radius:8px;overflow:hidden;background:white}
 #main .documented-reader th[scope=row]{display:block;padding:12px;border:0;background:#dcefed;font-size:1rem}
 #main .documented-reader td{display:block;min-width:0;padding:12px;border:0;border-top:1px solid #e5eeee;font-size:1rem}
 #main .documented-reader td:before{content:attr(data-label);display:block;margin-bottom:4px;font-size:.9rem;font-weight:600;color:#536974}
}

/* Revision essentials remain visible; detailed explanations are optional. */
#main .revision-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
#main .revision-key{padding:18px;border-radius:12px;border-left:5px solid #168477;background:#edf8f5}
#main .revision-key:nth-child(3){background:#fff4e6;border-color:#c76b12}
#main .revision-key h2{font-size:1.1rem;margin:0 0 12px}
#main .lesson-reader .key-term{font-weight:750;color:#154e61;background:#fff0ad;padding:0 2px;border-radius:3px}
#main .full-explanation{margin:24px 0;border:1px solid #cddfe4;border-radius:12px;padding:16px}
#main .full-explanation>summary{font-weight:700;color:#1a6572;cursor:pointer}
#main .exercise-rating{padding:14px 0;display:flex;flex-wrap:wrap;gap:8px}
#main .exercise-rating p{width:100%;margin:0 0 5px;font-size:.95rem}
#main .exercise-rating button{padding:10px 14px;min-height:44px;font-size:.9rem}
#main .exercise-rating button.selected{background:#216b60;color:#fff;border-color:#216b60}
#main .status-acquired{color:#156347}#main .status-part{color:#80500c}#main .status-no{color:#a63746}#main .status-open{color:#506b78}
@media(max-width:600px){#main .revision-overview{grid-template-columns:1fr}#main .documented-reader .teaching-table td{padding:12px}#main .documented-reader .teaching-table td:before{font-size:.85rem}}

/* Compact lesson list: one readable row with a trailing status. */
#main .compact-library .revision-sheet-list{display:block;background:#fff;border:1px solid #e0e7eb;border-radius:16px;overflow:hidden}
#main .compact-library .revision-sheet{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px 16px;min-height:72px;border:0;border-bottom:1px solid #e8edef;border-radius:0;background:#fff;box-shadow:none;margin:0}
#main .compact-library .revision-sheet:last-child{border-bottom:0}
#main .compact-library .revision-sheet:active{background:var(--subject-tint);transform:none}
#main .compact-library .revision-sheet strong{font-size:1rem;font-weight:650;line-height:1.4}
#main .compact-library .lesson-list-number{font-size:.85rem;color:#798a93}
#main .compact-library .sheet-open{grid-column:3;grid-row:1;white-space:nowrap;font-size:.8rem;max-width:90px;text-align:right}
#main .compact-library .sheet-open .status-open{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:#e4f4ee;color:#24715b;font-size:1rem}
@media(min-width:700px){#main .compact-library .revision-sheet-list{max-width:860px}}
/* Small concept maps keep the key distinctions readable on a phone. */
.science-map-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.science-map-item{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #cae4e4;background:#f3fbfa;border-radius:14px}.science-map-item strong{color:#126c73;font-size:1rem}.science-map-item p{margin:6px 0 0;font-size:.95rem;line-height:1.5}.science-map-number{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#d9f0ed;color:#17636d;text-align:center;font-size:.8rem;line-height:26px;font-weight:700}.science-sequence{grid-template-columns:1fr}.science-sequence .science-map-item{position:relative}.science-sequence .science-map-item:not(:last-child):after{content:'↓';position:absolute;bottom:-19px;left:26px;color:#17636d;z-index:1}.science-sequence{gap:22px}@media(max-width:600px){.science-map-items{grid-template-columns:1fr}.science-map-item{padding:14px}.science-map-item p{font-size:1rem}}

.genetic-pilot .fiche-content{max-width:960px;margin:auto}.genetic-pilot h2{font-size:1.15rem;margin:0 0 .7rem}.genetic-pilot p{font-size:1rem;line-height:1.65}.pilot-question{background:#e8f5f3;padding:1.25rem;border-radius:18px}.pilot-principles{padding-left:1.4rem;margin:1.5rem 0;line-height:1.8}.pilot-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.pilot-stages figure,.pilot-comparison figure{margin:0;text-align:center}.pilot-stages h2{font-size:1rem;color:#087f79}.pilot-stages img{width:100%;height:180px;object-fit:contain}.pilot-stages figcaption{font-size:.95rem;line-height:1.5}.pilot-stages small{display:block;margin-top:.75rem;color:#087f79}.pilot-note{color:#596b78}.pilot-retain{background:#fff0a8;padding:1.25rem;border-radius:18px;margin:1.5rem 0}.pilot-retain p{margin:.3rem 0}.pilot-retain h2{color:#087f79}.pilot-vocabulary,.pilot-traps{margin:2rem 0}.pilot-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pilot-comparison img{width:100%;height:190px;object-fit:contain}.pilot-vocabulary dl div{display:flex;gap:.5rem;margin:.6rem 0}.pilot-vocabulary dt{font-weight:700}.pilot-vocabulary dd{margin:0}.pilot-traps h3{font-size:1rem;margin:0}.pilot-traps>div{padding:1rem 0;border-bottom:1px solid #dde6e9}.pilot-traps p{margin:.5rem 0}.pilot-sources{margin:2rem 0}.pilot-sources summary{cursor:pointer;font-weight:600}.pilot-sources li{margin:.6rem 0;overflow-wrap:anywhere}@media(max-width:650px){.pilot-stages{grid-template-columns:1fr}.pilot-stages figure{padding:1rem;border:1px solid #dde6e9;border-radius:16px}.pilot-stages img{height:230px}.pilot-vocabulary dl div{display:block}.genetic-pilot .fiche-content{padding:0}.pilot-comparison img{height:160px}}
