*{box-sizing:border-box}body{margin:0;background:#faf9f6;color:#242333;font-family:Arial,sans-serif;font-size:16px;line-height:28px}a{color:#5734b5;text-underline-offset:4px}a:hover{color:#3c2282}header,main,footer{max-width:1120px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #dedbe5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;color:#242333}.brand-dots{display:flex;flex-direction:column;gap:2px}.brand-dots i{display:block;width:5px;height:5px;border-radius:50%;background:#6548d8}.brand-dots i:nth-child(2){background:#318cff}.brand-dots i:nth-child(3){background:#20b7b0}.brand-dots i:nth-child(4){background:#f7bb3c}.brand-dots i:nth-child(5){background:#fa7769}nav,.link-row{display:flex;gap:24px;flex-wrap:wrap}nav a{font-size:14px;line-height:24px}.hero{max-width:840px;padding:48px 0 32px}.kicker{font-size:12px;line-height:20px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:#66537f;margin:24px 0 12px}h1{font-size:clamp(32px,4vw,48px);line-height:56px;letter-spacing:-1px;margin:0 0 24px}h2{font-size:24px;line-height:32px;margin:0 0 16px}h3{font-size:20px;line-height:28px;margin:24px 0 12px}p{margin:0 0 16px}.intro{font-size:20px;line-height:32px;color:#605b6a;max-width:760px}.byline,.small,.source{font-size:14px;line-height:24px;color:#68616f}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.card{background:#fff;border:1px solid #dedbe5;border-radius:20px;padding:32px;text-decoration:none;color:inherit;position:relative}.card:hover{border-color:#7154b9;box-shadow:0 8px 24px #3524530d}.card h2{font-size:24px;line-height:32px;margin:16px 0}.card p{color:#625b6b}.tag{font-size:12px;line-height:20px;font-weight:700;color:#7154b9;text-transform:uppercase;letter-spacing:1px}.arrow{font-size:24px;line-height:32px;color:#7154b9}.prose{max-width:760px}.prose section{margin-bottom:32px}.prose h2{margin-top:32px}.prose li{margin-bottom:12px}main>section{margin:32px 0}.note,.result{border-left:4px solid #7154b9;padding:24px;background:#f0ebfa;margin:24px 0}.note h2,.result h3{margin-top:0}.cta{margin:64px 0 24px;padding:40px;border-radius:24px;background:#242033;color:white}.cta p{max-width:720px}.cta .kicker,.cta .small{color:#ded5f2}.button,button{display:inline-block;background:#6a46cf;color:white;border:0;border-radius:8px;padding:12px 24px;font:inherit;font-weight:700;line-height:24px;text-decoration:none;cursor:pointer}.button:hover,button:hover{background:#5331b3;color:#fff}button:disabled{opacity:.5;cursor:not-allowed}.cta .small{margin:16px 0 0}.tool{max-width:800px;background:white;border:1px solid #dedbe5;border-radius:20px;padding:32px}.tool form{display:grid;gap:20px}.tool label{display:block;font-weight:700}input:not([type=checkbox]),textarea{display:block;width:100%;font:inherit;line-height:24px;padding:12px;border:1px solid #bdb7c8;border-radius:8px;margin-top:8px;background:#fff;color:#242333}textarea{resize:vertical}.check{display:flex!important;align-items:flex-start;gap:16px;font-weight:400!important}.check input{width:20px;height:20px;flex:none;margin:4px 0;accent-color:#6a46cf}.tool .small{margin-top:16px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#242033;color:#f4efff;padding:24px;border-radius:8px;line-height:24px;font-size:14px}#builder-status{margin-top:16px}footer{border-top:1px solid #dedbe5;font-size:12px;line-height:20px;color:#625b6b}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,pre:focus-visible{outline:3px solid #9d83ef;outline-offset:4px}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:12px}@media(max-width:640px){header{align-items:flex-start;flex-direction:column;gap:16px}header,main,footer{padding:20px}nav{gap:20px}.hero{padding-top:24px}h1{font-size:32px;line-height:40px}.card,.tool{padding:24px}.cta{padding:24px;margin-top:40px}.intro{font-size:18px;line-height:28px}.link-row{gap:16px}}@media print{header,footer,.cta,button,.skip{display:none}.hero{padding:0}body{background:white}main{padding:0}.tool{border:0;padding:0}.cards{display:block}.card{display:block;break-inside:avoid}a{color:inherit}}

/* Soft color fields and luminous edges, shared by all learning resources. */
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#faf9fd;color:#202331;position:relative;isolation:isolate}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 8% 12%,rgba(255,148,213,.27),transparent 48%),radial-gradient(ellipse at 82% 8%,rgba(175,145,255,.26),transparent 48%),radial-gradient(ellipse at 92% 78%,rgba(255,220,116,.28),transparent 48%),radial-gradient(ellipse at 14% 88%,rgba(145,213,255,.18),transparent 44%)}
header{border-color:rgba(166,142,203,.2)}
h1,h2,h3{font-weight:500;letter-spacing:-.025em}.brand{font-weight:600}.intro{color:#595465}.kicker{letter-spacing:.08em}
.card,.tool{border:1px solid transparent;border-radius:24px;background:linear-gradient(125deg,rgba(255,255,255,.96),rgba(255,248,255,.94) 50%,rgba(255,253,238,.94)) padding-box,linear-gradient(125deg,rgba(255,112,204,.8),rgba(162,115,255,.85) 42%,rgba(255,214,99,.85) 82%,rgba(149,206,255,.75)) border-box;box-shadow:0 0 16px rgba(179,128,255,.13),0 0 28px rgba(255,151,206,.1),0 20px 48px -32px rgba(82,42,137,.28);transition:box-shadow .18s ease,transform .18s ease}
.card:hover{border-color:transparent;box-shadow:0 0 20px rgba(170,103,255,.24),0 0 36px rgba(255,134,205,.16),0 24px 48px -32px rgba(82,42,137,.35);transform:translateY(-2px)}
.card:focus-visible{outline:3px solid #7453c6;outline-offset:4px}
input:not([type=checkbox]),textarea{border:1px solid transparent;border-radius:12px;background:linear-gradient(110deg,#fff,#fffafd) padding-box,linear-gradient(115deg,#efa1cf,#b395ea 52%,#e7c96c) border-box;box-shadow:0 0 12px rgba(181,126,255,.1);transition:box-shadow .18s ease}
input:not([type=checkbox]):focus,textarea:focus{box-shadow:0 0 16px rgba(156,91,255,.23),0 0 24px rgba(255,117,199,.13)}
.tool label{font-weight:600}.note,.result{border:1px solid transparent;border-left:4px solid #9770d8;border-radius:16px;background:linear-gradient(115deg,rgba(246,238,255,.96),rgba(255,246,240,.96)) padding-box,linear-gradient(120deg,#e9a7d7,#b999ef,#f2d797) border-box;box-shadow:0 0 16px rgba(170,119,241,.1)}
.button,button{border-radius:12px;font-weight:600;background:linear-gradient(110deg,#7344c8,#6944b9 55%,#8648aa);box-shadow:0 0 16px rgba(159,92,222,.18)}
.button:hover,button:hover{background:linear-gradient(110deg,#6335b6,#5933a8 55%,#733798)}
.cta{background:radial-gradient(ellipse at 0 0,rgba(192,106,222,.22),transparent 65%),radial-gradient(ellipse at 100% 100%,rgba(255,211,106,.12),transparent 60%),#29213d;border:1px solid rgba(182,140,230,.5);box-shadow:0 0 24px rgba(168,113,223,.15)}
footer{border-color:rgba(166,142,203,.25)}
@media(prefers-reduced-motion:reduce){.card,.tool,input,textarea{transition:none}.card:hover{transform:none}}
@media print{body::before{display:none}.card,.tool,.note,.result{background:white;box-shadow:none;border:1px solid #bbb}body{background:white}}
@media(max-width:640px){.skip{left:20px}}

/* White surfaces, rainbow edges and a light pastel backdrop. */
body{background:#fdfdfd}body::before{opacity:.34}
.card,.tool{border:1px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(120deg,#f276c8,#ac7af3 30%,#69baf0 55%,#83d4be 72%,#f0d26f 88%,#f599ae) border-box;box-shadow:0 0 14px rgba(173,112,243,.13),0 0 24px rgba(244,119,191,.08),0 10px 28px -22px rgba(55,39,77,.2)}
.card:hover{box-shadow:0 0 18px rgba(170,103,255,.2),0 0 26px rgba(244,119,191,.13)}
input:not([type=checkbox]),textarea{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(115deg,#ef82c6,#b083ed 30%,#74bfee 55%,#88d5bd 74%,#eed27d) border-box;box-shadow:0 0 10px rgba(174,118,242,.1)}
input:not([type=checkbox]):focus,textarea:focus{box-shadow:0 0 15px rgba(156,91,255,.22),0 0 22px rgba(242,115,190,.12)}
.note,.result{background:#faf8fc;border-color:#e7e1ee;border-left-color:#ab93cd;box-shadow:none}
.button,button{background:#6b4eaa;box-shadow:none}.button:hover,button:hover{background:#593d93}
.cta{background:#292633;border-color:#45404f;box-shadow:none}
@media print{.card,.tool,.note,.result,input:not([type=checkbox]),textarea{background:white;box-shadow:none;border:1px solid #bbb}body{background:white}}

/* Blog uses the homepage typography, violet hero and button palette. */
.blog-page{font-family:'Figtree',system-ui,sans-serif;background:#fcfcfc;color:#111112;font-size:17px;line-height:1.55}
.blog-page header,.blog-page main,.blog-page footer{max-width:1180px}
.blog-page header{max-width:none;padding:16px max(24px,calc((100% - 1132px)/2));background:#0b0720;border:0;min-height:64px}
.blog-page header a{color:rgba(255,255,255,.8);text-decoration:none;font-size:15px;font-weight:500}
.blog-page header .brand{color:#fff;font-size:18px;font-weight:600}
.blog-page main{padding-top:0}
.blog-page .hero{max-width:none;padding:64px 0;position:relative;isolation:isolate;color:#fff;margin-bottom:40px}
.blog-page .hero::before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:radial-gradient(ellipse at 82% 45%,rgba(94,67,216,.48),transparent 70%),#0b0720}
.blog-page .hero>a{color:#c4b2ff}
.blog-page h1,.blog-page h2,.blog-page h3{font-weight:500;letter-spacing:-.015em}
.blog-page .hero h1{max-width:900px}
.blog-page .hero .intro{color:rgba(255,255,255,.74)}
.blog-page .hero .kicker,.blog-page .hero .byline{color:#c4b2ff}
.blog-page .card p,.blog-page .small,.blog-page .source{color:rgba(0,4,9,.62)}
.blog-page .button{background:#5e43d8;color:white}.blog-page .button:hover{background:#4f32b8}
.blog-page .cta{background:radial-gradient(ellipse at 90% 30%,rgba(94,67,216,.4),transparent 75%),#0b0720;color:white}
.blog-page .cta .small{color:#ded5f2}
@media(max-width:640px){.blog-page header{padding:20px}.blog-page .hero{padding:40px 0}.blog-page .hero h1{font-size:32px;line-height:40px}}
@media print{.blog-page .hero::before{display:none}.blog-page .hero{background:white;color:#111;padding:0}.blog-page .hero .intro,.blog-page .hero .kicker,.blog-page .hero .byline,.blog-page .hero>a{color:#333}}

/* Editorial guides: readable prompts and narrow-screen tables. */
.muse-guide{max-width:840px}.muse-guide h2{margin-top:32px}.muse-guide blockquote{margin:24px 0;padding:24px;border-left:4px solid #aa86d4;background:#f4f1fa;border-radius:12px;overflow-wrap:anywhere}.muse-guide table{width:100%;border-collapse:collapse;margin:24px 0;table-layout:fixed}.muse-guide th,.muse-guide td{text-align:left;padding:12px;border-bottom:1px solid #dedbe5;vertical-align:top;overflow-wrap:anywhere}.resource-section{margin-top:48px}.muse-guide li{margin-bottom:8px}

.muse-article{line-height:28px}.muse-article main,.muse-article footer{max-width:1184px}.muse-article header{padding-left:max(24px,calc((100% - 1136px)/2));padding-right:max(24px,calc((100% - 1136px)/2))}.muse-guide ul,.muse-guide ol{margin-top:16px;margin-bottom:16px}
@media(max-width:640px){.muse-article header{padding-left:20px;padding-right:20px}}
