/* Creative Classroom: a child-friendly, privacy-conscious K-12 art login theme. */
:root {
	--edu-ink:#24304a;
	--edu-muted:#64708a;
	--edu-paper:#fffdf8;
	--edu-panel:#ffffff;
	--edu-line:#dfe5f0;
	--edu-blue:#4263eb;
	--edu-purple:#845ef7;
	--edu-pink:#f06595;
	--edu-orange:#ff922b;
	--edu-green:#2f9e44;
	--edu-shadow:0 24px 70px rgba(36,48,74,.16);
}
html, body { min-height:100%; }
body { margin:0; font-family:Inter, ui-rounded, "Nunito Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body.creative-classroom-page { background:#f6f7ff; }
.creative_classroom_login { position:relative; min-height:100vh; overflow:hidden; color:var(--edu-ink); background:linear-gradient(145deg,#f7f3ff 0%,#edf8ff 48%,#fff8e8 100%); }
.edu_doodle_layer { position:fixed; inset:0; pointer-events:none; overflow:hidden; opacity:.65; }
.edu_shape { position:absolute; display:block; }
.edu_shape_circle { width:210px; height:210px; border:28px solid rgba(132,94,247,.13); border-radius:50%; left:-95px; top:18%; }
.edu_shape_square { width:150px; height:150px; border:24px solid rgba(66,99,235,.10); border-radius:36px; right:-65px; top:10%; transform:rotate(18deg); }
.edu_shape_triangle { width:0; height:0; border-left:85px solid transparent; border-right:85px solid transparent; border-bottom:145px solid rgba(255,146,43,.11); right:8%; bottom:4%; transform:rotate(-12deg); }
.edu_shape_squiggle { width:220px; height:75px; left:7%; bottom:7%; border-top:18px solid rgba(240,101,149,.12); border-radius:50%; transform:rotate(9deg); }
.edu_header { position:relative; z-index:3; width:min(1180px,calc(100% - 36px)); margin:0 auto; min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.edu_brand img { display:block; width:auto; max-width:190px; height:50px; object-fit:contain; }
.edu_language { min-height:44px; padding:7px 13px 7px 8px; display:flex; align-items:center; gap:9px; border:1px solid rgba(36,48,74,.12); border-radius:14px; color:var(--edu-ink); background:rgba(255,255,255,.84); box-shadow:0 8px 26px rgba(36,48,74,.09); cursor:pointer; }
.edu_language img { width:28px; height:28px; border-radius:50%; object-fit:cover; }
.edu_language span { font-size:13px; font-weight:750; }
.edu_language:focus-visible, .edu_register_link:focus-visible, .edu_policy_links a:focus-visible, .edu_actions button:focus-visible { outline:3px solid rgba(66,99,235,.35); outline-offset:3px; }
.edu_stage { position:relative; z-index:2; width:min(1180px,calc(100% - 36px)); margin:0 auto; padding:34px 0 58px; }
.edu_shell { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(330px,430px); gap:54px; align-items:center; }
.edu_story { min-width:0; }
.edu_eyebrow { margin:0 0 15px; display:flex; align-items:center; gap:8px; color:var(--edu-blue); font-size:13px; font-weight:850; letter-spacing:.055em; text-transform:uppercase; }
.edu_story h1 { max-width:700px; margin:0; color:var(--edu-ink); font-size:clamp(45px,6vw,78px); line-height:.98; letter-spacing:-.055em; }
.edu_intro { max-width:680px; margin:23px 0 0; color:var(--edu-muted); font-size:clamp(17px,2vw,20px); line-height:1.7; }
.edu_activity_grid { margin-top:30px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.edu_activity { min-width:0; padding:15px; display:flex; align-items:flex-start; gap:12px; border:1px solid rgba(36,48,74,.09); border-radius:18px; background:rgba(255,255,255,.72); box-shadow:0 10px 32px rgba(36,48,74,.07); backdrop-filter:blur(10px); }
.edu_activity > span { flex:0 0 auto; width:38px; height:38px; display:grid; place-items:center; border-radius:13px; color:#fff; background:linear-gradient(135deg,var(--edu-blue),var(--edu-purple)); }
.edu_activity:nth-child(2) > span { background:linear-gradient(135deg,var(--edu-pink),var(--edu-orange)); }
.edu_activity:nth-child(3) > span { background:linear-gradient(135deg,#20c997,var(--edu-green)); }
.edu_activity strong, .edu_activity small { display:block; }
.edu_activity strong { color:var(--edu-ink); font-size:14px; line-height:1.3; }
.edu_activity small { margin-top:5px; color:var(--edu-muted); font-size:11px; line-height:1.45; }
.edu_artboard { position:relative; width:min(590px,94%); height:280px; margin:34px 0 0 20px; }
.edu_paper { position:absolute; inset:10px 58px 18px 30px; overflow:hidden; border:10px solid #fff; border-radius:26px; background:linear-gradient(#caeaff 0 54%,#b9e7ad 54% 100%); box-shadow:0 20px 55px rgba(36,48,74,.18); transform:rotate(-2deg); }
.edu_paper::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px); background-size:24px 24px; }
.edu_sun { position:absolute; width:62px; height:62px; right:45px; top:26px; border-radius:50%; background:#ffd43b; box-shadow:0 0 0 12px rgba(255,212,59,.22); }
.edu_mountain { position:absolute; bottom:44px; width:0; height:0; border-left:125px solid transparent; border-right:125px solid transparent; border-bottom:155px solid #5c7cfa; }
.mountain_one { left:-34px; }
.mountain_two { left:125px; border-left-width:150px; border-right-width:150px; border-bottom-color:#845ef7; opacity:.88; }
.edu_river { position:absolute; z-index:2; width:230px; height:145px; left:145px; bottom:-82px; border-radius:50%; border:28px solid #4dabf7; transform:rotate(-12deg); }
.edu_star { position:absolute; z-index:3; color:#fff; font-size:18px; text-shadow:0 2px 8px rgba(36,48,74,.18); }
.star_one { left:72px; top:34px; transform:rotate(14deg); }
.star_two { left:155px; top:63px; font-size:13px; transform:rotate(-10deg); }
.edu_pencil { position:absolute; z-index:5; width:245px; height:22px; border-radius:7px; background:linear-gradient(90deg,#ffd43b 0 78%,#f06595 78% 91%,#e7d8bf 91%); box-shadow:0 12px 22px rgba(36,48,74,.20); }
.edu_pencil::before { content:""; position:absolute; left:-24px; top:0; border-top:11px solid transparent; border-bottom:11px solid transparent; border-right:25px solid #e5b983; }
.edu_pencil::after { content:""; position:absolute; left:-27px; top:7px; border-top:4px solid transparent; border-bottom:4px solid transparent; border-right:9px solid #333; }
.pencil_one { right:-6px; bottom:52px; transform:rotate(-46deg); }
.pencil_two { width:190px; left:-18px; bottom:28px; transform:rotate(18deg); filter:hue-rotate(155deg); }
.edu_palette { position:absolute; z-index:6; right:7px; top:22px; width:92px; height:76px; border:8px solid #fff; border-radius:55% 45% 54% 46%; background:#f1c27d; box-shadow:0 15px 30px rgba(36,48,74,.16); transform:rotate(9deg); }
.edu_palette::after { content:""; position:absolute; width:20px; height:20px; right:8px; bottom:10px; border-radius:50%; background:#fff; }
.edu_palette i { position:absolute; width:16px; height:16px; border-radius:50%; background:var(--edu-blue); }
.edu_palette i:nth-child(1) { left:17px; top:13px; }
.edu_palette i:nth-child(2) { left:42px; top:9px; background:var(--edu-pink); }
.edu_palette i:nth-child(3) { left:12px; top:39px; background:var(--edu-green); }
.edu_palette i:nth-child(4) { left:38px; top:36px; background:var(--edu-orange); }
.edu_login_card { position:relative; width:100%; max-width:430px; justify-self:end; padding:34px; border:1px solid rgba(36,48,74,.11); border-radius:28px; color:var(--edu-ink); background:rgba(255,255,255,.92); box-shadow:var(--edu-shadow); backdrop-filter:blur(18px); overflow:hidden; }
.edu_login_card::before { content:""; position:absolute; inset:0 0 auto; height:7px; background:linear-gradient(90deg,var(--edu-blue),var(--edu-purple),var(--edu-pink),var(--edu-orange)); }
.edu_card_logo { text-align:center; }
#login_logo { display:block; width:auto; max-width:185px; height:58px; margin:0 auto; object-fit:contain; }
.edu_card_heading { margin-top:20px; }
.edu_card_icon { width:54px; height:54px; margin:0 auto 14px; display:grid; place-items:center; border-radius:18px; color:#fff; font-size:22px; background:linear-gradient(135deg,var(--edu-blue),var(--edu-purple)); box-shadow:0 13px 28px rgba(66,99,235,.25); }
.edu_card_heading h2 { margin:0; color:var(--edu-ink); font-size:29px; letter-spacing:-.025em; }
.edu_card_heading p { margin:10px auto 0; max-width:330px; color:var(--edu-muted); font-size:14px; line-height:1.6; }
.edu_actions { margin-top:24px; display:grid; gap:11px; }
.edu_actions button { width:100%; min-height:51px; margin:0; display:flex; align-items:center; justify-content:center; gap:10px; border-radius:15px; font-size:15px; font-weight:800; }
.edu_primary { border:0 !important; color:#fff !important; background:linear-gradient(135deg,var(--edu-blue),var(--edu-purple)) !important; box-shadow:0 14px 28px rgba(66,99,235,.25) !important; }
.edu_secondary { border:1px solid var(--edu-line) !important; color:var(--edu-ink) !important; background:#f7f8fc !important; box-shadow:none !important; }
.edu_actions button:hover { transform:translateY(-1px); }
.edu_register { margin-top:20px; padding-top:18px; border-top:1px solid var(--edu-line); color:var(--edu-muted); font-size:13px; }
.edu_register span { display:block; margin-bottom:7px; }
.edu_register_link { border:0; padding:0; color:var(--edu-blue); background:transparent; font-weight:850; cursor:pointer; }
.edu_register_link i { margin-left:5px; font-size:11px; }
.edu_safety_note { margin-top:22px; padding:14px 15px; border:1px solid #ffe8a3; border-radius:15px; background:#fff9db; }
.edu_safety_note strong { display:flex; align-items:center; gap:8px; color:#7c5c00; font-size:13px; }
.edu_safety_note p { margin:7px 0 0; color:#786932; font-size:11.5px; line-height:1.55; }
.edu_safety { margin-top:66px; padding:34px; border:1px solid rgba(36,48,74,.10); border-radius:30px; background:rgba(255,255,255,.74); box-shadow:0 18px 55px rgba(36,48,74,.08); backdrop-filter:blur(12px); }
.edu_safety_heading { max-width:760px; }
.edu_safety_heading h2 { margin:0; color:var(--edu-ink); font-size:clamp(27px,4vw,42px); letter-spacing:-.035em; }
.edu_safety_grid { margin-top:27px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.edu_safety-grid article, .edu_safety_grid article { padding:18px; border:1px solid var(--edu-line); border-radius:18px; background:#fff; }
.edu_safety_grid article > i { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--edu-blue); background:#edf2ff; }
.edu_safety_grid article:nth-child(2) > i { color:var(--edu-purple); background:#f3f0ff; }
.edu_safety_grid article:nth-child(3) > i { color:var(--edu-pink); background:#fff0f6; }
.edu_safety_grid article:nth-child(4) > i { color:var(--edu-green); background:#ebfbee; }
.edu_safety_grid h3 { margin:13px 0 6px; color:var(--edu-ink); font-size:15px; }
.edu_safety_grid p { margin:0; color:var(--edu-muted); font-size:12px; line-height:1.55; }
.edu_school_notice { margin:22px 0 0; color:var(--edu-muted); font-size:12px; line-height:1.6; }
.section { display:none; }
#main_footer { position:relative; z-index:2; color:var(--edu-muted) !important; background:transparent !important; }
#main_footer a { color:var(--edu-muted) !important; }

@media (max-width:980px) {
	.edu_shell { grid-template-columns:minmax(0,1fr) minmax(320px,390px); gap:28px; }
	.edu_activity_grid { grid-template-columns:1fr; max-width:520px; }
	.edu_artboard { height:245px; }
	.edu_safety_grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
	.edu_header { min-height:72px; }
	.edu_brand img { max-width:155px; height:42px; }
	.edu_language span { display:none; }
	.edu_language { width:44px; padding:7px; justify-content:center; }
	.edu_stage { padding-top:18px; }
	.edu_shell { display:flex; flex-direction:column; }
	.edu_story { width:100%; text-align:center; }
	.edu_eyebrow { justify-content:center; }
	.edu_story h1 { margin:0 auto; font-size:clamp(42px,13vw,63px); }
	.edu_intro { margin-left:auto; margin-right:auto; }
	.edu_activity_grid { display:none; }
	.edu_artboard { width:min(500px,100%); height:230px; margin:28px auto 0; }
	.edu_login_card { max-width:480px; justify-self:auto; padding:31px 23px; }
	.edu_safety { margin-top:42px; padding:26px 20px; }
}
@media (max-width:520px) {
	.edu_header, .edu_stage { width:min(100% - 24px,1180px); }
	.edu_artboard { height:185px; }
	.edu_paper { inset:5px 34px 15px 18px; border-width:7px; border-radius:20px; }
	.edu_pencil { transform:scale(.72) rotate(-46deg); transform-origin:right center; }
	.pencil_two { transform:scale(.72) rotate(18deg); transform-origin:left center; }
	.edu_palette { transform:scale(.76) rotate(9deg); transform-origin:right top; }
	.edu_safety_grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
	.creative_classroom_login *, .creative_classroom_login *::before, .creative_classroom_login *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

.edu_curriculum{margin-top:30px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid rgba(36,48,74,.1);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(238,244,255,.92));box-shadow:0 15px 45px rgba(36,48,74,.07)}.edu_curriculum h2{margin:0;color:var(--edu-ink);font-size:clamp(24px,3.2vw,37px);letter-spacing:-.035em}.edu_curriculum>div>p:last-child{max-width:780px;margin:12px 0 0;color:var(--edu-muted);font-size:13.5px;line-height:1.65}.edu_curriculum>a{flex:0 0 auto;min-height:47px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--edu-blue),var(--edu-purple));box-shadow:0 13px 27px rgba(66,99,235,.2);font-size:13px;font-weight:850;text-decoration:none}.edu_curriculum>a:focus-visible{outline:3px solid rgba(66,99,235,.35);outline-offset:3px}@media(max-width:760px){.edu_curriculum{align-items:stretch;flex-direction:column;text-align:center}.edu_curriculum .edu_eyebrow{justify-content:center}.edu_curriculum>a{width:100%}}
.edu_grade_path{width:min(1180px,calc(100% - 36px));margin:28px auto 0;padding:28px;border:1px solid rgba(63,84,133,.14);border-radius:26px;background:rgba(255,255,255,.92);box-shadow:0 16px 46px rgba(39,56,93,.08)}.edu_grade_path h2{max-width:900px;margin:0;font-size:clamp(25px,3.2vw,39px);line-height:1.12}.edu_grade_path_grid{margin-top:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.edu_grade_path_grid article{padding:17px;border:1px solid rgba(63,84,133,.12);border-radius:17px;background:#f8faff}.edu_grade_path_grid strong{display:block;color:#4263eb;font-size:16px}.edu_grade_path_grid span{display:block;margin-top:7px;color:#68738d;font-size:12.5px;line-height:1.55}@media(max-width:900px){.edu_grade_path_grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.edu_grade_path{width:calc(100% - 20px);padding:21px 16px}.edu_grade_path_grid{grid-template-columns:1fr}}

/* Rich, visible educational overview for learners and search engines. */
.edu_learning_overview{width:min(1180px,calc(100% - 36px));margin:28px auto 0;padding:30px;border:1px solid rgba(36,48,74,.11);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 16px 46px rgba(36,48,74,.07)}
.edu_learning_overview_head{max-width:980px}.edu_learning_overview_kicker{margin:0 0 10px;display:flex;align-items:center;gap:8px;color:var(--edu-blue);font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.edu_learning_overview_head h2{margin:0;color:var(--edu-ink);font-size:clamp(25px,3.2vw,39px);line-height:1.14;letter-spacing:-.035em}.edu_learning_overview_head>p:last-child{margin:13px 0 0;color:var(--edu-muted);font-size:14px;line-height:1.72}.edu_learning_overview_grid{margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.edu_learning_overview_grid article{padding:18px;border:1px solid rgba(36,48,74,.1);border-radius:18px;background:#f8faff}.edu_learning_overview_grid h3{margin:0;color:var(--edu-ink);font-size:15px}.edu_learning_overview_grid p{margin:8px 0 0;color:var(--edu-muted);font-size:12.5px;line-height:1.65}
@media(max-width:760px){.edu_learning_overview{width:min(100% - 24px,1180px);padding:23px 19px}.edu_learning_overview_grid{grid-template-columns:1fr}.edu_learning_overview_head{text-align:left}.edu_learning_overview_kicker{justify-content:flex-start}}


/* Complete styling for the educational materials emitted by boomEducationLearningOverviewHtml().
 * These rules intentionally live in the shared PHP education stylesheet so Art, English,
 * Maths, Science, and Grammar render the same structured learning content correctly. */
.edu_material_block{margin-top:26px;padding-top:24px;border-top:1px solid rgba(36,48,74,.1)}
.edu_material_block>h2{margin:0;color:var(--edu-ink);font-size:clamp(22px,2.7vw,32px);line-height:1.16;letter-spacing:-.025em}
.edu_material_list{margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none}
.edu_material_list li{position:relative;padding:13px 14px 13px 37px;border:1px solid rgba(36,48,74,.09);border-radius:14px;color:var(--edu-muted);background:#f8faff;font-size:12.5px;line-height:1.55}
.edu_material_list li::before{content:"✓";position:absolute;left:13px;top:12px;color:var(--edu-green);font-weight:900}
.edu_objective_list{margin:18px 0 0;padding-left:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}
.edu_objective_list li{padding-left:4px;color:var(--edu-muted);font-size:12.5px;line-height:1.6}
.edu_material_reference_grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.edu_material_reference_grid article{padding:16px;border:1px solid rgba(36,48,74,.09);border-radius:15px;background:#f8faff}
.edu_material_reference_grid h3{margin:0;color:var(--edu-ink);font-size:14px}
.edu_material_reference_grid p{margin:7px 0 0;color:var(--edu-muted);font-size:12px;line-height:1.62}
.edu_material_practice{margin-top:18px;display:grid;gap:10px}
.edu_material_practice_item{padding:16px;display:flex;gap:12px;border:1px solid rgba(36,48,74,.09);border-radius:15px;background:#f8faff}
.edu_material_number{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:#fff;background:var(--edu-blue);font-size:12px;font-weight:900}
.edu_material_practice_item h3{margin:0;color:var(--edu-ink);font-size:14px}
.edu_material_practice_item p{margin:6px 0 0;color:var(--edu-muted);font-size:12px;line-height:1.6}
.edu_material_practice_item details{margin-top:9px;padding:10px 11px;border:1px solid rgba(66,99,235,.14);border-radius:11px;background:#fff}
.edu_material_practice_item summary{cursor:pointer;color:var(--edu-blue);font-size:11.5px;font-weight:850}
.edu_material_support_grid{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.edu_material_support_grid article{padding:16px;border:1px solid rgba(36,48,74,.09);border-radius:15px;background:#f8faff}
.edu_material_support_grid h3{margin:0;color:var(--edu-ink);font-size:14px}
.edu_material_support_grid p{margin:7px 0 0;color:var(--edu-muted);font-size:12px;line-height:1.62}
.edu_material_links{margin-top:24px;display:flex;flex-wrap:wrap;gap:9px}
.edu_material_links a{min-height:42px;padding:0 13px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(66,99,235,.15);border-radius:12px;color:var(--edu-blue);background:#fff;font-size:12px;font-weight:850;text-decoration:none}
.edu_material_links a:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(36,48,74,.08)}
.edu_material_links a:focus-visible,.edu_material_practice_item summary:focus-visible{outline:3px solid rgba(66,99,235,.28);outline-offset:2px}
@media(max-width:760px){
  .edu_material_list,.edu_objective_list,.edu_material_reference_grid,.edu_material_support_grid{grid-template-columns:1fr}
  .edu_material_links{display:grid}
  .edu_material_links a{justify-content:center}
  .edu_material_practice_item{align-items:flex-start}
}
