/* Design Planning theme - pdVerse mentor guides */
@font-face{font-family:Inter;src:url(fonts/Inter-Regular.otf);font-weight:400;font-style:normal}
@font-face{font-family:Inter;src:url(fonts/Inter-Italic.otf);font-weight:400;font-style:italic}
@font-face{font-family:Inter;src:url(fonts/Inter-SemiBold.otf);font-weight:500 600;font-style:normal}
@font-face{font-family:Inter;src:url(fonts/Inter-Bold.otf);font-weight:700 900;font-style:normal}
@font-face{font-family:Inter;src:url(fonts/Inter-BoldItalic.otf);font-weight:700;font-style:italic}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/IBMPlexMono-400normal.ttf);font-weight:400}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/IBMPlexMono-600normal.ttf);font-weight:500 600}
@font-face{font-family:"IBM Plex Mono";src:url(fonts/IBMPlexMono-700normal.ttf);font-weight:700}

:root{--navy:#1f3855;--ink:#333;--muted:#5f6b7a;--rule:#d8dee5;--lead:#e3eef6;--code:#f8f9fa;
 --amber-bg:#fdf1d5;--amber:#9a6f12;--amber-bar:#e0a526;--green-bg:#e4f2e7;--green:#3a8774;
 --red-bg:#f6e2e4;--red:#b34045;--grey-bg:#f5f7f8}

html{font-family:Inter,sans-serif;font-size:10.2pt;color:var(--ink);line-height:1.52}
body{margin:0;background:#fff}
p{margin:0 0 7pt;orphans:3;widows:3}
b,strong{font-weight:700;color:#22303f}
em{font-style:italic}
a{color:var(--navy);text-decoration:none}
code{font-family:"IBM Plex Mono",monospace;font-size:8.8pt;background:#f1f3f5;border:.5pt solid #e3e7eb;border-radius:2pt;padding:0 2pt;color:#333}
h1,h2,h3,h4{color:var(--navy);font-weight:700;break-after:avoid;page-break-after:avoid;line-height:1.25}
h1{font-size:22pt;margin:8pt 0 10pt}
h2{font-size:13.5pt;margin:20pt 0 6pt;string-set:sec attr(data-sec)}
h2.brk{break-before:page;page-break-before:always;margin-top:0}
h3{font-size:11.6pt;margin:15pt 0 5pt}
h3.brk{break-before:page;page-break-before:always;margin-top:0}
h4{font-size:10.4pt;margin:12pt 0 4pt}
.chapname{string-set:chap content();height:0;overflow:hidden;font-size:0}
ul,ol{margin:0 0 8pt;padding-left:16pt}
li{margin:0 0 3pt}
ol li::marker{color:var(--navy);font-weight:700}
.kicker{display:inline-block;background:var(--navy);color:#fff;font-weight:700;font-size:8.6pt;letter-spacing:2.6pt;
 text-transform:uppercase;padding:4pt 9pt;border-radius:3pt}
.lead{background:var(--lead);border-left:3.2pt solid var(--navy);border-radius:3pt;padding:9pt 12pt;font-weight:700;
 color:var(--navy);font-size:10.6pt;margin:4pt 0 12pt;break-inside:avoid}
.lead code{font-weight:400}
.pb{break-before:page;page-break-before:always;height:0}

/* callouts */
.co{border-radius:3pt;padding:8pt 12pt 6pt;margin:9pt 0 11pt;break-inside:avoid;page-break-inside:avoid;border-left:3.2pt solid}
.co .cl{display:block;font-size:8.2pt;font-weight:700;letter-spacing:1.4pt;text-transform:uppercase;margin-bottom:3pt}
.co p:last-child,.co ul:last-child,.co ol:last-child{margin-bottom:2pt}
.co.analogy{background:var(--amber-bg);border-color:var(--amber-bar)} .co.analogy .cl{color:var(--amber)}
.co.practice,.co.tip{background:var(--green-bg);border-color:var(--green)} .co.practice .cl,.co.tip .cl{color:var(--green)}
.co.mistake{background:var(--red-bg);border-color:var(--red)} .co.mistake .cl{color:var(--red)}
.co.stop{background:var(--red-bg);border-color:var(--red)} .co.stop .cl{color:var(--red)}
.co.note{background:var(--grey-bg);border-color:#8a99a8} .co.note .cl{color:#5a6b7c}
.co.takeaway{background:var(--grey-bg);border-color:var(--navy);font-weight:700;color:#22303f}
.co.takeaway .tl{font-size:8.2pt;font-weight:700;letter-spacing:1.4pt;text-transform:uppercase;color:var(--green);margin-right:5pt}

/* code */
.code{margin:6pt 0 10pt;break-inside:avoid;page-break-inside:avoid}
.code .ch{font-size:7.6pt;font-weight:700;letter-spacing:1.3pt;color:#6b7785;margin-bottom:2pt}
.code.illus .ch{color:#8a6210}
pre{font:8.5pt/1.45 "IBM Plex Mono",monospace;background:var(--code);border-left:2.4pt solid #c9d1da;border-radius:3pt;
 padding:7pt 10pt;margin:0;white-space:pre-wrap;color:#333}
.code.illus pre{border-left-color:#e0a526;background:#fcfbf7}
pre .pr{color:#555}
pre b{color:var(--navy);font-weight:700}
pre .cm{color:#6a8faf}

/* tables */
.tbl{margin:6pt 0 11pt}
.tcap{font-size:9pt;font-weight:700;color:var(--navy);margin-bottom:3pt;break-after:avoid}
.tcap b{color:var(--navy)}
table{border-collapse:collapse;width:100%;font-size:9pt;line-height:1.4}
thead{display:table-header-group}
th{background:var(--navy);color:#fff;font-weight:700;text-align:left;padding:5pt 7pt;vertical-align:top}
td{border:.5pt solid var(--rule);padding:5pt 7pt;vertical-align:top;background:#fff}
tr{break-inside:avoid;page-break-inside:avoid}
td code,th code{font-size:8.2pt}

/* figures */
figure{margin:8pt 0 12pt;break-inside:avoid;page-break-inside:avoid}
figure .fbox{border:.6pt solid var(--rule);background:#fbfcfd;border-radius:3pt;padding:9pt 10pt 8pt}
figure .ftitle{font-size:10.4pt;font-weight:700;color:var(--navy)}
figure .fsub{font-size:8.4pt;color:var(--muted);margin-bottom:5pt}
figure img{display:block;width:100%;height:auto}
figcaption{font-size:9pt;margin:5pt 0 1pt}
figcaption b{color:var(--navy)}
figure .notice{font-size:9pt;color:var(--muted);margin:0}
figure .notice b{color:var(--muted)}

/* interview Q&A */
.qa{margin:10pt 0 12pt;break-inside:avoid;page-break-inside:avoid}
.qa .lvl{display:inline-block;color:#fff;font-size:7.2pt;font-weight:700;letter-spacing:1.2pt;text-transform:uppercase;
 padding:2pt 6pt;border-radius:2pt;margin-bottom:3pt;background:#4b78a8}
.qa .lvl.int{background:#3a8774} .qa .lvl.adv{background:#b34045}
.qa .q{font-weight:700;color:var(--navy);font-size:10.4pt;margin-bottom:3pt}
.qa .tested{background:var(--red-bg);color:var(--red);padding:6pt 10pt;border-radius:3pt;font-size:9pt}
.qa .tested b{color:var(--red)}

/* page furniture */
.ft{position:running(ft)}
.ftrule{border-top:.6pt solid var(--rule);margin-bottom:3mm}
.ftrow{height:13mm}
.ft .qr{width:13mm;height:13mm;float:left;margin-right:5mm}
.ftlink{font-weight:700;color:var(--navy);font-size:9pt;line-height:13mm}
.ftrun{margin-top:3.5mm;font-size:8.5pt;color:#6b7785;position:relative}
.ftrun .rs::after{content:string(chap) " / " string(sec, last)}
.ftrun .pg{position:absolute;right:0;top:-1pt;font-weight:700;font-size:10pt;color:var(--navy)}
.ftrun .pg::after{content:counter(page)}
.webfoot{display:none}

@page{size:A4;margin:18mm 16mm 34mm 16mm;
 @bottom-left{content:element(ft);vertical-align:top;width:178mm;padding-top:5mm}}

@media screen{
 html{font-size:16px}
 body{padding:24px 16px}
 main{max-width:820px;margin:0 auto}
 .ft,.chapname{display:none}
 .webfoot{display:flex;align-items:center;gap:14px;max-width:820px;margin:28px auto 0;border-top:1px solid var(--rule);padding-top:12px}
 .webfoot .qr{width:52px;height:52px}
 code{font-size:.86em} pre{font-size:13px;overflow-x:auto}
 table{font-size:14px}
}

.keep{break-inside:avoid;page-break-inside:avoid}
.keep > p{break-after:avoid;page-break-after:avoid}
