:root {
  --ink: #eef5ff;
  --muted: #9fb0c8;
  --navy: #08111f;
  --navy-2: #0d1a2d;
  --blue: #49a6ff;
  --teal: #41d6c3;
  --amber: #ffbf69;
  --rose: #ff748c;
  --line: rgba(164, 197, 234, .24);
}

html, body, body.reveal-viewport, .reveal .backgrounds { background: var(--navy) !important; }
.reveal { color: var(--ink); font-family: Inter, Aptos, Segoe UI, Arial, sans-serif; font-size: 32px; }
.reveal .slides { text-align: left; }
.reveal .slides section { box-sizing: border-box; height: 100%; padding: 1.1rem 1.5rem; }
.reveal h1, .reveal h2, .reveal h3, .reveal p { color: var(--ink); font-family: inherit; font-weight: 600; letter-spacing: -0.035em; text-transform: none; }
.reveal h1 { font-size: 2.54em; line-height: .96; margin: .22em 0; }
.reveal h1 span, .reveal h2 span { color: var(--blue); }
.reveal h2 { font-size: 1.65em; line-height: 1.02; margin: .1em 0 .6em; max-width: 1100px; }
.reveal h3 { font-size: .8em; margin: .15em 0 .3em; }
.reveal p, .reveal li { color: var(--muted); font-size: .58em; line-height: 1.42; font-weight: 450; letter-spacing: -.012em; }
.reveal strong, .reveal b { color: var(--ink); }
.reveal blockquote { width: auto; margin: 0; background: transparent; box-shadow: none; color: var(--ink); font-size: .75em; line-height: 1.34; font-style: normal; }
.reveal .progress { color: var(--blue); height: 5px; }
.reveal .controls { color: var(--blue); }
.reveal .slide-number { color: var(--muted); background: transparent; font-size: 14px; }

