/* Lesson 7 only. Shared components are intentionally not styled here. */
.lesson7-page .lesson7-content { min-width: 0; }
.lesson7-page .lesson7-breadcrumb { display:flex; flex-wrap:wrap; gap:7px; margin:2px 0 18px; color:#7b7390; font-size:14px; }
.lesson7-page .lesson7-breadcrumb a { color:#675f79; text-decoration:none; }
.lesson7-page .lesson7-breadcrumb a:hover { color:#651fff; }
.lesson7-page .lesson7-header { padding:0 0 28px; }
.lesson7-page .lesson7-kicker,.lesson7-page .lesson7-practice-label,.lesson7-page .lesson7-quiz-label { color:#651fff; font-size:14px; font-weight:800; letter-spacing:.07em; }
.lesson7-page .lesson7-header h1 { margin:7px 0 12px; color:#111827; font-size:clamp(38px,4vw,56px); line-height:1.08; letter-spacing:-.045em; }
.lesson7-page .lesson7-lead { max-width:820px; margin:0 0 12px; color:#4b5563; font-size:18px; line-height:1.7; }
.lesson7-page .lesson7-meta { display:flex; flex-wrap:wrap; gap:8px; color:#7a7287; font-size:14px; }
.lesson7-page .lesson7-objectives { margin:0 0 42px; padding:21px 23px; border:1px solid #e6ddec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-objectives h2 { margin:0 0 10px; color:#171526; font-size:20px; }
.lesson7-page .lesson7-objectives ul { margin:0; padding-left:21px; }
.lesson7-page .lesson7-objectives li { margin:6px 0; color:#454052; font-size:15px; line-height:1.65; }
.lesson7-page .lesson7-section { display:grid; grid-template-columns:32px minmax(0,1fr); gap:13px; margin:0 0 48px; scroll-margin-top:110px; }
.lesson7-page .lesson7-number { width:28px; height:28px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#651fff; color:#fff; font-size:14px; font-weight:800; }
.lesson7-page .lesson7-section h2 { margin:0 0 10px; color:#111827; font-size:27px; line-height:1.3; }
.lesson7-page .lesson7-section h3 { margin:10px 0 8px; color:#172033; font-size:19px; }
.lesson7-page .lesson7-section p,.lesson7-page .lesson7-practice p,.lesson7-page .lesson7-quiz p,.lesson7-page .lesson7-recap li { color:#344054; font-size:16px; line-height:1.78; }
.lesson7-page .lesson7-section p { margin:0 0 12px; }
.lesson7-page .lesson7-definition-card,.lesson7-page .lesson7-three-col,.lesson7-page .lesson7-capability-grid,.lesson7-page .lesson7-two-col,.lesson7-page .lesson7-change-grid { display:grid; gap:14px; margin-top:18px; }
.lesson7-page .lesson7-definition-card { grid-template-columns:repeat(3,1fr); }
.lesson7-page .lesson7-definition-card>div { padding:19px; border:1px solid #dfe4ec; border-top:4px solid #651fff; border-radius:11px; background:#fff; }
.lesson7-page .lesson7-definition-card span { color:#651fff; font-size:14px; font-weight:800; letter-spacing:.06em; }
.lesson7-page .lesson7-definition-card strong { display:block; margin-top:8px; color:#172033; font-size:17px; }
.lesson7-page .lesson7-definition-card p { margin:6px 0 0; color:#667085; font-size:14px; line-height:1.55; }
.lesson7-page .lesson7-note,.lesson7-page .lesson7-mental-model,.lesson7-page .lesson7-security-note,.lesson7-page .lesson7-challenge { margin-top:16px; padding:14px 16px; border:1px solid #f3dfaa; border-radius:9px; background:#fff8e8; color:#5f4b16; }
.lesson7-page .lesson7-note { color:#5f4b16 !important; }
.lesson7-page .lesson7-note strong,.lesson7-page .lesson7-mental-model strong,.lesson7-page .lesson7-security-note strong,.lesson7-page .lesson7-challenge strong { color:#5f00dc; }
.lesson7-page .lesson7-hierarchy { display:grid; gap:7px; justify-items:stretch; margin-top:18px; }
.lesson7-page .lesson7-hierarchy>div { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:14px 18px; border:1px solid #dfe4ec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-hierarchy>div.is-highlight { border-color:#b27cff; background:#faf5ff; box-shadow:0 0 0 2px #efe2ff inset; }
.lesson7-page .lesson7-hierarchy strong { color:#172033; font-size:16px; }
.lesson7-page .lesson7-hierarchy span { color:#667085; font-size:14px; }
.lesson7-page .lesson7-hierarchy>b { text-align:center; color:#8a8294; }
.lesson7-page .lesson7-prompt-card { margin:16px 0; padding:19px 20px; border:1px solid #dfe4ec; border-left:4px solid #651fff; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-prompt-card span { display:block; color:#651fff; font-size:14px; font-weight:800; letter-spacing:.06em; }
.lesson7-page .lesson7-prompt-card strong { display:block; margin-top:7px; color:#172033; font-size:22px; }
.lesson7-page .lesson7-probabilities { display:grid; gap:10px; margin:18px 0; }
.lesson7-page .lesson7-probabilities>div { display:grid; grid-template-columns:110px 1fr; gap:8px 14px; align-items:center; }
.lesson7-page .lesson7-probabilities span { color:#172033; font-weight:750; }
.lesson7-page .lesson7-probabilities b { color:#667085; font-size:14px; font-weight:500; }
.lesson7-page .lesson7-probabilities i { display:block; grid-column:2; height:8px; margin-top:-6px; border-radius:999px; background:#651fff; }
.lesson7-page .lesson7-flow,.lesson7-page .lesson7-architecture { display:grid; align-items:center; gap:10px; margin:20px 0; }
.lesson7-page .lesson7-flow { grid-template-columns:1fr auto 1fr auto 1fr; }
.lesson7-page .lesson7-flow>div,.lesson7-page .lesson7-architecture>div { padding:16px 13px; text-align:center; border:1px solid #dfe4ec; border-radius:10px; background:#f8fafc; }
.lesson7-page .lesson7-flow strong,.lesson7-page .lesson7-flow span { display:block; }
.lesson7-page .lesson7-flow strong { color:#172033; font-size:16px; }
.lesson7-page .lesson7-flow span { margin-top:5px; color:#667085; font-size:14px; line-height:1.5; }
.lesson7-page .lesson7-flow>b,.lesson7-page .lesson7-architecture>i { color:#667085; font-size:22px; font-style:normal; }
.lesson7-page .lesson7-three-col { grid-template-columns:repeat(3,1fr); }
.lesson7-page .lesson7-three-col article { padding:19px; border:1px solid #dfe4ec; border-radius:11px; background:#fff; }
.lesson7-page .lesson7-three-col article>span { display:inline-flex; width:27px; height:27px; align-items:center; justify-content:center; border-radius:50%; background:#f0e6ff; color:#5f00dc; font-size:14px; font-weight:800; }
.lesson7-page .lesson7-three-col p { margin:0; color:#667085; font-size:14px; line-height:1.6; }
.lesson7-page .lesson7-capability-grid { grid-template-columns:repeat(3,1fr); }
.lesson7-page .lesson7-capability-grid>div { padding:17px; border:1px solid #dfe4ec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-capability-grid strong,.lesson7-page .lesson7-capability-grid span { display:block; }
.lesson7-page .lesson7-capability-grid strong { color:#172033; font-size:16px; }
.lesson7-page .lesson7-capability-grid span { margin-top:5px; color:#667085; font-size:14px; line-height:1.5; }
.lesson7-page .lesson7-two-col { grid-template-columns:1fr 1fr; }
.lesson7-page .lesson7-positive,.lesson7-page .lesson7-warning { padding:17px; border-radius:10px; }
.lesson7-page .lesson7-positive { border:1px solid #bbf7d0; background:#f0fdf4; }
.lesson7-page .lesson7-warning { border:1px solid #fde68a; background:#fffbeb; }
.lesson7-page .lesson7-positive strong,.lesson7-page .lesson7-warning strong { color:#172033; }
.lesson7-page .lesson7-positive p,.lesson7-page .lesson7-warning p { margin:5px 0 0; font-size:14px; }
.lesson7-page .lesson7-myths { display:grid; gap:10px; margin-top:18px; }
.lesson7-page .lesson7-myths>div { padding:16px 18px; border:1px solid #dfe4ec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-myths strong { color:#172033; font-size:16px; }
.lesson7-page .lesson7-myths p { margin:5px 0 0; color:#667085; font-size:14px; line-height:1.6; }
.lesson7-page .lesson7-code-block { margin:18px 0; overflow:hidden; border:1px solid #d9dee7; border-radius:10px; background:#fbfcfd; }
.lesson7-page .lesson7-code-head { min-height:44px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 12px; background:#f1f3f5; border-bottom:1px solid #d9dee7; }
.lesson7-page .lesson7-code-head>span { color:#172033; font-size:14px; font-weight:700; }
.lesson7-page .lesson7-code-head>div { display:flex; align-items:center; gap:8px; }
.lesson7-page .lesson7-code-head a,.lesson7-page .lesson7-code-head button { padding:6px 10px; border:1px solid #cfd6df; border-radius:6px; background:#fff; color:#344054; font-size:14px; text-decoration:none; cursor:pointer; }
.lesson7-page .lesson7-code-head a:hover,.lesson7-page .lesson7-code-head button:hover { border-color:#9b72dc; color:#5f00dc; }
.lesson7-page .lesson7-code-head button.is-copied { border-color:#86efac; background:#f0fdf4; color:#166534; }
.lesson7-page .lesson7-code-block pre { margin:0; padding:18px; overflow:auto; background:#fbfcfd; }
.lesson7-page .lesson7-code-block code { font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace; color:#26364d; font-size:15px; line-height:1.65; white-space:pre; }
.lesson7-page .py-keyword { color:#7c3aed; font-weight:600; }
.lesson7-page .py-string { color:#00897b; }
.lesson7-page .py-built-in { color:#1565c0; }
.lesson7-page .py-number { color:#d97706; }
.lesson7-page .py-comment { color:#64748b; }
.lesson7-page .lesson7-output { margin:10px 0 14px; padding:12px 14px; border:1px solid #e2e8f0; border-radius:8px; background:#f8fafc; }
.lesson7-page .lesson7-output strong { color:#172033; font-size:14px; }
.lesson7-page .lesson7-output code { display:block; margin-top:6px; color:#087f5b; font-size:14px; line-height:1.6; }
.lesson7-page .lesson7-explain { padding:12px 14px; border-radius:8px; background:#f7f9fc; }
.lesson7-page .lesson7-change-grid { grid-template-columns:1fr 1fr; }
.lesson7-page .lesson7-change-grid>div { padding:17px; border:1px solid #dfe4ec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-change-grid strong,.lesson7-page .lesson7-change-grid span,.lesson7-page .lesson7-change-grid b { display:block; }
.lesson7-page .lesson7-change-grid strong { color:#651fff; font-size:14px; text-transform:uppercase; letter-spacing:.05em; }
.lesson7-page .lesson7-change-grid span { margin:8px 0; color:#344054; font-size:15px; line-height:1.55; }
.lesson7-page .lesson7-change-grid b { color:#667085; font-size:14px; }
.lesson7-page .lesson7-architecture { grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr; }
.lesson7-page .lesson7-architecture .is-llm { border-color:#b27cff; background:#faf5ff; }
.lesson7-page .lesson7-architecture strong,.lesson7-page .lesson7-architecture span { display:block; }
.lesson7-page .lesson7-architecture strong { color:#172033; font-size:15px; }
.lesson7-page .lesson7-architecture span { margin-top:4px; color:#667085; font-size:14px; line-height:1.4; }
.lesson7-page .lesson7-project-steps { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin-top:18px; }
.lesson7-page .lesson7-project-steps>div { padding:15px 12px; border:1px solid #dfe4ec; border-radius:10px; background:#fff; }
.lesson7-page .lesson7-project-steps b { display:inline-flex; width:26px; height:26px; align-items:center; justify-content:center; border-radius:50%; background:#651fff; color:#fff; font-size:14px; }
.lesson7-page .lesson7-project-steps strong,.lesson7-page .lesson7-project-steps span { display:block; }
.lesson7-page .lesson7-project-steps strong { margin-top:8px; color:#172033; font-size:14px; }
.lesson7-page .lesson7-project-steps span { margin-top:3px; color:#667085; font-size:14px; line-height:1.45; }
.lesson7-page .lesson7-practice { margin:0 0 42px; padding:22px; border:1px solid #e0d2ec; border-radius:12px; background:#fff; }
.lesson7-page .lesson7-practice h2,.lesson7-page .lesson7-quiz h2,.lesson7-page .lesson7-recap h2 { margin:5px 0 8px; color:#171526; font-size:24px; }
.lesson7-page .lesson7-practice-row { display:grid; grid-template-columns:30px minmax(0,1fr) auto; gap:12px; align-items:center; padding:14px 0; border-top:1px solid #ece8f0; }
.lesson7-page .lesson7-practice-row>span { width:26px; height:26px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#f0e6ff; color:#5f00dc; font-weight:800; font-size:14px; }
.lesson7-page .lesson7-practice-row strong { color:#344054; font-size:15px; line-height:1.5; }
.lesson7-page .lesson7-practice-row button { padding:7px 10px; border:1px solid #cfd6df; border-radius:6px; background:#fff; color:#344054; font-size:14px; cursor:pointer; }
.lesson7-page .lesson7-practice-row em { display:none; grid-column:2 / 4; color:#087f5b; font-style:normal; font-size:14px; line-height:1.6; }
.lesson7-page .lesson7-practice-row.is-revealed em { display:block; }
.lesson7-page .lesson7-practice-row.is-revealed button { display:none; }
.lesson7-page .lesson7-quiz { margin:0 0 42px; padding:22px; border:1px solid #ded0eb; border-radius:12px; background:#fbf7ff; }
.lesson7-page .lesson7-quiz-options { display:grid; gap:9px; margin-top:16px; }
.lesson7-page .lesson7-quiz-options button { padding:12px 14px; text-align:left; border:1px solid #d8d0df; border-radius:8px; background:#fff; color:#344054; font-size:15px; cursor:pointer; }
.lesson7-page .lesson7-quiz-options button:hover { border-color:#a98ad1; }
.lesson7-page .lesson7-quiz-options button.is-correct { border-color:#86efac; background:#f0fdf4; color:#166534; }
.lesson7-page .lesson7-quiz-options button.is-wrong { border-color:#fecaca; background:#fef2f2; color:#991b1b; }
.lesson7-page .lesson7-quiz-feedback { min-height:25px; margin-bottom:0 !important; font-weight:700; }
.lesson7-page .lesson7-recap { margin:0 0 42px; padding:22px; border:1px solid #e1d7e8; border-radius:12px; background:#fff; }
.lesson7-page .lesson7-recap ul { margin:0; padding-left:22px; }
.lesson7-page .lesson7-recap li { margin:7px 0; }
.lesson7-page .lesson7-navigation { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:12px; }
.lesson7-page .lesson7-nav-card { display:block; padding:16px; border:1px solid #ded5e5; border-radius:10px; background:#fff; text-decoration:none; }
.lesson7-page .lesson7-nav-card span { display:block; color:#7b7390; font-size:14px; }
.lesson7-page .lesson7-nav-card strong { display:block; margin-top:5px; color:#4f00b8; font-size:15px; }
.lesson7-page .lesson7-nav-card.next { text-align:right; }
@media (max-width:1100px) {
    .lesson7-page .lesson7-definition-card,.lesson7-page .lesson7-three-col { grid-template-columns:1fr 1fr; }
    .lesson7-page .lesson7-capability-grid { grid-template-columns:1fr 1fr; }
    .lesson7-page .lesson7-project-steps { grid-template-columns:repeat(3,1fr); }
    .lesson7-page .lesson7-architecture { grid-template-columns:1fr auto 1fr auto 1fr; }
    .lesson7-page .lesson7-architecture>i:nth-of-type(n+3),.lesson7-page .lesson7-architecture>div:nth-of-type(n+7) { display:none; }
}
@media (max-width:760px) {
    .lesson7-page .lesson7-header h1 { font-size:36px; }
    .lesson7-page .lesson7-lead { font-size:16px; }
    .lesson7-page .lesson7-section { grid-template-columns:28px minmax(0,1fr); gap:9px; margin-bottom:40px; }
    .lesson7-page .lesson7-section h2 { font-size:23px; }
    .lesson7-page .lesson7-number { width:26px; height:26px; font-size:14px; }
    .lesson7-page .lesson7-definition-card,.lesson7-page .lesson7-three-col,.lesson7-page .lesson7-capability-grid,.lesson7-page .lesson7-two-col,.lesson7-page .lesson7-change-grid,.lesson7-page .lesson7-architecture { grid-template-columns:1fr; }
    .lesson7-page .lesson7-flow { grid-template-columns:1fr; }
    .lesson7-page .lesson7-flow>b { justify-self:center; transform:rotate(90deg); }
    .lesson7-page .lesson7-architecture>i { display:none; }
    .lesson7-page .lesson7-architecture>div { display:block; }
    .lesson7-page .lesson7-project-steps { grid-template-columns:1fr 1fr; }
    .lesson7-page .lesson7-practice-row { grid-template-columns:28px minmax(0,1fr); }
    .lesson7-page .lesson7-practice-row button { grid-column:2; justify-self:start; }
    .lesson7-page .lesson7-practice-row em { grid-column:2; }
    .lesson7-page .lesson7-navigation { grid-template-columns:1fr; }
    .lesson7-page .lesson7-nav-card.next { text-align:left; }
    .lesson7-page .lesson7-code-block code { font-size:14px; }
    .lesson7-page .lesson7-code-head { align-items:flex-start; flex-direction:column; padding:9px 12px; }
    .lesson7-page .lesson7-code-head>div { width:100%; flex-wrap:wrap; }
    .lesson7-page .lesson7-code-head a,.lesson7-page .lesson7-code-head button { font-size:14px; }
}
@media (max-width:480px) {
    .lesson7-page .lesson7-header h1 { font-size:32px; }
    .lesson7-page .lesson7-objectives,.lesson7-page .lesson7-practice,.lesson7-page .lesson7-quiz,.lesson7-page .lesson7-recap { padding:18px; }
    .lesson7-page .lesson7-code-block pre { padding:14px; }
    .lesson7-page .lesson7-project-steps { grid-template-columns:1fr; }
    .lesson7-page .lesson7-probabilities>div { grid-template-columns:90px 1fr; }
}
