/* AI Literacy resource page */
.literacy-hero { overflow:hidden; }
.literacy-hero .solution-hero-grid { grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); }
.ai-map { position:relative; min-height:560px; padding:1.25rem; color:#fff; background:linear-gradient(145deg,#0b1026,#1d2259 63%,#10666c); border:1px solid rgba(255,255,255,.14); border-radius:30px; box-shadow:0 35px 90px -35px rgba(15,23,42,.62); }
.ai-map-head { display:flex; justify-content:space-between; align-items:center; padding:.25rem .2rem 1.1rem; color:#cbd5e1; font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.ai-map-head span:last-child { color:var(--teal-soft); }
.ai-map-center { position:absolute; top:50%; left:50%; z-index:2; display:grid; width:150px; height:150px; place-items:center; padding:1rem; text-align:center; background:linear-gradient(145deg,#fff,#e8eaff); color:#171a3c; border:8px solid rgba(255,255,255,.1); border-radius:50%; box-shadow:0 25px 55px -20px #020617; transform:translate(-50%,-45%); }
.ai-map-center strong { display:block; font-family:var(--display); font-size:1.35rem; line-height:1.05; }
.ai-map-center small { color:#6366f1; font-weight:800; }
.ai-map-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; height:465px; }
.ai-map-node { position:relative; display:flex; flex-direction:column; justify-content:flex-end; padding:1.15rem; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.11); border-radius:20px; }
.ai-map-node:nth-child(2),.ai-map-node:nth-child(3) { text-align:right; align-items:flex-end; }
.ai-map-node i { display:grid; width:40px; height:40px; place-items:center; margin-bottom:auto; color:#07101e; background:var(--teal-soft); border-radius:12px; font-style:normal; font-weight:800; }
.ai-map-node:nth-child(2) i { background:#c4b5fd; }.ai-map-node:nth-child(3) i { background:#fde68a; }.ai-map-node:nth-child(4) i { background:#a5b4fc; }
.ai-map-node strong { font-size:1rem; }.ai-map-node small { max-width:190px; color:#aeb8d0; line-height:1.35; }

.literacy-principles { display:grid; grid-template-columns:repeat(6,1fr); gap:.6rem; }
.literacy-principles span { padding:.85rem .7rem; text-align:center; color:#fff; background:#141a38; border:1px solid rgba(255,255,255,.08); border-radius:14px; font-size:.82rem; font-weight:700; }

.concept-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:.85rem; }
.concept-card { display:flex; flex-direction:column; min-height:340px; padding:1.4rem; background:#fff; border:1px solid var(--line); border-radius:21px; box-shadow:var(--shadow-soft); }
.concept-card:nth-child(2) { background:#eef0ff; }.concept-card:nth-child(3) { background:#e9fffa; }.concept-card:nth-child(4) { background:#fff8e8; }.concept-card:nth-child(5) { color:#fff; background:#171b3e; }
.concept-num { display:grid; width:38px; height:38px; place-items:center; margin-bottom:1.2rem; color:#4338ca; background:rgba(99,102,241,.12); border-radius:12px; font-weight:800; }
.concept-card:nth-child(5) .concept-num { color:var(--teal-soft); background:rgba(94,234,212,.1); }
.concept-card h3 { margin-bottom:.55rem; font-size:1.15rem; }.concept-card p { color:var(--ink-soft); font-size:.91rem; }.concept-card:nth-child(5) p { color:#bdc6da; }
.concept-card dl { margin-top:auto; padding-top:1rem; }.concept-card dt { color:var(--ink-muted); font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.concept-card:nth-child(5) dt { color:#8592ad; }.concept-card dd { margin:.15rem 0 .65rem; font-size:.83rem; line-height:1.4; }

.model-guide { display:grid; grid-template-columns:.8fr 1.2fr; gap:2rem; align-items:start; }
.model-rules { position:sticky; top:calc(var(--nav-h) + 24px); padding:1.7rem; color:#fff; background:linear-gradient(145deg,#171b3e,#252a68); border-radius:22px; }
.model-rules h3 { margin-bottom:.7rem; font-size:1.35rem; }.model-rules p { color:#c7cee0; }.model-rules ol { display:grid; gap:.7rem; margin-top:1.2rem; list-style:none; counter-reset:model; }
.model-rules li { display:grid; grid-template-columns:28px 1fr; gap:.65rem; align-items:start; counter-increment:model; font-size:.9rem; }.model-rules li::before { content:counter(model); display:grid; width:26px; height:26px; place-items:center; color:var(--teal-soft); background:rgba(94,234,212,.1); border-radius:8px; font-weight:800; }
.model-list { display:grid; gap:.75rem; }
.model-row { display:grid; grid-template-columns:145px 1fr auto; gap:1rem; align-items:center; padding:1.15rem 1.25rem; background:#fff; border:1px solid var(--line); border-radius:17px; }
.model-row strong { font-size:1rem; }.model-row p { color:var(--ink-soft); font-size:.88rem; }.model-row a { color:var(--indigo-deep); font-size:.8rem; font-weight:800; white-space:nowrap; }
.model-row a:hover { text-decoration:underline; }

.prompt-directory { padding:1.5rem; background:#eef0f8; border:1px solid var(--line); border-radius:25px; }
.prompt-tools { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; justify-content:space-between; margin-bottom:1.25rem; }
.prompt-search { flex:1 1 290px; min-width:0; padding:.8rem 1rem; color:var(--ink); background:#fff; border:1px solid var(--line-strong); border-radius:999px; outline:none; }
.prompt-search:focus { border-color:var(--indigo); box-shadow:0 0 0 4px rgba(99,102,241,.12); }
.prompt-filters { display:flex; flex-wrap:wrap; gap:.42rem; }
.prompt-filter { padding:.54rem .82rem; color:var(--ink-soft); background:#fff; border:1px solid var(--line); border-radius:999px; font-size:.78rem; font-weight:700; }
.prompt-filter.active { color:#fff; background:var(--indigo-deep); border-color:var(--indigo-deep); }
.prompt-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:.85rem; }
.prompt-card { display:flex; flex-direction:column; min-height:300px; padding:1.25rem; background:#fff; border:1px solid var(--line); border-radius:18px; }
.prompt-card[hidden] { display:none; }
.prompt-card-head { display:flex; justify-content:space-between; gap:1rem; align-items:start; }
.prompt-card-head span { color:var(--indigo); font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.prompt-card h3 { margin:.35rem 0 .7rem; font-size:1.08rem; }
.prompt-card pre { flex:1; overflow:auto; max-height:210px; padding:1rem; white-space:pre-wrap; color:#d9e1f2; background:#10162f; border-radius:13px; font:500 .82rem/1.55 var(--font); }
.prompt-copy { padding:.43rem .72rem; color:#4338ca; background:#eef0ff; border-radius:9px; font-size:.76rem; font-weight:800; }
.prompt-copy.copied { color:#047857; background:#d1fae5; }
.prompt-empty { padding:2rem; text-align:center; color:var(--ink-soft); background:#fff; border-radius:16px; }

.prompt-framework { display:grid; grid-template-columns:repeat(6,1fr); gap:.65rem; }
.prompt-framework article { padding:1rem; background:#fff; border:1px solid var(--line); border-radius:15px; }
.prompt-framework b { display:block; margin-bottom:.35rem; color:var(--indigo-deep); font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }.prompt-framework p { color:var(--ink-soft); font-size:.82rem; line-height:1.45; }

.vendor-sections { display:grid; gap:1.1rem; }
.vendor-group { padding:1.45rem; background:#fff; border:1px solid var(--line); border-radius:21px; }
.vendor-group-head { display:grid; grid-template-columns:54px 1fr; gap:1rem; align-items:center; margin-bottom:1rem; }
.vendor-group-head span { display:grid; width:50px; height:50px; place-items:center; color:#fff; background:linear-gradient(145deg,var(--indigo),var(--violet)); border-radius:15px; font-weight:800; }.vendor-group-head h3 { font-size:1.25rem; }.vendor-group-head p { color:var(--ink-soft); font-size:.9rem; }
.vendor-links { display:grid; grid-template-columns:repeat(4,1fr); gap:.65rem; }
.vendor-link { display:flex; flex-direction:column; min-height:124px; padding:1rem; background:#f7f8fc; border:1px solid var(--line); border-radius:14px; transition:transform .2s,border-color .2s; }.vendor-link:hover { transform:translateY(-2px); border-color:rgba(99,102,241,.35); }.vendor-link strong { font-size:.93rem; }.vendor-link span { margin:.3rem 0 .8rem; color:var(--ink-soft); font-size:.78rem; line-height:1.4; }.vendor-link small { margin-top:auto; color:var(--indigo-deep); font-weight:800; }
.vendor-note { margin-top:1rem; color:var(--ink-muted); font-size:.8rem; }

.safety-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.85rem; }
.safety-card { padding:1.35rem; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:17px; }.safety-card strong { display:block; margin-bottom:.4rem; color:#fff; }.safety-card p { color:#b9c3d8; font-size:.88rem; }.safety-card span { display:grid; width:34px; height:34px; place-items:center; margin-bottom:.9rem; color:#08101f; background:var(--teal-soft); border-radius:10px; font-weight:800; }

@media(max-width:1100px){.concept-grid{grid-template-columns:repeat(3,1fr)}.concept-card:nth-child(4),.concept-card:nth-child(5){grid-column:span 1}.vendor-links{grid-template-columns:repeat(2,1fr)}.prompt-framework{grid-template-columns:repeat(3,1fr)}.literacy-principles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.literacy-hero .solution-hero-grid,.model-guide{grid-template-columns:1fr}.model-rules{position:static}.ai-map{min-height:520px}.concept-grid{grid-template-columns:repeat(2,1fr)}.safety-grid{grid-template-columns:1fr}}
@media(max-width:680px){.ai-map{min-height:620px}.ai-map-grid{height:525px}.ai-map-center{width:120px;height:120px}.ai-map-node{padding:.85rem}.ai-map-node small{font-size:.72rem}.concept-grid,.prompt-grid,.vendor-links{grid-template-columns:1fr}.model-row{grid-template-columns:1fr}.prompt-framework,.literacy-principles{grid-template-columns:repeat(2,1fr)}.prompt-directory{padding:.8rem}.vendor-group{padding:1rem}}