.kicker, .topline { color: var(--teal) !important; font-size: .4em !important; font-weight: 750 !important; letter-spacing: .13em !important; text-transform: uppercase; margin: 0 0 .65em !important; }
.risk { color: var(--rose) !important; }.eyebrow { color: var(--blue) !important; font-size: .38em !important; font-weight: 750 !important; letter-spacing: .1em !important; text-transform: uppercase; margin: 0 0 .9em !important; }
.lead { max-width: 690px; font-size: .72em !important; }.footer { position: absolute; bottom: .6rem; color: #71849f !important; font-size: .37em !important; letter-spacing: .03em !important; }.key { display: inline-block; border: 1px solid #49627f; border-radius: 4px; padding: 0 5px; color: var(--ink); }
.bottom-line { margin-top: .7rem !important; color: var(--ink) !important; font-size: .58em !important; }.warning { color: var(--amber) !important; }
.split, .three-up, .lanes, .two-track, .debrief, .scenario-grid { display: grid; gap: .55rem; }.split { grid-template-columns: 1fr 1fr; }.three-up { grid-template-columns: repeat(3, 1fr); }.muted-card, .accent-card { border: 1px solid var(--line); padding: .55rem; min-height: 265px; }.accent-card { border-color: rgba(73,166,255,.65); background: linear-gradient(140deg, rgba(73,166,255,.13), transparent 65%); }.era h3 { font-size: .93em; max-width: 260px; }.rate { margin-top: 1.4rem; color: var(--ink); font-size: .53em; }.rate span { color: var(--blue); font-size: 2.4em; font-weight: 750; margin-right: 5px; }
.statement-row article { border-top: 2px solid var(--line); padding-top: .35rem; }.statement-row article:nth-child(2) { border-color: var(--blue); }.statement-row article:nth-child(3) { border-color: var(--teal); }.number { color: var(--blue); font-size: .48em; font-weight: 800; }.quote-line { border-left: 3px solid var(--teal); margin-top: .9rem; padding-left: .45rem; color: var(--ink); font-size: .72em; font-weight: 600; }
.blast-map { display: flex; align-items: center; margin-top: 1.35rem; }.blast-node { flex: 1; min-height: 150px; border: 1px solid var(--line); padding: .35rem; background: rgba(13,26,45,.45); }.blast-node span { display: block; color: var(--teal); font-size: .32em; font-weight: 800; letter-spacing: .11em; }.blast-node strong { display: block; font-size: .68em; margin: .35em 0 .15em; }.blast-node small { color: var(--muted); font-size: .34em; line-height: 1.25; display: block; }.blast-node.origin { border-color: var(--blue); }.blast-node.danger { border-color: rgba(255,116,140,.7); }.blast-node.danger span { color: var(--rose); }.blast-line { width: .5rem; height: 1px; background: var(--blue); position: relative; }.blast-line::after { content: '›'; color: var(--blue); position: absolute; right: -3px; top: -16px; }.impact-list, .principles { display: flex; gap: .6rem; margin-top: .65rem; }.impact-list span, .principles span { color: var(--muted); border-left: 2px solid var(--line); padding-left: .25rem; font-size: .39em; }
.judgment-loop { list-style: none; padding: 0; margin: .75rem 0 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: .2rem; }.judgment-loop li { min-height: 205px; padding: .35rem .25rem; border-top: 2px solid var(--line); }.judgment-loop li:nth-child(2), .judgment-loop li:nth-child(4) { border-color: var(--blue); }.judgment-loop li:nth-child(3), .judgment-loop li:nth-child(5) { border-color: var(--teal); }.judgment-loop span { display: block; color: var(--blue); font-weight: 800; font-size: .53em; }.judgment-loop strong { display: block; font-size: .72em; margin: .45em 0; }.judgment-loop small { display: block; color: var(--muted); font-size: .36em; line-height: 1.3; }
.architecture { display: grid; grid-template-columns: 1fr .22fr 1fr .22fr 1fr .22fr 1fr; align-items: center; margin-top: .9rem; }.arch-layer { min-height: 205px; padding: .37rem; border: 1px solid var(--line); }.arch-layer span { display: block; color: var(--blue); font-size: .31em; font-weight: 800; letter-spacing: .1em; }.arch-layer strong { display: block; font-size: .77em; margin-top: .4em; }.arch-layer p { font-size: .38em; }.arch-layer.platform { border-color: rgba(65,214,195,.65); }.arch-layer.azure { border-color: rgba(255,191,105,.6); }.arrow-label { color: var(--blue); font-size: .28em; text-align: center; position: relative; }.arrow-label::after { content: '→'; display: block; font-size: 2.2em; margin-top: .15em; }
.lanes { grid-template-columns: 1fr .92fr 1fr; }.lane { padding: .42rem; min-height: 260px; border-top: 2px solid var(--line); }.lane.bridge { background: rgba(73,166,255,.08); border-color: var(--blue); }.lane.sre { border-color: var(--teal); }.lane h3 { font-size: .95em; }.lane ul { margin: .5em 0 0; padding-left: 1.05em; }.lane li { font-size: .43em; margin: .45em 0; }
.anti-pattern { display: grid; grid-template-columns: 1.1fr .9fr; gap: .8rem; align-items: center; }.bad-repo { position: relative; min-height: 275px; padding: .45rem; border: 1px dashed rgba(255,116,140,.7); background: rgba(255,116,140,.055); display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; }.bad-repo span { background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.08); padding: 8px 11px; color: var(--muted); font-size: .42em; }.bad-repo .folder { color: var(--ink); border-color: var(--rose); }.bad-repo b { position: absolute; bottom: .4rem; max-width: 280px; color: var(--rose); font-size: .52em; }.anti-copy h3 { margin-top: .7em; }.anti-copy p { font-size: .47em; }
.smell-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; }.smell-grid article { border-top: 2px solid var(--line); padding: .3rem 0; min-height: 150px; }.smell-grid span { color: var(--amber); font-size: .4em; font-weight: 800; }.smell-grid h3 { font-size: .66em; margin: .3em 0; }.smell-grid p { font-size: .4em; margin: 0; }
.tool-test { display: grid; grid-template-columns: 1fr 1.25fr; gap: .7rem; align-items: stretch; }.tool-question { padding: .55rem; background: linear-gradient(145deg, rgba(73,166,255,.15), transparent); border-left: 3px solid var(--blue); }.tool-question span { display: block; color: var(--muted); font-size: .42em; }.tool-question strong { display: block; margin-top: .35em; font-size: .94em; line-height: 1.1; }.tool-questions { padding: .18rem 0; }.tool-questions p { color: var(--ink); font-size: .57em; border-bottom: 1px solid var(--line); margin: 0; padding: .34em 0; }.tool-questions b { color: var(--teal); }
.two-track { grid-template-columns: 1fr 1.4fr; }.track { min-height: 210px; padding: .48rem; border: 1px solid var(--line); }.track.bad { border-color: rgba(255,116,140,.6); }.track.good { border-color: rgba(65,214,195,.7); background: linear-gradient(145deg, rgba(65,214,195,.1), transparent); }.track h3 { font-size: .85em; }.track p { font-size: .48em; }.decision-record { margin-top: .65rem; padding: .32rem .45rem; color: var(--muted); border-left: 2px solid var(--blue); font-size: .44em; }.decision-record strong { color: var(--ink); }
.review-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }.review-step { position: relative; min-height: 240px; padding: .45rem .5rem; border-left: 1px solid var(--line); }.review-step:first-child { border-left: 0; }.review-step span { color: var(--blue); font-size: 1.55em; font-weight: 750; opacity: .72; }.review-step h3 { font-size: .84em; margin-top: -.5em; }.review-step p { font-size: .48em; max-width: 230px; }
.workshop-intro h2 { max-width: 920px; }.workshop-rule { display: flex; gap: .2rem; margin-top: 1.2rem; align-items: center; }.workshop-rule span { display: grid; place-items: center; flex: 0 0 54px; width: 54px; height: 54px; border: 1px solid var(--blue); border-radius: 50%; color: var(--blue); font-size: .66em; font-weight: 800; }.workshop-rule p { margin-right: .35rem; font-size: .48em; }
.scenario-grid { grid-template-columns: 1.3fr .7fr; }.request, .context { min-height: 285px; padding: .5rem; border: 1px solid var(--line); }.request { border-color: rgba(73,166,255,.65); background: rgba(73,166,255,.06); }.request p { font-size: .45em; }.context ul { margin: .4em 0; padding-left: 1em; }.context li { font-size: .45em; margin: .55em 0; }
.prompt-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .35rem .8rem; }.prompt-grid > div { position: relative; padding-left: .9rem; min-height: 120px; border-top: 1px solid var(--line); }.prompt-grid span { position: absolute; left: 0; top: .25rem; color: var(--amber); font-size: .45em; font-weight: 800; }.prompt-grid h3 { font-size: .7em; margin: .4em 0 .15em; }.prompt-grid p { font-size: .44em; margin: 0; }.workshop-ask { margin-top: .55rem !important; color: var(--amber) !important; }
.debrief { grid-template-columns: .78fr 1.22fr; }.avoid, .approve { min-height: 210px; padding: .48rem; border: 1px solid var(--line); }.avoid { border-color: rgba(255,116,140,.65); }.approve { border-color: rgba(65,214,195,.72); background: rgba(65,214,195,.06); }.avoid h3, .approve h3 { font-size: .72em; }.avoid p, .approve p { font-size: .45em; }.answer-fragments { margin-top: .45rem; }.answer-fragments p { margin: .3em 0; font-size: .45em; }.answer-fragments b { color: var(--teal); }
.checklist { display: grid; grid-template-columns: 1fr 1fr; gap: .26rem .75rem; }.checklist > div { display: flex; align-items: flex-start; gap: .35rem; border-top: 1px solid var(--line); padding: .27rem 0; }.checklist span { color: var(--blue); font-weight: 800; font-size: .45em; }.checklist p { margin: 0; color: var(--muted); font-size: .47em; }.checklist b { color: var(--ink); }
.cover-grid { display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; min-height: 470px; }.cover-mark { position: relative; width: 330px; height: 330px; justify-self: end; }.orbit { position: absolute; inset: 18px; border: 1px solid rgba(73,166,255,.42); border-radius: 50%; }.core { position: absolute; inset: 112px; display: grid; place-items: center; border: 1px solid var(--teal); border-radius: 50%; color: var(--teal); font-size: 1.7em; font-weight: 700; box-shadow: 0 0 50px rgba(65,214,195,.12); }.signal { position: absolute; height: 1px; background: var(--blue); transform-origin: left center; }.signal.one { width: 145px; left: 36px; top: 90px; transform: rotate(24deg); }.signal.two { width: 190px; left: 140px; top: 170px; transform: rotate(-23deg); background: var(--teal); }.signal.three { width: 105px; left: 96px; top: 260px; transform: rotate(-55deg); background: var(--amber); }.closing-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 1rem; margin-top: 1.1rem; max-width: 900px; }.closing-grid p { font-size: .78em; color: var(--muted); }.closing-grid p:last-child { color: var(--ink); }
.deck-utility { position: fixed; z-index: 25; right: 16px; top: 14px; display: flex; align-items: center; gap: 8px; color: var(--muted); font: 600 12px/1 Inter, Arial, sans-serif; letter-spacing: .04em; }.deck-utility button { background: rgba(8,17,31,.82); border: 1px solid rgba(159,176,200,.35); border-radius: 4px; color: var(--muted); padding: 5px 8px; cursor: pointer; }.deck-utility button:hover, .deck-utility button:focus-visible { color: var(--ink); border-color: var(--blue); outline: none; }.notes-panel { display: none; position: fixed; z-index: 30; right: 16px; top: 52px; width: min(500px, calc(100vw - 32px)); max-height: calc(100vh - 68px); overflow: auto; padding: 14px 16px 18px; background: #eef5ff; border: 1px solid #5d7d9f; box-shadow: 0 12px 36px rgba(0,0,0,.38); color: #142033; font: 16px/1.5 Inter, Arial, sans-serif; }.notes-panel.open { display: block; }.notes-header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 8px; margin-bottom: 10px; border-bottom: 1px solid #bdd0e6; color: #4c6480; font-size: 11px; font-weight: 800; letter-spacing: .12em; }.notes-header button { border: 0; background: transparent; color: #273c54; cursor: pointer; font-size: 24px; line-height: 1; }.notes-panel p { margin: 0; }
@media (max-width: 900px) { .reveal { font-size: 24px; }.reveal .slides section { padding: .65rem .85rem; }.cover-grid { min-height: 360px; }.cover-mark { transform: scale(.72); transform-origin: right center; }.blast-node { min-height: 115px; }.judgment-loop li { min-height: 160px; } }
