/* Shared with Lecture 2A: tables, code, links. */
.reveal .l1b .source-media img{max-height:680px;width:100%;object-fit:contain}
.reveal .l1b table{font-size:35px;width:100%;margin:24px 0;border-collapse:collapse}
.reveal .l1b table th,.reveal .l1b table td{padding:18px 25px;border-bottom:1px solid #d8e0e7;vertical-align:top}
.reveal .l1b table th{text-align:left;color:#087bb9}
.reveal .l1b pre{font-size:29px;box-shadow:none;width:100%;padding:22px;background:#f5f8fa;box-sizing:border-box;margin-left:0;margin-right:0}
.reveal .l1b a{color:#087bb9}
.reveal .l1b table{table-layout:fixed;max-width:100%}
.reveal .l1b td,.reveal .l1b th{white-space:normal!important;overflow-wrap:break-word}
.reveal .l1b-two>*{min-width:0}
.reveal .l1b .l1b-subhead{color:#087bb9;font-size:38px;margin-top:10px}

/* Diagrams: editable SVGs drawn by scripts/make_figures.py. */
.reveal .l1b .diagram img{max-height:640px;width:100%}
.reveal .l1b .cover img{max-height:760px}

/* Timelines: year in bold accent, one event per paragraph. */
.reveal .timeline p{margin:0 0 22px;font-size:36px;line-height:1.25}
.reveal .timeline strong{color:#087bb9}

/* Truth tables. */
#ai-winter table,#xor-solution table{font-size:34px;margin:14px 0 22px}
#ai-winter table td,#ai-winter table th,#xor-solution table td,#xor-solution table th{padding:8px 16px;text-align:center!important}
#ai-winter table{width:62%}

#mlp .l1b-copy,#backprop-layers .l1b-copy{font-size:35px}
#why-nonlinear .equation-focus{font-size:42px}
#why-nonlinear .equation-focus p{margin:.5em 0}

/* Activation functions: wide figure above three short notes. */
#activations .slide-body{justify-content:center;gap:10px}
.reveal .act-figure img{width:100%;max-height:430px;object-fit:contain;display:block;margin:0 auto}
.reveal .act-notes{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;font-size:31px;line-height:1.3}
.reveal .act-notes>div{border-top:5px solid #087bb9;padding-top:16px}

#uat .l1b-copy{font-size:36px}
#outputs table{font-size:31px}
#outputs table td,#outputs table th{padding:14px 18px}
#outputs table td:first-child{width:21%}
#outputs table td:nth-child(2){width:31%}
#outputs .slide-body>p{font-size:34px}

/* Backpropagation worked example. */
#backprop-graph .slide-body{justify-content:center;gap:4px}
.reveal .backprop-figure img{width:100%;max-height:520px;object-fit:contain;display:block;margin:0 auto}
.reveal .backprop-eq{font-size:34px;text-align:center}
.reveal .backprop-eq p{margin:.2em 0}
.reveal .history-small p{font-size:30px;margin:0 0 16px;line-height:1.25}
.reveal .history-small strong{color:#087bb9}
.reveal .history-small img.medal{width:150px;float:left;margin:4px 26px 8px 0}

#gradient-descent .l1b-copy,#sgd .l1b-copy,#momentum .l1b-copy,#adaptive .l1b-copy,#adam .l1b-copy,#initialization .l1b-copy,#regularization .l1b-copy{font-size:35px}
#initialization .l1b-subhead{font-size:36px}
#regularization li{margin-bottom:18px}
#renaissance .timeline p{font-size:33px;margin-bottom:18px}
#renaissance .source-media img{max-height:640px}
#renaissance .l1b-two{grid-template-columns:.75fr 1.25fr;gap:50px}
#renaissance .source-media img{max-height:700px}
#backprop-layers .l1b-two{grid-template-columns:1.2fr .8fr;gap:60px}
.reveal .history-small p{font-size:29px}

/* Live Pluto cells (scripts/serve_pluto.jl): task on the left, sliders + plot on the right. */
#widget-relu-shapes .relu-shapes{grid-template-columns:.8fr 1.2fr;gap:50px;height:820px;align-items:stretch}
#widget-relu-shapes .l1b-copy{font-size:34px;align-self:center}
#widget-relu-shapes .widget{height:100%;min-height:0;border:1px solid #d8e0e7}
#widget-relu-shapes .relu-shapes-hint{color:#5e5e5e;font-size:26px;margin-top:24px}
/* Pluto renders at its own CSS size; enlarge it to slide scale. */
#widget-relu-shapes .widget iframe{width:76.92%;height:76.92%;transform:scale(1.3);transform-origin:0 0}
